Apache spark 将SparkSession与enableHiveSupport一起使用时在内存中触发
我想知道,当我们将SparkSession与enableHiveSupport一起使用时,spark是在内存中维护配置单元表中的全部数据,还是只维护在启动配置单元查询后作为结果集获得的数据集。这是一个关于spark如何工作的问题 首先,我建议你阅读 要将表存储在内存中,必须调用Apache spark 将SparkSession与enableHiveSupport一起使用时在内存中触发,apache-spark,memory,hive,apache-spark-sql,Apache Spark,Memory,Hive,Apache Spark Sql,我想知道,当我们将SparkSession与enableHiveSupport一起使用时,spark是在内存中维护配置单元表中的全部数据,还是只维护在启动配置单元查询后作为结果集获得的数据集。这是一个关于spark如何工作的问题 首先,我建议你阅读 要将表存储在内存中,必须调用cache()方法才能执行此操作 调用enableHiveSupport()时,您正在访问表的元数据。所有不是真实数据的信息。调用时,您将只处理元数据,以找到执行数据的最有效方式。当您调用时,它将从配置单元加载数据,加载内
cache()
方法才能执行此操作
调用enableHiveSupport()
时,您正在访问表的元数据。所有不是真实数据的信息。调用时,您将只处理元数据,以找到执行数据的最有效方式。当您调用时,它将从配置单元加载数据,加载内存所需的内容,并在您请求时将最终数据存储在内存中
我真的建议您在上进行深入阅读。答案没有那么有用,基本上指向文档。事实上,文档中并没有明确说明Hive和Spark是如何协同工作的。答案应该是Spark是否从配置单元中获取数据(在所有延迟计算之后)并在内存中运行查询,还是它只是将查询推送到配置单元以传统的map reduce方式运行。