大量のデータを集めてそれを分析するときは、MapReduceと呼ばれる技法を使うのが、最近の定石だ。具体的には、それを実装しているApacheのHadoopというフレームワークを利用する。それはすでに評価が確立している方法だが、簡単ではない。主にJavaで書かれているHadoopは、使い方が難しい、と評価されている。
本格的にデータ分析をやろうという気になった企業はHadoopとMapReduceを扱い慣れているエリートプログラマを雇うか、またはそれをしろうとでもできるようにしてくれるClouderaのようなサードパーティのサービスを利用する。しかしどちらも、容易ではないし費用もかかる。そもそも、企業に初めからビッグデータが分かる社員がいて、その仕事を任せられる、というところはあまりない。
Y Combinatorの2015年冬のクラスでローンチしたPachydermは、ビッグデータ分析をもっと単純でとっつきやすいものにすることを、ねらっている。MapReduceのパワーをHadoopの難しさなしで提供する、をキャッチフレーズとするPachydermは、オープンソースのツールとして、プログラマがJavaのコードを書いたり、MapReduceについて詳しく知っていなくても大量のデータを分析できる、と称している。
RethinkDBのスタッフだったJoey ZwickerとJoe Dolinerが創業したPachydermは、最近10年ぐらいのインフラの進化に立脚している。中でもとりわけ重要なのが、クラスタの管理に特化したLinuxの実装CoreOSと、Linuxコンテナによる分散化アプリケーション展開システムDockerだ。
ファウンダたちによると、Pachydermは同社のWebサイトやGitHubで入手でき、大量のデータを分析したいプログラマがやるべきことは、Dockerのコンテナの中に収まるhttpサーバを実装するだけだ。同社は曰く、“Dockerのコンテナの中でサーバが動くようになれば、Pachydermがそれを分散化して数ペタバイト以上のデータでも処理できるようにする”。たとえばこのMapReduceジョブは、Pachydermを使ってチェスの対戦の悪手を分析して学習するシステムだ。
Pachydermのとくに嬉しいところは、データ分析がバックエンドやインフラの技術者でない人でも気軽にできることだ。Pachydermの売りは、フロントエンド専門のプログラマやデザイナーでも、自分でMapReduce的なジョブを動かし、結果を把握・理解・報告できることだ。“誰にとってもデータ分析をやることがおもしろくなり、その敷居がぐっと低くなる”、とDolinerは言っている。
まだY Combinatorからの支援があるだけのPachydermは、とても若い企業だ。収益化の方法は、そのほかのオープンソース企業のやり方を見習いたい、という。つまり、自由な無料利用と企業向けの有料サービスの二層構造だ。またデータ分析ジョブを書くプログラマのためのGitHub的なWebプラットホームも作りたい、と言っている。
Hadoop MapReduceに代わるシステムをオープンソースで提供して、ビッグデータ分析の敷居を低くしたい、と考えているのはPachydermだけではない。ApacheのSparkやStormもその例だし、またJavaから派生した言語Scalaの周辺でも、Hadoopを使いやすくするための努力が行われている〔例: Java Cascadingから派生したtwitter/scalding〕。
“ビッグデータ”はここ数年、バズワードになっているけど、その実体はソリューションであるよりもむしろ問題そのものだ。しかしPachydermにはYCの支援に加えてデベロッパコミュニティからのサポートもあるから、次世代のデータ処理における重要な選手になるかもしれない。強力な、ソリューションとして。
[原文へ]
(翻訳:iwatani(a.k.a. hiwa))