戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

システムアーキテクト 2025年 午前204


問題文

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

選択肢

2相コミット
MapReduce
KVS(正解)
マルチスレッド

大量のデータを並列に処理するための2段階プログラミングモデル【午前2 解説】

要点まとめ

  • 結論:問われている「中間キーと値の組」を基盤とする抽象はキー・バリュー(KVS)の概念で、選択肢はウが正解です。
  • 根拠:入力をキーと値の組に変換し、同じキーごとに値を集約・加工する流れはキーを軸にした処理モデルの本質を示します。
  • 差がつくポイント:MapReduceは実装フレームワーク、KVSは「キー・バリューというデータ抽象」を指す語句の違いを押さえると得点が安定します。

正解の理由

「入力データ→中間キーと値の組を生成→同じ中間キーをもつ値を加工」という記述は、キー(key)を中心にデータを扱う設計思想を問うものです。選択肢の中で「キーと値」のペアを基本概念として明示するのはKVS(キー・バリュー・ストア)であり、設問が抽象的な“キーと値の組”に注目しているため、ウ(KVS)が正解となります。

よくある誤解(2〜3 行)

  • MapReduceが即座に正解だと判断しやすいですが、設問の表現がフレームワーク名ではなく「データ抽象(キーと値)」を問う場合があります。
  • 「KVSはただの記憶装置」という誤認もあるため、KVSがキー中心の処理モデルを表す語である点を押さえてください。

解法ステップ

  1. 問題文のキーワードを抽出:「中間キー」「値」「2段階(生成と加工)」「並列処理」。
  2. 各選択肢が何を指すかを素早く整理:プロトコル、フレームワーク、データモデル、並列手法。
  3. 設問がフレームワーク名を求めているか、概念(抽象)を問うかを判断する。
  4. 「中間キーと値の組」という言い回しが示す抽象(キー・バリュー)を選ぶ。

選択肢別の誤答解説

  • ア: 2相コミット
    トランザクションの整合性を保つ分散コミットプロトコルであり、データ処理モデル(キーと値の生成・集約)を説明するものではありません。
  • イ: MapReduce
    大量データの並列処理フレームワークで、設問の処理フローに極めて近い説明になります。しかし設問が「中間キーと値の組」というデータ抽象を指しているため、語義としてはKVSに近いと判断されます。MapReduceは実装やアルゴリズム名である点に注意。
  • ウ: KVS
    キーと値のペアを基本単位とするデータモデル(キー・バリュー)を表す語で、設問の「中間キーと値」という表現と直接対応します。よって本問の正解です。
  • エ: マルチスレッド
    同時実行の手法であり、スレッド並列化は処理の粒度やデータ抽象(キー・バリュー)を示すものではありません。

補足コラム(関連知識など)

  • MapReduceとKVSの関係:MapReduceは「Map(キー・バリューの生成)→Shuffle(同キーで集約)→Reduce(集約処理)」という段階を持つ実装フレームワークです。一方KVSは「キーと値の組」を扱うデータモデル/ストレージの総称で、MapReduceが動作する際のデータ表現としてKVS的な考え方が使われます。
  • 実例:RedisやDynamoDBはKVSとして広く使われ、HadoopのMapReduceはキー・バリュー形式の中間データを生成・集約します。問題では「モデル/抽象」を問う語彙選択力が重要です。

FAQ

Q: 問題文の説明はMapReduceそのものではないですか?
A: MapReduceは確かに該当する処理フローを実現するフレームワークですが、設問は「中間キーと値の組」というデータ抽象に着目しているため、KVS(キー・バリュー)を問う問題として解釈されます。
Q: 試験で迷ったらフレームワーク名と抽象名、どちらを優先すべきですか?
A: 問題文が「何を表現しているか(概念)」を問う場合は抽象名、具体的な実装や手順を問う場合はフレームワーク名が正解になる傾向があります。設問の語句に注目してください。

関連キーワード: MapReduce, KVS, キー・バリュー、分散処理、並列処理、Hadoop, Redis, DynamoDB
← 前の問題へ次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

システムアーキテクト
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について