Spark и Hive

По умолчанию Spark может работать с Hive из коробки. Настройки для взаимодействия с Hive находятся в домашней директории — /etc/spark/conf. Если ваше Spark-приложение взаимодействует с Hadoop, или же и с Hadoop и Spark, необходимо добавить файлы конфигурации Hadoop в Spark classpath.

Несколько одновременно запущенных приложений могут потребовать индивидуальной клиентской конфигурации Hadoop/Hive. Для каждого отдельного приложения вы можете модифицировать файлы hdfs-site.xml, core-site.xml, yarn-site.xml и поместить их в Spark classpath.

Примечание
Для кластеров Spark с YARN вышеупомянутые конфигурационные файлы устанавливаются на уровне кластера и не могут быть изменены приложением.

Наиболее простым способом указания параметров для Spark Hadoop является нотация вида spark.hadoop.* и spark.hive.* для Hive. Например, добавление spark.hadoop.abc.def=xyz аналогично Hadoop-параметру abc.def=xyz, а spark.hive.abc=xyz эквивалентно Hive-параметру hive.abc=xyz. Параметры, заданные в таком виде, является обычными Spark-параметрами, которые можно объявлять в файле $SPARK_HOME/conf/spark-defaults.conf. По умолчанию домашней директорией для Spark является /etc/spark/conf, где вы можете хранить все настройки для Spark.

Иногда, чтобы не записывать определенные настройки в SparkConf, вы можете добавлять или переопределять определенные параметры при старте программы:

./bin/spark-submit \
  --name "My app" \
  --master local[4] \
  --conf spark.eventLog.enabled=false \
  --conf "spark.executor.extraJavaOptions=-XX:+PrintGCDetails -XX:+PrintGCTimeStamps" \
  --conf spark.hadoop.abc.def=xyz \
  --conf spark.hive.abc=xyz
  myApp.jar

Описания всех Spark-параметров доступны на странице документации Spark.

Кастомная настройка

Если вы хотите изменить настройку вашего Spark-приложения для Hive, существует 2 подхода:

  • Добавить кастомные параметры в файл spark-defaults.conf и поместить этот файл в classpath Hive.

  • Добавить кастомные параметры в конфигурационный файл hive-site.xml, который использует Hive. Все файлы конфигурации хранятся в домашней директории Spark — /etc/spark/conf/hive-site.xml.

Дополнительная информация о параметрах Hive для Spark доступна в разделе Параметры Hive on Spark.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней