NoSQLとは?非リレーショナル型データベースの総称
NoSQL(Not Only SQL)とは、従来主流であった関係データベース(RDB / RDBMS)とは異なる、非リレーショナルなデータベース管理システムの総称です。
表形式(行と列)で厳格に構造化されたRDBに対し、NoSQLはスキーマレス(定義の柔軟性)であり、膨大なデータ(ビッグデータ)の高速な読み書きや分散処理を得意としています。
NoSQLの代表的な4つの種類
- ドキュメント指向型(例:MongoDB) JSONやBSON形式のドキュメント構造でデータを保存するタイプ。構造が変化しやすいWebサービス等に適しています。
- キー・バリュー型(例:Redis, Amazon DynamoDB) 一意の「キー」と「値(バリュー)」をペアで保存するシンプルな形式。高速な処理とシンプルな検索に特化しています。
- ワイドカラム型(例:Apache Cassandra) 行ごとに異なるカラム構造を持てるタイプ。大規模なデータ分散処理に強みを持ちます。
- グラフ指向型(例:Neo4j) ノードとエッジでデータ間の「関係性」を記録するタイプ。SNSの友人関係やレコメンドエンジンの構築に活用されます。
RDBとNoSQLの使い分け
高いデータの一貫性(ACID特性)が絶対条件となる金融系システムやECの注文処理等にはRDBが適しています。一方、リアルタイムなログ解析、SNSのタイムライン、IoT端末からの連続データの蓄積など、スピードと拡張性(スケールアウト)を最優先する場面ではNoSQLが真価を発揮します。




この記事へのコメントはありません。