2016-11-18 13 views
1

私はEMRでスパークを実行していますが、JDBCハイブドライバを使用してSQLWorkbenchからspark-SQLに接続しようとしています。私はEMR上のリフトサーバーを開始し、私はTableau/SQL Workbenchからポート10000(デフォルト)のHiveに接続できます。クエリを実行しようとすると、Tez/Hiveジョブが実行されます。しかし、私はスパークを使用してクエリを実行したい。 EMRボックス内では、私はBeelineを使ってSparkSQLに接続し、スパークジョブとしてクエリを実行することができます。リソースマネージャーは、SQLWorkbenchを介して実行されているクエリがハイブ/ Tezジョブを実行している間に、Beelineクエリがスパークジョブとして実行されていることを示します。EMRでJDBCを使用してSQLに接続する

ログを調べると、スパークに接続するリフトサーバーがポート10001(デフォルト)で実行されていたことがわかりました。 私がbeelineを起動すると、エントリが接続とsqlを実行しています。ただし、同じ接続パラメータを使用してフォームSQLWorkbench/Tableauを接続すると、詳細はほとんどなく例外が発生します。例外は接続が終了したと言うだけです。

パラメータを渡すことによってカスタムポート上で動作しようとしましたが、ビーラインは動作しますが、jdbc接続では動作しませんでした。

この問題を解決するお手伝いはありますか?

答えて

0

問題を解決できました。私はTableauからSparkSQLに接続することができました。私が接続できなかったのは、リリーフサービスをrootとして立ち上げたからです。なぜ重要なのか分かりませんが、ログフォルダのアクセス権を現在のユーザー(ルートではない)に変更して、リリースサービスを起動しなければならず、問題なく接続できました。

関連する問題