dbt-watsonx-sparkのインストールと使用
このセクションでは、dbt-watsonx-spark をインストールして使う手順を説明します。
開始前に
- IBM Cloud上のwatsonx.dataへのサブスクリプション。
- watsonx.dataにネイティブSparkエンジンを提供します。
- DBTコア をインストールします。
手順
Sparkクエリー・サーバーの作成
Sparkエンジンをdbtツールと統合し、クエリーエンジンとして動作させるには、Sparkクエリーサーバーを作成する必要がある。 Sparkクエリサーバーの作成 」を参照してください。
クエリサーバー接続の詳細を取得する
dbtツールでプロファイルファイルを設定するには、クエリーサーバー接続の詳細を保存する必要があります。 クエリ・サーバ接続の詳細を取得する 」を参照してください。
dbtツール用にprofiles.yamlをセットアップする
- ホームディレクトリの.dbtにある
profiles.ymlファイルにアクセスする。 - パラメータ値を変更して接続の詳細を貼り付けます。
profiles.ymlファイルを設定する。 詳しくは、コンフィギュレーション(プロフィールの設定)をご覧ください。
dbtツールをインストールし、接続を確認する
-
以下のコマンドを実行して、
dbt-watsonx-sparkをインストールしてください。pip install dbt-watsonx-spark -
以下のコマンドを実行して、dbtのバージョンを確認する。
dbt --version -
dbtプロジェクトを作成したい場合は、<project_name>を指定し、以下のコマンドを実行する。
dbt init <project_name>- システムは、使用するデータベースを選択するよう促します。
watsonx_sparkを選択します。 - watsonx.dataのホスト、URI、スキーマを指定してください。
- システムは、使用するデータベースを選択するよう促します。
-
接続をテストするには
cd <project_name> dbt debug -
以下のコマンドを使用してシードを実行し、テーブルを作成してデータを挿入する。
cd <project_name> dbt run -
<project_name>/modelsには、操作を実行するモデルがある。 デフォルトでは、dbtは操作をviewとして設定します。 テーブルやビューは、以下のいずれかの方法で作成できます:-
モデル内部を指定(そのモデルのみに適用)
{{ config(materialized='table/view') }}このステートメントを(--)でコメントアウトしても、dbtはコンフィギュレーションを使用する。 これを無効にするには、これを完全に削除するか、Jinjaスタイルでコメントします(
{# … #})。 -
dbt_project.ymlで指定します (すべてのモデルに適用されます)
models: <project_name>: <model_folders>: +materialized: table/view以下に例を示します。
models: demo: example: +materialized: tableモデル内ではselect文のみがサポートされています。
セミコロン(;)はモデルでは制限されています。
-
-
以下のコマンドを使用してモデルを実行し、テーブルまたはビューを作成します。
cd <project_name> dbt runまた、希望するテストを指定することもできる:
models: - name: <model_name> description: "some description" columns: - name: <col_name> description: "some description" data_tests: - <test_name_1> - <test_name_2>以下に例を示します。
models: - name: my_first_dbt_model description: "A starter dbt model" columns: - name: id description: "The primary key for this table" data_tests: - unique - not_nulldbtを実行するには、コネクタがCreate Table as Select(CTAS)をサポートしている必要があります。
-
実行されたアクションに関する文書を作成するには、以下を実行する:
cd <project_name> dbt docs generate dbt docs serveデフォルトでは、localhost:8080で実行されます。 ポートを変更するには
dbt docs serve –-port <port_number>