Что такое Catalyst Optimizer в Apache Spark (SQL)? - PullRequest
0 голосов
/ 18 мая 2019

Я хочу больше узнать о Catalyst Optimizer в Apache PySpark (SQL). Можно ли использовать Catalyst Optimizer в фрейме данных pyspark.

Ответы [ 2 ]

0 голосов
/ 20 мая 2019

Фреймы данных, созданные с использованием SQL, могут использовать платформу Spark Catalyst. Используя pyspark (предполагая, что переменная spark связана с SparkSession), мы могли бы вызывать SQL, такой как

spark.sql(<sql>)

Это будут проанализированные, оптимизированные и физические планы, созданные в среде Catalyst.

Если датафрейм сконструирован вручную, как spark.table<>.sort(<col>), катализатор Spark не вступает в игру. Если мы хотим использовать инфраструктуру Catalyst для фрейма данных, который не является таблицей, обеспеченной метасторой, мы можем зарегистрировать ее как временную таблицу и использовать SQL для запуска запросов.

0 голосов
/ 18 мая 2019

Catalyst Optimizer - это внутренний SQL-движок Spark. Spark Dataframe использует Catalyst Optimizer для создания плана запросов, чтобы наилучшим образом решить, каким образом код должен выполняться в кластере для увеличения производительности и т. Д. Вместо того, чтобы разбираться в сочинениях и писать эссе по конкретным вопросам, здесь можно найти несколько полезных материалов. Наслаждайтесь!

https://databricks.com/glossary/catalyst-optimizer

...