Hortonworks って知ってます? え? 知らないの? ホートンに??(本当に??)

Hortonworks って知ってます? え? 知らないの? ホートンに??(本当に??)

Hadoop といえば、Hortonworks です。なぜって、それは Hadoop とそれを取り巻くビッグデータテクノロジーをリードしてきたのが Hortonworks だからなんです。日本ではこれから伸びしろがあり、大物は最後に登場するのがドラマの常。日本のビッグデータ市場をドラマチックに変えてしまうのが Hortonworks です!

Hadoop って最近どうよ?

そもそも Hadoop ってどんなものなんでしょう?

おおまかに説明すると、Hadoop は “大規模データの分散処理を支えるオープンソースのソフトウェアフレームワーク” で、”Java で実装” されています。そして Hadoop は、”Apache のトッププロジェクトの一つ” であり、”世界規模の開発貢献者コミュニティによって開発” され、使用されています。※1

また、Hadoop はこのようなコンポーネントで構成されています。※2

Hadoop Common

他のモジュールから共通して利用されるライブラリ群。

Hadoop Distributed File System (HDFS)

Hadoop 独自のスケールアウトが可能な分散ファイルシステム。

Hadoop YARN

Hadoop クラスタのリソース管理や、Hadoop 上で動作するアプリケーションのスケジューリングを担当する。

Hadoop MapReduce

Hadoop 上で動作する MapReduce フレームワークの実装。
Hadoop のデータ処理の中核を成す部分。
分散した各ノードからデータを集め、並列処理可能な複数の単位へ分割する処理(Map 処理)と Map 処理から受け取ったデータを集計・出力するための処理(Reduce 処理)に分かれる。 ロジックの記述は Java で行われることが多い。

Hadoop には 1.x系と2.x系がありますが、現在主に使われているのは2.x系です(2015年9月現在の最新版は、2.7.1)。Hadoop 1.x が登場した当初は、HDFS上のデータを取り込み、加工するために Java で MapReduce を書く必要があり、そのコーディングはかなり大変なものでした。

しかし、Hadoop 2.x からは、YARN が導入され、様々な「エコシステム」から Hadoop のライブラリや MapReduce を簡単に利用できるようになりました。これにより、データの抽出・加工・表示をわざわざ Java で記述する必要は無くなり、 Hadoop の利用度は飛躍的に向上しました。

[出典]
※1: https://ja.wikipedia.org/wiki/Apache_Hadoop
※2: http://hadoop.apache.org/

Hadoop 1.x と Hadoop 2.x の違い

 

Hadoop エコシステム って最近どうよ?

エコシステムとは本来、自然環境における物質やエネルギーの流れを研究する生態学の用語で「生態系」と訳されます。しかし、Hadoop をはじめとするオープンソースの分野では、ハードウェア、ソフトウェア、開発、サービス、ユーザーの各場面でどのように開発、改良、利用すれば、健全かつ安定的な発展を促進できるかという問題を解決しようとする理念のことを意味します。※1

とりわけ、Hadoop のエコシステムは、Hadoop の実装や運用を便利にしたり、MapReduceを簡単に実行することなどを目的として作られています。それぞれのソフトウェアは別々のプロジェクトで開発されたものですが、Hadoop を効率的に利用しようという「共通理念」の下でお互い協力し合っています。

Hadoop エコシステムの中で、現時点で最も使われている ベスト10が以下です。※2

  • 第1位   : Hive
  • 第2位   : Zookeeper
  • 第3位   : HBase
  • 第4位   : Fluentd
  • 第5位   : Pig
  • 第6位   : Mahout
  • 第7位   : Sqoop
  • 第8位   : Impala
  • 第9位   : Spark
  • 第10位 : Hue

しかしながら、これからも様々なツールがどんどん登場してくるので、今後の動向は見逃せません。この順位も1年後には劇的に変わっているかもしれません。

[出典]
※1: http://www.weblio.jp/content/%E3%82%A8%E3%82%B3%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0
※2: http://www.slideshare.net/hamaken/hadoop-conference-japan-2014-36781484

Hadoop の利用をサポートする Hadoop エコシステムの一例

Hortonworks ってどんな会社?

私が語るのもなんですが、Hortonworks という会社は、完全なオープンソースの Apache Hadoop データプラットフォームの開発、提供、サポートを行っている会社です。設立者の大半は、Apache Hadoop のコミッター (主要開発者) であり、Apache Hadoop PMC (Project Management Committee)  のメンバーです。よって Hadoop には特に造詣が深い会社であるといえます。

Hortoworks が提供する Hadoop ディストリビューションは、Hortonworks Data Platform (略して HDP) と呼び、Hadoop と Hadoop エコシステムが含まれています。そして、HDP は、全てオープンソースで構築されています。

ちなみに、2015年7月時点でのHDPのバージョンは2.3です。これには、Hadoop のみならず、Hadoop エコシステムも最新版が含まれています。HDPを選択すると、常に最新版の Hadoop および Hadoop エコシステムを利用することができます。これは Hortonworks が Hadoop のリーディングカンパニーであるが故の利点です。

※ [出典]
http://jp.hortonworks.com/
http://jp.hortonworks.com/hdp/whats-new/

HDP が提供する Hadoop と Hadoop エコシステム

Hortonworks は Hadoop と Hadoop エコシステムの発展に、こんなに貢献してるんです。

Apache Hadoopコミュニティの開発状況を調査する上で最も良い方法は、コミットログや JIRA のログを集めて分析することです。そうすることで、「誰がHadoopを開発しているのか?」という問いに答えることができます。※1
これらの情報は公開されているので、ソースの改修状況などを調査することによって、誰がどの程度開発に関わっているか(貢献しているか)ということを把握することができます。

では、Apache Hadoop コミュニティの活動においてどの企業/団体が貢献しているのでしょうか? ※2

Hadoop および Hadoop エコシステムにおけるコードの改修数は、2012年、2013年、2014年と Hortonworks がダントツです。

※ [出典]
http://hortonworks.com/blog/innovations-contributions-apache-hadoop/
http://ajisakaa.blogspot.jp/2014/02/the-activities-of-apache-hadoop.html
http://ajisakaa.blogspot.jp/2015/02/the-activities-of-apache-hadoop.html

ベンダー別のソースコード変更量(2012年)

ベンダー別のソースコード変更量(2013年)

ベンダー別のソースコード変更量(2014年)

 

 

最後に

いかがでしたでしょうか。今回のコラムでは、Hortonworksという会社について、そしてHortonworks社がリードするHadoopという技術についてご紹介しました。

様々な広がりを見せるHadoopの技術にこれからも注目必須です!

記事は、予告なく変更または削除される場合があります。
記載された情報は、執筆・公開された時点のものであり、予告なく変更されている場合があります。
また、社名、製品名、サービス名などは、各社の商標または登録商標の場合があります。