QuboleでのSpark用Snowflakeの構成

QuboleでSnowflakeをSpark用に構成するには、SnowflakeをQuboleデータストアとして追加するだけです。このトピックでは、Qubole Data Service(QDS)UI を使用してこのタスクを実行するための手順を説明します。

注釈

QDS REST API を使用して、Snowflakeをデータストアとして追加することもできます。段階的な手順については、 データストアとしてのSnowflakeデータウェアハウスの追加 (Quboleドキュメント)をご参照ください。

このトピックの内容:

前提条件

  • データストアを追加するには、QDS システム管理者である必要があります。

  • Qubole Enterprise Editionアカウントが必要です。

  • 接続で使用するロールには、Quboleを介して読み書きを行うテーブルを含むスキーマに対する USAGE および CREATE STAGE 権限が必要です。

実行時間の長いクエリ用の外部ロケーションの準備

一部のジョブが36時間を超える場合は、SnowflakeとSpark間のデータ交換に使用する外部の場所を準備することを検討します。詳細については、「ファイル用の外部の場所の準備」をご参照ください。

QDS UI でのデータストアとしてのSnowflakeの追加

  1. Home メニューから、Explore をクリックします。

  2. E​xplore ページのドロップダウンリストで、+ Add Data Store を選択します。

  3. 次のフィールドに必要な情報を入力します。

    • Data Store Name:作成するデータストアの名前を入力します。

    • Database Type:「Snowflake」を選択します。

    • Catalog Name:Snowflakeカタログの名前を入力します。

    • Database Name:データが格納されているSnowflakeのデータベースの名前を入力します。

    • Warehouse Name:クエリに使用するSnowflake仮想ウェアハウスの名前を入力します。

    • Host Address:SnowflakeアカウントのベースURL(例: qubole.snowflakecomputing.com)を入力します。

    • Username:Snowflakeユーザーのログイン名を入力します(ホストへの接続に使用します)。

    • Password:Snowflakeユーザーのパスワードを入力します(ホストへの接続に使用します)。

    Host Address を除くすべての値は、 大文字と小文字を区別する ことに注意してください。

  4. Save をクリックして、データストアを作成します。

データストアとして追加するSnowflakeデータベースごとにこれらの手順を繰り返します。または、データストアを編集して、Snowflakeデータベースまたはデータストアの他のプロパティを変更できます(クエリに使用される仮想ウェアハウスの変更など)。

注釈

Snowflakeデータストアを追加した後、Sparkクラスターを再起動します(既に実行中のSparkクラスターを使用している場合)。Sparkクラスターを再起動すると、Spark用のSnowflakeコネクターとSnowflake JDBC Driver用の :file:` .jar` ファイルがインストールされます。

QuboleでのSnowflakeデータストアの検証

Snowflakeデータストアが作成され、アクティブ化されたことを検証するには、 E​xplore ページの左上にあるドロップダウンリストをクリックします。緑色の点は、データストアがアクティブ化されたことを示します。

また、 Explore ページの左ペインのテーブルエクスプローラーウィジェットに、データストアで指定されたSnowflakeデータベースのすべてのテーブルが表示されていることを確認する必要があります。

Quboleでのクエリプッシュダウン

Sparkクエリは、Snowflakeの自動クエリプッシュダウン最適化の恩恵を受けることで、パフォーマンスが向上します。デフォルトでは、SnowflakeクエリプッシュダウンはQubooleで有効化されています。

クエリプッシュダウンの詳細については、 Sparkクエリ処理をSnowflakeにプッシュする (Snowflakeブログ)をご参照ください。