Вкратце: у меня есть рабочий куст на hdp3, которого я не могу достать из pyspark, работающего под пряжей (на том же hdp).Как заставить pyspark найти мои таблицы?
spark.catalog.listDatabases()
показывать только по умолчанию, ни один прогон запросов не будет отображаться в моих журналах кустов.
Это мой код с помощью spark 2.3.1
from pyspark.sql import SparkSession
from pyspark.conf import SparkConf
settings = []
conf = SparkConf().setAppName("Guillaume is here").setAll(settings)
spark = (
SparkSession
.builder
.master('yarn')
.config(conf=conf)
.enableHiveSupport()
.getOrCreate()
)
print(spark.catalog.listDatabases())
Обратите внимание, что settings
пусто.Я думаю, этого было бы достаточно, потому что в логах я вижу
Загрузка файла конфигурации куста: file: /etc/spark2/3.0.1.0-187/0/hive-site.xml
и более интересно
Регистрация функции intersectgroups io.xxIntersectGroups
Это UDF, который я написал и добавил в куст вручную.Это означает, что какая-то связь установлена.
Единственный вывод, который я получаю (кроме журналов):
[База данных (name = u'default ', description = u'default database', locationUri = u'hdfs:// HdfsNameService / apps / spark / warehouse ')]
Я понимаю, что в настройках должен быть установлен spark.sql.warehouse.dir
.Неважно, установлю ли я значение, найденное в hive-site, путь к интересующей меня базе данных (он не находится по умолчанию), его родительский элемент, ничего не изменится.
Я положил много другихПараметры конфигурации в настройках (включая Thrift Uris), без изменений.
Я также видел, что я должен скопировать hive-site.xml в директорию conf spark2.Я сделал это на всех узлах моего кластера, без изменений.
Моя команда для запуска:
HDP_VERSION = 3.0.1.0-187 PYTHONPATH =.: / Usr / hdp /current / spark2-client / python /: / usr / hdp / current / spark2-client / python / lib / py4j-0.10.7-src.zip SPARK_HOME = / usr / hdp / current / spark2-client HADOOP_USER_NAME = улей spark-представить --master yarn --jars /usr/hdp/current/hive_warehouse_connector/hive-warehouse-connector-assembly-1.0.0.3.0.1.0-187.jar --py-files / usr / hdp / current / hive_warehouse_connector /pyspark_hwc-1.0.0.3.0.1.0-187.zip --files /etc/hive/conf/hive-site.xml ./subjanal/anal.py