JdbcStorageHandler не найден при попытке подключиться к кусту из pyspark - PullRequest
0 голосов
/ 28 июня 2019

Я пытаюсь запросить таблицу улья из spark в HDP

Я следую инструкциям здесь:

https://docs.hortonworks.com/HDPDocuments/HDP3/HDP-3.1.0/integrating-hive/content/hive_hivewarehouseconnector_for_handling_apache_spark_data.html

Я запускаю Pyspark SehllПрикрепление jar сборки коннектора хранилища куста и связанных с ним py-файлов.

Я правильно устанавливаю свойства конфигурации по предыдущей ссылке (--conf spark.sql.hive.hiveserver2.jdbc.url, spark.sql.hive.hiveserver2.jdbc.url.principal и т. д.) Когда я пытаюсь сделать простой выбор по таблице Hive, я получаю следующую ошибку:

Причина: java.lang.ClassNotFoundException: org*та же ошибка, JdbcStorageHandler не найден.

Другое, что я пробовал, это добавление всех jar-файлов hadoop client и hive client в classpath:

output = subprocess.check_output(['bash','-c', 'echo $CLASSPATH:$(hadoop classpath):/usr/hdp/current/hadoop-client/*:/usr/hdp/current/spark2-client/jars/*:/usr/hdp/current/hadoop-client/client/*'])
os.environ['CLASSPATH'] = output

Редактировать: В оболочке Hive я создалВнешняя таблица Hive указывает на сообщениеБаза данных greSQL, и я знаю, что внутренне он использовал класс JdbcStorageHandler, так что я могу подтвердить, что оболочка куста правильно использует этот класс из того же jar

Какие-нибудь мысли?

Спасибо

...