Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 将SparkSession与enableHiveSupport一起使用时在内存中触发_Apache Spark_Memory_Hive_Apache Spark Sql - Fatal编程技术网

Apache spark 将SparkSession与enableHiveSupport一起使用时在内存中触发

Apache spark 将SparkSession与enableHiveSupport一起使用时在内存中触发,apache-spark,memory,hive,apache-spark-sql,Apache Spark,Memory,Hive,Apache Spark Sql,我想知道,当我们将SparkSession与enableHiveSupport一起使用时,spark是在内存中维护配置单元表中的全部数据,还是只维护在启动配置单元查询后作为结果集获得的数据集。这是一个关于spark如何工作的问题 首先,我建议你阅读 要将表存储在内存中,必须调用cache()方法才能执行此操作 调用enableHiveSupport()时,您正在访问表的元数据。所有不是真实数据的信息。调用时,您将只处理元数据,以找到执行数据的最有效方式。当您调用时,它将从配置单元加载数据,加载内

我想知道,当我们将SparkSession与enableHiveSupport一起使用时,spark是在内存中维护配置单元表中的全部数据,还是只维护在启动配置单元查询后作为结果集获得的数据集。

这是一个关于spark如何工作的问题

首先,我建议你阅读

要将表存储在内存中,必须调用
cache()
方法才能执行此操作

调用
enableHiveSupport()
时,您正在访问表的元数据。所有不是真实数据的信息。调用时,您将只处理元数据,以找到执行数据的最有效方式。当您调用时,它将从配置单元加载数据,加载内存所需的内容,并在您请求时将最终数据存储在内存中


我真的建议您在

上进行深入阅读。答案没有那么有用,基本上指向文档。事实上,文档中并没有明确说明Hive和Spark是如何协同工作的。答案应该是Spark是否从配置单元中获取数据(在所有延迟计算之后)并在内存中运行查询,还是它只是将查询推送到配置单元以传统的map reduce方式运行。