インタビュー
ビッグデータを支えるCloudera、その役割とは? 共同創業者兼CTOのAwadallah氏に聞く
(2013/4/10 06:00)
昨年後半から、ビッグデータというキーワードをITニュースだけでなく、新聞やテレビといったメディアでも見ることが多くなっている。一時は、「ビッグデータはバズワードでは?」といわれていたが、昨年後半からの動向を見てみると、普及へ向けた状態に入ってきた。
米国では、数年前からIT企業や先進的な大企業などの一部の業務でビッグデータの活用が行われていた。これは、ビッグデータを扱うためにオープンソースで開発されていたHadoopが、一定の完成度を見せたためだ。
今回は、このHadoopを中心にビジネスを行っている、米Clouderaの共同創業者兼最高技術責任者(CTO)、Amr Awadallah氏に、ビッグデータやClouderaの今後に関してお話を伺った。
米Yahoo!でHadoopを採用、その後自らClouderaを設立
Hadoopは、もともと、Googleが検索エンジン用に開発したバッチ処理システムを参考に作られたもので、数千ものノードを用いて、PB(ペタバイト)クラスのデータ処理ができる。
参考にしたとはいっても、Googleがコードをオープンにしたのではなく、自社の検索システムを紹介する論文中で、データ処理のMapReduce、分散ファイルシステムのGoogle File Systemを解説。この論文を見たエンジニアが、Yahoo!社内で利用するシステムとしてHadoopの開発を進めていたものだ
Hadoopは、分散ファイルシステム上のビッグデータを処理できるシステムとして、さまざまな用途に利用されている。例えば、楽天では、ある商品に対するお薦め商品をリストアップする「レコメンド処理」に利用している。日本のヤフーでも、検索関連のサービスでHadoopを利用しており、以前は6時間ほどかかった処理が、Hadoopに変えてからは5分ほどで済むようになったという。
現在Hadoopは、Apache Software Foundation(ASF)に移管され、オープンソースソフトとして開発が進められている。
その中で、大きな力となっているうちの1社がClouderaだ。Clouderaは、米Yahoo!でHadoopの開発を行っていたエンジニアや、米Oracleで組み込み型データベースの開発を行っていた面々が設立した企業である。
Hadoop自体は、前述のようにASFのオープンソースのもとで開発が進められているが、Clouderaは、Hadoopを商用で利用できるディストリビューションとしてCloudera's Distribution including Apache Hadoop(CDH)や管理ツールなどのソフトに加え、商用レベルのサポートを提供している。
そのClouderaの共同創業者兼CTOであるAwadallah氏は、いくつかの企業を経てYahoo!に入社した後、プロダクトインテリジェンスエンジニアリング担当副社長として、データ分析およびビジネスインテリジェンスのために、いち早くHadoopを採用し、稼働させた実績を持つ。その後、2008年にClouderaの設立・経営に参画した人物だ。
ビッグデータの利用が広がることを確信していた
――米国のYahoo!でHadoopを使用してビッグデータの解析を始められましたが、IT企業だけでなく、一般の企業でもビッグデータに注目すると思われていましたか?
Awadallah氏
Clouderaを設立する時に、さまざまな企業からビッグデータに関するニーズがあると確信していました。金融機関や小売店、また携帯電話会社などの通信関連企業では、毎日、毎時間、膨大なデータを生み出しています。こういった企業が、Hadoopを使ってビッグデータの解析を行うようになると思っていました。
今まで、こういった企業は、業務別のデータベースやデータウェアハウス(DWH)などを利用して、限定的にデータを分析していましたが、DWHのコストが高かったため、限定された日数のデータやサマリーしか入っていませんでした。
しかし、消費者向けに製品を販売している小売企業なら、消費者がどのような時系列で製品を買うのかといった傾向や、季節性の違い、曜日の違いなどを分析したいと思います。さらに、特定の個人が数年から十数年単位の時間経過で、どのような製品を購入するように消費計画をシフトしていくのか、といったことも知りたいと思います。
例えば、独身だった消費者が、結婚して、子供ができれば、個人のライフスタイルに大きな変化をもたらします。こういった長期の時間経過で購入される製品がどのように変化していくのかということは、今までのDWHでは分析できませんでした。このようなビッグデータを今までよりもはるかに低コストで、高速に分析できるようになったのがHadoopなんです。
米国のある銀行では、ATMの不正使用を監視するためにHadoopが利用されています。ATMには、監視カメラが標準で搭載されているため、キャッシュカードと監視カメラの映像を使った顔認識システムを組み合わせて、不正な引き出しが行われない監視しているのです。こういったことは、今までのデータベースではできなかったことです。
だからこそ、Hadoopを使ったビッグデータは、Webのログ解析やレコメンドなどのIT企業がeコマースで利用するだけでなく、多くの企業が自社のビジネス活動を正しく理解するために利用できるツールだと思っています。
米国でも最初は、Web関連企業など、テクノロジーに理解のある企業がリスクを負ってHadoopを採用してきました。こういった企業では、低コストで、今までにないシステムを作り上げています。このような事例を見て、多くの企業が採用を検討し出したり、一部の分野でビッグデータの利用が始められたりしています。
一度でもビッグデータのうまみを知れば、多くの業務でビッグデータを利用しようとするでしょう。最新の事例では、企業が持つデータを、すべてビッグデータとしてHadoopに格納し、ビッグデータを中核としたデータシステムを構築しているケースがあります。この中から、必要に応じてSQLデータベースなどへ切り出せるようにしているのです。
お蔵入りになっていたデータの有効活用が可能になる
――一般企業でのビッグデータ利用としては、どのような事例がありますか?
Awadallah氏
さまざまな野菜や果物の種子を販売している農業分野の企業では、種子の品種改良などを継続的に行っています。開発された種子は、自社のラボ農園で育てられ、生育状態や品種改良によるメリットやデメリットを確認します。
この企業では、こうして膨大な種子の品種改良を行っているのですが、実際に市場に出るのはほんの一部だけです。それ以外の種子は、お蔵入りになっているのです。
今までだと、お蔵入りになった種子に関するデータは、データベースや資料に納められるだけでしたが、Hadoopを使ったビッグデータ分析により、新たな種子の品種改良時に、今までに品種改良された膨大な数のデータを参考にしていこうとしています。
さらにこの企業では、種子を育てる時に、ラボ農園の温度や湿度、日照など、各種のセンサーを配置して、種子の生育に関するデータもビッグデータとして取り込んでいます。このようなビッグデータをHadoopを使ってうまく活用することで、効率よく新しい品種を開発できるようにしているのです。
別の事例では、ある金融機関が、個人に対する貸し付けを行う時の、審査の補助データとして利用しています。金融機関では貸し付けを行う時に、年収や勤務先などのデータをもとにしていますが、個人の支払い能力を把握するには、これだけではパーソナルな部分のデータが不足しています。
そこで、Twitter、Facebookなど、さまざまなSNSからの情報をビッグデータとして集めて、個人に対するプロファイルを調べています。例えば、あるユーザーは浪費癖があるかとか、数年おきに転職しているか、などを調べています。このように聞くと、ネガティブなシステムのように思われるかもしれませんが、そうではありません。
例えば、結婚して、子供ができれば、住宅ローンに関する案内を送ったり、新たに車を購入したなら、自動車保険の案内をしたりすることができます。こういったパーソナルプロファイルを積極的に使うことで、新たな貸し出しを増やし、ビジネスを拡大することが可能になります。また、個人を知ることで、金利に対する割引やプレミアをつけたりすることも可能になります。
一般企業での導入・活用の支援を積極的に行っている
――活用が進んでいるのはわかりましたが、一般企業にとって、Hadoopを導入するのは難しいのではないですか? パッケージ化されているわけではないので、利用する側で高いITリテラシーが必要だと思うのですが。
Awadallah氏
確かにそうです。だからこそ、当社のような企業が重要になってくるのです。オープンソースのHadoopをそのまま利用するには、システムをよくわかっているエンジニアが必要になってきます。
また、エンジニアだけでは、ビッグデータを使いこなすことはできません。
そこで、Clouderaでは、トレーニング、Clouderaが独自にリリースしているCloudera Manager、Hadoopを取り巻く新しいテクノロジーの提供、という3つのポイントから製品・サービスを提供しています。
トレーニングは非常に重要です。実際にHadoopを使ってもらうには、Hadoopを知るエンジニアを育てていく必要があります。これは、ビッグデータだけでなく、さまざまな分野でも同じことでしょう。
2つめのCloudera Managerは、CDHをまるでOfficeアプリケーションのようにインストールするシステムです。ユーザーはインストールしたいモジュールにチェックをつけて、ユーザーID、パスワード、インストールサーバーやノードのIPアドレスを指定するだけで、Hadoopをインストールして動作できるようにしています。
3つめは、オープンソースのHadoopでは不足している機能を積極的に提供していくことです。例えば、Cloudera Impalaは、HDFSあるいはApache HBaseのどちらに保存されていたとしても、リアルタイムにデータを問い合わせをすることができます。この時、Impalaでは、Apache Hiveと同じメタデータ、SQL文法(HiveQL)、ODBCドライバを使うため、ユーザーにとってはSQLデータベースと同じ使い勝手で、Hadoopに納められているビッグデータにアクセスできます。
また、ImpalaはMapReduceを回避して、商用並列RDBMSに見られるものと非常によく似た専用の分散クエリエンジンを介し、データに直接アクセスします。これにより、Apache Hiveより1けた速い性能を出すことができます。
これ以外にも、Hadoop上で機密データを保存するためのCloudera Navigator 1.0という製品も提供しています。このソフトウェアは、ビッグデータ上にある機密性の高いデータに監査性やデータガバナンスといったといった機能を付け加えます。
HDFSのファイルやディレクトリからApache Hiveのテーブル、HBaseのテーブルにわたって、Hadoopスタック内で鍵となるすべてのオブジェクトに対する監査およびアクセス管理です。また、Cloudera Naviagtorは、既存のコンプライアンスシステムやプロセスとともに動作するよう設計されています。
このようなことにより、企業でのHadoopの利用をサポートしています。
データサイエンティストがいなくても活用は可能
――ビッグデータのデータ解析には、データサイエンティストというスキルが必要になりますが、このようなスキルを持つ人はまだまだ少ないと思うのです。データサイエンティストがいないと、ビッグデータは利用できないのでしょうか?
Awadallah氏
データの分析ということではデータサイエンティストは必要になるかもしれません。しかし、われわれが企業でビッグデータを使ってもらう時に重視しているのはデータトランスフォームなんです。
これは、データをある考え方で抽出したり、変更したりすることで、ビッグデータから意味のあるデータを取り出していくことです。
このため、Hadoopを使う時には必ずデータサイエンティストが必要というわけではありません。また、Clouderaでは、データアナリティクスで有名なSASと連携して、Hadoopで利用できるツールを提供していくことにしています。