栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 前沿技术 > 大数据 > 大数据系统

Spark Jdbc报NullPointerException

大数据系统 更新时间:发布时间: 百科书网 趣学号

问题描述:

运行使用Spark Jdbc读取postgresql程序报错:

Exception in thread "main" java.lang.NullPointerException

at java.util.Hashtable.put(Hashtable.java:460)

at java.util.Properties.setProperty(Properties.java:166)

at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions.$anonfun$asProperties$(JDBCOPtions.scala:51)

...

at scala.Option.getOrElse(Option.scala:189)

at org.apache.spark.sql.DataframeReader.load(DataframeReader.scala:307)

...

代码:

spark.read()

.format("jdbc")

.option("url", url)

.option("query", query)

.option("dbtable", dbtable)

...

.load();//报错定位到这行代码

解决方法:

不要个option设置null值,如:

reader = spark.read()

.format("jdbc")

.option("url", url);

if(query != null) {

        reader.option("query", query)

}

if(dbtable != null) {

        reader.option("dbtable", dbtable)

}

...

reader.load();

因为JDBC query和dbtable配置项不能同时指定,有一个值设置为了null.使用option设置null值就报错了.错误代码定位在了reader.load()方法,错误不好排查

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/601427.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号