spark 的 HiveContext 内部是如何工作的?
How HiveContext of spark internally works?
我是 Spark.I 的新手,发现使用 HiveContext
我们可以连接到 hive
和 运行 HiveQL
。我 运行 它成功了。
我的疑惑是Spark
是不是通过spark jobs
实现的。也就是说,它使用HiveContext
只是为了从HDFS[=16=访问对应的hivetable文件]
或
内部调用hive执行查询?
不,Spark 不会调用配置单元来执行查询。 Spark 仅从 hive 中读取元数据并在 Spark 引擎中执行查询。 Spark 拥有自己的 SQL 执行引擎,其中包括催化剂、钨等组件以优化查询并提供更快的结果。它使用来自 hive 和 spark 执行引擎的元数据来 运行 查询。
Hive 的最大优势之一是它的 Metastore。它充当 hadoop 生态系统中许多组件的单个元存储。
关于你的问题,当你使用 HiveContext 时,它会访问 Metastore 数据库和你所有的 Hive 元数据,这可以清楚地说明你有什么类型的数据,你在哪里有数据,序列化和反序列化、压缩编解码器、列、数据类型以及关于 table 及其数据的每个细节。这足以让 Spark 理解数据。
总的来说,Spark 只需要 Metastore,它提供了底层数据的完整细节,一旦它有了元数据,它就会通过它的执行引擎执行你要求的查询。 Hive 比 Spark 慢,因为它使用 MapReduce。因此,返回配置单元并在配置单元中请求 运行 它是没有意义的。
如果它回答了你的问题,请告诉我。
我是 Spark.I 的新手,发现使用 HiveContext
我们可以连接到 hive
和 运行 HiveQL
。我 运行 它成功了。
我的疑惑是Spark
是不是通过spark jobs
实现的。也就是说,它使用HiveContext
只是为了从HDFS[=16=访问对应的hivetable文件]
或
内部调用hive执行查询?
不,Spark 不会调用配置单元来执行查询。 Spark 仅从 hive 中读取元数据并在 Spark 引擎中执行查询。 Spark 拥有自己的 SQL 执行引擎,其中包括催化剂、钨等组件以优化查询并提供更快的结果。它使用来自 hive 和 spark 执行引擎的元数据来 运行 查询。
Hive 的最大优势之一是它的 Metastore。它充当 hadoop 生态系统中许多组件的单个元存储。
关于你的问题,当你使用 HiveContext 时,它会访问 Metastore 数据库和你所有的 Hive 元数据,这可以清楚地说明你有什么类型的数据,你在哪里有数据,序列化和反序列化、压缩编解码器、列、数据类型以及关于 table 及其数据的每个细节。这足以让 Spark 理解数据。
总的来说,Spark 只需要 Metastore,它提供了底层数据的完整细节,一旦它有了元数据,它就会通过它的执行引擎执行你要求的查询。 Hive 比 Spark 慢,因为它使用 MapReduce。因此,返回配置单元并在配置单元中请求 运行 它是没有意义的。
如果它回答了你的问题,请告诉我。