NoSQL基本
NoSQLとは
データベース管理システム(DBMS)の種類を表す用語で、現在最も普及しているリレーショナルデータベース(RDB/RDBMS → Mysql,PostGre,Oracleなど)とは異なる新しい方式の総称。RDBでデータの問い合わせや操作に用いる言語であるSQLを用いない(使えない)ことからこのように呼ばれる。主にビッグデータを扱うときに用いる。
NoSQLの種類
KVS(Key-Value Store型)
キーと値をペアにして保持するシンプルなデータ構造を持つ。キーと、格納したいデータを紐付け、キーを指定することでそれに対応したデータを格納/取得することができる。
例:Memcashed
列指向型(テーブル指向型)
列方向のデータのまとまりを効率的に扱えるように設計されたデータベース。列データをファイルシステム上の連続した位置に格納することによって、大量の行に対する少数の列の集約処理や、同一の値をまとめるデータ圧縮などを効率的に行うことができる。大量のデータを対象とした分析やデータマイニングなどに特に適していると言われている。
例:Cassandra
ドキュメント指向型
XMLやJSONなどのように半構造化されたドキュメントデータの格納に特化したデータベース。ドキュメント自体に関するメタデータも含め、全てドキュメント内に保存される点が特徴となっている。
例:MongoDB
グラフ指向型
ノード、エッジ、プロパティから構成されるグラフ構造でデータを格納するデータベース。データ同士の複雑な関連性を表現することができる。
例:Neo4j
NoSQLの特徴
・RDBMSと比べて高速に動作する(大量のデータの読み書きが得意)
・スケールアウト(サーバを増加させることで性能をアップ)をすることを想定した作り
・トランザクションやテーブル間のジョインのような仕組みがないものが多く、シンプルな設計&機能
Author Profile
スターフィールド編集部
SHARE