Amazon EMR で Spark SQL JDBC 接続をセットアップする方法を教えてください。

所要時間1分
0

Amazon EMR で Spark SQL Java Database Connectivity (JDBC) 接続をセットアップしたいと考えています。

解決策

注: 以下の手順では、ローカルマシン上の SQL クライアント用 SQuirreL SQL クライアントを使用します。

Amazon EMR で Spark SQL JDBC 接続をセットアップするには、次の手順を実行してください。

  1. SQuirreL SQL クライアントをダウンロードしてインストールします。詳細については、SQuirreL SQL のウェブサイトで「ダウンロードとインストール」を参照してください。

  2. Amazon EMR プライマリノードに接続するには、SSH を使用します

  3. Spark Thrift Serverを起動するには、プライマリノードで次のコマンドを実行します。

    sudo /usr/lib/spark/sbin/start-thriftserver.sh
  4. プライマリノードで、/usr/lib/spark/jars ディレクトリからすべての .jar ファイルをローカルマシンにコピーします。

  5. SQuirreL SQL クライアントを開き、次のように新しいドライバーを作成します。
    [名前]Spark JDBC Driver と入力します。
    [URL の例]jdbc:hive2://localhost:10001 と入力します。

  6. [JDBC ドライバークラスパス] タブで、[追加] を選択します。

  7. ダイアログボックスで、先ほど .jar ファイルをコピーした先のディレクトリに移動し、すべてのファイルを選択します。

  8. [クラス名] フィールドに org.apache.hive.jdbc.HiveDriver と入力し、**[OK]**をクリックします。

  9. SSH トンネルを設定するには、ローカルマシンでローカルポート転送を使用します。

    ssh -o ServerAliveInterval=10 -i path-to-key-file -N -L 10001:localhost:10001 hadoop@example-primary-public-dns

    注: example-primary-public-dns は、お使いのプライマリパブリック DNS 名に置き換えます。

  10. Spark Thrift サーバーに接続するには、以下のように SQuirreL SQL クライアントで新しいエイリアスを作成します。
    [名前]Spark JDBC と入力します。
    [ドライバーSpark JDBC Driver と入力します。
    [URL]jdbc:hive2://localhost:10001 と入力します。
    [ユーザー名]hadoop と入力します。

注: これで、SQuirreL SQL クライアントからクエリを実行できます。

AWS公式
AWS公式更新しました 4ヶ月前