0

(MSSQL インスタンスでホストされている) 既存の Hive メタストアを指すように、既存の Azure HDInsight クラスターを変更しようとしています。hive-site.xml の次のパラメーターを変更して、既存のメタストアを指すようにしました。

"javax.jdo.option.ConnectionDriverName" : "com.microsoft.sqlserver.jdbc.SQLServerDriver", 
"javax.jdo.option.ConnectionUserName" : "<<user>>",     
"javax.jdo.option.ConnectionPassword" : "<<password>>",   
"javax.jdo.option.ConnectionURL" : "jdbc:sqlserver://<<server>>.database.windows.net:1433;database=HiveMetaStoreEast;user=<<user>>;password=<<password>>;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;" 

Beeline 経由で Hive CLI と Hiveserver2 の両方にアクセスできるため、これはある程度機能しているようです。奇妙なことshow databases;に、使用しているクライアントによって異なる結果が出力されます。Hive 0.14 (私が実行中) を開始すると、Hive/Hiveserver2 などを使用してより詳細な構成を利用できることを読みました。パラメーターを設定して、表示内容と一致さhiveserver2-site.xmlせようとしましたが、それでも同じ奇妙な結果が得られます。hive.metastore.urishiveserver2-site.xmlhive-site.xml

要約すると、Hiveserver2 と Hive CLI プロセスが同じ (そして正しい) メタストア URI を指していることを確認するにはどうすればよいですか?

4

1 に答える 1

0

これを投稿した直後、Hortonworks Web サイトで同様のスレッドを見つけました: http://hortonworks.com/community/forums/topic/configuration-of-hiveserver2-to-use-a-remote-metastore-server/#post-81960

startHiveserver2.sh.j2ここ(私のHiveノード上)にある開始スクリプトには/var/lib/ambari-agent/cache/common-services/HIVE/0.12.0.2.0/package/templates/、パラメータの空の文字列CLIオーバーライドが含まれているようです。hive.metastore.urisこれにより、Hiveserver2がローカルメタストアモードで開始され、Hive CLI(リモートURIを使用)とビーライン(ローカルを使用)。

不一致を解決したパッチについては、以下を参照してください。

--- startHiveserver2.sh.j2  2015-11-25 04:06:15.357996439 +0000
+++ /var/lib/ambari-server/resources/common-services/HIVE/0.12.0.2.0/package/templates/startHiveserver2.sh.j2   2015-11-25 03:43:29.837452851 +0000
@@ -20,5 +20,6 @@
#

HIVE_SERVER2_OPTS=" -hiveconf hive.log.file=hiveserver2.log -hiveconf hive.log.dir=$5"
-HIVE_CONF_DIR=$4 {{hive_bin}}/hiveserver2 -hiveconf hive.metastore.uris=" " ${HIVE_SERVER2_OPTS} > $1 2> $2 &
+#HIVE_CONF_DIR=$4 {{hive_bin}}/hiveserver2 -hiveconf hive.metastore.uris=" " ${HIVE_SERVER2_OPTS} > $1 2> $2 &
+HIVE_CONF_DIR=$4 {{hive_bin}}/hiveserver2 ${HIVE_SERVER2_OPTS} > $1 2> $2 &
echo $!|cat>$3
于 2015-11-25T05:04:54.790 に答える