请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

合并hdfs小文件

请教老师,hdfs上积累了两年的历史数据,每天一个文件夹不到64M,包含了3000多个小文件,都是parquet格式,现在影响了hdfs的性能,想把每天的小文件合并成一个大文件,有什么好的办法合并吗?

正在回答 回答被采纳积分+3

1回答

Michael_PK 2020-03-10 16:41:19

方案可行。不管是使用什么分布式框架,比如Mr或者spark。要做的事情就是把parquet文件读进来,然后以少的输出task个数写回去就行了

0 回复 有任何疑惑可以回复我~
  • 提问者 iceiceice_ #1
    有尝试过这样做,用spark读取再coalesce(1)保存,但是奇慢无比,50M的文件一个小时都跑不完,有办法优化吗?
    回复 有任何疑惑可以回复我~ 2020-03-10 17:03:24
  • Michael_PK 回复 提问者 iceiceice_ #2
    那个算子可以的,但是你也别过激啊,直接干1。。。。
    回复 有任何疑惑可以回复我~ 2020-03-10 17:14:41
  • Michael_PK 回复 提问者 iceiceice_ #3
    我们生产就是那个算子完成合并的,没那么慢的呢
    回复 有任何疑惑可以回复我~ 2020-03-10 17:15:09
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号