【发布时间】:2018-05-16 04:38:42
【问题描述】:
基于Spark - load CSV file as DataFrame?
是否可以使用 SQL 指定选项来设置分隔符、空字符和引号?
val df = spark.sql("SELECT * FROM csv.`csv/file/path/in/hdfs`")
我知道可以使用spark.read.format("csv").option("delimiter", "|") 来完成,但理想情况下我不必这样做。
更新信息
看来我必须使用反引号来传递路径。
当我试图通过OPTIONS
== SQL ==
SELECT * FROM
csv.`csv/file/path/in/hdfs` OPTIONS (delimiter , "|" )
-----------------------------------^^^
Error in query:
mismatched input '(' expecting {<EOF>, ',', 'WHERE', 'GROUP', 'ORDER',
'HAVING', 'LIMIT', 'JOIN', 'CROSS', 'INNER', 'LEFT', 'RIGHT', 'FULL',
'NATURAL', 'LATERAL', 'WINDOW', 'UNION', 'EXCEPT', 'MINUS',
'INTERSECT', 'SORT', 'CLUSTER', 'DISTRIBUTE', 'ANTI'}
【问题讨论】:
-
SELECT * FROM csv.csv/file/path/in/hdfs OPTIONS (delimiter , "|" )怎么样
标签: scala apache-spark apache-spark-sql spark-dataframe