Pyspark 1.6文件压缩问题
我们正在使用pyspark 1.6。正在尝试将文本转换为其他文件格式 (如Json、csv等)和压缩(gzip、lz4、snappy等)。但无法看到压缩工作 请找到我们试过的密码。请帮助我们指出代码中的问题,否则建议解决方法。 只是想补充一个问题,在1.6中没有一个压缩是有效的,但是在spark 2.X中它工作得很好 备选案文1:Pyspark 1.6文件压缩问题,pyspark,pyspark-sql,Pyspark,Pyspark Sql,我们正在使用pyspark 1.6。正在尝试将文本转换为其他文件格式 (如Json、csv等)和压缩(gzip、lz4、snappy等)。但无法看到压缩工作 请找到我们试过的密码。请帮助我们指出代码中的问题,否则建议解决方法。 只是想补充一个问题,在1.6中没有一个压缩是有效的,但是在spark 2.X中它工作得很好 备选案文1: from pyspark import SparkContext SparkConf sqlContext.setConf("spark.sql.parquet.co
from pyspark import SparkContext SparkConf
sqlContext.setConf("spark.sql.parquet.compression.codec", "snappy")
df = sqlContext.read.format('parquet').load('hdfs:///user/U1/json_parque_snappy')
df.write.format('json').save('hdfs:///user/U1/parquet_json_snappy')
备选案文2:
df = sqlContext.read.format('parquet').load('hdfs:///user/U1/json_parque_snappy')
df.write.format('json').option('codec','com.apache.hadoop.io.compress.SnappyCodec').save('hdfs:///user/U1/parquet_json_snappy_4')
备选案文3:
df = sqlContext.read.format('parquet').load('hdfs:///user/U1/json_parque_snappy')
df.write.format('json').option('compression','snappy').save('hdfs:///user/U1/parquet_json_snappy')
对于Spark 1.6,要保存文本/json输出,请尝试使用
spark.hadoop.mapred.output.compression.codec parameter
有4个参数需要设置。这一问题已经得到解答,更多详细信息请参见链接
使用Spark 2.x,API更简单,您可以使用
df.write.option("compression", "gzip")
第二个类名中的类名看起来有误。你能试试Bzip2或Gzip吗。这里列出了类名:@philantrovert:感谢您的快速响应。我已按建议试过了,但运气不好。它没有被压缩。f、 write.format('json').option('codec','org.apache.hadoop.io.compress.BZip2Codec').save('hdfs:///user/U1/parquet_json_bzip1')