2016-10-04 49 views
0

我已经添加下面给我的脚本:星火未压缩JSON输出

val conf = new SparkConf 
conf.set("spark.hadoop.mapred.output.compress", "true") 
conf.set("spark.hadoop.mapred.output.compression.codec", "true") 
conf.set("spark.hadoop.mapred.output.compression.codec", "org.apache.hadoop.io.compress.GzipCodec") 
conf.set("spark.hadoop.mapred.output.compression.type", "BLOCK") 

我写这样df.write.json("out")数据。但是,我所得到的只是输出中的.json文件,而不是预期的.json.gz。这里有什么问题?

+0

可能是您正在使用过时的属性:https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/DeprecatedProperties .html – pzecevic

+0

感谢您的想法,但更改为新的属性并没有帮助。 – Dmitri

回答

1

你可以试试这个:

import org.apache.hadoop.io.compress.GzipCodec 

val df = Seq((2012, 8, "Batman", 9.8), (2012, 8, "Hero", 8.7), (2012, 7, "Robot", 5.5), (2011, 7, "Git", 2.0)).toDF("year", "month", "title", "rating") 
df.toJSON.rdd.saveAsTextFile("/tmp/jsonRecords", classOf[GzipCodec])