2016-01-11 3 views
-2

Я использую искру 1.6.0. У меня есть json-файл. Он приведен ниже.Невозможно преобразовать json-файл в паркет с использованием искры

{"id" : "1201", "name" : "shamir", "age" : "25"} 

Я пытаюсь преобразовать его в паркет. Ниже мой код.

val sqlContext = new org.apache.spark.sql.SQLContext(sc) 
import sqlContext.implicits._ 
import sqlContext.sql 
val employee = sqlContext.read.json("emp.json") 
employee.write.parquet("employee.parquet") 

Я получаю огромную ошибку. Что я делаю не так?

Это ошибка, которую я получаю. enter image description here

enter image description here

enter image description here

+0

Вы должны вставить ошибку вы получаете. Также дайте мне знать версию искры, которую вы используете. –

+0

@DurgaViswanathGadiraju Я вставил ошибку, которую я получал. –

+0

Я использую spark 1.6.0 –

ответ

0

без сообщения об ошибке, мало что можно сделать, чтобы ответить, но следующие две строки должны работать (проверено на Спарк 1.5.2):

val employee = sqlContext.jsonFile("emp.json") 
employee.saveAsParquetFile("employee.parquet") 
//Equivalent to : 
employee.write.format("parquet").mode(SaveMode.ErrorIfExists).save("employee.parquet") 

В противном случае это может быть проблема конфигурации вашей системы или доступности выходного пути.

Обратите внимание, что employee.write.parquet("employee.parquet") эквивалентно employee.write.format("parquet").save("employee.parquet")

+1

Я использую окна. Ошибка слишком велика. Я не вижу его полностью в команде promt. Я пробовал ваш код. Я получаю ту же ошибку. –

+0

@ eddard.stark Вы должны определить, возникает ли ошибка при чтении json-файла или записи в файл паркета. Если это так: проверили ли вы, что 'emp.json' находится в том же каталоге, что и текущий каталог, находится в терминале, на котором запускается' spark-shell'? –

+0

Ошибка при записи в файл паркета. –

0

Try сливаться с меньшим количеством разделов, прежде чем сохранить

employee.coalesce(numPartitions).write.mode(SaveMode.Overwrite).parquet("employee.parquet") 
Смежные вопросы