Looks you need to add an "driver" option to your codes, such as sqlContext.read.format("jdbc").options( Map("url" -> "jdbc:oracle:thin:@xxxx:1521:xxx", "driver" -> "oracle.jdbc.driver.OracleDriver", "dbtable" -> "your_table_name")).load()
Best Regards, Shixiong Zhu 2015-12-21 6:03 GMT-08:00 Jeff Zhang <zjf...@gmail.com>: > Please make sure this is correct jdbc url, > jdbc:oracle:thin:@xxxx:1521:xxx > > > > On Mon, Dec 21, 2015 at 9:54 PM, Madabhattula Rajesh Kumar < > mrajaf...@gmail.com> wrote: > >> Hi Jeff and Satish, >> >> I have modified script and executed. Please find below command >> >> ./spark-submit --master local --class test.Main --jars >> /home/user/download/jar/ojdbc7.jar >> /home//test/target/spark16-0.0.1-SNAPSHOT.jar >> >> Still I'm getting same exception. >> >> >> >> Exception in thread "main" java.sql.SQLException: No suitable driver >> found for jdbc:oracle:thin:@xxxx:1521:xxx >> at java.sql.DriverManager.getConnection(DriverManager.java:596) >> at java.sql.DriverManager.getConnection(DriverManager.java:187) >> at >> org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$$anonfun$getConnector$1.apply(JDBCRDD.scala:188) >> at >> org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$$anonfun$getConnector$1.apply(JDBCRDD.scala:181) >> at >> org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$.resolveTable(JDBCRDD.scala:121) >> at >> org.apache.spark.sql.execution.datasources.jdbc.JDBCRelation.<init>(JDBCRelation.scala:91) >> at >> org.apache.spark.sql.execution.datasources.jdbc.DefaultSource.createRelation(DefaultSource.scala:60) >> at >> org.apache.spark.sql.execution.datasources.ResolvedDataSource$.apply(ResolvedDataSource.scala:125) >> at >> org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:114) >> at com.cisco.ss.etl.utils.ETLHelper$class.getData(ETLHelper.scala:22) >> at com.cisco.ss.etl.Main$.getData(Main.scala:9) >> at com.cisco.ss.etl.Main$delayedInit$body.apply(Main.scala:13) >> at scala.Function0$class.apply$mcV$sp(Function0.scala:40) >> at >> scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12) >> at scala.App$$anonfun$main$1.apply(App.scala:71) >> at scala.App$$anonfun$main$1.apply(App.scala:71) >> at scala.collection.immutable.List.foreach(List.scala:318) >> at >> scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:32) >> at scala.App$class.main(App.scala:71) >> at com.cisco.ss.etl.Main$.main(Main.scala:9) >> at com.cisco.ss.etl.Main.main(Main.scala) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:606) >> at >> org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:672) >> at >> org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180) >> at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205) >> at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120) >> at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) >> >> >> Regards, >> Rajesh >> >> On Mon, Dec 21, 2015 at 7:18 PM, satish chandra j < >> jsatishchan...@gmail.com> wrote: >> >>> Hi Rajesh, >>> Could you please try giving your cmd as mentioned below: >>> >>> ./spark-submit --master local --class <classname> --jars <odbcjar> >>> <sparkjob-jar> >>> >>> Regards, >>> Satish Chandra >>> >>> On Mon, Dec 21, 2015 at 6:45 PM, Madabhattula Rajesh Kumar < >>> mrajaf...@gmail.com> wrote: >>> >>>> Hi, >>>> >>>> How to add dependent jars in spark-submit command. For example: Oracle. >>>> Could you please help me to resolve this issue >>>> >>>> I have a standalone cluster. One Master and One slave. >>>> >>>> I have used below command it is not working >>>> >>>> ./spark-submit --master local --class test.Main >>>> /test/target/spark16-0.0.1-SNAPSHOT.jar --jars >>>> /home/user/download/jar/ojdbc7.jar >>>> >>>> *I'm getting below exception :* >>>> >>>> Exception in thread "main" java.sql.SQLException: No suitable driver >>>> found for jdbc:oracle:thin:@xxxx:1521:xxx >>>> at java.sql.DriverManager.getConnection(DriverManager.java:596) >>>> at java.sql.DriverManager.getConnection(DriverManager.java:187) >>>> at >>>> org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$$anonfun$getConnector$1.apply(JDBCRDD.scala:188) >>>> at >>>> org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$$anonfun$getConnector$1.apply(JDBCRDD.scala:181) >>>> at >>>> org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$.resolveTable(JDBCRDD.scala:121) >>>> at >>>> org.apache.spark.sql.execution.datasources.jdbc.JDBCRelation.<init>(JDBCRelation.scala:91) >>>> at >>>> org.apache.spark.sql.execution.datasources.jdbc.DefaultSource.createRelation(DefaultSource.scala:60) >>>> at >>>> org.apache.spark.sql.execution.datasources.ResolvedDataSource$.apply(ResolvedDataSource.scala:125) >>>> at >>>> org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:114) >>>> at >>>> com.cisco.ss.etl.utils.ETLHelper$class.getData(ETLHelper.scala:22) >>>> at com.cisco.ss.etl.Main$.getData(Main.scala:9) >>>> at com.cisco.ss.etl.Main$delayedInit$body.apply(Main.scala:13) >>>> at scala.Function0$class.apply$mcV$sp(Function0.scala:40) >>>> at >>>> scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12) >>>> at scala.App$$anonfun$main$1.apply(App.scala:71) >>>> at scala.App$$anonfun$main$1.apply(App.scala:71) >>>> at scala.collection.immutable.List.foreach(List.scala:318) >>>> at >>>> scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:32) >>>> at scala.App$class.main(App.scala:71) >>>> at com.cisco.ss.etl.Main$.main(Main.scala:9) >>>> at com.cisco.ss.etl.Main.main(Main.scala) >>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>> at >>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>>> at >>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>> at java.lang.reflect.Method.invoke(Method.java:606) >>>> at >>>> org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:672) >>>> at >>>> org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180) >>>> at >>>> org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205) >>>> at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120) >>>> at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) >>>> >>>> Regards, >>>> Rajesh >>>> >>> >>> >> > > > -- > Best Regards > > Jeff Zhang >