DP-900:Microsoft Azure Data Fundamentals データの中核的な概念 問9
データの中核的な概念/データの表現方法複数のマイクロサービスが、注文1件に複数の商品明細がひも付くデータをREST APIで相互にやり取りする仕組みを構築している。1件の注文の中に明細の配列を含められる階層構造を表現できて、かつテキストベースで人が読みやすい軽量な形式を、サービス間のデータ交換に使いたい。選ぶべき形式として最も適切なものはどれか。
当サイトのオリジナル問題(DP-900:Microsoft Azure Data Fundamentalsの出題範囲「データの中核的な概念」に対応。実際の試験問題ではありません)
- ACSV
- BParquet
- CXML
- DJSON
正解:D
解説
JSONは、オブジェクトとその中にネストした配列を使って、1件の注文に複数の明細がひも付くような階層構造を簡潔に表現できる半構造化データの代表的なファイル形式です。テキストベースで人にも読みやすく、記述も比較的軽量なため、マイクロサービス間でのREST APIによるデータ交換に広く利用されています。CSVはフラットな表形式しか扱えず、Parquetは分析向けのバイナリ形式、XMLは階層を表現できるものの記述が冗長になりがちで、いずれも本件の要件には合致しません。
選択肢ごとの解説
- A誤り。CSVは行と列だけのフラットな表形式であり、1件の注文に複数の明細を持たせるような階層構造を表現できません。
- B誤り。Parquetは列指向のバイナリ形式で、大規模データの分析用途に適していますが、人が読めるテキスト形式ではなく、サービス間のAPIでの軽量なデータ交換には向きません。
- C誤り。XMLもタグを使って階層構造を表現できますが、開始・終了タグを都度記述する分だけ記述量が多くなり、軽量なテキスト形式としてはJSONに比べて冗長になります。
- D正しい。JSONはキーと値、配列を使って注文と明細のような階層構造を簡潔に表現できるテキストベースの軽量な形式で、REST APIによるサービス間のデータ交換で広く使われています。