databricks photon vs catalyst优化器

dddzy1tm  于 2021-07-13  发布在  Spark
关注(0)|答案(2)|浏览(606)

我读到了关于delta引擎的新databricks功能,它是由光子驱动的。从我的理解,通过阅读我有一种感觉,它类似于催化剂优化器。光子会取代催化剂吗。
光子引擎与catalyst optimizer有何不同
链接如下
https://databricks.com/blog/2020/06/24/introducing-delta-engine.html

x0fgdtte

x0fgdtte1#

我认为你把两件事混为一谈了:
CatalystOptimizer即将推出“执行查询的步骤”。例如,优化器将决定如何以及何时进行连接、聚合、筛选等,何时应该进行什么。这在技术上也被称为“物理计划”(catalyst optimizer更适合逻辑规划,但这是一个更精细的细节)
执行引擎实际上是执行优化器决定的步骤的引擎。它不会猜测这些步骤,而是确保尽可能有效地执行这些步骤。
delta引擎(或photon)是执行引擎,而不是优化器。它更直接地与开源spark中目前可用的tungsten(全阶段代码生成)执行引擎相比较。钨引擎和三角引擎都是执行引擎。

bybem2ql

bybem2ql2#

catalyst优化器仅适用于spark sql。catalyst正在处理您为spark sql编写的代码,例如Dataframe操作、过滤等。photon是delta存储查询引擎,适用于databricks中的新分析功能。它链接到增量存储引擎。本质上,它们是略有不同的工具,每个工具都专门用于优化不同的查询。它们都是Spark兼容的,但是光子和delta相连,所以保持它们分开是有意义的,因为不是每个人都在使用delta。

相关问题