ファイルを取得し、テキストを抽出し、シェルスクリプトを実行してハイブスクリプトを実行するフローがあります。 (私はちょうどファイルから日付を引いて、-hivevarとして渡しています)。です(..ハイブスクリプトが完了し、データが私のテーブルに挿入されているが、ExecuteStreamCommandは無期限(上隅にある1滞在)を実行したままで、私はnifiを再起動する必要がExecuteStreamCommandはHiveを実行するShell Scriptを実行するとハングします
#!/bin/bash
endDate=$1
CONNECT="jdbc:hive2://master2:10000/default"
beeline -u "$CONNECT" -n root -hivevar endDate="$endDate" -f /pathToScript/Hive_scipt.hql
:私のシェルスクリプトは次のようになりますこれを処理するより良い方法はありますか?)。私は、クエリのサイズを小さくした場合ExecuteStreamCommandは文句を言わないハングアップ(私のハイブのクエリは労働組合の数である)
- :
私はいくつかのことを気づきました。
- ジョブがハングすると、Resource ManagerのAMはかなりの時間〜10分間実行されたままになります。 1つのコンテナでHive CLI Tezセッションを作成するときのような並べ替え。クエリのサイズを小さくしても、ジョブがハングしないと、AMはすぐに終了状態になります。 - 完全なクエリまたはスクリプトをコマンドライン経由で手動で実行すると正常に動作します。
- 動作に一貫性がありません。時にはそれはハングアップしません、時々それは...(ほとんどの場合.. ..)
すべてのアイデア? app.logやアプリケーションログで何も見つかりませんでした