« ツールがサポートすれば考え方も変わる | トップページ | 要件管理が必要な理由 »

2009/11/13

クラウドは非RDBを必要とする

最近流行するクラウドは、非RDBであるkey-valueストアを必要としている。
その理由を完全に理解できてないけれど、ネット上にある記事をメモしておく。

【元ネタ】
Web 時代の非リレーショナルデータベース: 第 3 回 Apache CouchDB で MapReduce フレームワークに基づく問いあわせを行う

「NoSQL」は「Not Only SQL」である、と定着するか? - Publickey

クラウドが流行する背景には、Webサーバーのスケールアップは容易だが、RDBのスケールアップが難しいことがあるからだろう。
そして、ApacheのCouchDB(Erlangで作られている)、GoogleのBigTable等のkey-value storeをスケールアップしやすい理由は、MapReduceによる並行処理で高速化できるからだからだろう。

しかし、クラウドが分かりにくいのは、データストアをRDBではなく昔の汎用機の頃に戻しているからではないだろうか?
RDBに慣れているとkey-value storeを持つシステムは実装しにくく、正直分かりづらい。

色々探ってみたい。

|

« ツールがサポートすれば考え方も変わる | トップページ | 要件管理が必要な理由 »

プログラミング」カテゴリの記事

ソフトウェア」カテゴリの記事

コメント

楽しみなエントリです。次回を期待しています。

ただこの文脈では、スケールアウトとスケールアップの違いが本質的のように思うので、スケールアウトと書いてあると(人によっては)わかりやすくなると思います。

投稿: 上美谷 | 2009/11/14 01:30

RDBの関係演算機能自体は(それなりの実装をすればという前提はあるものの)スケールアウト可能なので、(スケールアウトの障害となる)一貫性維持の機能を弱めたRDBがあるといいのかもしれません。今のkey value store は、RDBからみるとあまりに原始的で、最初はまあ良いにしても、アプリケーションが大きく/多くなると、移行やスキーマ変更が面倒くさすぎですよね。

投稿: soda | 2009/11/19 11:31

◆上美谷さん、sodaさん

コメントありがとうございます。
僕はクラウドやkey-value storeの本質は分かっていませんが、その2つが密接に関係する理由はMapReduceにあるのだろうと思います。
逆に言えば、並列処理によるMapReduceの威力がそれだけすごいんでしょうね。

投稿: あきぴー | 2009/11/19 21:52

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: クラウドは非RDBを必要とする:

« ツールがサポートすれば考え方も変わる | トップページ | 要件管理が必要な理由 »