Microsoft FabricのDatabase Hubは、NoSQL、MongoDB、Cassandra、Gremlin、TableなどのAPI間でAzure Cosmos DBアカウントを発見するのに役立ちます。
ヒント
💡 データベースハブのエージェント設定
FabricのDatabase Hubエージェントスキルを使ってDatabase Hubを理解し、操作し始めましょう:
- Use [Database Hub skills](https://github.com/microsoft/microsoft-sql/tree/main/plugins/microsoft-sql-fdh).
- Review [Database Hub in Fabric documentation](https://learn.microsoft.com/fabric/database/hub/)
and use the [Microsoft Learn MCP server](https://learn.microsoft.com/api/mcp) for official docs.
重要
この機能は プレビュー段階です。
モニターコスモスデータベースの設置中
あなたのCosmos DBアカウントは、既存のサブスクリプション、リソースグループ、リージョンでAzureリソースのままです。 Database Hubのディスカバリーや監視に使う場合、データをFabricに移動したり、ミラーリングを設定したり、Cosmos DBのFleet Analyticsにオンボーディングしたりする必要はありません。
データベースハブのメトリクスは、特定のデータベースやコンテナなど、より狭い範囲を明示的に特定しない限り、アカウントを記述します。
- Database HubのCosmos DB監視は、既存のAzure Monitorプラットフォームのメトリクスを使用しており、明示的な設定なしにすべてのアカウントで自動的に収集されます。
- 診断 (リソース) ログを有効にしたり、Cosmos DB Fleet Analytics の利用を開始したりする必要はありません。
- Azure MonitorとFleet Analyticsは別々のオプトインツールで、より深い調査を行えるため、ベースラインの指標を入力する必要はない。
前提条件
現在のプレビューでは、Fabric管理者にテナントをFabric管理ポータルのDatabase Hubプレビュー体験へのオプトアップを依頼してください。 テナント設定で「有効」 ユーザーはデータベースハブ(プレビュー)にアクセスできます。
まずは職場や学校のアカウントでサインインして無料体験を始めましょう。 Azureポータルから、またはMicrosoft Fabricから直接入力できます。たとえFabricを使ったことがなくてもです。 AzureのサブスクリプションやCosmos DBリソースにアクセスできるMicrosoft EntraのIDで認証してください。 Azureリソースの可視性だけではデータベースのクエリ権限は与えられません。 Database Hubは、別個の権限モデルではなく、既存のMicrosoft Entra IDとAzure RBACの権限を利用しているため、ここで割り当てるアクセスは標準的なAzureロール割り当て手順に従っています。
- Cosmos DBアカウントを発見し監視するには、監視したいアカウントを含む各サブスクリプションのサブスクリプション範囲で リーダー ロールまたはより権限の高いロールを割り当ててください。
- Database Hubから新しいCosmos DBアカウントを作成するには、アカウントが作成されるリソースグループの範囲で、Cosmos DBオペレーターの役割、またはより大きな権限を持つ役割を割り当ててください。
- 既存アカウントの管理や再設定(スループットの変更、インデックス作成、ネットワーク設定の変更など)は、Database Hubの外でAzureポータル、Azure CLI、Azure PowerShell、またはAzure Resource Managerテンプレートを使って行います。 これらの変更を行うには、同じ ID に、アカウント スコープで Cosmos DB Operator ロール、またはそれ以上のアクセス許可を持つロールが必要です。
データベースやコンテナでデータを照会するには、別途Cosmos DBのデータプレーンロール割り当て(または許可されている場合はアカウントキー)が必要で、さらにアカウントへのネットワークアクセスが必要です。 リソースレベル(管理面)アクセスではこの権限は付与されません。 詳細については、「Connect」を使ったロールベースアクセス制御およびMicrosoft Entra ID for Azure Cosmos DBをご覧ください。
Database Hubは既存のアクセス境界を尊重します。 データベースハブは追加アクセス権を与えません。 データベースへの可視性は、現在の身分が閲覧権限を持つリソースに限定されます。 ビューを共有したりリソースリンクを送ったりしても、相手に基盤となるサーバーへのアクセスは与えられません。
Cosmos DB 環境を表示する
ヒント
Estateで表現されているCosmos DBリソースはデータベースアカウントであり、そのアカウント内にホストされている各データベースやコンテナではありません。
調査が必要なリソースを特定するためにデータベースハブを活用してください。 アカウント設定、コンテナレベルの作業、クエリ診断のためにAzureポータルまたはVisual Studio Codeで続けてください。
- Microsoft Fabricのデータベースハブにアクセスしてください。 データベースナビゲーションで「 概要」を選択してください。
- 「 何に注意が必要か?」 セクションは、データベース資産の中で注意が必要な部分を指摘します。 対応が必要な項目内のすべてのカードとリンクはEstateに移動します。 エステートビューでは、各リソースの下に「問題」がカラフルなチップで、提案は電球アイコン付きのチップで表示されます。
- インベントリを「View: Azure Cosmos DB」にフィルターしてください。 利用可能なフィルターを使って、関連するサブスクリプションやリソースグループを選択してください。
- 必要なアカウントを検索するか、フィルターされた在庫を確認しましょう。 アカウントを選択してリソースの詳細を確認してください。 このアカウントは個別のデータベースやコンテナではなく、Azureアカウントのリソースとして扱ってください。
データベースハブにおけるCosmos DBモニタリング指標
概要 はCosmos DBアカウントリソース全体で可用性と正規化されたRU消費量の要約を表示します。
十分にリソースが割り当てられ、アクティブに使用されているアカウントでは、ほとんどの時間で両方の線が100%前後にあるのは正常です。 高いRU消費量は、アカウントがプロビジョニング済みのスループットのほとんどまたは全部を使っていることを意味します。 それで問題ないかどうかは、同じウィンドウ内の Availability によります。
- それに加えて高い可用性があるということは、リクエストが成功し続け、アカウントがプロビジョニングされたものを最大限に活用していることを意味します。
- 同時に可用性も低下している場合、それは実際にリクエストがスロットルまたは失敗していることを示しています。これは、RU消費が最大値に達した状態が継続していること自体が、レート制限を発生させる条件そのものだからです。
利用可能性が100%を明らかに下回った場合は注意してください。 また、RU消費量が長期間低く維持されている場合、スループットの過剰供給を示す可能性があります。
パフォーマンス は、明示的に選択した特定のアカウントを詳しく見ることができます。 すべてのアカウントが自動的に エステートに含まれているわけではなく、フィルターが適用されていなければ 、パフォーマンス チャートはページの応答性を保つために最初の100リソースに限定されます。 パフォーマンスチャートを遺産全体として扱う前に、現在選択されている口座を確認してください。選択範囲と遺産全体の在庫は異なる場合があります。
テレメトリが欠けていることは、利用率ゼロやアカウントの健全性の証拠ではありません。 選択した区間中にアカウントがデータを生成したかどうか、またそのAPIタイプや設定にメトリクスが適用されるかを確認してください。
Cosmos DBのパフォーマンス信号を解釈する
| 信号 | Azure Monitor metric | 集計 | 説明 |
|---|---|---|---|
| 正規化RU消費量(ピークノムRU %) | NormalizedRUConsumption |
最大値 | アカウントのパーティションキー範囲をまたぐピークRU/s利用率は0から100%。 |
| 総リクエストユニット(消費された総RU数) | TotalRequestUnits |
合計 (和) | 選択した区間で合計された総消費RU数。 |
| 制限されたリクエスト(429s) |
TotalRequests StatusCode 429にフィルタリング |
数える | プロビジョニングされたスループットを超過したために拒否されたリクエストの件数。 |
| 429レート % |
TotalRequests StatusCode 429で絞り込み、TotalRequests の合計で割った |
件数(比率) | プロビジョニングされたスループットを超えてリクエストがスロットルされた割合。 |
| プロビジョニング済みスループット(プロビジョニング済みRU/s) | ProvisionedThroughput |
最大値 | 選択した期間中にアカウントでプロビジョニングされたRU/sを比較できるので、プロビジョニング済みと消費済み容量を比較できます。 |
| 平均レイテンシ(ms) | ServerSideLatencyDirect |
Average | ダイレクト接続モードでのリクエストに対するサーバー側の平均遅延(ミリ秒単位)。 ゲートウェイモードのレイテンシは含まれていません。 |
| 使用可能性 % | ServiceAvailability |
Average | その期間中に成功したリクエストの割合。 |
Note
パフォーマンスの可用性 % は平均集約を使用します。 概要ページの利用可能性概要では、最小集約を使って例外点をハイライトしています。
このページのチャートは時間単位の時間粒度を使用しています。24時間のビューは、関連する集計を用いて24点をプロットします。 グリッドは異なる時間粒度を使い、選択した範囲全体を1つのアカウントごとに1カラムごとに縮小し、時間経過のポイントをプロットするのをやめます。 例えば、グリッドの ピークノルムRU % は、その範囲内で観測される最大値であり、時間ごとの内訳ではありません。
詳細については、Azure Cosmos DB の監視およびMicrosoft.DocumentDB/databaseAccounts でサポートされているメトリックを参照してください。
Cosmos DBのセキュリティおよび能力の違いを解釈する
データベースハブの セキュリティ ページでは、3つのCosmos DBシグナルを評価しています:
- Microsoft Entra ID認証:アカウントがEntra IDのみの認証を強制するか、ローカル(鍵ベースの)認証を許可しているか。
- カスタマーマネージドキー(CMK):CMK暗号化が有効になっているか、アカウントがサービス管理キーに依存しているか。
- パブリックネットワークアクセス:アカウントが有効になっているかどうか。
もしアカウントがローカル認証を許可しているか、CMKが有効でない場合、Database Hubはそれを 「Suggestion」として表示し、便利な時にオプションで改善できます。 パブリックネットワークアクセスが有効になっているアカウントは「 問題」として表示されます。これはよりタイムシビアな扱いだからです。
データベースハブの信号は、現在評価されている内容を反映しており、必ずしもアカウントの基盤となるセキュリティ構成の完全な状態を示すわけではありません。 例えば、CMKを有効にしていないアカウントでも、Microsoft管理キーによるデフォルトで暗号化が静止されているため、ここでフラグをつけると「この特定の機能に対して有効になっていない」という意味で、「保護されていない」とは限りません。発見前にAzureポータルでアカウントの現在の設定を確認してください。 詳細については、Azure Cosmos DB のカスタマー マネージド キーを構成するおよびAzure Cosmos DB の保存データ暗号化を参照してください。
これらのセキュリティ シグナルは、トリアージに役立つ概要をすばやく把握できるようにします。 完全なセキュリティ評価と修復を行うには、Microsoft Defender for Cloudのようなサービスや、Database Hubと併用してアカウントの診断ログを活用してください。
Azureポータルで調査を続ける
例えば、Azureポータルを使って問題をさらに調査できます。例えば、同じアカウントの指標をDatabase HubとAzureポータルで並べて比較することができます。
ヒント
クエリやドキュメント管理などのデータプレーン作業にはVisual Studio Code Cosmos DB拡張機能を使い、パフォーマンス指標のレビューには使いません。
- Database Hubで目的のCosmos DBアカウントを選択します。 その項目のパネルがデータベースハブに開きます。
- 「Azureポータルを開く」ボタンを選択します。
- Insightsタブに行き、時間範囲を設定してください。 適切な追跡期間内で関連指標を比較してください。
現在のプレビューでは、AzureポータルのInsightsタブにより幅広いチャートや指標が提供されているため、Database Hubがまだ表示されていないシグナルに利用してください。
Cosmos DBのセキュリティ調査結果を調査する
セキュリティ概要から Cosmos DB の検出結果、または利用可能な場合は Estate 内の影響を受けたアカウントを選択します。
影響を受けたアカウント、評価名、評価された環境、利用可能な観察時間を確認してください。 推奨事項を組織の方針と照らし合わせてください。
Azureポータルでアカウントを開き、現在の設定を確認してください。 Microsoft Entra認証、顧客管理キー、またはパブリックネットワークアクセスについては、対応するCosmos DBサービスドキュメントに従ってください。
変更を行う前に、アプリケーションの影響を評価し、必要な承認を取得してください。
承認された変更が完了したら、Azureポータルで設定を確認してください。 再評価とデータベースハブの更新を許可します。もしその結果が続く場合は、その証拠と当代口座構成を比較してください。
Database HubでCosmos DBデータのトラブルシューティング
- もしCosmos DBアカウントがエステートに表示されない場合は、サインイン済みテナント、Azureアクセス、リソースタイプ、インベントリフィルター、認証を確認してください。
- Azure MonitorとDatabase Hubでパフォーマンス指標が欠落または異なる場合:
- アカウントがリクエストを積極的に処理している時間帯を選びましょう。 メトリクスがアカウントのAPIタイプに適用されるかを確認してください。例えば、429のマッピングはNoSQL(StatusCode 429)とMongoDB API(エラーコード16500)で異なります。
- 同じアカウントをAzureポータルで開き、対応するAzure Monitorの指標をInsightsタブで確認してください。タイムゾーン、開始・終了時刻、集約、細分度をできるだけ正確に合わせてください。
- 両方の場所でメトリクスがない場合は、アカウントの活動を確認し、処理遅延を許容してください。
- Azure MonitorにはデータがあるのにDatabase Hubにない場合は、Database Hubビューをリフレッシュして、そのアカウントだけで再試行してください。 もし差が続くなら、サポートに連絡してください。
Limitations
- Cosmos DB Fleet Analytics は現在、Database Hub ではサポートされていません。
- 現在のプレビューはAzure Cosmos DBアカウントのみをサポートしています。 現在のプレビューでは、FabricのCosmos DBは現在サポートされていません。
- 現在のプレビューでは、Overview and PerformanceがAzure Monitorで利用可能なメトリクスの厳選されたサブセットを表示しています。
- 現在のプレビューでは、Cosmos DBの指標に対するActivatorアラートは利用できません。