如何将tar.gz中的多个文件加载到Pig中

时间:2015-07-15 16:33:05

标签: hadoop compression apache-pig

场景:供应商将以tar.gz格式提供原始Feed,其中包含以制表符分隔格式的多个文件 文件细节: a)一个命中级数据 b)多个查找文件 c)(a)

的一个头文件

饲料(tar.gz)将被摄取并降落到BDP可操作原料中。

查询:想要将来自操作原始区域的这些数据加载到Pig中以进行数据质量检查过程。如何实现这一目标?是应该在hadoop中提取文件供我们使用还是替代品可用?请指教。谢谢! 注意:任何示例脚本都会更有帮助

1 个答案:

答案 0 :(得分:1)

参考:http://pig.apache.org/docs/r0.9.1/func.html#load-store-functions

从文档中提取

处理压缩

压缩支持由加载/存储功能决定。 PigStorage和TextLoader支持read(load)和write(store)的gzip和bzip压缩。 BinStorage不支持压缩。

要使用gzip压缩文件,输入/输出文件需要具有.gz扩展名。 Gzip文件不能跨多个地图分割;这意味着创建的地图数量等于输入位置中的部分文件数量。

A = load 'myinput.gz'; 
store A into 'myoutput.gz';