2013年6月4日火曜日

データベース革命

久々のブログ更新です。

近々、某出版社様からデータベースのムック本が発売されます。
その本の巻頭特集を書かせていただきました。

その書き出し部分を掲載します。

 データベースの世界に、革命が起こりつつあります。
長年隆盛を極め、データベースの主流となっていたリレーショナルデータベースですが、昨今の大規模情報化社会において、その欠点が顕著に目立ち始めました。
「リレーショナルデータベースは、大量のデータ処理に弱い」
この「大量のデータ」、これは「ビッグデータ(Big Data)」と呼ばれています。
現在の主流であるリレーショナルデータベースは、ビッグデータに弱いのです。
これは、パソコンだけでなくスマートフォンやタブレット端末から、いつでもどこでもかんたんにビッグデータにアクセスできるようになった現代のクラウド社会においては、かなり重大な欠点です。
実際、検索エンジンで有名なGoogleでは、Googleが保持している大量のWebページに関するデータは、Bigtableというリレーショナルデータベース以外のデータベースによって管理されています。リレーショナルデータベースを利用しなかったもっとも大きな理由、それは「リレーショナルデータベースでは遅いから」です。
検索ボタンをクリックしたら、瞬時に検索結果を表示する必要があるのです。ユーザーを何秒も待たせるわけにはいかないのです。
Googleのデータベースだけではありません。大量データを扱うようになった現代のクラウド社会においては、リレーショナルデータベースでは不都合な点が散見し始めたのです。
そして、リレーショナルデータデータベースから別のデータベースを利用するための動きが高まり始めました。リレーショナルデータベースと対話するための言語である「SQL」をその名に含む「NoSQL(Not Only SQL)」という動きです。
その名から「SQLはもう不要(NoSQL)」ともとれる挑発的なこの動きは、時代の必要性によって、着実に広まり始めています。
NoSQLに分類されるデータベースは、リレーショナルデータベースほど高機能ではないものの、その軽量さが特徴です。今後、より多くのデータ処理を行う可能性が増えるにつれ、NoSQLに分類されるデータベースがリレーショナルデータベースを代替する場面も増えていくことでしょう。
とはいえ、現在の主流といえるデータベースは、やはりリレーショナルデータベースです。
データの処理速度よりもデータの整合性を保ち続けることの方が重要であることも多いでしょう。いくら高速に処理できるATMとはいえ、振り込んだ金額がたまに預金通帳に反映されないなどということはあってはなりません。現時点では、ATMのデータベースには、軽量ではないが高機能なリレーショナルデータベースに軍配が上がることでしょう。ATMだけの話しではなく、今後もさまざまな業務において、リレーショナルデータベースが一気にNoSQLによって塗り替えられるということはありえないのです。
本章では、1970年代に原型が生まれてからいまだに主流であり続けるリレーショナルデータベースを中心に、データベースの基本を学んでいきます。