Не могу прочитать авро в блокноте Jupyter - PullRequest
1 голос
/ 25 апреля 2019

У меня уже есть созданный SparkContext и глобальная переменная Spark. Когда я читаю файлы ORC, я могу прочитать их так же просто, как spark.read.format("orc").load("filepath"), однако, для avro я не могу сделать то же самое, хотя пытаюсь импортировать банку так:

    spark.conf.set("spark.jars.packages",
    "file:///projects/apps/lib/spark-avro_2.11-3.2.0.jar")

Ошибка:

and then try to read the avro file. I get an error like so: 
Py4JJavaError: An error occurred while calling o65.load.
: org.apache.spark.sql.AnalysisException: Failed to find data source: avro. Please find an Avro package at http://spark.apache.org/third-party-projects.html;

1 Ответ

2 голосов
/ 25 апреля 2019

spark.jars.packages принимает совместимые с Gradle координаты:

spark.jars.packages  org.apache.spark:spark-avro_2.12:2.4.2

Кроме того, как объясняется в Как загрузить jar-зависимости в IPython Notebook , его необходимо установить до инициализации JVM и SparkSession / SparkContext.

Итак, вы должны:

  • Исправить настройки.
  • Перед тем как инициализировать JVM, укажите их как переменную конфигурации или среды.
...