誕生から10年が過ぎ、
筆者は今回、
Hadoopに「エンジニア魂を掻きたてられた」
- ――スレシュさんはHortonworks創業メンバーのひとりとうかがっています。Yahoo!でソフトウェアアーキテクトとして活躍していたのに、
なぜHortonworks創業にかかわることになったのでしょうか。 スリニバス氏:ご存知のようにHadoopはYahoo!で生まれました。当時、
Hadoop開発の中心人物だったダグ・ カッティング (Doug Cutting) とも一緒に働いていましたが、 ひとことで言えば 「エンジニア魂を掻きたてられるファシネイティング (魅力的) なソフトウェア」 だったという表現に尽きます。Yahoo!でHadoopの開発を続けるにしたがい、 どんどんHadoopの魅力と可能性にハマっていき、 同じように感じていた仲間たちとHadoopの会社をローンチすると決めました。残念ながらダグはすでにYahoo!を離れていましたが、 彼とともにHadoop開発の初期から関わってこれたのはラッキーでした。 - ――Hadoopのどういった点が"エンジニア魂を掻きたてる"ほど魅力的だったのでしょう?
スリニバス氏:まずはスケーリングのパワーです。Yahoo!はインターネットカンパニーとしてつねに世界のトップレベルに位置し続けてきた企業ですが、
すでに2000年ごろから扱うデータ量の急激な増大に悩まされていました。そこにHadoopがさっそうと登場したわけです。データプロセッシングをこれほど効率的にスケールできるアーキテクチャを私はほかに知らず、 「これはエンジニアとしてチャレンジのしがいがある技術だ」 と直感しました。Googleの論文 (Google File System / Google MapReduce) にももちろん目を通しましたが、 これらの技術をもとにコンポーネントを実装していく作業は実にエキサイティングでした。 Hadoopの魅力の2つめはオープンソースであるという点です。これはHadoopのその後の発展にとっても非常に大きなことだったと思います。オープンソースプロダクトだったからこそ、
Hadoop自身の機能強化が図られるにとどまらず、 HiveやSparkなど多くのエコシステムが誕生し、 コミュニティが拡大しました。 3つめはコモディティハードウェアで使える技術だったことです。Hadoopが登場するまで、
大量のデータを収集/ 保管し、 分析するためにはスペシャルなハードウェアが必要でした。IBMやTeradata、 HPなどのビッグベンダによるプロプライエタリで巨大なマシンは誰もが簡単に手に入れられるものではありませんが、 ほかに選択肢はなかった。しかしHadoopはコモディティなマシンでのデータプロセッシングを可能にしました。世の中に存在するデータ量が増大するにしたがい、 コモディティなマシンでデータを扱えるという特徴は非常に大きなアドバンテージにつながったと思っています。 これほど魅力ある技術であれば、
間違いなくビジネスとしても成功するはずという結論にメンバーたちとも至り、 2011年にYahoo!をスピンアウトし、 Hortonworksを起業したのです。
Hadoopがオープンソースであり続けるために労力を惜しまない
- ――HortonworksはHadoop誕生にかかわったメンバーが立ち上げた企業という点が大きく評価されて、
ローンチ当時から多額の資金調達を果たし、 IPOも実現するなど、 とても順調に成長しているように見えます。一方で、 HortonworksのほかにもClouderaやMapRなどHadoopディストリビューション企業が存在しますが、 こうした競合と比較してHortonworksが優位に立っている部分を教えてください。 スリニバス氏:先ほども言いましたが、
Hadoopはオープンソースだからこそ成長/ 普及すると我々は信じてきましたし、 実際、 そのとおりになっています。したがってHadoopの初期から関わってきたHortonworksにとって最も重要なのは、 Hadoopがオープンソースであり続けることに労力を惜しまないことです。たとえば我々は 「Hadoop Data Platform (HDP)」というディストリビューションを顧客に向けて提供しており、 これはApache Hadoopと完全互換のコア部分 (Core HDP) と拡張機能 (Extended HDP) で構成されています。拡張機能に関してはHiveやHBase、 Strom、 SparkといったHadoopエコシステムをユーザが使いやすいように統合していますが、 Hortonworksが独自に開発した機能 ―たとえばClouderaのImpalaやKuduのようなエンジンは付加していません。ユーザのコアプラットフォームになんの変更も必要としない、 これはHDPだけでなく 「Hortonworks DataFlow」 等、 当社のほかの製品にもあてはまる特徴です。 - ――それはつまりImpalaやKuduは純粋なオープンソースとは言えないということでしょうか。
スリニバス氏:他社の製品開発コンセプトを評価する立場に私はありませんので、
その質問には答えられません。ただ彼らとは製品開発の戦略が異なるというだけです。 - ――ではMapRに対してはどのように思われますか。コメントできる範囲でけっこうです。
スリニバス氏:MapRはApache Hadoopの開発にほとんど貢献していません。コードの行数にしても、
イシューの解決数についても、 その数は非常に少ないです。対照的にHortonworksはどちらも他社に圧倒的な差をつけて1位の座にありますが、 この結果は我々にとってごく自然なことであり、 オープンソースとしてのHadoopにコミットし続ける以上、 果たすべき責任だと思っています。現在100名近くいるHadoopコミッターのうちHorotonworksに所属するのは30名です。そのほかのApacheプロジェクトに関わるコミッターの数を合わせると、 200名近いHortonworksのエンジニアが参加しています。これはApacheプロジェクトの中でも最も多い数です。でもMapRはそういう戦略、 つまりオープンソースコミュニティに貢献するという活動に重きを置いていないのでしょう。それも我々とは方向性が違うというだけですので、 批判すべきとは思いません。 - ――総合すると、
オープンソースであるApache Hadoopへの圧倒的な貢献度の高さがHortonworksの最大の特徴であり強みということになりますか。 スリニバス氏:そうです。Hortonworksは年に2回、
HDPのアップデートを行っていますが、 そこで顧客から得られたフィードバックをApache Hadoopのへと反映させています。そして次のHDPでは、 新たに強化されたHadoopをベースにした環境を顧客に届けることができる。100%のオープンソースであること、 そしてコミュニティに貢献することを徹底しているからこそ可能になるビジネスアプローチなのです。
Hadoopはよりセマンティック、API指向、スケーラビリティの担保に向かう
- ――スレシュさんはHadoopコミュニティのPMCであり、
HDFSのメイン開発者とうかがっています。HadoopおよびHDFSの開発の現状とロードマップを教えていただけるでしょうか。 -
スリニバス氏:次の
(マイナー) リリースとなるHadoop 2. 8はそれほど遠くないうちに出すことができるでしょう。そして現在は、 メジャーバージョンアップとなるHadoop 3. 0のリリースに向けて活発な活動が続いています。リリースの時期に関しては、 現在コミュニティ内で議論を重ねているところですが、 年内には出せるのではないかと見ています。 Hadoop 2.
8ではJava 8に書き換わるコードがより増えることになります。またYARNのリプレースも進む予定で、 とくにスケジューリングに関しては大幅な機能改善が見込めるはずです。そしてHDFS関連で最も大きなアップデートは、 イレージャコーディングがはじめて実装されることです。これに関してはYahoo! Japanが非常に大きな貢献をしています。鯵坂さん (NTTデータ 鯵坂明氏。スリニバス氏と同様にHadoop PMCでHDFSのスペシャリスト) のブログにも、 2015年に初めてApache Hadoopの貢献企業としてYahoo! Japanの名前が出てきましたが、 ここ最近の同社による積極的なHadoop開発へのアプローチは本当にすばらしいと感じています。 - ――HDFSに関しては新たに
「Ozone」 というイニシアチブが生まれていると聞きます。Ozoneについて、 すこし説明をお願いします。 -
スリニバス氏:OzoneはApacheコミュニティが推進するオープンソースプロジェクトで、
HDFS上にオブジェクトストアを実装し、 (Amazon S3やAzure Storageのような) オブジェクトストレージとして利用可能にする技術です。わかりやすくたとえるなら、 YARNが登場したことでMapReduceに限らずより多くのリソース利用を可能にしたのと同じように、 Ozoneを実装することでHDFSはより多くのストレージに対応できるようになります。ご存知のように、 Hadoopが誕生した10年前と現在ではストレージに求められる要件が大きく変わりました。10年前にはオブジェクトストアやキーバリューストアという言葉は一般的ではなく、 中央集権的な管理でも十分に対応できましたが、 クラウドが普及し、 扱うべきデータ量が爆発的に増えた現在ではそうはいきません。よりセマンティックで、 API指向で、 しかもスケーラビリティを担保するニーズが強まっています。Hadoopがこうしたトレンドにキャッチアップし、 Ozoneのようなイニシアチブが登場することはごく自然なことです。 先ほど触れたイレージャコーディング、
そしてエンクリプション (暗号化) といま挙げたさまざまなストレージへの対応は、 今後のHDFS開発におけるメインのフォーカスエリアとなります。 - ――ストレージのトレンドでは、
2016年はオールフラッシュ元年とも言われており、 各社が積極的にオールフラッシュアレイを展開しています。HDFSはこうした最新のストレージへの対応も進めていくという理解でよいでしょうか。 スリニバス氏:その通りです。対応ストレージの数を増やしていくのは我々にとっては大きなミッションであり、
オールフラッシュアレイのようなインメモリストレージのサポートも、 もちろんスコープに入っています。
変化なくしてHadoopの未来はない
- ――お話を伺っていると、
最初に言われていた 「Hadoopはエンジニア魂を掻きたてる存在」 という言葉の意味がよく伝わってきます。ただ、 エンタープライズ企業、 それも保守的な大企業にとってはHadoop開発のイノベーションスピードについていくのは難しいのではないでしょうか。個人的な見解ですが、 Hadoopの開発者はOzoneのように新しい技術への対応にやりがいを感じる傾向が強く、 その一方で古いバージョンのメンテナンスなどにはそれほど興味を示さないように感じます。こうした姿勢だとエンタープライズでのアダプションが進まないように思うのですが。 スリニバス氏:そういう考え方があるのは理解できます。コミュニティの中でもメンテナンスバージョンにもう少しフォーカスしたほうがよいのでは、
という意見が出ることもあります。 しかし我々がHadoopの進化のスピードを遅くすることはありえません。なぜなら世の中が大きく、
速く変化しているからです。Hadoopがなぜビッグデータプロセッシングの中心技術になったのか、 それは時代の変化に追随できるフレキシビリティを備えていたからにほかなりません。いまのHadoopは10年前のHadoopとは大きく異なります。数年前までは 「Hadoop=バッチ処理システム」 と思われていました。しかし現在はSparkやStorm、 Kafkaなどのエコシステムと組み合わせることで、 リアルタイムストリーミング基盤としても十分に機能します。また、 繰り返しになりますがYARNの登場により、 扱えるリソースは劇的に増え、 MapReduce以外のプログラミングモデルを実行できるようになりました。このフレキシビリティこそがHadoopの持ち味であり、 変化を躊躇していてはHadoopではなくなってしまいます。 もっともあなたの言わんとしていることもわかります。Hadoop開発にとっての最大のチャレンジはイノベーションと安定性のバランスをうまく取ることです。新機能の実装に夢中になりすぎて、
データプラットフォームとしての安定性が損なわれることがあってはならないとも思います。メンテナンスバージョンを今後どうアップデートしていくか、 コミュニティ内でもこれからさらに議論を重ねていくことになるでしょう。一方でHortonworksの大事な仕事は、 Apache Hadoopへの貢献と同時進行でエンタープライズレディなHadoopディストリビューションを企業ユーザに提供していくことです。HDPのアップデートを通じて、 プラットフォームとしての安定性の担保に努めていくつもりです。 - ――最初のほうで
「Hadoopのアドバンテージのひとつはコモディティなハードウェアを使えること」 と言われていました。しかしオールフラッシュアレイやFPGA、 GPUといった最新のハードウェアに対応することに注力すれば、 その良さが消えることにつながらないでしょうか。 スリニバス氏:それは違います。
「コモディティなハードウェア」 とは安いハードウェアのことではありません。そこを勘違いしないでください。10年前のコモディティと現在のコモディティは明らかに異なります。CPUもストレージもネットワークも、 10年前とは違うものがコモディティになっているのです。コモディティが変化するならHadoopも変化するのは当然のことです。その象徴がYARNです。CPUが高速化し、 GPUが一般化し、 メモリが大容量化したことでMapReduceでこれらを効率的に扱うことは難しくなりました。だからYARNがかわりに登場したのです。 - ――IT全般に言えることですが、
ハードウェアとソフトウェアでは進化のスピードにかなり差があるように感じます。とくにデータベースに関していえば、 いまだに1990年代のアーキテクチャをベースに設計されているものが多く、 モダンなハードウェアの性能を活かしきれていません。Hadoopはそうした存在とは一線を画しているということでしょうか。 スリニバス氏:Hadoopは並列分散処理システムのミドルウェアであり、
周辺技術までを含めたエコシステムでもあります。データベースという狭いくくりに含めるには規模が大きすぎます。ですが、 ハードウェアの性能を活かしきれていないという課題があるのは事実です。今後のHDFSやYARNの開発においては"現在のコモディティ"を見据えながら、 対応すべきハードウェアの優先順位を決めていくことになるでしょう。 - ――Hadoopエコシステムの中でも、
最もエマージングなトレンドとしてSparkがよく取り上げられますが、 「HadoopはいずれSparkに取って代わられる」 という意見を聞くこともあります。こうした論調をどう思われますか? スリニバス氏:HadoopとSparkは別物です。補完しあう関係にはありますが、
HadoopエコシステムのひとつであるSparkがHadoopをリプレースするということは基本的に不可能です。Sparkにはストレージレイヤはありませんし、 マシンラーニングなどには最適なソリューションですが、 Hadoopが求められるユースケースでSparkがすべてを置き換えられるいということはありえません。どうしても 「Hadoopはレガシー」 と決めつけたい人たちがいるようですが、 そもそもの前提が間違っているのです。
- ――最後に日本の開発者/
ユーザに向けてひとことお願いします。 スリニバス氏:これまで日本には3回ほど行ったことがありますが、
行くたびにコミュニティもユーザも大きく成長していると感じます。Hortonworksにとっても日本は非常に重要な市場であり、 開発者やユーザ企業は非常にすばらしいパートナーです。PMCに鯵坂さんや小沢さん (NTTイノベーションセンタ 小沢健史氏) が選ばれたこともとてもうれしく思っていますし、 NTT/ NTTデータやYahoo! JAPANのコミュニティへの貢献も高く評価しています。これからも一緒にHadoopを発展させていくパートナーとして、 ともに歩いていきたいと願っています。