エンジニアとして「知らない」とは言えない空気が漂うNoSQL界隈……。いろいろあるけども何がどう違うのか、主要プロダクトの特徴をコッソリ自習しよう。第1回はKVS系NoSQLの中から、マスタ型、P2P型に分類されるものを紹介していく。
本連載は書籍『NOSQLの基礎知識』(リックテレコム刊、ISBN:978-4897978871)で解説されている内容から一部を抜粋し、本連載向けに一部再編集して掲載したものです。
書籍では、一般にNoSQLと呼ばれている各種データベース技術について、基本概念から主要なプロダクトの特性、ベンチマーク結果までを紹介しています。データモデルやアーキテクチャの違いといった基本概念から、各プロダクトの特徴を理解できる内容になっています。
本連載では、この書籍の内容から、主要プロダクトを紹介している第5章を抜粋し、そのエッセンスを紹介していきます。
データモデルとアーキテクチャをマトリクスにしてNoSQLデータベースを整理すると図1のようになります*1。
本連載ではこの表の分類に基づき、代表的なNoSQLデータベースの特徴を見ていきます。
*1 データモデルやアーキテクチャの定義については初出で詳述しています。詳しく知りたい方は書籍をご覧ください。本稿では、書籍の定義に準じてNoSQLを分類して紹介していきます。
キー・バリュー型のデータモデルは、キーとバリューの組み合わせでデータを書き込み、キーによりバリューを読み出すというシンプルな構造です。ただし、そのアーキテクチャは複数あり、大きく分けてマスタ型とP2P型があります。アーキテクチャはこのいずれかなのですが、ここではあえて、第3の分類としてイネーブラ型という類型を設け、その特徴を明らかにします。
イネーブラ型のNoSQLデータベースは、単体でも利用できます。実際に単体で利用されるケースが多いのですが、他のデータベースと組み合わせたときに、特段の利用効果を発揮するという特性を持ったソフトウェアです。「他のデータベース」とは、SQLデータベース、永続性を提供するNoSQLデータベース、拡張性を提供するNoSQLデータベースのことです。
イネーブラ型はさらに、「オンメモリ」タイプと「オンディスク」タイプに分けられます。オンメモリタイプはデータの永続性を保証しません。メモリ上で動作するので、性能面では高速処理ができるものの、サーバの電源を切ってしまえばデータが消失してしまいます。一方、オンディスクタイプは、データをハードディスクに書き込むことでデータの永続性を保証するものの、複数のサーバにデータベースを分割して保有するという拡張性を有しません。
本連載では、上の表で示した分類のうち、キー・バリュー型については下記の順に紹介していきます。
Copyright © ITmedia, Inc. All Rights Reserved.