在Dataframe上设置Spark属性

时间:2017-01-02 14:24:08

标签: scala apache-spark apache-spark-sql spark-dataframe rdd

我对Spark和Scala的开发非常天真。

我可以使用下面的配置方法在火花会话中设置运行时的属性 -

val spark = SparkSession.builder()
  .master("local")
  .config("spark.files.overwrite",true)

上面的代码允许我在spark会话级别设置属性,但我想在DataFrame级别设置属性。关于这一点,我有几个问题:

  1. 有什么办法可以实现这个吗?
  2. 如果是,它会影响Spark实现的并行性吗?

1 个答案:

答案 0 :(得分:0)

在编写时,您可以使用不同的格式(是否使用覆盖):

具有压缩功能的CSV

df.coalesce(1).write.format("com.databricks.spark.csv").mode("overwrite")
.option("header","true")
.option("codec","org.apache.hadoop.io.compress.GzipCodec").save(tempLocationFileName)

未压缩的CSV:

df.coalesce(1).write.format("com.databricks.spark.csv").mode("overwrite")
.option("header","true")
.save(tempLocationFileName)