Apache Sparkをご存知でしょうか。 去年くらいからとても流行っている分散処理フレームワークです。 大量のデータを集計・分析することができます。 公式サイトによれば、インメモリで動作する場合、Hadoop MapReduceより100倍早いそうです。 分散処理は、基本的には1台のマシンでは処理しきれない規模の集計や分析が必要となる場合に必要となります。 Sparkは分散処理のフレームワークなわけです。大量のマシンをクラスターとして扱うことに長けています。 そして当たり前ですが分散処理にはどうしてもオーバーヘッドが発生します。 いくらSparkが高速といっても、シングルノードで実現可能な集計処理をSparkで動かせば遅くなります。 では、シングルノードで計算できるようなデータしか持たないシステムではSparkを使うことにメリットはないのかというと、そんなことはありません。 私は実際に