ある企業の技術チームが、JSON形式とCSV形式のファイルを比較検討している。「商品カテゴリ・地域・売上期間」という固定の3軸で売上を集計して分析するユースケースにおいて、大量データの列単位フィルタリングに最も適したファイル形式の選択として正しいものはどれか。
- A. Parquet:列指向形式のため特定列だけ読み込む列プルーニングが有効で、固定スキーマの大規模集計クエリに適している
- B. XML:タグベースの構造でスキーマ検証が可能なため大規模分析に最適である
- C. JSON:ネスト構造で3軸の階層的な集計データを表現できるため最適である
- D. CSV:テキスト形式で互換性が高く、3軸の集計分析に最も適している
解答と解説を見る
正解: A
「商品カテゴリ・地域・売上期間」という固定3軸で大量データを集計する分析ユースケースでは、Parquetが最も適切である。Parquetは列指向フォーマットのため、クエリで使う列(例:売上金額、商品カテゴリ)だけをディスクから読み込む列プルーニングが可能で、不要な列のI/Oを省ける。固定スキーマの大規模集計クエリとの相性が特に良い。選択肢DのCSVは行指向テキスト形式のため、特定列だけを選んでも1行全体を読む必要があり、大規模集計では余計なI/Oが発生する。テキスト形式ゆえ圧縮効率もParquetに劣る。選択肢CのJSONはネスト・配列構造の表現に優れ半構造化データに適しているが、列指向ではなく大規模な固定スキーマ集計クエリのパフォーマンスはParquetに劣る。選択肢BのXMLはタグのオーバーヘッドで容量が大きくなり、大規模集計処理ではI/Oと解析コストが高くなるため、Parquetよりはるかに非効率である。