我对Hive的理解是,它提供了一种使用SQL命令查询HDFS的方法。
好的,但是有火花。 Spark拥有所有的RDD类方法,这些方法完全可以使用,但我对SQL更满意。
输入Spark SQL。因此,既然我现在可以使用Spark SQL使用SQL查询数据库,为什么Hive会输入图片?
文档说:
enableHiveSupport():
Enables Hive support, including connectivity to a persistent Hive metastore, support for Hive serdes, and Hive user-defined functions.
您为什么需要连接到Hive Metastore?
在Spark的文档中,它说要配置hdfs-site.xml和core-site.xml并将HADOOP_CONF_DIR
中的$SPARK_HOME/conf/spark-env.sh
设置为包含配置文件的位置。
http://spark.apache.org/docs/latest/configuration.html#inheriting-hadoop-cluster-configuration
注意:这是我第一次阅读文档并尝试了解发生了什么... apache很有趣。
有人可以确认我可以忘记HIVE吗?
答案 0 :(得分:1)
spark-shell自动具有此功能。在已编译的Spark提交中,您需要Hive支持才能访问和更新Hive Metastore或Spark Metastore。协议问题。对于用于数据库访问的jdbc,则不需要它。如果仅写入文件,则也不需要,例如实木复合地板写入或追加到HDFS子目录。但是,您就不能对Hive表,Impala表使用spark.sql ...,因为它只是一个文件。如果想通过Impala jdbc,Kudu会有所不同。