我使用avrostorage存储来自pig的结果集。有没有办法将数据存储到一个指定的avro文件中…例如outputfilegen1?pig正在将数据存储到名为outpufilegen1的目录中,其结构如下所示:
ls -al OutputFileGen1/
total 20
drwxr-xr-x 2 root root 4096 2016-01-18 14:35 .
drwxr-xr-x 6 root root 4096 2016-01-19 10:27 ..
-rw-r--r-- 1 root root 4083 2016-01-18 14:35 part-m-00000.avro
-rw-r--r-- 1 root root 40 2016-01-18 14:35 .part-m-00000.avro.crc
-rw-r--r-- 1 root root 0 2016-01-18 14:35 _SUCCESS
-rw-r--r-- 1 root root 8 2016-01-18 14:35 ._SUCCESS.crc
谢谢您
1条答案
按热度按时间wvt8vs2t1#
pig输出目录中的部件数取决于作业执行的并行任务数。这里只有一个文件:part-m-00000。
http://pig.apache.org/docs/r0.8.1/cookbook.html#use++并行+功能
但也许你想要一个单独的文件,所以如果你想得到这个文件,我建议使用
hadoop fs -getmerge <src dir> <target dir>
命令获取本地文件系统中的文件,以便使用该文件包含的数据。