IT用語: MongoDBとは|JSONライクなドキュメント型NoSQLデータベース
スキーマレスなJSONドキュメントを格納するMongoDBの仕組み・集計パイプライン・RDBとの使い分けを解説。
MongoDBとは
MongoDBは、データをJSON形式(内部的にはBSON:バイナリJSON)の「ドキュメント」として格納するドキュメント型NoSQLデータベースです。行と列で構成される関係DBとは異なり、ネストした構造や配列を1つのドキュメントに格納できます。スキーマが柔軟なため、頻繁に構造が変わるデータや多様な形式のデータの格納に適しています。
ドキュメントの例
{
"_id": "ObjectId('...')",
"name": "田中太郎",
"email": "tanaka@example.com",
"orders": [
{ "product": "laptop", "price": 120000, "date": "2026-04-01" },
{ "product": "mouse", "price": 3000, "date": "2026-04-05" }
],
"address": {
"city": "東京",
"zip": "100-0001"
}
}
関連データ(注文情報)を1つのドキュメントにネストできるため、JOINなしで取得できます。
RDBとMongoDBの使い分け
| 向いているケース | MongoDB | 関係DB |
|---|---|---|
| スキーマが頻繁に変わる | ◎ | △(マイグレーション必要) |
| 複雑なリレーション・集計 | △ | ◎ |
| 地理空間データ | ◎ | △ |
| ACID準拠の金融処理 | △(v4〜対応) | ◎ |
集計パイプライン
SQL の GROUP BY・JOIN相当の処理をステージの連鎖で表現するMongoDBの強力な機能です。$match→$group→$sort→$limitのように処理を組み合わせます。
関連する用語 (データベース)
全23件を見るORM(オブジェクト関係マッピング)
プログラミング言語のオブジェクトとデータベースのテーブルを対応付け、SQLを書かずにDBを操作できるようにするライブラリ。Prisma・TypeORM・Sequelize等が代表的。
NoSQL(非リレーショナルデータベース)
固定スキーマを持たない非リレーショナル型データベースの総称。ドキュメント型・キーバリュー型・カラム型・グラフ型などがあり、水平スケーリングと柔軟なデータ構造が特徴。
Redis(リモートディクショナリサーバー)
インメモリ型のキーバリューストア。超高速な読み書きを実現し、キャッシュ・セッション管理・リアルタイム処理に広く使われるOSSデータベース。
NoSQL
表形式(リレーショナル)ではない、柔軟なデータ構造を持つデータベースの総称。大量データの高速処理に強い。
IT用語: PostgreSQLとは|拡張性と標準準拠で選ばれるオープンソースRDBMS
高度な機能・拡張性・SQL標準への準拠で知られるオープンソースのリレーショナルデータベースPostgreSQLを解説。
MySQL(マイSQL)
オープンソースのリレーショナルデータベース管理システム。WordPressをはじめ多くのWebアプリに採用され、読み取りパフォーマンスが高く導入が容易なRDBMSの定番。