DP-900-CORE#97-2
注: この問題は、同じ前提を持つ一連の問題の一部です。それぞれの問題には異なる解決策が提示されます。
前提
アプリケーションが扱う様々なデータについて、データ分類 (構造化 / 半構造化 / 非構造化) が正しく行われているかを判定してください。分類により、適切なストア (RDB / NoSQL / Blob) とクエリ手段 (SQL / API / AI) を選択する必要があります。
解決策
Cosmos DB に格納された商品ドキュメント (各商品ごとに異なる属性、JSON 形式) を、構造化データとして分類し、固定スキーマでテーブル化することを前提とした分析設計を行う。
この分類は正しいですか?
解説
【判定: いいえ】の理由
Cosmos DB の JSON ドキュメントは半構造化データであり、構造化データではありません。
固定スキーマでテーブル化する設計は、JSON ドキュメントの柔軟性 (商品追加時に属性が変化する強み) を完全に破壊し、Cosmos DB を使う意義を失わせます。
【「はい」が違う理由】
JSON ドキュメントを構造化データとして扱うのは設計違反であり、Cosmos DB の利点を活かせません。正しくは半構造化データとして扱い、SQL ライク クエリ + 自動インデックスを活用するべきです。
出典: Microsoft Learn — Azure Cosmos DB for NoSQL
Cosmos DB の JSON ドキュメントは半構造化データであり、構造化データではありません。
| 判定基準 | 商品ドキュメント (Cosmos DB) | 結論 |
|---|---|---|
| スキーマ | 柔軟 (商品ごとに属性が異なる、JSON) | 半構造化 |
| 固定列の有無 | なし (スキーマレス) | 半構造化 |
| 適切な格納先 | Cosmos DB / Blob Storage | 半構造化 NoSQL |
固定スキーマでテーブル化する設計は、JSON ドキュメントの柔軟性 (商品追加時に属性が変化する強み) を完全に破壊し、Cosmos DB を使う意義を失わせます。
【「はい」が違う理由】
JSON ドキュメントを構造化データとして扱うのは設計違反であり、Cosmos DB の利点を活かせません。正しくは半構造化データとして扱い、SQL ライク クエリ + 自動インデックスを活用するべきです。
出典: Microsoft Learn — Azure Cosmos DB for NoSQL

コメント