よくある GraphQL 用 Fabric API の質問に対する回答を見つけます。
GraphQL とは何か?
GraphQL は、アプリが必要なデータを正確に要求できるようにする API のクエリ言語です。 主な利点は次のとおりです。
- 強力な型システム - 使用可能なデータを明確に記述する
- 正確なデータ フェッチ - 特定の要求を許可することで、過剰なフェッチを減らします
- 下位互換性 - 既存のコードを壊さずに API の更新を容易にする
- リッチなツール - 幅広い開発者ツールの使用が可能
これは、アプリケーションがサーバーやデータベースと通信するためのより効率的な方法です。
Microsoft Fabric API for GraphQL とは
Microsoft Fabric GraphQL 用 API は、GraphQL API を数秒で作成できるマネージド サービスです。
サポートされているデータ ソース:
- Microsoft Fabricのデータ ウェアハウス
- Microsoft Fabric レイクハウスズ
- Microsoft Fabric ミラー化されたデータベース
- Microsoft Fabric SQL データベース
- Azure SQL データベース
サポートされているこれらのデータ ソースからデータを照会および変更するための統合 API レイヤが提供されます。
GraphQL 用 Fabric API でサポートされている GraphQL 操作とは
GraphQL クエリ (読み取り) と変更 (書き込み) のみが現在サポートされています。 SQL Analytics エンドポイント経由で公開されるデータ ソースは読み取り専用であるため、クエリのみをサポートします。 Data Warehouse の場合は、変更を自動的に生成するために主キーを定義する必要があります。
GraphQL 用 Fabric API でリゾルバーを表示および編集するにはどうすればよいですか?
リゾルバーは、API のフィールドを解決し、データ ソースに存在するデータに対して操作を実行するビジネス ロジックを提供する GraphQL コンポーネントです。
自動生成: 新しいデータ ソースをアタッチするか、既存のデータ ソースから公開する新しいオブジェクトを選択するたびに、Fabric によってリゾルバーが自動的に生成されます。
カスタマイズ: 現時点では、リゾルバーを直接カスタマイズすることはできません。 GraphQL 用 API でカスタマイズされたビジネス ロジックの場合は、データ ソースに ストアド プロシージャ を作成し、GraphQL API で公開できます。
GraphQL クライアント アプリケーションの API では、クエリや変更を実行するためにデータ ソースへのaccessが必要ですか?
Microsoft Entra ID authentication: Api for GraphQL では、アプリケーションで認証にMicrosoft Entra IDを使用する必要があります。 クライアント アプリケーションを登録し、Fabric に対して API 呼び出しを実行するように構成する必要があります。
必要なアクセス許可:
- Microsoft Entra に登録されているアプリには、Power BI serviceに対する GraphQLApi.Execute.All アクセス許可が必要です。 詳細については、「
Azure を参照してください。
Single サインオン (SSO) 構成: SSO を使用するように API が構成されている場合、認証されたユーザーまたはサービス プリンシパルは両方にアクセスが必要です。
- GraphQL API (問い合わせと変更の実行 パーミッション)
- データソース (必要に応じて読み取りまたは書き込みのアクセス)
ワークスペース レベルのアクセスオプション: あるいは、APIとデータソース項目が存在するワークスペースに、貢献者の役割を持つメンバーとしてユーザーまたはサービスプリンシパルを割り当てます。 これにより、1 つの場所から両方の項目に必要なaccessが提供されます。 詳細については、「ワークスペースへのアクセスの付与」を参照してください。
保存された資格情報の構成: API が保存された資格情報を使用するように構成されている場合、認証されたユーザーまたはサービス プリンシパルは API にのみアクセスする必要があります (API に直接アクセス許可を追加するときにクエリと変更を実行オプションを選択します)。
例: ユーザー プリンシパルと サービス プリンシパル の両方のサンプル コードを含むエンド ツー エンドの例については、 Connect Applications を参照してください。
GraphQL 用 API のサポートチケットはどのように発行しますか?
Fabric API for GraphQL に関するサポートを受けるには、Fabric サポート サイトにアクセスし、データエンジニアリングオプションを選択してください。
GraphQL 用 API はPrivate Linkをサポートしていますか?
GraphQL 用 API では、現時点では Tenant Level Private Link のみがサポートされています。
最初にリクエストを発行したときのパフォーマンスが悪く、その後のリクエストでは良くなるのはなぜですか?
この "コールド スタート" 動作には、主に次の 2 つの理由があります。
データ ソースのウォームアップ:
- データ ソースをコールド状態からウォームアップする必要がある場合、最初の要求に時間がかかる場合があります
- データ ソースがコールドでない場合でも、データ ソースに必要なデータがメモリに読み込まれていない場合、GraphQL が初めてクエリを発行する場合、データの取得は効率的ではない可能性があります
API エンドポイントの初期化:
- システムがスキーマと構成を読み込む必要があるため、GraphQL エンドポイント用 API への最初の要求に時間がかかる場合があります
- システムが既にウォームアップされ、要求を処理する準備ができているため、後続の要求の方が高速です
詳細については、 パフォーマンスのベスト プラクティスを参照してください。
GraphQL 用 API に関するフィードバックや提案を提供するにはどうすればよいですか?
フィードバックとご提案をお待ちしております。 Fabric Ideasを通じてフィードバックを提供できます。 Microsoft のチームは、このプラットフォームを通じて送信されたフィードバックと提案を積極的に監視します。 特定のクエリや懸念事項については、Microsoft Fabric サポートから問い合わせることもできます。