如何在读取CSV时指定Hadoop配置

时间:2016-12-07 03:18:06

标签: apache-spark apache-spark-sql apache-spark-2.0

我使用的是Spark 2.0.2。将CSV文件读入数据集时,如何为textinputformat.record.delimiter类指定Hadoop配置项TextInputFormat

在Java中,我可以编写代码:spark.read().csv(<path>);但是,似乎没有一种方法可以提供特定于读取的Hadoop配置。

可以使用spark.sparkContext().hadoopConfiguration()设置项目,但这是全局的。

谢谢,

2 个答案:

答案 0 :(得分:0)

你做不到。 Data Source API使用自己的配置,从2.0开始,它甚至不兼容Hadoop配置。

如果您想使用自定义输入格式或其他Hadoop配置,请使用SparkContext.hadoopFileSparkContext.newAPIHadoopRDD或相关类。

答案 1 :(得分:0)

可以使用spark2.0

中的option()设置分隔符
var df = spark.read.option("header", "true").option("delimiter", "\t").csv("/hdfs/file/locaton")