いまいちばん勢いのあるオープンソースプロダクトとして注目度の高いApache Spark。2月8日,
HadoopはSparkの “原点であり越えるべき目標”
- ──まずはレイノルドさんご自身の自己紹介をお願いできるでしょうか。Databricksという会社についてもご説明いただければ。
シン氏:僕はDatbricksの共同創業者のひとりで,
現在はメインアーキテクトとして働いています。Databricksは, Hadoopのオルタナティブとなるプロダクトを開発するために, 出身校のカリフォルニア大学バークレイ校の研究室仲間で2013年に立ち上げました。現在のオフィスはサンフランシスコにあります。 Hadoopのオルタナティブ,
つまりSparkを最初に開発したのは, 同じく共同創業者のひとりで現在CTOを務めるマテイ・ ザハリア (Matei Zaharia:初代Sparkリリースマスター) です。現在のDatabricksのメインビジネスもSpark製品/サービスの提供です。 ご存知の通り,
SparkはThe Apache Foundationの下で活動するオープンソースプロジェクトです。僕やマテイ, ほかのDatabricksのメンバーに加え, 40人ほどがコミッタとして活動しています。日本人ではNTTデータの猿田 (浩輔) さんもコミッタですね。さらにコミッタのうち20名ほどがPMC (Project Management Committee) メンバーとして, 各コンポーネントのレビューやコンセンサスの調整をしています。僕もPMCのひとりです。 - ──今日の基調講演であなたは
「2015年はSparkにとってビッグイヤーだった」 と振り返っていました。なぜSparkがこれほどまでにブレイクしたのか, その理由をどのように分析されていますか。 シン氏:大きく3つあると思っています。
ひとつは開発のしやすさ,
使いやすさです。HadoopやほかのHadoopプロダクトも"easy to use"とは言いがたい部分が少なくありません。その点, Sparkはさまざまな言語でアプリケーションを書ける, SQLやマシンラーニングなどのパッケージがあらかじめ用意されていて, しかも使いやすく統合されている, 多くの環境で動く, など, 非常に汎用性高く設計されています。これが普及の第一の理由です。 2つめはパフォーマンスです。高速性はSparkの最大の特徴のように言われますが,
実際, SparkはHadoopのMapReduceよりもずっと高速な処理を実現します。Hadoopが苦手としていたスループットとレイテンシの両立が可能になっているのです。現状のSparkはHadoopに比べて100倍以上速いと言われていますが, 開発中のSpark 2. 0はさらに速くなります。いまより10倍以上のパフォーマンスを目指しているので期待していてください。 そして3つめですが,
コミュニティがオープンであるという点です。2015年はとくにコミュニティの活動が活発になった年で, 世界各地でミートアップが開催されました。東京でも開かれています。コミッタによるコードの投稿は1000回/10万行を超えました。オープンソースプロジェクトとしては非常に成功していると実感しています。 - ──ここ最近,
SparkはHadoopを置き換える存在としてクローズアップされることが多いですが, レイノルドさんはSparkとHadoopの関係をどう捉えていますか? もしかしたらHadoopとSparkはライバル関係なのでしょうか。 シン氏:それはないですね
(笑)。HadoopがSparkの競合になるということはありえません。SparkはHadoopのエコシステムとしてスタートしましたから。ただし最近は 「Beyond Hadoop」 という位置にあることは認識しています。Sparkの原点はHadoopですが, それを超えた存在になるという目標はもっています。 Sparkがプロジェクトとして立ち上がったばかりのころ,
ほとんどのSparkユーザはHadoopユーザでした。SparkはあくまでHadoopを補完するエコシステムのひとつでしかなかった。しかしHadoop運用で必要となるリソースマネジメントは必ずしもSparkユーザがやりたいことではありません。Hadoopはビッグデータというトレンドに非常にマッチした存在ですが, Sparkはビッグデータの中でもデータプロセッシングをいかに速く正確にこなしていくか, という面にフォーカスしています。データストアも実行環境も選ばない。たとえばDatabricksの顧客の中にはSparkは使っているがHadoopは使っていないというケースが増えつつあります。データストアとしてAmazon S3やCassandraを選んでいるのです。Sparkユーザが必ずしもHadoopユーザではなくなった, いまはそういう時代になっていると思います。 - ──SparkのデータストアにHadoop以外が多くなってきているというのは非常に興味深い現象だと思いますが,
同様にSparkはHadoopよりもクラウドでの普及スピードが速いという印象をもっています。こちらについてはどう思われますか。 シン氏:Sparkの実行環境としてオンプレミスとクラウドを比べると,
現時点ではほぼイーブン, ごくわずかですがクラウドのほうが上回っています。ですが, この差は今後, もっと拡がっていくとも思っています。たしかにクラウドでのアダプションはHadoopより速いペースで進んでいますね。いちばん多いのはAWS, 次にAzureです。最近だとApache Mesosの上でSparkを動かすケースもよく見かけます。