DP-900コア データ概念HARD単一選択

ある大手小売チェーンが、全国 300 店舗のPOSシステムから1日に約5,000万件の取引レコードを生成している。このデータを「過去3年分(合計約550億件)の取引を使って、来年の商品カテゴリ別需要を地域×季節×プロモーションの3軸で予測するモデルをトレーニングしたい」という要件がある。このユースケースで最も適したデータ処理とファイル形式の組み合わせはどれか。

  1. A. ストリーミング処理 + JSON:各取引をリアルタイムJSONで保存してMLパイプラインに直接投入する
  2. B. バッチ処理 + XML:履歴データをXMLタグで構造化してモデルトレーニング用のスキーマを明確にする
  3. C. バッチ処理 + Parquet:大量の履歴データを列指向圧縮形式に変換して効率的に保存し、機械学習フレームワークが列プルーニングで必要列だけを読み込む
  4. D. ストリーミング処理 + CSV:POSデータをリアルタイムで処理してCSVに逐次書き出し、モデルトレーニングに使用する
解答と解説を見る

正解: C

550億件という大量の履歴データを使った機械学習モデルのトレーニングには「バッチ処理+Parquet」が最適である。バッチ処理で3年分の取引をまとめて処理・変換するのは大量履歴データの一括変換に適した方式である。Parquetは列指向の圧縮バイナリ形式で、550億件のデータを大幅に圧縮でき、モデルトレーニング時にも使う特徴量の列だけを読む列プルーニングによりI/Oを削減できる。Apache Spark・Azure Synapse・Azure MLなど主要なMLフレームワークはParquetとの親和性が高い。選択肢Dのストリーミング+CSVは、過去3年間の履歴データのモデルトレーニングにストリーミングを使う必然性がなく(既存データのためリアルタイム性不要)、CSVは550億件規模では圧縮効率・読み込み速度でParquetに大きく劣る。選択肢Aのストリーミング+JSONも同様に履歴データに対してリアルタイム処理を適用する必要がなく、JSONは550億件のMLデータとして圧縮効率が悪い。選択肢BのバッチはOKだがXMLはタグのオーバーヘッドでファイルサイズが膨大になり、大規模MLデータには非効率で実用的でない。

▸ この試験を本気で演習する(全150問・無料)