リレーショナルではないデータベース
リッテル藤井です。
今日は、前回の続きでNoSQLの話から始めたいと思います。
ここで、SQLというのはRDBを操作する言語です。
また、NoSQLというのはNot only SQL(SQLだけではない)の略語です。
このNoSQLには次のようなものが挙げられます。
・ キー・バリュー型データストア(KVS)
・ 階層型データベース
・ ドキュメントデータベース
・ オブジェクトデータベース
現在は、KVSが注目されています。
KVSとは、データ構成要素をキー(Key:要素名)と、
バリュー(Value:要素値)の対で管理するデータストアです。
たとえば、ひとつめのキーを「名前」、バリューを「山田」、
ふたつめのキーを「好物」、バリューを「カレー」とすると、
{"名前":"山田", "好物":"カレー"}
となります。RDBと違うのは、あらかじめ列を形成していないところですね。
RDBの表であれば、"好物"という列を設定したら、
全ての行に"好物"の値(カレーなど)を入れる必要があります。
しかし、KVSではその必要がありません。それぞれの行に対して、
好きなキーを用いることができます。
つまり、データを格納する際に、正規化する手順を省略できることになります。
さらに、データを用途ごとに形式定義(正規化)する必要性も下がります。
ここまで、データベースには大きく分けてRDBとNoSQLの2種類があり、
NoSQLのひとつとして特にKVSをご紹介しました。
では、RDBとNoSQLはどのように使い分けるべきなのでしょうか。
また、クラウド時代に適したデータストアはどちらなのでしょうか。
次回に続きます。
ご意見・ご感想などこちらまでメールくださいね
↓↓↓
mminfo@littel.co.jp
リッテル藤井です。
今日は、前回の続きでNoSQLの話から始めたいと思います。
ここで、SQLというのはRDBを操作する言語です。
また、NoSQLというのはNot only SQL(SQLだけではない)の略語です。
このNoSQLには次のようなものが挙げられます。
・ キー・バリュー型データストア(KVS)
・ 階層型データベース
・ ドキュメントデータベース
・ オブジェクトデータベース
現在は、KVSが注目されています。
KVSとは、データ構成要素をキー(Key:要素名)と、
バリュー(Value:要素値)の対で管理するデータストアです。
たとえば、ひとつめのキーを「名前」、バリューを「山田」、
ふたつめのキーを「好物」、バリューを「カレー」とすると、
{"名前":"山田", "好物":"カレー"}
となります。RDBと違うのは、あらかじめ列を形成していないところですね。
RDBの表であれば、"好物"という列を設定したら、
全ての行に"好物"の値(カレーなど)を入れる必要があります。
しかし、KVSではその必要がありません。それぞれの行に対して、
好きなキーを用いることができます。
つまり、データを格納する際に、正規化する手順を省略できることになります。
さらに、データを用途ごとに形式定義(正規化)する必要性も下がります。
ここまで、データベースには大きく分けてRDBとNoSQLの2種類があり、
NoSQLのひとつとして特にKVSをご紹介しました。
では、RDBとNoSQLはどのように使い分けるべきなのでしょうか。
また、クラウド時代に適したデータストアはどちらなのでしょうか。
次回に続きます。
ご意見・ご感想などこちらまでメールくださいね
↓↓↓
mminfo@littel.co.jp








