この記事では、Fabric の Cosmos DB に関してよく寄せられる質問に回答します。
General
Fabric の Cosmos DB とは
Microsoft Fabric は、エンタープライズ対応のエンド ツー エンドのデータ プラットフォームです。 Fabric は、データ移動、データベース、データ エンジニアリング、データ サイエンス、リアルタイム インテリジェンス、BI と副操縦、アプリケーション開発を統合します。 これらのサービスを複数のベンダーから個別にまとめる必要がなくなりました。
Fabric の Cosmos DB は、AI に最適化された NoSQL データベースであり、簡素化されたエクスペリエンスを通じてアプリケーションのニーズを満たすように自動的に構成されます。 開発者は Fabric で Cosmos DB を使用して、複雑なデータベース設定を管理することなく、AI アプリケーションを簡単に構築できます。 Microsoft Fabric の Cosmos DB は、データベースの動的スケーリング、高可用性、信頼性を提供する Azure Cosmos DB に基づいています。
Cosmos DB は分散 NoSQL データベースです。 半構造化データまたは非構造化データは、Fabric の Cosmos DB に格納できます。 Fabric の Cosmos DB は、リレーショナル データと Fabric の OneLake のデータと共に使用できるため、アプリケーションの統合データ プラットフォームが可能になります。
Cosmos DB データは、Fabric OneLake で自動的に使用できるようになります。 この統合により、Cosmos DB と Fabric プラットフォームの残りの部分が緊密に統合され、シームレスな分析、リアルタイム インテリジェンス、ユーザー データ関数 (UDF)、GraphQL、データ サイエンス、BI と Copilot、データ エージェントがすべて 1 か所で実現されます。
詳細については、「 Fabric の Cosmos DB」を参照してください。
Fabric の Cosmos DB と Azure Cosmos DB の違い
Fabric の Cosmos DB は、Azure Cosmos DB と同じ基になるエンジンとインフラストラクチャを使用し、同じパフォーマンス、信頼性、可用性の保証を提供します。 ただし、主な違いは次のとおりです:
- 統合: Fabric の Cosmos DB は Microsoft Fabric と OneLake と緊密に統合されており、ETL パイプラインを使用せずに分析用の自動データ ミラーリングを提供します。
- 管理: Fabric の Cosmos DB は、最適化された既定値を使用して管理エクスペリエンスを簡素化し、データベース管理の複雑さを軽減します。
- 課金: 使用量は、Azure 要求ユニット (RU) ではなく Fabric 容量ユニット (CU) で測定され、Fabric 容量を通じて課金されます。
- 認証: Fabric の Cosmos DB では、プライマリキーまたはセカンダリ キーを使用しない Microsoft Entra 認証のみを使用します。
- ライセンス: Power BI Premium、ファブリック容量、または試用版容量ライセンスが必要です。
詳細については、 Fabric の Cosmos DB の概要 と 課金と使用状況に関するページを参照してください。
Fabric の Cosmos DB はスキーマフリーデータをサポートしていますか?
Yes. Fabric の Cosmos DB を使用すると、アプリケーションはスキーマ定義やヒントなしで任意の JSON ドキュメントを格納できます。 柔軟なスキーマレス データ モデルは、半構造化データまたは非構造化データに最適であり、時間の経過と同時にデータ モデルを簡単に進化させることができます。 NoSQL クエリ言語を使用したクエリでは、データをすぐに使用できます。
詳細については、 Fabric での Cosmos DB の概要に関するページを参照してください。
Fabric で Cosmos DB の使用を開始するにはどうすればよいですか?
Fabric で Cosmos DB の使用を開始するには:
- Power BI Premium、ファブリック容量、または試用版容量ライセンスがあることを確認します。
- Fabric ポータルに移動し、ワークスペースに新しい Cosmos DB データベースを作成します。
- データを格納するコンテナーを作成します。
- Microsoft Entra 認証を使用して Cosmos DB SDK を使用してデータベースに接続します。
詳細なガイドについては、「 クイック スタート: Microsoft Fabric で Cosmos DB データベースを作成する」を参照してください。
Connectivity
Fabric で Cosmos DB に接続するにはどうすればよいですか?
Microsoft Fabric は、Cosmos DB ソフトウェア開発キット (SDK) と互換性のあるエンドポイントを公開します。 これらの SDK と対応する Azure ID ライブラリを使用して、Microsoft Entra 認証を使用してデータベースに直接接続する必要があります。 詳細については、「 Microsoft Entra ID を使用して Microsoft Fabric の Cosmos DB に接続する」を参照してください。
Fabric の Cosmos DB でサポートされている Azure Cosmos DB SDK はどれですか?
Fabric の Cosmos DB では、次のような Cosmos DB SDK がサポートされています。
- .NET SDK
- Python SDK
- Java SDK
- JavaScript/Node.js SDK
- GO SDK
- Rust SDK
- Apache Spark SDK
Microsoft Entra 認証用の Azure ID ライブラリと共に、これらの SDK を使用します。 詳細については、「 Fabric での Cosmos DB への接続」を参照してください。
接続文字列または主キーを使用して Fabric の Cosmos DB に接続できますか?
いいえ。プライマリ キーとセカンダリ キーはサポートされていません。 認証には、Microsoft Entra ID (ユーザー ID、サービス プリンシパル、またはマネージド ID) を使用する必要があります。
詳細については、「 Fabric での Cosmos DB の認証」を参照してください。
クエリとデータ操作
Fabric の Cosmos DB のデータに対してクエリを実行するために使用できるクエリ言語は何ですか?
Fabric の Cosmos DB では、主にデータのクエリ用に NoSQL クエリ言語がサポートされています。
NoSQL クエリ言語は、JSON データを操作するための強力な米国標準研究所 (ANSI) 構造化クエリ言語 (SQL) のような構文を提供します。 この言語は、JSON ドキュメントの柔軟性と階層性をサポートしながら、SQL エクスペリエンスを持つユーザーにとってなじみのあるものに設計されています。
Fabric の Cosmos DB の組み込みミラーリング機能では、T-SQL を使用してデータを照会することもできます。 ミラーリングと SQL 分析エンドポイントを使用すると、使い慣れた T-SQL 構文を使用して Cosmos DB データを操作できるため、既存の SQL ベースのワークフローやツールとの統合が容易になります。
詳細については、 NoSQL クエリ言語の使用を参照してください。
Fabric の Cosmos DB は集計関数をサポートしていますか?
Yes. Fabric の Cosmos DB では、COUNT、MAX、MIN、AVG、SUM など、NoSQL クエリ言語の集計関数を使用した集計がサポートされています。 これらの関数は、データに対する分析を実行するクエリで使用できます。
詳細については、 NoSQL クエリ言語のドキュメントを参照してください。
Fabric の Cosmos DB は ACID トランザクションをサポートしていますか?
Yes. Fabric の Cosmos DB では、1 つのパーティション内のドキュメント間トランザクションがサポートされます。 トランザクションのスコープは 1 つの論理パーティションに設定され、ACID セマンティクス (アトミック性、整合性、分離性、持続性) を "すべてまたはまったく" として実行し、同時に実行される他の操作から分離されます。 例外が発生した場合は、トランザクション全体がロールバックされます。
トランザクションは、SDK のトランザクション バッチ操作を使用して実行できます。
詳細については、「 Cosmos DB トランザクション」を参照してください。
Fabric の Cosmos DB はコンカレンシーをどのように処理しますか?
Fabric の Cosmos DB では、HTTP エンティティ タグ (ETag) によるオプティミスティック コンカレンシー制御 (OCC) がサポートされています。 すべてのリソースには、ドキュメントが更新されるたびにサーバーで設定される ETag があります。 ETag を If-Match ヘッダーと共に使用して、サーバーがリソースを更新するかどうかを決定できます。 ETag が最新でない場合、サーバーは "HTTP 412 前提条件エラー" 応答コードを使用して操作を拒否し、クライアントはリソースを再フェッチして現在の ETag 値を取得する必要があります。
ほとんどの Cosmos DB SDK には、オプティミスティック コンカレンシー制御を管理するためのクラスが含まれています。 詳細については、 Cosmos DB でのオプティミスティック コンカレンシー制御に関するページを参照してください。
Fabric 内の複数の Cosmos DB データベース間でデータのクエリを実行できますか?
Yes. Fabric の Cosmos DB では、データベース間クエリがサポートされているため、同じ Fabric ワークスペース内の複数の Cosmos DB データベースや SQL データベースにまたがるデータに対してクエリを実行できます。 この統合クエリ エクスペリエンスにより、データ資産全体にわたる強力な分析が可能になります。
詳細については、Fabric の Cosmos DB でのデータベース間クエリを参照してください。
データ レプリケーションと OneLake の統合
Fabric の Cosmos DB での OneLake へのデータ レプリケーションのしくみ
Fabric データベース内のすべての Cosmos DB は、Delta Parquet 形式で OneLake にデータを自動的にミラーリングします。 このミラーリングは、追加の構成やセットアップなしでほぼリアルタイムで行われます。 ミラー化されたデータは、分析、データ サイエンス、Power BI レポート、およびその他の Fabric ワークロードにすぐに使用できます。
詳細については、Fabric の Cosmos DB のミラー OneLake に関するページを参照してください。
OneLake へのデータ変更のレプリケートにはどのくらいの時間がかかりますか?
Fabric の Cosmos DB から OneLake へのデータ レプリケーションは、ほぼリアルタイムで行われます。 挿入、更新、および削除は、最小限の待機時間でレプリケートされます。通常は、変更の量に応じて数秒以内にレプリケートされます。
詳細については、Fabric の Cosmos DB のミラー OneLake に関するページを参照してください。
OneLake へのデータ レプリケーションを無効にすることはできますか?
No. OneLake へのデータ レプリケーションは、Fabric の Cosmos DB のコア機能であり、無効にすることはできません。 Cosmos DB コンテナー内のすべてのデータは、Delta Parquet 形式で OneLake に自動的にミラーリングされます。
詳細については、Fabric の Cosmos DB のミラー OneLake に関するページを参照してください。
Power BI レポートでは、Fabric の Cosmos DB で Direct Lake モードを使用できますか?
Yes. OneLake では、Cosmos DB テーブルは、Power BI の Direct Lake モードをサポートする v オーダーデルタ テーブルとして格納されます。 これにより、データを重複することなく、Cosmos DB データに対して直接、高パフォーマンスで待機時間の短いレポートを作成できます。
詳細については、「 Fabric で Cosmos DB を使用してレポートを作成する」を参照してください。
OneLake へのデータ レプリケーションの状態を確認するにはどうすればよいですか?
レプリケーションの状態を確認するには、Fabric ポータルでデータベースのレプリケーション セクションに移動します。 このセクションでは、最後の同期の状態や発生した可能性のあるエラーなど、レプリケーションに関するメタデータを表示します。
詳細については、Fabric の Cosmos DB のミラー OneLake に関するページを参照してください。
スループットとパフォーマンス
Fabric の Cosmos DB の要求ユニット (RU) とは
要求ユニット (RU) は、データベース操作を実行するために必要なシステム リソース (CPU、IOPS、メモリ) を抽象化するパフォーマンス通貨です。 読み取り、書き込み、クエリ、更新を含むすべてのデータベース操作は RU で測定されます。 たとえば、1 KB の項目に対して読み取られたポイントは、1 つの要求ユニットを使用します。
Fabric の Cosmos DB では、要求ユニットは、課金と使用状況レポートのために Fabric 容量ユニット (CU) に変換されます。
詳細については、 Fabric の Cosmos DB の要求ユニット と 課金と使用率に関する説明を参照してください。
Fabric の Cosmos DB での自動スケーリングのしくみ
Fabric の Cosmos DB 内のすべてのコンテナーでは、自動スケールプロビジョニングスループットが使用されます。 自動スケーリングでは、コンテナーはワークロードの需要に基づいてスループットを自動的にスケーリングし、構成された最大スループット (RU/秒) の 10% から 100% の間でスケーリングします。 ワークロードがアイドル状態になると、コストを最小限に抑えるために、最大% 10 にスケールダウンされます。 需要が増加すると、ウォームアップ期間なしで即座にスケールアップします。
Fabric ポータルで作成されたコンテナーの既定の自動スケール スループットは 5,000 RU/秒です。 これは、Cosmos DB SDK を使用して 1,000 から 50,000 RU/秒の間で調整できます。
詳細については、Fabric の Cosmos DB での自動スケーリングのスループットに関する説明を参照してください。
自動スケーリングではなく、サーバーレスまたは手動 (標準) プロビジョニングスループットを使用できますか?
No. Fabric の Cosmos DB 内のすべてのコンテナーでは、自動スケールプロビジョニングスループットを使用する必要があります。 サーバーレスおよび手動 (標準) プロビジョニングスループットはサポートされていません。 SDK を使用して作成されたコンテナーでは、コンテナーの作成時にスループットが自動スケーリングに設定されている必要があります。または、"プランの種類はアカウントの自動スケーリングに制限されています" というエラーがスローされます。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
Fabric の Cosmos DB のコンテナーのスループット制限は何ですか?
- コンテナーでは、既定で 50,000 要求ユニット/秒 (RU/秒) の最大自動スケール スループットがサポートされています。
- Fabric ポータルで作成されたコンテナーには、5,000 RU/秒の最大自動スケール スループットが自動的に割り当てられます。
- SDK を使用して作成されたコンテナーは、許可される最大自動スケール スループットまで、1,000 RU/秒以上で設定できます。
サポート チケットを送信することで、50,000 RU/秒を超える最大スループットを増やすことができます。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
コンテナーのスループット (RU/秒) を変更するにはどうすればよいですか?
Cosmos DB SDK を使用して、コンテナーの自動スケール スループットを読み取って更新できます。 SDK のスループット管理方法を使用して、現在のスループットを取得し、新しい値に置き換えます。
コード例については、Fabric の Cosmos DB での自動スケーリングのスループットに関する説明を参照してください。
インデックス作成と検索
Fabric の Cosmos DB はどのようなインデックス作成機能をサポートしていますか?
Fabric の Cosmos DB では、既定で自動インデックス作成がサポートされています。 JSON ドキュメント内のすべてのプロパティには、既定で自動的にインデックスが作成されます。 ユーザーは、特定のパスを含めたり除外したり、インデックスの種類を構成したり、クエリ パターンに合わせて最適化したりするためのカスタム インデックス作成ポリシーを定義することもできます。
Fabric の Cosmos DB では、いくつかのインデックスの種類がサポートされています。
- 範囲インデックス: 数値型、文字列型、および日付型に対する範囲クエリのサポート。
- 空間インデックス: ポイント、ライン、ポリゴンのデータ型を使用した地理空間クエリのサポート。
- 複合インデックス: 複数のプロパティを同時にフィルター処理または並べ替えるクエリの最適化をサポートします。
- ベクター インデックス: DiskANN または量子化フラット ベクター インデックスを使用した AI アプリケーションのベクター埋め込みのインデックス作成と検索のサポート。
- フルテキスト インデックス: 言語固有のサポートを使用して、ドキュメントのフルテキスト インデックス作成と検索をサポートします。
詳細については、 Fabric での Cosmos DB でのインデックス作成 と ベクター インデックス作成に関する説明を参照してください。
コンテナーのインデックス作成ポリシーをカスタマイズするにはどうすればよいですか?
コンテナーの作成時にインデックス作成ポリシーをカスタマイズしたり、Cosmos DB SDK を使用して後で更新したりできます。 インデックス作成ポリシーを使用すると、インデックス作成に含めるパスまたはインデックスから除外するパスを指定したり、インデックスの種類 (範囲、空間、複合) を構成したり、クエリのパフォーマンスを最適化したりすることができます。
詳細については、「Fabric の Cosmos DB でインデックス作成ポリシーをカスタマイズする」を参照してください。
Fabric の Cosmos DB はベクター検索をサポートしていますか?
Yes. Fabric の Cosmos DB では、ベクター インデックス作成と検索がサポートされており、類似性検索機能を備えた AI を利用したアプリケーションが可能になります。 ベクター埋め込みを JSON ドキュメントと共に格納およびインデックス付けし、DiskANN または量子化フラット ベクター インデックスを使用して効率的なベクター検索を実行できます。
詳細については、Fabric での Cosmos DB でのベクター インデックス作成 と ハイブリッド検索に関する説明を参照してください。
セキュリティとコンプライアンス
Fabric の Cosmos DB でデータをセキュリティで保護するにはどうすればよいですか?
Fabric の Cosmos DB には、既定でデータを保護するためのセキュリティ機能がいくつか用意されています。 これらの機能には次のものが含まれますが、これらに限定されるわけではありません。
- セキュリティで保護されたアクセスのための Microsoft Entra 認証
- 保存時および転送中のデータ暗号化
- Fabric のアクセス許可を使用したワークスペース ベースのアクセス制御
詳細については、「Fabric の Cosmos DB のセキュリティ」を参照してください。
Fabric アーティファクトで Cosmos DB のユーザー アクセス許可を設定するにはどうすればよいですか?
Fabric の Cosmos DB は、ユーザーの Fabric ワークスペースのアクセス許可を継承します。 たとえば、ユーザーがワークスペース ビューアーのアクセス許可を持っている場合、ユーザーは Cosmos DB 成果物への読み取り専用アクセス権を持ちます。 現在、項目レベルのアクセス許可を設定できます。 ただし、ワークスペース内のすべての Cosmos DB 成果物に適用されます。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
Fabric の Cosmos DB はカスタマー マネージド キー (CMK) をサポートしていますか?
No. 現在、Fabric の Cosmos DB ではカスタマー マネージド キー (CMK) 暗号化を使用できません。
Fabric の Cosmos DB は Private Link をサポートしていますか?
現在、Private Link は Cosmos DB アーティファクト レベルではサポートされていません。 ただし、ファブリック サービスへの接続をセキュリティで保護するために、ファブリック テナント レベルでプライベート リンクを使用できます。
詳細については、「 Fabric のプライベート リンク」を参照してください。
データが Fabric テナントから出て行くのですか?
No. Fabric の Cosmos DB のすべてのデータは、Fabric テナントとリージョン内に残ります。 OneLake へのデータ レプリケーションは、顧客の環境内で行われ、テナントの境界を離れることはありません。
請求とコスト管理
Fabric の Cosmos DB に関連するコストは何ですか?
Fabric のコンピューティングとストレージの使用量の Cosmos DB は、容量ユニット (CU) を使用して Fabric 容量を通じて課金されます。 Cosmos DB 操作によって使用される要求ユニット (RU) は、課金目的で自動的に容量ユニットに変換されます。 変換式は、100 RU/秒 = 0.067 CU/時間です。
詳細については、Fabric での Cosmos DB の課金と使用率に関する説明を参照してください。
ファブリックでの Cosmos DB の使用量を監視する方法
Microsoft Fabric 容量メトリック アプリを使用して、Cosmos DB の使用量を監視できます。 このアプリは、Cosmos DB を含むすべての Fabric ワークロードの容量消費量を一元的に表示します。 アプリをフィルター処理して Cosmos DB 関連のアクティビティのみを表示し、使用状況の傾向を追跡できます。
詳細については、「Fabric の Cosmos DB の課金と使用率 」を参照し、 Fabric で Cosmos DB を監視します。
Fabric の Cosmos DB に必要なライセンス オプションは何ですか?
Fabric で Cosmos DB を使用するには、Power BI Premium、Fabric 容量、または試用版の容量が必要です。 使用量は、Fabric 容量で使用可能な容量ユニット (CU) に対して測定されます。
ライセンスの詳細については、「Microsoft Fabric ライセンス」を参照してください。
可用性とリージョン
Fabric の Cosmos DB はどこで利用できますか?
Fabric の Cosmos DB は、Microsoft Fabric がサポートされているリージョンで使用できます。 Cosmos DB データベースは、容量リージョンに基づく Fabric ワークスペースのリージョンにあります。
サポートされているリージョンの現在の一覧については、 Fabric リージョンの可用性に関するページを参照してください。
Cosmos DB データベースはどのリージョンにありますか?
Cosmos DB データベースは、Fabric ワークスペースのリージョンにあります。 ワークスペース リージョンは、割り当てられた容量によって決まります。この容量は、[ライセンス情報] ページの [ワークスペースの設定] に表示されます。
詳細については、「 Fabric リージョンの可用性」を参照してください。
Fabric の Cosmos DB は複数リージョンのデプロイをサポートしていますか?
Fabric データベースの Cosmos DB は、1 つのリージョン (Fabric ワークスペースのリージョン) にデプロイされます。 現在、複数リージョンのデプロイはサポートされていません。 ただし、基になるインフラストラクチャは、リージョン内で高可用性を提供します。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
Fabric の Cosmos DB は可用性ゾーンをサポートしていますか?
Yes. Cosmos DB では、すべてのリソースが可用性ゾーン全体にデプロイされ、サポートされているリージョン内の回復性と高可用性が強化されます。
詳細については、Fabric の可用性ゾーンのサポートに関する記事を参照してください。
制限事項とクォータ
Cosmos DB データベースにいくつのコンテナーを作成できますか?
データベースでは、既定で最大 25 個のコンテナーがサポートされています。 この制限は、サポート チケットを送信することで増やすことができます。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
Fabric の Cosmos DB では、ストアド プロシージャ、トリガー、およびユーザー定義関数がサポートされていますか?
No. Cosmos DB ストアド プロシージャ、トリガー、ユーザー定義関数 (UDF) は、現在、Fabric の Cosmos DB ではサポートされていません。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
Fabric で Cosmos DB アーティファクトの名前を変更できますか?
No. 現在、Fabric の Cosmos DB では、成果物の名前変更はサポートされていません。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
JSON データ サイズに制限はありますか?
Cosmos DB 内のドキュメントには 2 MB の制限があります。
8 KB を超えるドキュメント内の JSON 文字列は、ミラー化された SQL 分析エンドポイントからクエリを実行すると切り捨てられます。 回避策は、Fabric Lakehouse でミラー化されたデータベースのショートカットを作成するか、Spark を使用してデータのクエリを実行することです。
詳細については、Fabric の Cosmos DB の制限事項を参照してください。
開発と統合
ノートブックと Spark で Fabric で Cosmos DB を使用できますか?
Yes. Fabric ノートブックを使用して、Fabric の Cosmos DB でデータを直接操作できます。 また、Fabric の Cosmos DB のデータは、Delta Parquet 形式の OneLake に自動的にミラーリングされ、Apache Spark ノートブックからアクセスできるようになります。 Spark を使用して、Cosmos DB データに対して分析、データ サイエンス ワークフロー、機械学習操作を実行できます。
詳細については、「Fabric の Cosmos DB の OneLake をミラー化 する」を参照するか、 ファブリックの Cosmos DB で Spark を使用するか、Fabric の Cosmos DB で Fabric ノートブックを使用します。
Power BI の Fabric データで Cosmos DB を使用するにはどうすればよいですか?
Direct Lake モードを使用して、Fabric データの Cosmos DB 経由で Power BI レポートを直接作成できます。 OneLake のミラー化されたデータは、v オーダーの Delta テーブルとして格納されるため、データの重複を伴わない高パフォーマンスレポートが可能になります。
詳細については、「 Fabric で Cosmos DB を使用してレポートを作成する」を参照してください。
Fabric の Cosmos DB は継続的インテグレーションとデプロイ (CI/CD) をサポートしていますか?
Yes. Fabric のデプロイ パイプラインと Git 統合を使用して、Fabric に Cosmos DB の CI/CD ワークフローを実装できます。 これにより、データベース スキーマ、構成、およびデプロイの自動化をバージョン管理できます。
詳細については、「 Fabric での Cosmos DB の継続的インテグレーションとデプロイ」を参照してください。
Azure Cosmos DB から Fabric の Cosmos DB にデータを移行できますか?
Yes. 次のようなさまざまな方法を使用して、Azure Cosmos DB から Fabric の Cosmos DB にデータを移行できます。
- Azure Data Factory または Fabric Data Factory パイプライン
- SDK での Azure Cosmos DB の一括インポート機能
- 大規模なデータ移行のための Apache Spark
- SDK を使用したカスタム移行スクリプト
- Azure Cosmos DB デスクトップ データ移行ツール
移行プロセスでは、Azure Cosmos DB からデータをエクスポートし、互換性のある SDK と Microsoft Entra 認証で接続文字列を使用して Fabric の Cosmos DB にインポートします。