基本情報 平成30年度 秋期 問29:テクノロジ系に関する問題
多数のサーバで構成された大規模な分散ファイルシステム機能を提供し, MapReduce による大規模データの分散処理を実現する OSS はどれか。
- aApache Hadoop
- bApache Kafka
- cApache Spark
- dApache Storm正答
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは d です(※選択肢ラベルは資料上のものを採用)。
たくさんのデータをみんなで手分けして処理する仕組みのことです。一人で電話帳全部めくるより、10人で分担した方が早いですよね。これを巨大データでやるのがMapReduceで、それを動かす土台がApache Hadoopです。
👉 覚え方:Hadoop=象のマーク(ゾウさんが力持ち=大量データ係)。
ほかの選択肢:Kafka=大量メッセージを流す“パイプ”/Spark=メモリ上で高速処理(Hadoopの後継的存在)/Storm=リアルタイム処理が得意な仲間。
なぜこれが正解か
問題は「大規模分散ファイルシステム(HDFS)とMapReduceによる分散処理を提供するOSS」を問うており、これは Apache Hadoop の定義そのもの。Hadoopは①HDFS(分散ファイル)②MapReduce(分散処理フレームワーク)③YARN(リソース管理)から成る。
各選択肢の解説
- Apache Kafka:分散メッセージングプラットフォーム。Pub/Subで大量イベントを高スループットに流す。
- Apache Spark:インメモリ分散処理エンジン。HadoopのMapReduceより高速で、機械学習・ストリーミングまでカバー。
- Apache Storm:リアルタイムストリーム処理。低遅延でイベントを次々に処理する。
覚え方・ひっかけ注意
「MapReduce=Hadoop」が王道の対応。SparkはRDD/DataFrame、KafkaはTopic/Partition、StormはSpout/Boltと固有の用語を持つので、これらが出てきたらHadoopではない。象のロゴ=Hadoopもイメージで覚えると速い。
理論的背景
HadoopはGoogle論文「MapReduce: Simplified Data Processing on Large Clusters」(2004)と「The Google File System」(2003)をOSS実装したもの。HDFSはマスタ(NameNode)と多数のスレーブ(DataNode)の構成で、ブロック(既定128MB)を3レプリカで分散配置。MapReduceはMapフェーズ(入力分割と並列変換)→Shuffle/Sort→Reduceフェーズ(集約)の3段で動く。耐障害性はHDFSのレプリケーションとMapReduceのタスク再実行で担保。
実務での使われ方
ETLバッチ、ログ集計、データレイク基盤として2010年代に普及。現在はSparkがメモリ処理で高速・記述容易性に優り、HadoopはHDFS/YARN部分が基盤として残り、計算はSpark/Flinkに置き換わる潮流。クラウドではAWS EMR、GCP Dataproc、Azure HDInsightがマネージドで提供。データレイクはS3 + Athena/Glue、Delta Lake/Iceberg/Hudiなどのテーブルフォーマットへ進化。
試験での位置づけ
基本情報のビッグデータ・AI分野で頻出。応用情報・データベーススペシャリストではCAP定理、最終整合性、シャーディング、分散KVS(Cassandra、HBase)まで広がる。生成AI時代は学習用大規模データ前処理基盤として再注目。
選択肢の発展補足
Kafkaはイベント駆動アーキテクチャ・CDC(Change Data Capture)の中核で、KSQL/Kafka StreamsでSQL的処理も可能。SparkはLazy EvaluationとDAGスケジューリングが特徴で、ML Lib/GraphX/Structured Streamingを内包。StormはTrident APIでExactly-once処理が可能だが、後継のFlinkが台頭。これら4つは「バッチ/ストリーム/メッセージング」の機能マトリクスで整理しておくと混同しない。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成30年度 秋期 問29/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。