我有以下记录集来处理
1000, 1001, 1002 to 1999,
2000, 2001, 2002 to 2999,
3000, 3001, 3002 to 3999
我想使用HIVE处理以下记录集,以便reducer-1将处理数据1000到1999,reducer-2将处理数据2000到2999,reducer-3将处理数据3000到3999。请帮助我来解决上述问题。
Use DISTRIBUTE BY
,mappers输出根据distribute by子句进行分组,并传输到reducer进行处理:
select ...
from ...
distribute by case when col between 1000 and 1999 then 1
when col between 2000 and 2999 then 2
when col between 3000 and 3999 then 3
end
或者简单地
distribute by floor(col/1000)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)