• KeyとValueだけを組み合わせる単純な構造のKVS(Key-Value Store)は、自由にスケールできるメリットを活かして分散データストアとして利用されています。
  • 代表的なKVSとしては、memchaed・Redis・BigTableなどがあります

 

noSQLの一つのジャンルとしてのKVS

KVS(Key-Value Store)は、KeyとValueを組み合わせる単純な構造からなるデータストアです。
Keyを指定すると、Keyに関連付けられたValueが呼び出される仕組みとなっています。

KVSの特徴
・データモデルがシンプルである
・スケールアウトに適した構造をしている
・高速でデータの読み書きが可能
・分散処理に適している
・トランザクション処理できないものが多い

 

KVSの利用形態

KVSはKeyとValueの関係だけのデータベースなので、複数のサーバーにデータを分散させて格納する分散データストアとしての利用が増えています。

分散データストアは負荷の分散や高可用性を低コストで実現できるために、大規模なデータを扱うWEBアプリケーションなどで利用される形態です。
リレーショナルデータベースは構造的にデータを分散させるのが難しいのですが、KVSはいくらでもサーバーを増やして分散化することができます。

KVSはテーブル同士を結合するような複雑な処理は苦手にしていますが、自由にスケールできるというメリットを活かして利用されています。

 

代表的なKVS

代表的なKVSとして、memchaed・Redis・BigTableなどがあります。

memchaed
・メモリにデータを保存して、データベースの負担を減らすKVS
・サーバ上のメモリにデータを格納するので、応答性に優れている

Redis
・Redisもメモリ上にデータを格納するので、高速の読み書きが可能となる
・文字列・BLOB・リスト・ハッシュなど、幅広い種類のデータが扱える事からデータストラクチャ・ストアと呼ばれる

BigTable
・Googleの分散データストア
・Google検索・YouTube・Google Mapなど、Googleの数多くプロジェクトに使われている

 

 

 

本サイト上に掲載されているまとめ記事が、毎週ステップメールで受け取ることもできます。

 

 

参考文献