gpt4 book ai didi

hadoop - spark 的 HiveContext 内部是如何工作的?

转载 作者:可可西里 更新时间:2023-11-01 14:20:34 25 4
gpt4 key购买 nike

我是 Spark 的新手。我发现使用 HiveContext 我们可以连接到 hive 并运行 HiveQL。我运行它并且成功了。

我怀疑Spark是不是通过spark jobs来实现的,也就是说,它使用HiveContext只是为了从HDFS访问对应的hive表文件

或者

它内部调用hive来执行查询?

最佳答案

不,Spark 不会调用配置单元来执行查询。 Spark 仅从 hive 中读取元数据并在 Spark 引擎中执行查询。 Spark 拥有自己的 SQL 执行引擎,其中包括催化剂、钨等组件,以优化查询并提供更快的结果。它使用来自 Hive 的元数据和 Spark 的执行引擎来运行查询。

Hive 的最大优势之一是它的 Metastore。它充当 hadoop 生态系统中许多组件的单个元存储。

针对您的问题,当您使用 HiveContext 时,它将访问 Metastore 数据库和您所有的 Hive 元数据,这可以清楚地说明您拥有什么类型的数据,数据在哪里,序列化和反序列化,压缩编解码器、列、数据类型以及关于表及其数据的每个细节。这足以让 Spark 理解数据。

总的来说,Spark 只需要 Metastore,它提供了底层数据的完整细节,一旦它有了元数据,它就会通过它的执行引擎执行你要求的查询。 Hive 比 Spark 慢,因为它使用 MapReduce。因此,返回 hive 并要求在 hive 中运行它是没有意义的。

如果它回答了你的问题,请告诉我。

关于hadoop - spark 的 HiveContext 内部是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35869003/

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