Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Copilot in FabricでETL開発はどこまで省力化できるか -ノートブック・パイプ...

Copilot in FabricでETL開発はどこまで省力化できるか -ノートブック・パイプライン・データフローを実際に試してみた結果- [Exploring Copilot in Fabric: How Much Can It Simplify ETL with Notebooks, Pipelines, and Dataflows?]

2025/8/27 19:00~ Microsoft Data Analytics Day(Online) 勉強会にて発表します!
▽勉強会URL
https://sqlserver.connpass.com/event/364307/

後日アーカイブも配信予定です!

# 対象読者
Copilot in Fabricってなに?Copilotによってデータ分析を簡単にしてみたい

#目次
・Copilot in Fabricとは
 ・Copilot in Fabricの種類
 ・使用するうえでの注意事項
 ・Copilot in Fabric (ETL)に期待すること
・Copilot in Fabric (ETL)試してみた!
 ・データフロー
 ・ノートブック
 ・パイプライン
・Copilot in Fabricをどう活用していくか
 ・コストについて
 ・メトリックアプリから見えた課題
 ・Copilot in Fabricを運用する上での戦略
 ・(おまけ) Capacity Metrics や Chargebackで Copilot in Fabricを使う方法
まとめ
参考資料

👉関連 Qiita記事はこちら:https://qiita.com/ReijiOtake/items/2bf91707aed5d9e18100

(English Description)

#Target Readers
Those who wonder “What is Copilot in Fabric?” and want to explore how Copilot can simplify data analytics.

#Table of Contents
・What is Copilot in Fabric?
 ・Types of Copilot in Fabric
 ・Things to Keep in Mind When Using It
 ・Expectations for Copilot in Fabric (ETL)
Trying Out Copilot in Fabric for ETL!
 ・Dataflow
 ・Notebooks
 ・Pipeline
・How to Leverage Copilot in Fabric
 ・Cost Considerations
 ・Challenges Observed from the Metrics App
 ・Strategies for Operating Copilot in Fabric
 ・(Bonus) Using Copilot in Fabric with Capacity Metrics and Chargeback
・Conclusion
・References

👉 Related Qiita article:https://qiita.com/ReijiOtake/items/2bf91707aed5d9e18100

More Decks by 大竹礼二(REIJI OTAKE)

Other Decks in Technology

