使用jdbc失败的Spark作业数据帧写入Oracle

时间:2018-01-17 09:28:23

标签: scala oracle11g properties spark-dataframe firewall

将spark数据帧写入Oracle数据库(Oracle Database 11g企业版11.2.0.4.0 - 64位)时,spark作业失败,异常 java.sql.SQLRecoverableException:IO错误:网络适配器可以没有建立连接。 scala代码是

from types import SimpleNamespace

class Point(SimpleNameSpace):
    def __init__(self, x, y=0):
        # simple wrapper to accept arguments positionally or as keywords with defaults
        super().__init__(x=x, y=y)

已经尝试过设置jdbc连接的属性,但还没有工作。

dataFrame.write.mode(SaveMode.Append).jdbc("jdbc:oracle:thin:@" + ipPort + ":" + sid, table, props)

根据之前的搜索结果,似乎连接最初是打开的,但在一些空闲时间后被防火墙杀死。连接URL已经过验证,并且正在运行,因为选择查询可以正常工作。需要帮助才能解决此问题。

0 个答案:

没有答案