第10回・NoSQL
NoSQLとは、Oracle DatabaseやMicrosoft SQL Serverに代表されるリレーショナルデータベース管理システム(RDBMS)とは異なる構造を持った新しいデータベース技術の総称です。RDBMSで標準的に採用されているデータベース言語「SQL」を使わないため、NoSQLと呼ばれるようになりました。しかし、従来のRDBMSに置き換わるものではなく、補完する要素が大きいことから、現在ではNoSQLは「Not only SQL」と解釈されるのが一般的です。NoSQLデータベースには、分散キーバリュー型データストア、列指向データベース、ドキュメント指向データベースなどの種類があります。
NoSQLが注目される背景には、SNSやECサイトなどで取り扱うデータ量が大きく膨らんできていることがあります。NoSQLデータベースには、RDBMSと比較してデータ構造がシンプルで、サーバ台数を増やすことで膨大なデータを高速で処理できるというメリットがあります。その反面、データの一貫性を厳密に保つ仕組みがなく、企業の会計システム用データベースには向いていません。負荷分散に成約があるバックエンドにはRDBMS、サーバを増やすことで並列化処理できるWebサイトにはNoSQLデータベースと使い分けることで、それぞれのメリットを活かすことができます。
注目度の高いNoSQLデータベースの例としては、Facebookが開発した後、2008年にオープンソースとして公開された分散キーバリュー型データストア「Cassandra」があります。Facebookでは、会員のメッセージ検索機能Inbox Searchにおいて、このCassandraを活用しています。また、2010年に入ってTwitterがCassandraの導入を決め、現在では位置情報のデータ保管、人気ツイート一覧のリアルタイム分析など、様々なデータ処理においてCassandraが使われています。ソーシャルニュースサイトを運営するアメリカのDiggやRedditも、すでにCassandraを導入しています。
| テクノロジー名 | NoSQL(Not only SQL) |
| 技術の概要 | データベース言語「SQL」を使わない新しいデータベース技術の総称。サーバを増やすことでデータを高速処理できる。 |
| 普及状況 | Facebookが開発した分散キーバリュー型データストア「Cassandra」がTwitterで採用されるなど、SNSやECサイトなどで導入が進んでいる。日本でも独自のNoSQLを開発する動きが広がっている。 |
| 考えられる影響 | SNSやECサイトでは、位置情報や閲覧したページなどの行動履歴を活用したサービスが増えている。膨大なデータを効率よく処理する手段として、NoSQLを使ったサイト構築がさらに普及すると予想される。 |
NoSQLは、アメリカでGoogleやAmazonがいち早く取り組んだ経緯があり、Cassandraを含めアメリカで開発されたものが話題になりがちですが、日本のSNSやECサイトが独自に開発したNoSQLデータベースも数多く誕生しています。たとえば、ミクシィは「Tokyo Tyrant」、グリーは「Flare」、楽天は「ROMA」と呼ばれる分散キーバリュー型データストアを開発しています。これらのNoSQLデータベースもオープンソースとして公開されていて、今後Webサイトの一部機能を担うデータベースとして採用される例が増えるものと予想されます。
※連載「Web関連の最新テクノロジー・2011年版」は、今回で終了となります。4月からは新連載がスタートいたしますので、ご期待ください。
-----------------------------------------------------------------
◎初出:2011年3月28日
-----------------------------------------------------------------
| 固定リンク
