0
我有一个CSV,内容如下特殊字符
id,pos_id,supplier_id
5127973,2000,"test
5704355,77,/10122
我想把它加载到数据帧和数据,因为它是文件,该数据帧将通过JDBC
装入postresql这里我所做的:
val conf = new SparkConf().setMaster("local[2]").setAppName("my app")
val sc = new SparkContext(conf)
val sparkSession = SparkSession.builder.config(conf = conf).appName("spark session example").getOrCreate()
val df= sparkSession.sqlContext.read.format("com.databricks.spark.csv")
.option("header", "true").option("escape", "\"").load("C:\\Users\\MHT\\Desktop\\data.csv")
df.show()
+-------+------+--------------------+
| id|pos_id| supplier_id|
+-------+------+--------------------+
|5127973| 2000|test
5704355,77,/...|
+-------+------+--------------------+
我应该怎么做才能在数据帧相同的数据,然后在postresql相同的数据。
第一个问题还不清楚 - 实际问题是什么 - 是否由于未封闭的双引号将两行读为一行? (如果是这样,所有的PostgreSQL的东西只是冗余和混乱)。其次 - 你使用的是Spark版本?我正在使用2.1.1并且看到不同的结果(CSV正确解析为两行) –
@Tzach Zohar,当我显示数据帧时,我得到的是与csv文件的实际内容不同,就是这样,我怎么能得到同样我谈论报价 –
你用什么Spark版本? –