fabric-onelake-2025 について
Azure Data FactoryとMicrosoft FabricのLakehouse、Warehouse、OneLakeを連携するためのスキルです。データパイプラインを構築するエンジニア向けに、コネクタの操作、認証、連携パターン、トラブルシューティングをまとめています。
主な機能
- 01LakehouseとWarehouseのコネクタ
- 02コピー、検索、メタデータ操作
- 03マネージドID認証のガイダンス
- 04OneLakeショートカットと増分ロードのパターン
- 05権限設定とトラブルシューティング
活用シーン
- 01Fabric Lakehouseへのデータコピー
- 02Fabric Warehouseへのロードとクエリ
- 03Fabricパイプラインを呼び出すワークフローの作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ josiahsiegel/ claude-plugin-marketplace --skill fabric-onelake-2025インストール後、Claude Code で/fabric-onelake-2025を入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/lakehouse-examples.mdonelake-patterns.mdwarehouse-examples.md詳細
Azure Data Factory との Microsoft Fabric 統合(2025)
概要
Microsoft Fabric は、Power BI、Azure Synapse Analytics、Azure Data Factory の機能を組み合わせた統合型の SaaS 分析プラットフォームです。ADF は Fabric Lakehouse および Fabric Warehouse のネイティブコネクタを提供し、ADF と Fabric ワークスペース間でシームレスにデータを移動できます。
Microsoft Fabric Lakehouse コネクタ
Fabric Lakehouse コネクタを使用すると、Microsoft Fabric Lakehouse のテーブルとファイルに対して読み取りおよび書き込み操作を行えます。
サポートされるアクティビティ
| アクティビティ | サポート状況 |
|---|---|
| コピー アクティビティ(ソースおよびシンク) | はい |
| Lookup アクティビティ | はい |
| Get Metadata アクティビティ | はい |
| Delete アクティビティ | はい |
クイックリファレンス
- リンクされたサービスの種類:
Lakehouse - 認証: マネージド ID(推奨)またはサービス プリンシパル
- 必須 ID:
workspaceIdおよびartifactId - シンクの種類:
LakehouseTableSink(テーブル)、LakehouseFileSink(ファイル) - ソースの種類:
LakehouseTableSource - テーブルのアクション オプション:
appendまたはoverwrite
ワークスペース ID とアーティファクト ID の確認方法:
- ブラウザーで Fabric ワークスペースに移動します
- URL からワークスペース ID をコピーします:
https://app.powerbi.com/groups/<workspaceId>/... - Lakehouse の設定を開き、アーティファクト ID を確認します
- または Fabric REST API を使用して、ワークスペースのアイテムを一覧表示します
リンクされたサービス、データセット、コピー アクティビティの完全な JSON の例については、references/lakehouse-examples.md を参照してください。
Microsoft Fabric Warehouse コネクタ
Fabric Warehouse コネクタは、Fabric エコシステム内で T-SQL ベースのデータウェアハウジング機能を提供します。
サポートされるアクティビティ
| アクティビティ | サポート状況 |
|---|---|
| コピー アクティビティ(ソースおよびシンク) | はい |
| Lookup アクティビティ | はい |
| Get Metadata アクティビティ | はい |
| Script アクティビティ | はい |
| Stored Procedure アクティビティ | はい |
クイックリファレンス
- リンクされたサービスの種類:
Warehouse - 認証: システム割り当てマネージド ID(推奨)、ユーザー割り当て MI、またはサービス プリンシパル
- 必須プロパティ:
endpoint、warehouse - シンクの種類:
WarehouseSink - 書き込み動作:
insertまたはupsert - テーブル オプション:
autoCreate(テーブルが存在しない場合に作成)
リンクされたサービス、コピー アクティビティ、ストアド プロシージャ、Script アクティビティの完全な JSON の例については、references/warehouse-examples.md を参照してください。
OneLake 統合パターン
ADF は OneLake との統合パターンを 3 つサポートしています。
| パターン | 説明 | 主なメリット |
|---|---|---|
| ADLS Gen2 ショートカット | OneLake ショートカット経由で ADLS データを参照します(ゼロコピー) | データの重複がありません |
| 増分読み込み | ウォーターマークベースで Lakehouse に増分コピーします | 効率的な更新 |
| クロスプラットフォーム呼び出し | InvokePipeline アクティビティを使用して Fabric パイプラインを呼び出します | ハイブリッド オーケストレーション |
データがすでに ADLS Gen2 にある場合は、OneLake ショートカットが推奨される方法です。データを移動せずに、即座にゼロコピーでアクセスできます。データ変換や形式変換が必要な場合に限り、ADF コピー アクティビティを使用してください。
3 つすべてのパターンの完全なパイプライン JSON の例については、references/onelake-patterns.md を参照してください。
アクセス許可の構成
Fabric での Azure Data Factory マネージド ID のアクセス許可
Fabric Lakehouse の場合:
- Fabric ワークスペースを開きます
- [ワークスペースの設定]->[アクセスの管理]に移動します
- ADF マネージド ID を Contributor ロールで追加します
- または、完全なアクセス権を付与するために Workspace Admin を割り当てます
Fabric Warehouse の場合:
- Warehouse SQL エンドポイントに移動します
- SQL を実行してユーザーを作成します:
CREATE USER [your-adf-name] FROM EXTERNAL PROVIDER;
ALTER ROLE db_datareader ADD MEMBER [your-adf-name];
ALTER ROLE db_datawriter ADD MEMBER [your-adf-name];
サービス プリンシパルのアクセス許可
アプリ登録の設定:
- Microsoft Entra ID でアプリを登録します
- クライアント シークレットを作成します(Key Vault に保存)
- Contributor ロールでアプリを Fabric ワークスペースに追加します
- Warehouse の場合は、上記の手順に従って SQL ユーザーを作成します
ベストプラクティス(2025)
-
マネージド ID を使用する -- 単一の ADF にはシステム割り当て、複数にはユーザー割り当てを使用します。可能な限りサービスプリンシパルキーは避けてください。シークレットはすべて Key Vault に保存します。
-
大容量の読み込みではステージングを有効にする -- データ量が 1 GB を超える場合、複雑な変換を行う場合、または Fabric Warehouse に読み込む場合は、圧縮を使用してステージングします。
-
OneLake ショートカットを活用する --
ADLS Gen2 -> OneLake Shortcut -> Direct Accessを、ADLS Gen2 -> Copy Activity -> Lakehouseの代わりに使用します。データ移動がなく、すぐに利用でき、コストを削減できます。 -
Fabric Capacity Units(CU)を監視する -- パイプライン実行ごとの CU 消費量、ピーク使用量、スロットリングを追跡します。増分読み込み、オフピーク時のスケジュール設定、適切な並列処理により最適化します。
-
Table Option AutoCreate を使用する -- WarehouseSink に
tableOption: "autoCreate"を設定すると、スキーマを自動的に管理でき、開発を高速化できます。 -
エラー処理を実装する -- Copy アクティビティに再試行ポリシーを設定し、
dependencyConditions: ["Failed"]を使って WebActivity ベースの失敗ログ記録を追加します。
よくある問題と解決策
| 問題 | エラーメッセージ | 解決策 |
|---|---|---|
| アクセス許可が拒否されました | "User does not have permission to access Fabric workspace" | ADF のマネージド ID を Contributor として追加します。Warehouse の場合は SQL ユーザーを作成し、反映まで 5 分待ちます |
| エンドポイントが見つかりません | "Unable to connect to endpoint" | workspaceId/artifactId を確認します。ワークスペース URL を確認し、Lakehouse/Warehouse が一時停止されていないことを確認します |
| スキーマが一致しません | "Column types do not match" | tableOption: "autoCreate" を使用するか、translator で明示的な列マッピングを設定します |
| パフォーマンスの低下 | コピーのパフォーマンスが遅い | ステージングを有効にし、parallelCopies(4-8)と DIUs(8-32)を増やして、CU のスロットリングを確認します |
リソース
段階的開示のリファレンス
- Lakehouse の例:
references/lakehouse-examples.md- リンクされたサービス、データセット、コピーアクティビティ、ルックアップの完全な JSON 例 - Warehouse の例:
references/warehouse-examples.md- リンクされたサービス、コピーアクティビティ、ストアドプロシージャ、スクリプトアクティビティの完全な JSON 例 - OneLake のパターン:
references/onelake-patterns.md- ショートカット、増分読み込み、クロスプラットフォームの Invoke Pipeline に関するパイプラインパターン