почему аргумент beeline CLI ничего не делает после подключения к beeline CLI? - PullRequest
0 голосов
/ 12 октября 2018

У меня есть код сценария оболочки, который автоматизирует команды beeline.Код может подключиться к JDBC, но он находится там, он не выполняет дополнительные коды в сценарии оболочки, т.е.он не усекает таблицу, не загружает данные, не вставляет.Ниже приведен весь код: *

#! /bin/bash

timestamp=$(date +%Y-%m-%d-%H:%M:%S:%N)
unix_time=$(date +%Y-%m-%d-%H:%M:%S)

export 

BEELINE_PREFIX='"jdbc:hive2://server:port,server:port,server:port/;serviceDiscoveryMode=zookeeper;zookeeperNamespace=hiveser

ver2;principal=hive/server@hello.COM"'

beeline -u $BEELINE_PREFIX -e use next;

echo "truncating the staging table tbl1..."
beeline -u $BEELINE_PREFIX -e  "TRUNCATE TABLE next.tbl1;"

echo "Loading the data in stating table tbl1"
beeline -u $BEELINE_PREFIX -e "LOAD DATA LOCAL INPATH 'path_to/tbl1.txt' INTO TABLE next.tbl1;"

echo "Appending the data into history table tbl1.."
beeline -u $BEELINE_PREFIX -e "insert into table next.hist_tbl1 select *,'$unix_time' from next.tbl1;"

When I execute ./tbl1.sh

Я мог видеть вывод ниже:

Connecting to 

jdbc:hive2://jdbc:hive2://server:port,server:port,server:port/;serviceDiscoveryMode=zookeeper;zookeeperNamespace=hiveserver2

;principal=hive/server@hello.COM
Connected to: Apache Hive
Driver: Hive JDBC
Transaction isolation: TRANSACTION_REPEATABLE_READ
Beeline version 1.2.1000.2.6.5.0-292 by Apache Hive

Кажется, что код выполняет только первую строку "beeline -u", то есть соединение JDBCтолько.Я заметил, что, когда я использую ctrl + c, он идет вперед и выбрасывает ниже ошибки

Error: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask. File file:/usr/ibmpacks/current/bigsql/hive/lib/hive-hbase-handler.jar does not exist (state=08S01,code=1)

Любая идея, в чем ошибка?

1 Ответ

0 голосов
/ 15 октября 2018

Проблема исправлена.Я использовал дополнительную строку beeline -u $BEELINE_PREFIX в своем исходном коде, прежде чем база данных улья использовалась "use database". Я закомментировал это.Скрипт работает правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...