Transcript

  1. Microsoft Data Analytics Day (Online) 勉強会 2025.8.27 大竹 礼二 Copilot

    in FabricでETL開発はどこまで省力化できるか -ノートブック・パイプライン・データフローを実際に試してみた結果-
  2. 目次 Copilot in Fabricとは • Copilot in Fabricの種類 • 使用するうえでの注意事項

    • Copilot in Fabric (ETL)に期待すること Copilot in Fabric (ETL)試してみた! • データフロー • ノートブック • パイプライン Copilot in Fabricをどう活用していくか • コストについて • メトリックアプリから見えた課題 • Copilot in Fabricを運用する上での戦略 • (おまけ) Capacity Metrics や Chargebackで Copilot in Fabricを使う方法 まとめ 参考資料
  3. 自己紹介 ⚫大竹礼二 ⚫所属:株式会社ジール ⚫経歴:2024年4月 新卒入社(2年目) ⚫仕事 ⚫ Microsoft Fabricでのデータ分析基盤開発 ⚫

    Power BI でのレポート開発 ⚫ Azureでのクラウド基盤開発 ⚫ Etc ⚫My Youtube・Qitta・X ⚫ Microsoft Fabric 学習チャンネル ⚫ ReijiOtake – Qiita ⚫ Reiji Otake(大竹 礼二)(@reireireijinjin)さん / X ⚫保有資格 ⚫データベーススペシャリスト ⚫DP-700(Fabric Data Engineer Associate) ⚫Databricks Certified Data Engineer Associate ⚫基本情報技術者試験 ⚫AZ-900、DP-900、PL-900 ⚫Etc..
  4. ビルトインされた Copilot for Microsoft Fabric による開発生産性向上 Data Factory データ統合・準備 Data

    Warehouse T-SQL クエリ Data Science Python ノートブック開発 Power BI レポート開発 Real-Time Intelligence KQL クエリ Copilot in Fabricとは
  5. Copilot in Fabric を使用するうえでの注意事項 Fabric の Copilot の概要 - Microsoft

    Fabric | Microsoft Learn Fabric で Copilot を有効にする - Microsoft Fabric | Microsoft Learn • Fabric 管理ポータルから有効にする Copilotが使えない場合はまずここを確認 • 試用版容量では使えない • Fabric容量が日本にあってもCopilotによる データ処理は米国で行われる Fabric のデータファクトリー ワークロードにおける Microsoft Copilot の概要 - Microsoft Fabric | Microsoft Learn
  6. Copilot in Fabric (ETL)に期待すること 背景 • 現行分析基盤システムからFabricへの移行を検討中 →FabricにおけるETLツールのビルトインCopilotの実力を試してみた! 要望 •

    現行のETL処理について AI(Copilot in Fabric)を活用・生産性を意識した Fabricへの移行をお願いしたい • (ぶっちゃけ)AIを使って工数を減らしてほしい
  7. 前提:Copilotへの指示・加工処理概要 2. テーブルの結合 3. 集計 4. レイクハウスへのテーブルの保存 DateID MedalionID :

    TollsAmount TotalAmount standard_trip Date USDJPY enrich_quote DateID MedalionID : TollsAmount TotalAmount USDJPY TripAmountJPY standard_trip DateID MedalionID : TollsAmount TotalAmount USDJPY TripAmountJPY standard_trip DateID TotalAmountJPY TripCount enrich_trip 集計(Group by、sum、count) テーブルの結合(LEFT JOIN) 列の追加 演算(掛け算) 1. データの説明
  8. Copilot in Fabric (データフロー) まとめ 課題・注意点・今後に期待すること • 日本語より英語の方が精度が高いケースがまだ多い • 同じプロンプトでも、意図した結果が得られるときとそうでないときがある

    • ステップ生成後のテーブルの保存は、ユーザーが手作業で行う必要がある よいところ • データフローに詳しくないユーザーでも、自然言語の指示でステップを作成で きる心強いサポート • プロンプトから自動でステップや依存関係を構築してくれるため、実装の初期 工数を削減できる • データフロー Gen2 の Copilot は、GUI 操作の手間を大幅に軽減できるのが 特長
  9. Copilot in Fabric (ノートブック) まとめ 課題・注意点・今後に期待すること • チャット Copilotで得られた回答をすぐにセルへコピーできない点は不便 •

    セルのCopilotにおいて、修正箇所がどこかわかりにくい • 指示のプロンプトの曖昧さにより、思ったとおりのコードが生成されない ケースもある よいところ • 一からコードを書くより圧倒的に楽で速い • 高度なコーディングスキルがなくても、基礎的なコードが読めればノートブッ クを活用できる • 全体的な質問はチャット Copilot、個別のエラーはセル Copilot、と使い分けで きるのが強み
  10. Copilot in Fabric (パイプライン) まとめ 課題・注意点・今後に期待すること • アクティビティ内の詳細な 設定値までは自動入力が難しく、手作業が必要 よいところ

    • パイプラインのアクティビティの知識が少ないユーザーでも、自然言語の指示 でアクティビティを作成できる心強いサポート • プロンプトから自動でアクティビティ生成、各アクティビティ間の依存関係を 構築してくれるため、実装の初期工数を削減できる
  11. Copilot in Fabricの コスト Microsoft Fabric での Copilot のしくみ -

    Microsoft Fabric | Microsoft Learn Copilot 使用量 - Microsoft Fabric | Microsoft Learn ポイント:1000トークン単位でCU消費がされる
  12. Operation name CU 備考(概算) Dataflow Refresh 3003.3 10ステップ(マージ、列の追加、集計) Copilot in

    Fabric 7120.6 入力10回、入力トークン:約10000 ノートブック Operation name CU 備考(概算) Notebook Run 5528.3 マージ、列の追加、集計、データの可視化 Copilot in Fabric 39026.3 入力11回、入力トークン:約11000 パイプライン Operation name CU 備考(概算) Datamovement 1080.0 コピーアクティビティ×2(合計500MBほど) Copilot in Fabric 1907.9 入力3回、入力トークン:約3000 メトリックアプリ取得したCopilot のCU消費量 課題 実際のアイテムの処理よりCopilot利用時のCU消費が大きい(約2倍!ノートブックだと7倍!) →Copilot を活用することで効率化は可能だが、コスト面の影響に注意が必要 →特に多数ユーザーが同時利用する場合は、容量使用量の圧迫リスクに留意する必要がある データフロー
  13. Copilot in Fabric (ETL)まとめ(感想) 課題・注意点 • トークン単位での課金モデルにより、予想以上にコストが膨らむ可能性がある • 複数ユーザーにるCopilotの使用の場合は、通常ワークロードに影響しないような運用検討が 必要

    • Fabricを習熟しているユーザーにとっては、 手動で作業した方が効率的なケースもある • Copilotの出力の品質にはまだばらつきがあるため、検証や手直しが前提となる • Copilot の提案が正しいかどうかを判断するには、 一定の知識・経験が不可欠 よいところ • 開発者がステップの目的を明確に言語化できる限り、複雑でない集計や演算処理の実装につい ては約半分程度の作業工数を削減できる可能性がある。(※感想) • 学習コストの軽減:Fabric を初めて触る人でもCopilotの提案から学べる • 専門知識が少ないメンバーでも、Copilotのガイダンスを活用してより複雑な ETL を構築可能 →データの民主化を促進し、内製化の推進に大きく貢献することが期待される • 外部の AI サービスと異なり、Fabric に組み込まれているため 直接アクティビティやステップ を生成できる省力化のメリットがある
  14. 参考資料 ▼ Copilot in Fabricとは Fabric の Copilot の概要 -

    Microsoft Fabric | Microsoft Learn Microsoft Fabric での Copilot のしくみ - Microsoft Fabric | Microsoft Learn ▼各ワークロードのCopilot in Fabric Fabric のデータファクトリー ワークロードにおける Microsoft Copilot の概要 - Microsoft Fabric | Microsoft Learn Microsoft Fabric のデータ サイエンスとデータ エンジニアリングの Copilot の概要 (プレビュー) - Microsoft Fabric | Microsoft Learn ▼FabricのCopilot料金系 Copilot 使用量 - Microsoft Fabric | Microsoft Learn ▼FabricのCopilot設定など Fabric で Copilot を有効にする - Microsoft Fabric | Microsoft Learn Copilot 管理者設定 - Microsoft Fabric | Microsoft Learn
  15. データフローで試したプロンプト • クエリの説明をお願いします • Standard_tripのDateID列とenrich_quateのDate列を使ってテーブルを結合したいです。その後Enrich_quateのUSDJPY 列をStandard_tripに持ってきてください。 • I want to

    join the tables using the DateID column from Standard_trip and the Date column from enrich_quate. Bring the USDJPY column from Enrich_quate into Standard_trip. • USDJPY列にnullが入っているのはおかしい。おそらくenrich_quateのステップが原因だ。現在のenrich_quateステッ プではenrich_quateテーブルの一部しか持ってきていないようだ。なので、enrich_quateテーブル全部をソースとし て持ってくるべきだ。ステップをやり直して • Standard_tripの「Totalamount」列に、「USDJPY」のレートを掛け合わせ、「TripAmountJPY」を算出する(新しい 列の追加)をすることはできますか? • 「TripAmountJPY」を「DateID」ごとに集計し、日別の売上金額を計算するあわせて、件数をカウントし、 「TripCount」として日別に集計する これはできますか? • 作成したテーブルをLH_Silver内のテーブル領域に新規テーブル「enrich_trip_by_DF」として保存したいです。 ※グレーのプロンプト:うまくいかなかったもの
  16. ノートブックで試したプロンプト • 接続されているレイクハウス内にあるテーブルの一覧をください。 • Standard_tripのDateID列に対してenrich_quateのDate ID列を使って2つのテーブルを結合したいです。Enrich_quate のUSDJPY列をtripテーブルに持ってきたいです。 • innnerではなく、standard_trip基準のLeftJOINにしてください。 •

    Use Left JOIN with standard_trip criteria instead of inner. • 次に、先ほどの結果テーブルに対して、「Totalamount」列に、「USDJPY」のレートを掛け合わせ、 「TripAmountJPY」を算出する(新しい列の追加)をすることはできますか? • 次に、先ほどの結果ーブルに対して「TripAmountJPY」を「DateID」ごとに集計し、日別の売上金額を計算するあ わせて、件数をカウントし、「TripCount」として日別に集計する これはできますか? • 次に、先ほど作成した結果テーブルをLH_Silver内のテーブル領域に新規テーブル「enrich_trip_by_NB」として保存 したいです。 • レイクハウスにあるenrich_trip_by_nbに対して分析がしたいです。DailyRevenueJPYが多い日を知りたいです。棒グ ラフで可視化してください。 ※グレーのプロンプト:うまくいかなかったもの