NoSQLとは
Not Only SQLの略。RDB(リレーショナルデータベース)ではないデータベースの総称。
RDBを操作する際に使われる言語であるSQLだけではなく、様々な種類のデータを扱うことができるという意味が込められている。
NoSQLの特徴
処理速度が速い
NoSQLの最も大きな特徴。
NoSQLはRDBのように厳密な管理を行わず、データの一貫性や独立性を担保しない代わりに、膨大なデータでも素早く処理できる。
【RDBとの比較】
RDBの特徴:データの一貫性や独立性を担保する
デメリット:データの量が増えるに伴い、処理速度が遅くなる
構造化データ以外も保存できる
構造化データ:Excelなどの表形式で整形されたデータ
RDB:構造化データ以外は保存できない
NoSQL:RDBのように厳密な制約がないので、構造化データ以外も保存できる
No SQLの種類
キーバリュー型
一意のキーとそのキーに紐付く値(バリュー)がペアになっているNoSQLの基本的なデータベース。
代表的なサービス:RedisやDynamoDB
特徴
構造がシンプルなため、処理が高速で容量も少なく、データへのアクセスが高速
ワイドカラムストア型
キーバリュー型にカラム(列)が追加されたデータベース
代表的なサービス:BigTableやCassandra
特徴
キーバリュー型のメリットに加えて、自由にカラムを追加することができ、必ずしも全てのバリューやカラムに値が入っている必要がないため、より柔軟にデータベースを構築することができる
ドキュメント型
JSONなどのドキュメント形式で管理することができるデータベース
代表的なサービス:MongoDB
特徴
ドキュメントごとに異なるデータ形式を保存することもでき、様々な形式の複雑なデータをそのまま扱える
グラフ型
円グラフや棒グラフなどの図形を示しているわけではなく、「グラフ理論」というものに基づいたデータ同士の関係性を表現することができるデータベース。
代表的なサービス:Neo4j
特徴
データ同士の関係性が複雑であっても処理速度が速い
コメント