【发布时间】:2021-12-06 14:09:24
【问题描述】:
我需要使用 Spark 将数据从远程 Hive 移动到本地 Hive。我尝试使用 JDBC 驱动程序连接到远程配置单元:'org.apache.hive.jdbc.HiveDriver'。我现在正在尝试从 Hive 中读取,结果是列值中的列标题而不是实际数据:
df = self.spark_session.read.format('JDBC') \
.option('url', "jdbc:hive2://{self.host}:{self.port}/{self.database}") \
.option('driver', 'org.apache.hive.jdbc.HiveDriver') \
.option("user", self.username) \
.option("password", self.password)
.option('dbtable', 'test_table') \
.load()
df.show()
结果:
+----------+
|str_column|
+----------+
|str_column|
|str_column|
|str_column|
|str_column|
|str_column|
+----------+
我知道 Hive JDBC 不是 Apache Spark 中的官方支持。但我已经找到了从其他不受支持的来源(例如 IMB Informix)下载的解决方案。也许有人已经解决了这个问题。
【问题讨论】:
标签: apache-spark jdbc pyspark hive