インターネット企業から生まれたビッグデータ対応技術

ビッグデータについては、ここ1-2年IT業界で注目されているものなので、話を聞いたことのある人も多いだろう。私のこのコラムでも、2011年1月に「ビッグデータ分析に注目」というタイトルで記事を書いた。その当時は、まだ日本ではビッグデータという言葉もほとんど使われていなかったが、その半年後あたりから、日本でも注目されはじめてきた。

復習のために、簡単にビッグデータについて整理すると、次のようになる。ビッグデータとは、まさしくその言葉どおり、大量データのことを指す。最近注目されているビッグデータのもととなる大量データは、大きく2種類ある。ひとつは、インターネット上で発生しているSNSなどの大量データ。もうひとつはセンサーからの大量データだ。これらを分析することにより、たくさんの新しいアプリケーションが広がっている。

たとえば、人々がインターネット上でどのようなサーチを行っているか、どのようなサイトにアクセスしているか、どんなものを買っているか、どんなことをブログで書いているか、FacebookなどSNSでどんな会話をしているか、等を分析することにより、人々の傾向嗜好分析が可能になり、有効な広告戦略、製品戦略構築に役立てることができる。ビッグデータ分析により、これまでに見えなかった全体像(big picture)が見えるようになったり、逆に個人の細かな行動等の詳細状況がわかるようになる。

ビッグデータ分析の特徴は、大量データの分析というだけでなく、SNSなどに出てくる文章やイメージなど、非定形データ処理を行うことにもある。また、昔からある分析手法のビジネス・インテリジェンス(BI)と異なり、単に状況を分析するだけでなく、将来を予測したり、現状を最適化するための指針も与えてくれる。さらに、BIのように長時間かけて分析するだけでなく、リアルタイムまたはそれに近い速さで処理することもあるのが、最近のビッグデータ分析の特徴だ。

これらを実現するためには、コンピューターの高速化、ストレージの巨大化、ネットワークの高速化、そしてそれらの低価格化などのハードウェア的な技術発展の要因も大きいが、それに加えて、ビッグデータに対応するソフトウェア技術の発展も見逃せない。そのソフトウェア技術に貢献しているのが、GoogleやAmazonなどの大手インターネット企業だ。

しかし、彼らは最初から新しいソフトウェア技術を開発しようとしていたわけではない。ただ、やろうとしていたことを実現できるソフトウェア技術が存在しなかったため、自分たちのやりたいことを実現するために、ソフトウェア技術を開発したのだ。ソフトウェア技術を開発し、それを販売して儲けようとしていたわけではないので、多くの技術はオープンソースとして、開放されている。そのため、これらの技術はさらに発展することとなった。

インターネット企業が、このように新しいソフトウェア技術を開発することになったのは、取り扱うデータ量が、これまでの想像を超えたものだったため、既存のリレーショナル・データベース(RDBMS)技術などでは、扱いきれなかったからだ。また、データ処理の面でも、単一のプロセッサーで処理しようとしても、早さに限界があり、たくさんのプロセッサーに処理を分散させて対応する必要が生じたためだ。現在、このようなビッグデータを高速処理する技術はいくつかあるが、その一つ、Hadoop MapReduceは、Googleが、2004年に書いた技術論文がその起源と言われている。そして、この技術はオープンソースのため、Yahooをはじめ、多くのインターネット企業で使われている。

Googleは、さらに、ビッグデータに対応するデータベース・システムとして、BigTableという概念を作り、2006年の技術論文で発表した。これにより、ぺタバイト(PB)(1000兆バイト)規模の大きなデータベースを数千のサーバーに分割して処理することを可能にした。これらの新技術は、既存のRDBMSに取って代わるようなものではなく、機能的にもRDBMSに比べると制限されたものだが、ビッグデータに対応し、Googleのような会社が実施したいことを可能にした。

次に上げられるのは、Amazonによる2007年のDynamo技術論文だ。Googleのサーチでは、万一ユーザーのサーチが見落とされても、それほど大きな問題はない。もう一度サーチをかければいいからだ。しかし、Amazonの場合は、インターネット上で物を売る商売をしているので、データのロスは許されず、また、一日24時間、週7日、ノンストップで稼動していることを要求される。このDynamo技術論文で、ビッグデータ分析での重要技術の一つ、NoSQLが大きく発展したと言われる。

GoogleもAmazonも、その後、これら自社システムのために開発した技術を、単にオープンソースとして世の中に提供するだけでなく、自社のクラウド・サービスにも活用している。GoogleのGoogle App Engineサービス、AmazonのAmazon Web Services SimpleDBやDymanoDB、Amazon Elastic MapReduceなどがそれだ。

われわれがGoogleの成功を見るとき、まず最初に考えるのは、サーチ結果をもとにしたサーチ広告によるビジネスモデルでの大きな成功だ。Amazonの場合は、インターネットの始まった早い時期に、インターネットによるEコマース・ビジネスを一気に広げ、市場を制圧した姿が目に浮かぶ。しかし、これらの成功には、単にそのようなビジネスモデルの成功だけでなく、それをささえる技術的な大きな貢献があることも忘れてはならない。それがあるからこそ、Googleのどんなサーチでも、瞬時に結果が返ってくるし、Amazonでの買い物が、早い応答時間で行えるだけでなく、ユーザーに関係のありそうなものを、うまく推薦してくれるrecommendationシステムなどが構築されている。

ビッグデータの問題は、いま急に発生した問題ではなく、以前から解決したいと思われていたものも多い。それがこれらインターネット企業の技術開発によって、実現に大きな一歩を踏み出した。まだまだ分析されていないビッグデータは無限にある。これからのビッグデータ分析の発展で、さらに多くのことが可能になっていくことだろう。

  黒田 豊

(2012年10月)

ご感想をお待ちしています。送り先はここ

戻る