Могу ли я запросить файл TSV напрямую, используя Spark SQL? - PullRequest
0 голосов
/ 02 июля 2019

Можно ли запросить файл TSV напрямую, используя Spark SQL?Чтобы было ясно, я говорю о Spark SQL, а не о Spark DataFrame.Например, мы можем запросить файл CSV напрямую, используя Spark SQL.Есть ли способ указать разделитель в операторе SQL (Spark)?

spark.sql("select * from csv.`/path/to/csv`")

Ответы [ 2 ]

0 голосов
/ 03 июля 2019

У вас проблема с использованием createOrReplaceTempTable. Используйте createOrReplaceTempView И вы не можете указывать разделитель при запросах уровня spark.sql.

Попробуйте это -

val df = spark.read.option("delimiter","\t").option("header", "true").csv("/path/to/csv")
df.createOrReplaceTempView("tableName")
spark.sql("select * from tableName)
0 голосов
/ 02 июля 2019

Нет, ты не можешь этого сделать.Любой SQL-запрос на искру происходит в абстракции датафрейма.

Сначала необходимо загрузить данные TSV в кадр данных, а затем выполнить запрос.

val df = spark.read.option("delimiter","\t").option("header", "true").csv("/path/to/csv")
df.createOrReplaceTempTable("tableName")
spark.sql("select * from tableName)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...