Hadoop Pig或流式和Zip文件

Hadoop Pig或流式和Zip文件,hadoop,apache-pig,hadoop-streaming,Hadoop,Apache Pig,Hadoop Streaming,使用pig或hadoop流媒体,是否有人加载和解压缩了压缩文件?原始csv文件是使用pkzip压缩的。不确定这是否有帮助,因为它主要侧重于在Java中使用MapReduce,但hadoop中提供了ZipFileInputFormat。其通过Java API的使用如下所述: 其主要部分是ZipFileRecordReader,它使用JavasZipInputStream来处理每个ZipEntry。Hadoop阅读器可能不适合您,因为它将每个ZipEntry的文件路径作为键,ZipEntry内容作

使用pig或hadoop流媒体,是否有人加载和解压缩了压缩文件?原始csv文件是使用pkzip压缩的。

不确定这是否有帮助,因为它主要侧重于在Java中使用MapReduce,但hadoop中提供了ZipFileInputFormat。其通过Java API的使用如下所述:


其主要部分是ZipFileRecordReader,它使用JavasZipInputStream来处理每个ZipEntry。Hadoop阅读器可能不适合您,因为它将每个ZipEntry的文件路径作为键,ZipEntry内容作为值传递。

不确定这是否有帮助,因为它主要关注于在Java中使用MapReduce,但Hadoop中提供了ZipFileInputFormat。其通过Java API的使用如下所述:


其主要部分是ZipFileRecordReader,它使用JavasZipInputStream来处理每个ZipEntry。Hadoop reader可能无法直接为您工作,因为它将每个ZipEntry的文件路径作为键传递,ZipEntry内容作为值传递。

感谢您的回复。不幸的是,我已经调查过了。我希望有人能为我创建一个定制的PigStorage Loader,而不是自己创建一个。我可能会在将文件放入HDFS进行处理之前解压缩您的文件,除非您想为该文件编写一个定制的InputFormat。如果你想压缩它,你可以使用gzip,因为PigStorage可以很好地使用这种格式。Pig的加载器函数使用Hadoop的InputFormat。它从RecordReader中获取每条记录,并将其转换为元组(或其他类型),因此如果您想读取压缩文件,您必须编写自定义InputFormat/RecordReader。最后,我基于上面的链接为此创建了自己的ZipInputFormat。现在,我正试图找到一种方法,使输出文件名与输入文件名匹配。感谢您的回复。不幸的是,我已经调查过了。我希望有人能为我创建一个定制的PigStorage Loader,而不是自己创建一个。我可能会在将文件放入HDFS进行处理之前解压缩您的文件,除非您想为该文件编写一个定制的InputFormat。如果你想压缩它,你可以使用gzip,因为PigStorage可以很好地使用这种格式。Pig的加载器函数使用Hadoop的InputFormat。它从RecordReader中获取每条记录,并将其转换为元组(或其他类型),因此如果您想读取压缩文件,您必须编写自定义InputFormat/RecordReader。最后,我基于上面的链接为此创建了自己的ZipInputFormat。现在,我试图找到一种方法,使输出文件名与输入文件名匹配。