- トップページ
- システムアーキテクト
- 平成27年度秋季問題一覧
- 平成27年度秋季問題6-解答・解説-分析
平成27年度秋季問題
問題6
大量のデータを並列に処理するために、入力データから中間キーと値の組みを生成する処理と、同じ中間キーを持つ値を加工する処理との2段階で実行するプログラミングモデルはどれか。
ア | 2相コミット |
イ | KVS |
ウ | MapReduce |
エ | マルチスレッド |
大量のデータを並列に処理するために、入力データから中間キーと値の組みを生成する処理と、同じ中間キーを持つ値を加工する処理との2段階で実行するプログラミングモデルはどれか。
ア | 2相コミット |
イ | KVS |
ウ | MapReduce |
エ | マルチスレッド |
解答:ウ
<解説>
ア | × | 2相コミットとは、コンピュータネットワークやデータベースにおいて、分散システム内の全ノードがトランザクションのコミットに合意するための分散アルゴリズムあるいはプロトコルである。ネットワーク障害やノード故障の場合も考慮され、結果としてトランザクションはコミットされるか失敗するかのいずれかの状態となる。 |
イ | × | KVSとは、記憶装置にデータを保存・管理する方法の一つ。保存するデータ(Value)と、そのデータを識別するためのキー情報(Key)をペアにして保存する。データを取り出すときは、保存するときに定義したKeyを指定して呼び出す。 |
ウ | ○ | MapReduce は、巨大なデータセットを持つ高度に並列可能な問題に対して、多数のコンピューター(ノード)の集合であるコンピュータ・クラスター(各ノードが同じハードウェア構成を持つ場合)もしくはグリッド(各ノードが違うハードウェア構成を持つ場合)を用いて並列処理させるためのフレームワークである。
MapReduce の特徴は、MapとReduceの各ステップで並列処理が可能なことである。それぞれのMap処理は、他のMap処理と完全独立であり、理論的に全て並列実行することができる(実際には、データソースやCPUの数により制限がかかる)。続くReduceステップでは、Mapステップでの処理結果がキー毎にまとめられてReduce処理に送られることになるが、これも同様に並列処理が可能である。 |
エ | × | マルチスレッドとは、マルチタスク処理の発想をアプリケーションに広げたもので、単一のアプリケーションで特定の操作を個々のスレッドに分割します。各スレッドは並列に実行されます。OSによって、さまざまなアプリケーション間だけでなく、1つのアプリケーション内のスレッド間で、処理時間の分割が可能となります。 |
お問い合わせ