「ビッグデータ」ってなんだろう

私事ですが、来週からビッグデータカンファレンスなるものに参加することになりました。 折角なのでビッグデータがなんで取り上げられているか、今更感は否めませんが、自分なりの理解をまとめてみたいと思います。

もくじ

  1. ビッグデータって何?
  2. なんでこんなに取り上げられてるの?
  3. 何がきっかけだったの?
  4. 今までのものとどう違う?
  5. どう使うの?
  6. どんな課題があるの?

1.ビッグデータって何?

ビッグデータとは、既存の手法では取り扱うことが難しいほど多く、また、さまざまなタイプをもつデータのこと

上記のように説明されたりしますが、これだけだとさっぱりわからないですね。
ここで理解しておきたいのは、ビッグデータというのはただのたくさんのいろんなデータということです。

テキストデータだけでなく、画像データ、音声データなど、様々なデータをもとに、新しい技術によって大量のデータを解析し、ただのデータをうまいこと利用してお金にできないか、面白いものが作れないかを考えるということがテーマとなります。
ベースの考え方は、新技術できたのでそれ使って新しいこと試してみようという、今までの当たり前のビジネスと変わらないです。
ただ、その新しいことの影響が大きいかもしれないということで期待されています。

2.なんでこんなに取り上げられてるの?

「測定の対象にならないものはマネジメントできない」という有名な経営学者の言葉がありますが、 ビッグデータによって、これまで以上に多くの事象を測定できるようになりました。
たとえば、Amazonで商品を購入するとおすすめ商品が提示されます。
それにつられてついつい購入してしまったという経験はあるでしょうか。
もしあるとしたら、それは購入履歴というビッグデータを解析し、商品の関連情報を見つけ出した Amazon社のサービスによるものです。Amazon社の売り上げの35%は、おすすめ商品だそうです。

このようなビッグデータの利用は、ビジネスの手法が成熟し、競争優位がほとんどなくなっていた業界にとって 新たなビジネスチャンスを生み出しました。
このチャンスをモノにするために、ビッグデータは、以下の3つの観点をセットにして語られることが多いです。

  • 技術的観点 :大量のデータをいかに処理していくか
  • 統計的観点 :大量のデータからいかに意味のある情報を見いだすか
  • ビジネス観点:新たな情報からいかに価値へとつなげていくか

3.何がきっかけだったの?

ビッグデータのきっかけを作ったのは、Googleの検索システムでした。
インターネットには、大量の様々なタイプのデータがあります。そのため、いかに高速で有効な検索ができるようにするかという技術的な課題がありました。
Googleは、新しい技術・発想によってそれを解決したのです。
中でも、BigTableMapReduce(2013/2/24修正)とGFS(Google File System)の2つが大きな影響を与えました。

しかし、これらはGoogleのコア技術であるため、論文は発表されたもののシステムのソースコードは公開されていません。 そのため、Googleの技術を参考に、オープンソースで大量のデータを扱えるようなフレームワークやデータベースなどが出てきました。 最近見かけることの多い「Hadoop」は、そのフレームワークの一つです。

4.今までのものとどう違う?

こうした仕組みができるまで、大量データが取り扱えなかったかというと DWH(データウェアハウス)のように、既に大量データを扱っているシステムもあります。

大きな違いは、処理速度やデータの保存容量を比較的容易にスケールさせることができるということです。 今までは、ハイスペックで高価なサーバを使ってシリアル(直列的)に処理をさせてきました。 しかし、いくらハイスペックでも処理できる量、データの保存容量に限界があります。

シリアルがだめならパラレル(並列)ならどうか、ということで大量のPCを並列で処理をさせるのが BigTableMapReduce(2013/2/24修正)の考え方です。MapReduceとも呼ばれ、Mapステップで細かい単位に分割されたものを個々に処理し、 Reduceステップで1つの結果に統合します。

また、大量のデータを処理するには、そのデータの保管先が必要です。 それも、パラレルに大量のPCを接続し、接続PCを増やせば増やすほど保存容量を増やすようにして解決しました。 大量のPCを個別に管理するのは非常に大変なので、仮想的に一つのファイルシステムとして操作できるようにしたのがGFSです。 接続PCは、いわゆるサーバではなくデスクトップのような安価なPCで行うため 必要な分を必要なときに、安価に追加できるというメリットもあります。
これらの技術を比較的容易に行えるようにしたフレームワークがHadoopです。

