令和7年度 春期 システムアーキテクト試験 午前II 問4

テクノロジAI・データ活用

この問題は2025(R7)春 システムアーキテクト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。

本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。

大量のデータを並列に処理するために,入力データから中間キーと値との組みを生成する処理と,同じ中間キーをもつ値を加工する処理との2段階で実行するプログラミングモデルはどれか。

解答・解説を読む

正解: 選択肢

正解は ウ(MapReduce) です。

MapReduce は、大規模なデータセットを複数のコンピュータ(ノード)で分散並列処理するためのプログラミングモデルです。主に以下の2つの段階で処理を行います。

  • Map処理: 入力データを読み込み、キーと値のペア(中間キーと値の組み)を生成します。
  • Reduce処理: Map処理で生成されたデータを中間キーごとに集約し、値を加工・計算して最終的な結果を出力します。

各選択肢の解説

  • ア 2相コミット: 分散データベースシステムにおいて、分散された複数のデータベース間でトランザクションを矛盾なく完了させ、データの整合性を保証するためのプロトコルです。
  • イ KVS (Key-Value Store): データを一意の「キー」とそれに対応する「値」のペアとして保存する、シンプルな構造のデータストア(NoSQLデータベースの一種)です。
  • ウ MapReduce: 正解です。設問の通り、入力データから中間キーと値の組みを生成する処理(Map)と、同じ中間キーをもつ値を加工する処理(Reduce)の2段階で実行されます。
  • エ マルチスレッド: 1つのプログラム(プロセス)内で、複数の処理の流れ(スレッド)を並行して実行し、処理効率を高める仕組みのことです。