我必须在集群上加载很多文件(+/-500000),这需要很长时间。每个文件都是gzip格式,占用80mb的空间。目前,我使用while循环加载我的文件,但你可能有一个最好的解决方案。。。谢谢你的帮助。
kuhbmx9i1#
可能你可以看看pivotalhd的dataloader,它使用map job parallel加载数据,这样更快。检查此链接pivotalhd dataloader。
oewdyzsn2#
你解释这个问题的方式很难理解。hdfs支持gzip压缩而不进行拆分。由于您的文件是~80mb的每个然后分裂不是一个大问题,你只要确保使用块大小128mb的更大。关于文件上传,为什么不直接用-put命令上传整个目录呢?
hadoop fs -put local/path/to/dir path/in/hdfs
会成功的。
r6hnlfcb3#
可以使用binarypig的buildsequencefilefromdirhttps://github.com/endgameinc/binarypig
3条答案
按热度按时间kuhbmx9i1#
可能你可以看看pivotalhd的dataloader,它使用map job parallel加载数据,这样更快。检查此链接pivotalhd dataloader。
oewdyzsn2#
你解释这个问题的方式很难理解。
hdfs支持gzip压缩而不进行拆分。由于您的文件是~80mb的每个然后分裂不是一个大问题,你只要确保使用块大小128mb的更大。
关于文件上传,为什么不直接用-put命令上传整个目录呢?
会成功的。
r6hnlfcb3#
可以使用binarypig的buildsequencefilefromdirhttps://github.com/endgameinc/binarypig