PyHive игнорирует конфигурацию Hive

Я периодически получаю сообщение об ошибке

DAG не удалось выполнить из-за VERTEX_FAILURE.

при выполнении запросов Hive через PyHive. По этой причине Hive работает в кластере EMR, где hive.vectorized.execution.enabled имеет значение false в файле hive-site.xml.

Я могу установить указанное выше свойство через конфигурацию подключения к Hive, и мой запрос успешно выполняется каждый раз, когда я его выполняю, однако я хочу подтвердить, что это устранило проблему и что это определенно тот случай, когда hive-site. xml игнорируется.

Может ли кто-нибудь подтвердить, является ли это ожидаемым поведением, или, в качестве альтернативы, есть ли способ проверить конфигурацию Hive через PyHive, поскольку я не смог найти способ сделать это?

Спасибо!


person Meitsrik    schedule 13.12.2018    source источник


Ответы (1)


PyHive — это тонкий клиент, который подключается к HiveServer2 точно так же, как клиент Java или C (через JDBC или ODBC). Он не использует файлы конфигурации Hadoop на вашем локальном компьютере. Сеанс HS2 начинается с любых свойств, установленных на стороне сервера.
То же самое касается ImPyla BTW.

Таким образом, вы несете ответственность за установку пользовательских свойств сеанса из вашего кода Python, например. выполнить этот оператор...
SET hive.vectorized.execution.enabled =False
... перед запуском SELECT.

person Samson Scharfrichter    schedule 13.12.2018
comment
Fab, спасибо за подтверждение и дополнительные пояснения, Самсон. - person Meitsrik; 13.12.2018