首页 > 解决方案 > 什么是 Apache Spark (SQL) 中的催化剂优化器?

问题描述

我想了解更多关于 Apache PySpark (SQL) 中的 Catalyst Optimizer 的信息。是否可以在 pyspark 数据帧中使用 Catalyst Optimizer。

标签: pysparkpyspark-sql

解决方案


使用 SQL 创建的数据帧可以利用 Spark Catalyst 框架。使用 pyspark(假设变量spark绑定到SparkSession),我们可以调用类似的 SQL

spark.sql(<sql>)

这将由 Catalyst 框架进行分析、优化和创建物理计划。

如果 Dataframe 是手动构建的spark.table<>.sort(<col>),则 Spark 催化剂不会发挥作用。如果我们想将 Catalyst 框架用于不是由元存储支持的表的数据帧,我们可以将其注册为临时表,并使用 SQL 来触发查询。


推荐阅读