如何使用 Python 和任何支持的压缩编解码器在 spark 中读取和写入压缩序列文件

How to read and write compressed sequence file in spark using Python with any supported compression codec

如何使用 Python.

在 Spark 中读取和写入压缩的 SequenceFile

我在 CDH 5.12 Quickstart VM 上使用 Spark 1.6 Python 2.7

找到如下示例,但无法正常工作。

rdd.saveAsSequenceFile(<path location>, Some(classOf[compressionCodecClass]))

sparkContext.sequenceFile(<path location>, classOf[<class name>], classOf[<compressionCodecClass >]);

需要工作代码来测试。

要在 Pyspark 中读取压缩的 sequencefile,请使用以下代码:

`myRDD = sparkcontext.sequenceFile("FILE_PATH")`

在 Hadoop 中,我们可以在 core-site.xml 文件中找到各种支持的压缩编解码器。

几个受欢迎的是:

org.apache.hadoop.io.compress.DefaultCodec
org.apache.hadoop.io.compress.GzipCodec
org.apache.hadoop.io.compress.BZip2Codec
org.apache.hadoop.io.compress.DeflateCodec
org.apache.hadoop.io.compress.SnappyCodec
org.apache.hadoop.io.compress.Lz4Codec

要在 Pyspark 中使用任何这些压缩编解码器编写 Sequencefile,请使用如下代码(对于 GzipCodec): MYrdd.saveAsSequenceFile("FILE_PATH","org.apache.hadoop.io.compress.GzipCodec")