gpt4 book ai didi

apache-spark - Hadoop 3和spark.sql:与HiveWarehouseSession和spark.sql一起使用

转载 作者:行者123 更新时间:2023-12-02 19:14:22 25 4
gpt4 key购买 nike

以前,我可以完全在spark.sql api中工作,以与配置单元表和spark数据帧进行交互。我可以使用相同的API查询通过spark或hive表注册的 View 。

我想确认一下,hadoop 3.1和pyspark 2.3.2不再可能吗?要对配置单元表执行任何操作,必须使用“HiveWarehouseSession” API,而不是spark.sql api。有什么方法可以继续使用spark.sql api并与hive交互,还是我必须重构所有代码?

hive = HiveWarehouseSession.session(spark).build()
hive.execute("arbitrary example query here")
spark.sql("arbitrary example query here")

令人困惑,因为 spark documentation

Connect to any data source the same way



并以Hive为例,但Hortonworks hadoop 3 documentation

As a Spark developer, you execute queries to Hive using the JDBC-style HiveWarehouseSession API



这两个陈述是直接矛盾的。

Hadoop文档继续:“您可以使用Hive Warehouse Connector(HWC)API从Spark访问Hive目录中的任何类型的表。当您使用SparkSQL时,标准Spark API可以访问Spark目录中的表。”

至少到目前为止,Spark.sql spark不再通用正确了吗?我不再可以使用相同的API与配置单元表无缝交互?

最佳答案

是的,正确。我正在使用Spark 2.3.2,但无法再使用Spark SQL默认API访问配置单元表。
从HDP 3.0开始,Apache Hive和Apache Spark的目录是分开的,它们是互斥的。
如前所述,您必须使用pyspark-llap库中的HiveWarehouseSession。

关于apache-spark - Hadoop 3和spark.sql:与HiveWarehouseSession和spark.sql一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57717869/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com