因此,Spark 有文件 spark-defaults.xml
用于指定哪些设置,包括要使用哪个压缩编解码器以及在哪个阶段(RDD、Shuffle)。大多数设置都可以在应用程序级别进行设置。
编辑:
conf = SparkConf()
conf.set("spark.hadoop.mapred.output.compress", "true")
conf.set("spark.hadoop.mapred.output.compression.codec", "org.apache.hadoop.io.compress.snappy")
如何使用 spark-defaults.xml
告诉 Spark 使用特定的编解码器仅压缩 Spark 输出?
选项 1
spark.hadoop.mapred.output.compress 真
spark.hadoop.mapred.output.compression.codec snappy
选项 2:
spark.mapreduce.output.fileoutputformat.compress 真
spark.mapreduce.output.fileoutputformat.compress.codec snappy
选项 3:
mapreduce.output.fileoutputformat.compress 真
mapreduce.output.fileoutputformat.compress.codec snappy
任何人都有正确的方法来设置它(从任何这些选项或类似的东西)?我正在运行 Spark 1.6.1。
最佳答案
您应该将此添加到您的 spark-defaults.xml
:
<property>
<name>spark.hadoop.mapred.output.compress</name>
<value>true</value>
</property>
<property>
<name>spark.hadoop.mapred.output.compression.codec</name>
<value>snappy</value>
</property>
这与在 spark-submit
命令中添加这些相同:
--conf spark.hadoop.mapred.output.compress=true
--conf spark.hadoop.mapred.output.compression.codec=snappy
关于hadoop - 在 Spark 中使用哪个设置来指定 `Output` 的压缩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38939024/