有没有办法识别或检测Hive表中的数据偏斜?

时间:2018-11-16 06:48:09

标签: performance hadoop hive hiveql

我们有许多配置单元查询,这些查询需要很长时间。我们正在使用tez和其他良好做法,例如CBO,orc文件等。

有没有一种方法可以像某些命令一样检查/分析数据偏斜?解释计划会有所帮助吗?如果有,我应该寻找哪个参数?

1 个答案:

答案 0 :(得分:2)

说明计划对此无济于事,您应该检查数据。如果是联接,请从联接所涉及的所有表中选择前100个联接键值,如果它是解析函数,则对键进行分区也要执行相同的操作。

示例:

select key, count(*) cnt
   from table
  group by key
 having count(*)> 1000 --check also >1 for tables where it should not be duplication (like dimentions)
  order by cnt desc limit 100;

key可以是复杂的联接键(在联接ON条件下使用的所有列)。

也看看这个答案:https://stackoverflow.com/a/51061613/2700344