1990年代に登場したオープンシステムの発達とともに、企業システムの基盤としてリレーショナルデータベース(RDB)が普及した。現在、企業が保持する定型データのほとんどは、こうしたRDBに格納されていると言ってよいだろう。
1990年代に登場したオープンシステムの発達とともに、企業システムの基盤としてリレーショナルデータベース(RDB)が普及した。現在、企業が保持する定型データのほとんどは、こうしたRDBに格納されていると言ってよいだろう。
しかし、クラウド時代を迎えてデータ処理のニーズが多様化してきた。そこで脚光を浴び始めたのが「NoSQL」である。NoSQLは、問い合わせ言語にSQLを用いるRDB以外のデータベース全般を指す言葉だ。
ちなみに「NoSQL」は、「No」というネガティブな語を含むことへの反発が当初から多く、現在では「NotOnly SQL」の略と解釈するのが一般的である。
クラウド時代の必然から生まれた
RDB普及の背景にオープンシステムがあったように、NoSQLが出現した背景にはクラウドの存在がある。クラウド、特にグーグルなどのパブリッククラウドが扱うデータ量やユーザー数は、企業の業務システムで扱うデータ量や利用者数と比べると桁違いだ。これに対応するため、グーグルは「BigTable」、アマゾンは「SimpleDB」と呼ぶデータベースを開発した。
BigTableやSimpleDBはいずれも、「分散キーバリュー型データストア」と呼ばれる。データ構造は、キーと、そのキーに関連づけられた値が複数連なるというシングルテーブルのような単純なもので、分散処理による高いスケーラビリティを実現する。一方で、トランザクションによる厳密なデータ一貫性の機能については、割り切った実装になっている。NoSQLへの注目は、このキーバリュー型データストアが中心となっている。
NoSQLに取り組んでいるのは、グーグルやアマゾンだけではない。最近よく話題に上るのは、Facebookが開発した「Cassandra」だろう。このほか、「Redis」や「Couch-DB」「Membase」など、世界各地で数多くのエンジニアがNoSQLプロジェクトを進行中である。
国内では、ネット企業大手が競って独自のNoSQLを開発している。例えば、グリーの「Flare」、楽天の「Roma」、えとらぼの「kumofs」、「Tokyo Tyrant」などだ。
●Next:注目のHadoop、企業での活用が始まる
会員登録(無料)が必要です