我听说过Whole-Stage Code Generation
sql来优化查询。
通过p539-neumann.pdf& sparksql-sql-codegen-is-not-giving-any-improvemnt
但遗憾的是,没有人回答上述问题。
很想知道使用Spark 2.0这个功能的场景是什么。但谷歌搜索后没有得到正确的用例。
每当我们使用sql时,我们可以使用此功能吗?如果是这样,任何正确的用例看到这个工作?
答案 0 :(得分:9)
使用Spark 2.0时,默认情况下启用代码生成。这允许您能够利用性能改进的大多数DataFrame查询。有一些潜在的例外,例如使用可能减慢速度的Python UDF。
代码生成是Spark SQL引擎的Catalyst Optimizer的主要组件之一。简而言之,Catalyst Optimizer引擎执行以下操作: (1)分析解决引用的逻辑计划, (2)逻辑计划优化 (3)物理规划,和 (4)代码生成
所有这些的一个很好的参考是博客文章
HTH!