类似于mysql的连接方式,不过稍有细节差别。
1. Oracle数据库在安装后一般会在$ORACLE_HOME/jdbc/lib目录中放置ojdbc*.jar等jar文件,将这些文件复制到spark集群服务器上,比如$SPARK_HOME/jars/中,然后修改CLASSPATH=$SPARK_HOME/jars/ojdbc6.jar:$CLASSPATH
2. 重启jupyter notebook
3. 连接读取oracle数据库
 from pyspark.sql import SparkSession 
 
 try: 
   sc.stop() 
except: 
    pass 
 spk = SparkSession.builder.master("spark://192.168.12.7:7077").appName("spark-oracle").getOrCreate() 
print(spk) 
sc11=spk.sparkContext 
print(sc11) 
#从oracle 数据库表中读取数据到spark,如果要使用sql语句,则必须添加别名alias,比如下面的t 
sqltext="(select col1,col2,col3 from tablename) t" 
jdbcdf = spk.read.format('jdbc').options( 
    url='jdbc:oracle:thin:@//192.168.2.7:1521/dbname', 
    dbtable=sqltext, 
    user='username', 
    password='password'    
).load() 
print(jdbcdf) 
jdbcdf.createOrReplaceTempView('ls') 
spk.sql("select * from ls).show() 
sc11.stop()


