ユーザー データ関数を使用すると、Microsoft Fabric間および外部アプリケーションから呼び出すことができる再利用可能なPython関数を作成できます。 ビジネス ロジックを 1 回記述し、パイプライン、ノートブック、アクティベーター ルール、Power BIのトランスリティカル タスク フロー、または REST エンドポイント経由の外部システムから呼び出します。
ユーザー データ関数は、Fabricでカスタム Python コードを直接ホストして実行できるサーバーレス コンピューティング環境を提供します。 製品カテゴリを標準化する必要がある場合でも、複雑なビジネス ルールを適用する必要がある場合でも、外部 API と統合する必要がある場合でも、データ プラットフォーム全体ですぐに使用できる関数を記述できます。 このサービスでは、 Python 3.11.9 ランタイム、 PyPI からのパブリック ライブラリ、 および Fabric データ接続がサポートされています。
作業を開始する準備はできましたか? このガイドに従って、新しいユーザー データ関数項目を作成する、または VS Code 拡張機能を使用します。
Fabric ユーザー データ関数を使用する理由
Fabric ユーザー データ関数は、カスタム ロジックをホストし、さまざまな種類の Fabric 項目とデータ ソースから呼び出すサーバーレス プラットフォームを提供します。 このサービスを使用して、Fabric ソリューションに統合されるビジネス ロジック、内部アルゴリズム、再利用可能な関数を記述できます。
主な利点は次のとおりです。
- Reusability: ビジネス ロジックをユーザー データ関数として 1 回記述し、複数のFabric項目 (パイプライン、ノートブック、アクティベーター ルール、Power BIトランスリティカル タスク フロー) から呼び出します。 ビジネス ルールが変更された場合は、複数の場所でコードを変更するのではなく、関数を 1 回更新します。
- サーバーレス ホスティング: インフラストラクチャを管理せずに Python 関数をデプロイします。 ユーザー データ関数は、組み込みの認証を備えたサーバーレス コンピューティング環境を提供するため、個別の API サービスまたはコンテナーを設定して維持する必要がなくなります。
- 外部接続: 各関数は、独自の一意の REST エンドポイントを自動的に公開し、外部アプリケーション、Web サービス、およびカスタム クライアントとの統合を可能にします。 HTTP 要求をサポートするすべてのシステムから関数を呼び出します。
主な機能
- 1 回書き込み、任意の場所で実行する: パイプライン、ノートブック、アクティベーター ルール、Power BI、または外部 REST 呼び出しから呼び出された場合でも、同じように機能する関数を作成します
- 豊富な Python エコシステム: PyPI の任意のパッケージを使用して、高度なロジック (データ操作用の pandas、API 呼び出しの要求、ドメイン用の特殊なライブラリ) を構築します
- セキュリティで保護されたデータ アクセス: 組み込みの認証とセキュリティを使用して Fabric データ ソース (SQL データベース、ウェアハウス、Lakehouses、ミラー化されたデータベース) に接続する
- ワークフローの開発と発行: 関数を発行する前にテストし、呼び出しに使用できるようになる前に変更が検証されていることを確認する
統合機能
ユーザー データ関数は、Microsoft Fabric のワークロードや外部システムとシームレスに統合されるため、包括的なデータ ソリューションを構築できます。
Fabric項目からの呼び出し
任意の Fabric ワークロードから関数を呼び出して、ビジネス ロジックを一元化し、一貫性を維持します。
- データ パイプライン - データ 変換、検証、またはオーケストレーション ロジックのパイプライン アクティビティとして関数を実行する
- ノートブック - PySpark または Python ノートブックから関数を呼び出して、データ サイエンス ワークフローと探索的分析を行う
- アクティベーター ルール - リアルタイム イベントとストリーミング データに応答して関数をトリガーする
- Power BIトランスリティカル タスク フロー - 対話型データ エクスペリエンスのためにPower BI レポートから関数を直接呼び出します。 ユーザー データ関数は、要求ペイロードでレポート コンテキスト (現在のフィルターや選択コンテキストなど) を受け取り、レポート内からアクションの実行と書き戻しのシナリオを有効にすることができます。 書き戻しが完了すると、レポートのデータの可視性は、レポートのストレージ モードと更新セマンティクスによって異なります。更新された値は、Direct Lake レポートまたは DirectQuery レポートの場合は直ちに表示されます。または、インポート モード レポートのタスク フローによってトリガーされた自動更新の後に表示されます。
Fabric データ ソースに接続する
関数は、Fabric プラットフォーム全体から安全にデータにアクセスできます。
- SQL データベース - Fabric SQL データベースに対する読み取りと書き込みの操作
- ウェアハウス - 構造化データの読み取りおよび書き込み操作
- Lakehouses - Lakehouse ファイルの読み取りと書き込み。SQL エンドポイントへの読み取り専用アクセス
- ミラー化されたデータベースへのデータの読み取り専用アクセス
Power BI Translytical タスク フローからの書き戻しは、ユーザー データ関数を呼び出すときにネイティブにサポートされます。 ユーザー データ関数は、SQL Database、Fabric Data Warehouse、および Lakehouse ファイルFabric対して追加、更新、削除の操作を実行できるため、タスク フロー駆動型のライトバック シナリオに最適な統合ポイントになります。
Fabric データ ソースへの接続について詳しくは、こちらをご覧ください。
外部アプリケーションからの呼び出し
各ユーザー データ関数は、Fabric 外部のシステムと統合するために、独自の一意の REST エンドポイントを自動的に公開します。
- Web アプリケーション - Web アプリ、モバイル アプリ、またはシングルページ アプリケーションから関数を呼び出す
- External サービス - 外部システム、マイクロサービス、またはレガシ アプリケーションと統合します 。たとえば、メッセージや更新をMicrosoft Teamsに投稿したり、タスク フロードリブン アクションの一部として外部 REST API を呼び出したりします
- API ワークフロー - 関数を他の API と連結して複雑な統合シナリオを構築する
- カスタム クライアント - HTTP 要求をサポートする任意のプログラミング言語またはプラットフォームからの呼び出し
ユーザー データ関数の REST エンドポイントは、Microsoft Entra ID 認証をサポートし、外部システムからの安全なアクセスを保証します。 Python アプリケーションからユーザー データ関数を呼び出す方法について説明します。
概要
最初のユーザー データ関数を作成する準備はできましたか? 好みの開発環境を選択します。
- Fabric ポータルで関数を作成する - ブラウザーベースの開発とテストを含むクイック スタート ガイド
- Visual Studio Code を使用した開発 - ローカル デバッグと Git 統合を使用した完全な IDE エクスペリエンス
関連コンテンツ
- ユーザー データ関数プログラミング モデル - Python SDK、デコレーター、高度な機能の詳細
- Python アプリケーションから関数を呼び出す - 外部システムから REST エンドポイントを介して関数を呼び出す方法について説明します