首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Spark 2.2之前,是否有任何使用的表统计信息?

在Spark 2.2之前,是否有任何使用的表统计信息?
EN

Stack Overflow用户
提问于 2017-10-26 17:01:23
回答 1查看 614关注 0票数 7

Spark 2.2引入了基于成本的优化(CBO,https://databricks.com/blog/2017/08/31/cost-based-optimizer-in-apache-spark-2-2.html),它利用了表统计信息(由ANALYZE TABLE COMPUTE STATISTICS....计算)

我的问题是:在Spark 2.2 (在我的例子中是2.1)对(外部配置单元)表进行操作之前,预计算统计数据是否也有用?统计数据会影响优化器吗?如果是,我是否也可以在Impala而不是Hive中计算统计数据?

更新:

EN

回答 1

Stack Overflow用户

发布于 2018-01-19 05:34:30

显然,统计信息是用来决定广播加入是否完成的,而不是

正如您在UPDATE中提到的,在没有启用基于成本的优化的情况下,表统计信息(使用ANALYZE TABLE COMPUTE STATISTICS计算)仅用于JoinSelection执行计划策略,该策略将选择BroadcastHashJoinExecBroadcastNestedLoopJoinExec物理操作符。

JoinSelection使用默认情况下为10M的spark.sql.autoBroadcastJoinThreshold配置属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46950007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档