ds database
まず結論
RDB(リレーショナルデータベース)は構造化データの管理に強く、NoSQLデータストアは大量データや非構造データの分散処理に強いデータベースです。
DS検定では
「RDBとNoSQLの役割の違い」を理解しているかがよく問われます。
特に試験では
- NoSQLはRDBの後継技術
- NoSQLはSQLを使わない
といった誤った理解を狙った選択肢が出ます。
直感的な説明
RDBは
きっちり整理された表でデータを管理するデータベース
です。
例(顧客データ)
| 顧客ID | 名前 | 年齢 |
|---|---|---|
| 001 | 山田 | 35 |
| 002 | 鈴木 | 29 |
銀行システムや会計システムなど
正確性が重要なデータ管理に向いています。
一方NoSQLは
データ量が非常に多い場合や構造がバラバラなデータを扱うデータベース
です。
例
- SNS投稿
- Webログ
- IoTデータ
- 画像データ
このようなデータでは
RDBよりNoSQLの方が扱いやすい場合があります。
定義・仕組み
RDBとNoSQLの違いを整理すると次の通りです。
| 観点 | RDB | NoSQL |
|---|---|---|
| データ構造 | 固定スキーマ(表形式) | 柔軟スキーマ |
| データ形式 | 構造化データ | 非構造・半構造データ |
| スケール方法 | スケールアップ(性能向上) | スケールアウト(サーバー追加) |
| データ量 | 中規模 | 大規模 |
| 操作方法 | SQL | APIや独自クエリ |
代表例
RDB
- MySQL
- PostgreSQL
- Oracle
- SQL Server
NoSQL
- MongoDB
- Redis
- Cassandra
- HBase
ここで重要なのは
NoSQLはRDBの代替ではない
という点です。
どんな場面で使う?
RDBが向いている場面
- 金融システム
- 会計システム
- 在庫管理
理由
- データ整合性が重要
- トランザクション処理が必要
NoSQLが向いている場面
- SNS
- Webログ解析
- IoTデータ
理由
- データ量が巨大
- 分散処理が必要
よくある誤解・混同
誤解①
NoSQLはSQLを使わない
誤りです。
NoSQLは
Not Only SQL
つまり
SQL以外の方法も使える
という意味です。
誤解②
NoSQLはRDBの後継技術
これも誤りです。
正しくは
用途が異なるデータベース
です。
誤解③
NoSQLは構造がない
正しくは
固定スキーマがない
です。
DS検定の典型ひっかけ
次の選択肢に注意してください。
❌ NoSQLはRDBを置き換える技術
❌ NoSQLはSQLを使用しない
正しくは
✔ RDBと用途を分けて使う
✔ SQL以外の操作方法がある
まとめ(試験直前用)
- RDBは 表形式データ管理
- NoSQLは 大量データ・分散処理に強い
- NoSQLは RDBの代替ではない
- RDB → 正確性
- NoSQL → スケーラビリティ
DS検定では
「RDBかNoSQLか」を用途で判断できることが重要です。
対応スキル項目(データエンジニアリング力シート)
-
スキルカテゴリ名
データ蓄積 -
サブカテゴリ名
分散技術 -
★ NoSQLデータストア(HBase、Cassandra、Mongo DB、CouchDB、Redis、Amazon DynamoDB、Cloudant、Azure Cosmos DBなど)にAPIを介してアクセスし、新規データを登録できる
🔗 関連記事
- SQLインジェクションとは?仕組みと対策をやさしく理解【情報セキュリティマネジメント】
- データキューブとは?OLAP分析の基本概念を理解する【DS検定】
- データレイクとは?(DWHとの違いも整理)【DS検定リテラシー】
- データマートとは?(DWHとの違いを整理)【DS検定リテラシー】
- データウェアハウス(DWH)とは?データマートとの違いを理解する【DS検定】