Amazon EMR で Spark SQL JDBC 接続をセットアップする方法を教えてください。
最終更新日: 2022 年 11 月 7 日
Amazon EMR クラスターで SQL クライアントから SQL クエリを実行できるように、Spark Thrift Server 用の Java データベース接続 (JDBC) ドライバーを設定したいと考えています。
解決方法
1. SQuirrel SQL クライアントをダウンロードしてインストールします。
3. マスターノードで、次のコマンドを実行して Spark Thrift サーバーを起動します。
sudo /usr/lib/spark/sbin/start-thriftserver.sh
4. すべての .jar ファイルをマスターノードの /usr/lib/spark/jars ディレクトリからローカルマシンにコピーします。
5. SQuirrel SQL Client を開き、新しいドライバーを作成します。
[Name] には、「Spark JDBC Driver」と入力します。
[Example URL] には、「jdbc:hive2:// localhost:10001」と入力します。
6. [Extra Class Path] タブで、[Add] を選択します。
7. ダイアログボックスで、手順 4 で .jar ファイルをコピーしたディレクトリに移動してぁら、すべてのファイルを選択します。
8. [Class Name] フィールドに、「org.apache.hive.jdbc.HiveDriver」と入力し、[OK] を選択します。
9. ローカルマシンで、ローカルポートフォワーディングを使用して SSH トンネルを設定します。
ssh -o ServerAliveInterval=10 -i path-to-key-file -N -L 10001:localhost:10001 hadoop@master-public-dns-name
10. Spark Thrift サーバーに接続するには、以下のように SQuirrel SQL クライアントで新しいエイリアスを作成します。
[Name] には、「Spark JDBC」と入力します。
[Driver] には、「Spark JDBC Driver」と入力します。
[URL] には、「jdbc:hive2:// localhost:10001」と入力します。
[Username] には、「hadoop」と入力します。
11. SQuirrel SQL クライアントからクエリを実行します。