1. TOP
  2. レポート・ライブラリ
  3. NoSQLとは何か(その2) - キー・バリュー型とカラム指向型の特徴 -


ITR Review

コンテンツ番号:
R-215044
発刊日:
2015年4月1日

NoSQLとは何か(その2)

キー・バリュー型とカラム指向型の特徴

著者名:
生熊 清司
NoSQLとは何か(その2)のロゴ画像

NoSQLはRDBMS以外のデータ管理ソフトウェアの総称であるので、様々な種類が存在する。その1ではNoSQLを採用する場合は種類ごとの特徴を理解し、ターゲットとなるデータとアプリケーションの要求事項にあった種類の製品を選択すべきであると説明した。本稿ではNoSQLの代表的な種類であるキー・バリュー型、カラム指向型に関して、その特徴を説明する。

キー・バリュー型の特徴

キー・バリュー型は、データに対する識別子である「キー」と実際のデータである「バリュー(値)」というシンプルな構造を持っている。キーとバリューは一対の行となっており、データ量の増加に伴って行が追加される。一般的にキーは数値やアルファベットの文字列やバイト配列であるが、バリューは、特定のデータ型は必要なく、画像データなどのバイナリデータでも構わない。これは、キー・バリュー型では、検索や指定するのは、あくまでキーに対してであり、バリューに対しては直接操作できないからである。したがって、キーがどこにあるかさえ分かれば良く、簡単に分割し分散配置することが可能となる。

キー・バリュー型において、データ分割を行う場合、シャーディング(Sharding)と言われる方法が利用される。Shardingはあらかじめ定めた規則に従って、データを分割していく方法である。例えばキーである伝票番号が1から300までの数値であり、それを3分割しようとした場合は、1から100まで、101から200まで、201から300までという決まりに従って、データを分割する。分割した各100件を3ノードに分散すれば簡単にデータを分割でき、アプリケーションからは、規則が分かっていれば、どのキーがどのノードに入っているかを知ることができる。このように簡単な構造であるので、データ量が増えても容易にノードを増やし、データ分散を行える。

ITR 著作物の引用について

ITRでは著作物の利用に関してガイドラインを設けています。 ITRの著作物を「社外利用」される場合は、一部のコンテンツを除き、事前にITRの利用許諾が必要となります。 コンテンツごとに利用条件や出典の記載方法が異なりますので、詳細および申請については『ITR著作物の引用ポリシー』をご確認ください。

TOP