「Hadoop」関連のソフトウェアとサービスを提供するHortonworksは米国時間9月24日、「Apache Spark」に関する計画を明らかにした。このインメモリエンジンを、エンタープライズでの利用に向けてさらに優れた選択肢にすることが目的だという。
Arun Murthy氏:「Sparkは、オープンソースコミュニティーから作り出された、最も興味深いものの1つだ」
提供:Hortonworks
同社は、Sparkと、Hadoopのリソース管理レイヤである「YARN」の連携を向上させ、ガバナンスとセキュリティ、オペレーションに優れたインメモリエンジンを提供するための取り組みに力を入れている。
SparkをYARNとより深く連携させる目的は、Sparkが、単一データプラットフォーム上で「Hive」「Storm」「HBase」といったほかのエンジンと連携してより効率的に稼働するようにして、専用のSparkクラスタを不要にすることだ。
Hortonworksによれば、同社はこうした取り組みの成果をオープンソースプロジェクトのApache Hadoopに還元する方針を継続する予定だという。
Hortonworksの共同創設者であり、2006年のスタート時からHadoopに取り組んでいるArun Murthy氏は、「Sparkは、オープンソースコミュニティーから作り出された最も興味深いものの1つであり、われわれがこうしたあらゆるイノベーションを目にしていることは、HadoopのエコシステムとApacheのオープンソースコミュニティーの粘り強さの証だ」と述べている。
「メモリは安価になってきている。われわれには、ボックス当たり100Gバイト程度を難なく搭載している顧客がいる。これは、こうしたマシンを10台か20台集めれば、たちまち1テラバイトか2テラバイトのRAMを実現できることを意味する」(Murthy氏)
「こうした状況では、データサイエンティストたちが出てきて、『高速なインタラクティブ分析を行って、機械学習やモデリングのようなアルゴリズムを書き、Sparkのようなフレームワークでイテレーション開発をするつもりだ』と言いたくなるものだ。Sparkが特に次世代の開発者にとって非常に魅力的であるのはこのためだ」(Murthy氏)
この魅力をさらに高めるのがScalaのAPIだ。これは、スクリプト言語であるScalaが、Lispのような数学向け関数型プログラミング言語としての役割を果たしているためだ。
「Scalaは数学のため、そして数学の観点から考える人のための優れた言語であることと、ハードウェアの進化の観点ではメモリは十分に用意されているという事実を考え合わせてほしい」(Murthy氏)
「私がHadoopに取り組み始めた時には、われわれのサーバのボックス1台当たりのRAMはおよそ4Gバイトから8Gバイトだった。それは当時としては最高水準だった。現在では、4Gバイトや8Gバイトということはない。メモリは128Gバイトや256Gバイトという時代だ。つまり、Sparkは適切な時期に登場した適切なテクノロジだといえる」(Murthy氏)
Sparkに関心を寄せているのは、今のところ機械学習に関わるデータサイエンティストたちが大半だが、Hortonworksは、企業が複数の作業を行う場合に、このフレームワークがうまく機能することを望んでいる。
「データのコンテキスト全体に注目すれば、われわれがデータオペレーティングシステムとしてのYARN、そして全てのデータをHadoopで扱うという考えを抱いたのはそのためだ」(Murthy氏)
「そうすれば、データサイエンティストがSparkを使っていようと、アナリストがHiveを使っていようと、プログラマーや開発者がNoSQLデータベースを使っていようと、こうした全ての人々は1カ所でYARNを使うことができ、同じコンテキストにある多くのエンジンをまたがってやり取りできるようになる」(Murthy氏)