Nano Hash - криптовалюты, майнинг, программирование

Как подключиться к серверу hive 2 через действие hive2 oozie?

Я не могу подключиться к Hive через Hive2 действие oozie. jdbcUrl включает обнаружение службы zooKeeper. Моя платформа данных — Hortonworks 2.6.

Первоначально я пытался подключиться к beelne через скрипт Python, и этот скрипт выполнялся действием оболочки oozie. Но не смог этого сделать. Поэтому я попытался вместо этого использовать действие hive2. Но даже это не работает. jdbcURL для билайна не имеет SSL. В нем включено обнаружение службы zooKeeper.

<workflow-app xmlns="uri:oozie:workflow:0.3" name="hive2-wf">
<start to="hive2-node"/>
<action name="hive2-node">
    <hive2 xmlns="uri:oozie:hive2-action:0.2">
        <job-tracker>${jobTracker}</job-tracker>
        <name-node>${nameNode}</name-node>
        <configuration>
            <property>
                <name>mapred.job.queue.name</name>
                <value>${queueName}</value>
            </property>
        </configuration>
        <jdbc-url>${jdbcURL}</jdbc-url>
        <script>table_create.hql</script>
    </hive2>
    <ok to="end"/>
    <error to="fail"/>
</action>

<kill name="fail">
    <message>Hive2 (Beeline) action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>

Ошибка, с которой я сталкиваюсь, это org.apache.hive.jdbc.HiveConnection: Ошибка открытия сеанса.

Я пробовал с нижеприведенными свойствами. Но все равно это не работает: oozie.use.system.libpath=true oozie.libpath= hdfs://host:8020/user/oozie/share/lib/lib_20180801150051 oozie.wf.application.path=hdfs://host /пользователь/пид/hive2

ПУТЬ ДЕЙСТВИЯ SHARELIB#

oozie.action.sharelib.for.hive=hive,hcatalog,sqoop jdbcURL=jdbc:hive2://хост:2181(кворум Zookeeper) /;serviceDiscoveryMode=zooKeeper; zooKeeperNamespace=hiveserver2 hive_query=table_creation.hql

Еще я заметил одну вещь. Но не знаю, насколько это актуально. URL-адрес JDBC, который я использую, имеет три разных кворома зоопарка: jdbcURL= jdbc:hive2://host1:2181,host2:2181,host3:2181/< /strong> ;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2

Но когда я запускаю рабочий процесс oozie, он использует другой порт: подключение к jdbc:hive2://host1:2181,host2:2181,host3:2181/;serviceDiscoveryMode =zooKeeper;zooKeeperNamespace=hiveserver2 Ошибка: не удалось установить соединение с jdbc:hive2://host1:10001/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2: Код ответа HTTP: 401 (состояние = 08S01, код = 0)


Ответы:


1

Нам потребуется больше информации. Не могли бы вы поделиться файлом свойств oozie? Возможно, вам нужно определить oozie.action.sharelib.for.hive, что-то вроде oozie.action.sharelib.for.hive=hive,hcatalog. Вы пробовали это? Также убедитесь, что у вас есть hive-site.xml в соответствующей общей библиотеке, или даже вы можете попробовать сохранить его в том же файле, в котором вы поместили свой рабочий процесс xml в местоположение hdfs. См. пример ниже

nameNode=hdfs://sandbox.hortonworks.com:8020
jobTracker=sandbox.hortonworks.com:8050
queueName=defaultappPath=${nameNode}/<HDFS_path_where_workflow.xml_file>
oozie.use.system.libpath=true
oozie.libpath=${nameNode}/user/oozie/share/lib/lib_20161025075203/
oozie.wf.application.path=${appPath}
#SHARELIB PATH FOR ACTION#
oozie.action.sharelib.for.hive=hive,hcatalog,sqoop
08.11.2019

2

Он работал, предоставляя учетные данные jdbcURL и jdbcPrincipal в Hive и передавая эти учетные данные действию hive2.

22.11.2019
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..


© 2024 nano-hash.ru, Nano Hash - криптовалюты, майнинг, программирование