【发布时间】:2016-05-03 05:34:33
【问题描述】:
在我当前的项目中,我正在使用具有快速压缩格式的 Orc 文件,我运行的任何查询都只使用一个映射器运行。我尝试配置 mapred.max.split.size 和 mapred.min.split。大小,但没有显示映射器数量的任何变化。reducer 数量足够好,但是由于映射器是单个映射器,所以运行一个简单查询的时间就像。
select x,max(y) from z group by x ;完成映射器需要将近 20 分钟。 我还应该做些什么来增加映射器的数量。
请不要告诉它使用分区或存储桶,因为我已经在我的表中使用它们了。
【问题讨论】:
-
Hive 的哪个版本?使用 MapReduce 的 TEZ?有多少物理文件? ORC 条带尺寸?在表上收集统计信息? EXPLAIN 计划有意义吗?尝试使用默认的 GZip 压缩?顺便说一句,实际的分区键是什么 - X,Y,还有什么?尝试使用
select X, max(YY) from (select PART, X, max(Y) as YY from Z group by PART, X) Duh group by X强制分区映射器? -
Hive 版本-2.3.0.0
标签: sql hadoop hive orc bigdata