はじめに 今回は、Sparkにおいて複数のジョブでデータを共有する仕組みと、耐障害性を実現する方法を説明します。 複数ジョブにおけるデータ共有の方法 Sparkは複数のジョブでデータを共有するために、RDDを永続化する機能を有します。いったんRDDが永続化(永続化RDD)されると、永続化RDDを利用するジョブにおいては、RDDの構成要素のデータを再度外部のストレージなどから読み出す必要はなく、また、読み出したデータから当該永続化RDDを生成するためのmap()やfilter()などの呼び出しからなる一連の処理を省略することができます(図1)。 図1 復数のジョブからの永続化RDDの共有 永続化されたRDDは、当該RDDを最初に処理するジョブを実行する際、パーティション単位でそれぞれのRDDを処理する計算機上に永続化されます。永続化先としては、おもに計算機のメモリ(キャッシュ)と二次記憶
![第21回 Sparkの設計と実装[2]~Sparkにおけるデータ共有の仕組みと耐障害性の実現方法 | gihyo.jp](https://cdn-ak-scissors.b.st-hatena.com/image/square/cd09bc83c4879217a10dcebdad73fce873ecd41d/height=288;version=1;width=512/https%3A%2F%2Fgihyo.jp%2Fassets%2Fimages%2FICON%2F2015%2F1379_howhadoopworks.png)