我有n个(大)数量的小尺寸txt文件,我想合并成k个(小)数量的文件
如果您在这些hive table
上方有txt files
,请使用
insert overwrite <db>.<existing_table> select * from <db>.<existing_table> order by <col_name>;
Hive支持选择并覆盖相同表,order by子句将force to run 1 reducer
,这将导致在目录中仅创建一个文件。
但是,如果您的数据量很大,那么order by
子句将不能很好地执行,请使用sort by (or) clustered by
子句来启动1个以上的reducer。
sort by (or) clustered by