次の方法で共有


チュートリアル: dbt を Fabric Data Warehouse 用に設定する

適用対象: Microsoft Fabric のウェアハウス

このチュートリアルは dbt の設定と、Fabric Warehouse への最初のプロジェクトのデプロイをガイドします。

はじめに

dbt (データ ビルド ツール) オープンソース フレームワークは、データ変換と分析エンジニアリングを簡略化します。 これは分析レイヤー内の SQL ベースの変換に焦点を当て、SQL をコードとして扱います。 dbt はバージョン管理、モジュール化、テスト、ドキュメントをサポートしています。

Microsoft Fabric 用 dbt アダプターを使用して dbt プロジェクトを作成した後に、それを Fabric Synapse Data Warehouse にデプロイできます。

アダプターを変更するだけで、dbt プロジェクトのターゲット プラットフォームを変更することもできます。たとえば、Azure Synapse 専用 SQL プール用にビルドされたプロジェクトは、数秒で Fabric Synapse Data Warehouse にアップグレードできます。

Microsoft Fabric 用 dbt アダプターの前提条件

次の一覧に従って、dbt の前提条件をインストールして設定します。

  1. Python バージョン 3.7 以降

  2. Microsoft ODBC Driver for SQL Server

  3. pip install dbt-fabric を使用した PyPI (Python Package Index) リポジトリの dbt-fabric アダプターの最新バージョン。

    pip install dbt-fabric
    

    Note

    pip install dbt-fabricpip install dbt-synapse に変更し次の手順を使用することで、Synapse 専用 SQL プール用の dbt アダプターをインストールできます。

  4. 次のように pip list コマンドを使用することで、dbt-fabric とその依存関係がインストールされていることを確認するようにしてください。

    pip list
    

    このコマンドからはパッケージと現在のバージョンの長いリストが返されるはずです。

  5. まだ用意していない場合は、Warehouse を作成します。 この演習には試用版容量を使用できます。Microsoft Fabric 無料試用版にサインアップし、ワークスペースを作成してから、ウェアハウスを作成します。

dbt-fabric アダプターの使用を開始する

このチュートリアルでは Visual Studio Code を使用しますが、自分で選択したツールを使用して構いません。

  1. 自分のマシンに、jaffle_shop デモ dbt プロジェクトをクローンします。

    git clone https://github.com/dbt-labs/jaffle_shop.git
    
  2. Visual Studio Code で jaffle_shop プロジェクト フォルダーを開きます。

    [プロジェクトを開く] が表示されている Visual Studio Code のスクリーンショット。

  3. 既にウェアハウスを作成している場合は、サインアップをスキップできます。

  4. profiles.yml ファイルを作成します。 profiles.yml に次の構成を追加します。 このファイルは、dbt-fabric アダプターを使用して Microsoft Fabric のウェアハウスへの接続を構成します。

    config:
      partial_parse: true
    jaffle_shop:
      target: fabric-dev
      outputs:    
        fabric-dev:
          authentication: CLI
          database: <put the database name here>
          driver: ODBC Driver 18 for SQL Server
          host: <enter your SQL analytics endpoint here>
          schema: dbo
          threads: 4
          type: fabric
    

    Note

    必要に応じて、typefabric から synapse に変更して、データベース アダプターを Azure Synapse Analytics に切り替えます。 既存の dbt プロジェクトのデータ プラットフォームはすべて、データベース アダプターを変更することで変更できます。 詳細については、dbt のサポートされているデータ プラットフォーム一覧を参照してください。

  5. Visual Studio Code ターミナルで Azure に対する自身の認証を行います。

  6. これで接続をテストする準備ができました。 ウェアハウスへの接続をテストするには、Visual Studio Code ターミナルで dbt debug を実行します。

    dbt debug
    

    dbt デバッグ コマンドが表示されている Visual Studio Code のスクリーンショット。

    すべてのチェックが成功した場合は、jaffle_shop dbt プロジェクトから dbt-fabric アダプターを使用してウェアハウスに接続できています。

  7. 次は、アダプターが動作しているかどうかをテストする番です。 最初に dbt seed を実行して、サンプル データをウェアハウスに挿入します。

    dbt seed コマンドが表示されている Visual Studio Code のスクリーンショット。

  8. dbt run を実行していくつかのテストに対してデータを検証します。

    dbt run
    

    dbt run コマンドが表示されている Visual Studio Code のスクリーンショット。

  9. dbt test を実行してデモ dbt プロジェクトで定義されているモデルを実行します。

    dbt test
    

    dbt test コマンドが表示されている Visual Studio Code のスクリーンショット。

これで、dbt プロジェクトが Fabric の Synapse Data Warehouse にデプロイされました。

異なるウェアハウス間を移動する

dbt プロジェクトを異なるウェアハウス間で移動することは簡単です。 サポートされているウェアハウス上の dbt プロジェクトは、次の 3 段階のプロセスですぐに移行できます。

  1. 新しいアダプターをインストールします。 詳細と完全なインストール手順については、「dbt アダプター」を参照してください。

  2. profiles.yml ファイルで type プロパティを更新します。

  3. プロジェクトをビルドします。

考慮事項

dbt-fabric アダプターを使用する場合に考慮すべき重要な点は以下です。

  • Microsoft Fabric のデータ ウェアハウスの現在の制限事項を確認します。

  • Fabric では、ユーザー プリンシパル、ユーザー ID、サービス プリンシパルのための、Microsoft Entra ID (旧称 Azure Active Directory) による認証がサポートされています。 ウェアハウス上で対話形式で作業するために推奨される認証モードは、CLI (コマンド ライン インターフェイス) であり、自動化にサービス プリンシパルを使用します。

  • Microsoft Fabric の Synapse Data Warehouse でサポートされていない T-SQL (Transact-SQL) コマンドを確認します。

  • 一部の T-SQL コマンドは、dbt-fabric アダプターで Create Table as Select (CTAS)、DROPCREATE コマンド (ALTER TABLE ADD/ALTER/DROP COLUMNMERGETRUNCATEsp_rename など) を使用してサポートされます。

  • サポートされている、およびサポートされていないデータ型を確認するには、「サポートされていないデータ型」を参照してください。

  • Issues · microsoft/dbt-fabric · GitHub にアクセスすることで dbt-fabric アダプターの問題をログ記録することができます。