sparkSQL 连接读取Oracle数据库

类似于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()

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值