5.どう使うの?

ビッグデータの技術的な背景は、おおよそ理解いただけたのではと思うのですが、 では、実際にどのようなビジネスに活用していくかが問題となります。

Hadoopは、データの処理を行うものの、意味を汲み取るところまではできません。 そこでデータ・アナリストがデータを統計的に分析し、有意な情報にしていきます。

二つほど活用事例をあげます。 1つ目に、インターネットサイトのアクセスログから、ユーザの導線分析を行うというものがあります。 どれくらいのユーザがどのページまでアクセスしていたか、またどのページでアクセスを終了したかという離脱率を調べてサイトの問題点をみつけ、改善点することができます。

また、別の事例として、全国にある店舗の売り上げを分析し、店舗ごとの売れ筋商品の予測をするものがあります。 気候(天気)、地域、店舗のコンセプトといった情報を過去から分析し、高精度なマーケティング分析を行うことで、売り上げ改善につなげるというものです。
GoogleやAmazonをはじめ、あくまでもこれらは一例で、様々な活用事例があります。

6.どんな課題があるの?

では、ビッグデータを活用するにはどのような課題があるでしょうか。 データ分析を行う文化の有無と人材不足があげられます。

1つ目に、アメリカなどと比べて、日本ではまだ活用事例が少ないことです。 現在は、大手のIT企業で、これからビジネスでどのように活用していくかという事例作りを行っている段階です。 もし、他の技術と同様、当たり前のようにビッグデータを活用していくような状況は、まだ先のことになりそうです。
活用事例が少ない原因として、日本の個人情報保護法などの法整備や、マーケティング力の弱さを指摘するものもあります。*1

2つ目に、圧倒的なデータアナリスト不足です。 データから価値を見いだすには、適切な統計解析を行う能力が必須となります。 とはいえ、そうしたことができる人材が、他国と比べても日本は圧倒的に少ないと言われています。 ここ5年から10年は、データアナリストが世界的に不足すると言われており、Hadoop等のIT技術を利用できるデータアナリストは なおさら必要な人材と考えられています。

3つ目に、ビッグデータ基盤を扱うIT人材の不足です。 これまでの分散システムとは仕組みが大きく異なり、またビッグデータ基盤のような環境を準備するのも難しいため、 個人でこれらの技術を身につけることができにくい状況です。 また開発では、自然言語処理機械学習などの高度なスキルが要求されるケースも多いです。 そのため、ITエンジニアなら誰でもできるという状況には、まだなっていません。

まとめ

書籍やネットなどで出回っている「一般的なビッグデータ」について、非技術者でもできるだけわかるようにまとめてみました。 *2
(間違っていたらどんどんご指摘ください。)
ビッグデータを活用して何かしようとなったとき、結局はそれぞれ個々の企業が抱える問題や状況は異なるため、 それぞれの企業ごとに、いかに効果的に活用するか、最適解を求めていく必要があります。
また、それを行うには、上記のような個別のビジネス(業務)について深い知識のあるコンサルタントや現場のマネージャと、 データを解析して価値を見いだすアナリストと、ビッグデータ基盤で開発/運用を行う技術者の三者がそろって機能すると言われています。

ある意味、今までと変わらないですね。
変わったのは、ビッグデータによって問題解決の選択肢が増えたということです。

Googleを支える技術 ?巨大システムの内側の世界 (WEB+DB PRESSプラスシリーズ)

Googleを支える技術 ?巨大システムの内側の世界 (WEB+DB PRESSプラスシリーズ)


*1 個人的には、日本では日常的にデータ分析を行う文化がそもそもないのではと思います。データアナリストの不足は、これまで日本企業がデータ分析を必要としてことなかった文化のあらわれかもしれません。


*2 書き終わってから気づきましたが、総務省が情報白書でビッグデータについてまとめていますね・・・。
平成24年版 情報通信白書 ビッグデータとは何か