我正在尝试使用spark JDBC连接到HiveTable,使用以下代码:
val df = spark.read.format("jdbc").
option("driver", "org.apache.hive.jdbc.HiveDriver").
option("user","hive").
option("password", "").
option("url", jdbcUrl).
option("dbTable", tableName).load()
df.show()
但我得到的回报只是一个带有修改列名称的空数据框,如下所示:
--------------|---------------|
tableName.uuid|tableName.name |
--------------|---------------|
我试图以很多方式阅读数据框架,但它总是会产生相同的结果。 我正在使用JDBC Hive Driver,而这个HiveTable位于EMR集群中。代码也在同一个集群中运行。 任何帮助将非常感激。 谢谢大家。
答案 0 :(得分:0)
请在选项中设置fetchsize它应该有效。
Dataset<Row> referenceData
= sparkSession.read()
.option("fetchsize", "100")
.format("jdbc")
.option("url", jdbc.getJdbcURL())
.option("user", "")
.option("password", "")
.option("dbtable", hiveTableName).load();