apache-spark - 为什么要使用 where 条件计算查询需要对数据进行改组?
问题描述
通过更改参数“spark.sql.shuffle.partitions”,以下查询的性能会有所不同。下面的查询需要改组吗?
从 id 不为空的表中选择 count(*)
我的另一个疑问是,下图中两个阶段之间的界限是什么。是洗牌的意义吗?
解决方案
在第一阶段,所有任务计算单个任务级别计数,然后聚合计数转移到第二阶段,第二阶段将所有计数相加并给出最终计数。
推荐阅读
- c# - AxInterop 不生成
- android - Android 在单元测试中使用 android.graphics.Matrix
- r - R 中的回归 - 截距错误的回归线
- new-operator - Doc2Vec 如何评估新词?
- c# - 如何将多个参数传递给StringTemplate4上的子模板
- office-js - 用于创建视频的 Powerpoint 插件
- html - Xpath,Scrapy,使用 id 从 div 类打印内容?
- javascript - 按下按钮时如何更改画布中填充矩形的颜色?
- python - 根据另一列更改 Pandas 列的内容
- android - 在 Inntellij 的 DataSoruce 中找不到 Android SQLite