NoSQL(非リレーショナルデータベース)
固定スキーマを持たない非リレーショナル型データベースの総称。ドキュメント型・キーバリュー型・カラム型・グラフ型などがあり、水平スケーリングと柔軟なデータ構造が特徴。
NoSQLとは?
NoSQL(Not Only SQL)は、リレーショナルデータベース(RDB)の固定スキーマやSQL以外のアプローチでデータを管理するデータベースの総称です。Webスケールのデータ処理ニーズを背景に2000年代後半から急速に普及しました。
NoSQLの主な種類
| 種類 | 特徴 | 代表的なDB |
|---|---|---|
| ドキュメント型 | JSONライクなドキュメントを格納 | MongoDB, Firestore, CouchDB |
| キーバリュー型 | キーで値を高速に取得 | Redis, DynamoDB, Memcached |
| カラム型 | 列単位でデータを格納・高速集計 | Cassandra, HBase, BigQuery |
| グラフ型 | ノードとエッジで関係を表現 | Neo4j, Amazon Neptune |
RDBとの比較
| 項目 | RDB | NoSQL |
|---|---|---|
| スキーマ | 固定(変更にはマイグレーション必要) | 柔軟(スキーマレス) |
| スケーリング | 垂直スケール(サーバーを強化) | 水平スケール(サーバーを追加) |
| トランザクション | ACID保証が強い | BASE(結果整合性)が多い |
| 結合(JOIN) | 容易 | 苦手(アプリ側で処理) |
| 適したデータ | 構造化データ | 非構造化・半構造化データ |
まとめ
NoSQLは「RDBの代替」ではなく「用途の違う選択肢」です。複雑なトランザクションにはRDB、大量データの高速読み書きやスキーマが頻繁に変わるデータにはNoSQLが向いています。
関連する用語 (データベース)
全23件を見るIT用語: データベーストランザクションとは|ACID特性で保証するデータ整合性
DBの一連の操作をまとめて原子的に扱うトランザクションのACID特性(原子性・一貫性・独立性・持続性)を解説。
IT用語: MongoDBとは|JSONライクなドキュメント型NoSQLデータベース
スキーマレスなJSONドキュメントを格納するMongoDBの仕組み・集計パイプライン・RDBとの使い分けを解説。
MySQL(マイSQL)
オープンソースのリレーショナルデータベース管理システム。WordPressをはじめ多くのWebアプリに採用され、読み取りパフォーマンスが高く導入が容易なRDBMSの定番。
IT用語: Redisとは|高速インメモリデータストアの仕組みと活用パターン
メモリ上にデータを保存し高速なキャッシュ・セッション管理・Pub/Subを実現するRedisの仕組みと主要データ型を解説。
SQL
リレーショナルデータベース(RDB)を操作・検索するための標準言語。
IT用語: データベースレプリケーションとは|読み取り分散と冗長化の仕組み
プライマリDBの変更をレプリカに同期するレプリケーションの仕組み・同期/非同期の違い・活用パターンを解説。