Sparkとは?スパーク
Sparkとは、分散した不変のデータ集合(RDDやDataFrame)への変換を積み重ねる形で処理を記述し、中間結果を可能な限り主記憶に保持したまま実行する分散処理基盤。同じデータを何度も読み直す反復処理で効果が大きく、変換の系譜を保持することで障害時は失われた部分だけを再計算できる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
MapReduceは工程が終わるごとに中間結果を分散ファイルシステムへ書き戻す。信頼性は高いが、機械学習の反復や対話的な集計のように同じデータを何度も舐める処理では、この書き戻しと読み直しが処理時間の大半を占めてしまう。中間結果を主記憶に置いたまま次の変換へ渡す実行方式が、この待ち時間を取り除いた。
具体例
Apache Software Foundationが公開するオープンソースで、SQL(Spark SQL)・ストリーム処理・機械学習ライブラリを同じ基盤の上に載せている。Databricksが商用のサービスとして提供している。
試験での引っ掛け
MapReduceとの違いは中間結果をどこに置くかにある。工程ごとにディスクへ書くのがMapReduce、主記憶に保持して次へ渡すのがSparkで、だから反復処理で差が付く。またSparkはHadoopの置き換えではなく、HDFSやYARNの上でも動く。
関連用語
出た過去問
出典:令和3年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問18(IPA)
ビッグデータ処理基盤に利用され、オープンソースソフトウェアの一つであるApache Sparkの特徴はどれか。
正解:RDD(Resilient Distributed Dataset)と呼ばれるデータ集合に対して変換を行う。
要点:SparkはRDDへの変換を重ねて分散処理を記述する
Apache Sparkは、RDDと呼ばれる分散された不変のデータ集合を単位とし、それに変換を重ねて処理を組み立てる。中間結果をメモリ上に保持できるため、ディスク経由の反復処理より高速に扱えるのが特徴である。よってイが正しい。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。