NoSQLと分散データベースとは?のーえすきゅーえるとぶんさんでーたべーす
NoSQLと分散データベースとは、表とSQLを前提とする関係データベースとは別の構造(キーバリュー型・ドキュメント型・列指向・グラフ型)でデータを持ち、複数ノードへ分散させて水平に拡張するデータベース群の総称。可用性と分散処理を優先し、整合性は結果整合性(BASE)で妥協する製品が多い。RDBの上位互換ではなく、用途で使い分ける。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →背景
アクセスログやSNS投稿のように件数が桁違いで項目もまちまちなデータは、スキーマを固定し単一サーバで強い整合性を守るRDBでは書込みが追いつかなかった。そこでスキーマを緩め、ノードを足せば処理量が増える設計を選んだのがNoSQLである。支援士試験では、認証を有効にしないままインターネットへ公開してしまう設定不備や、SQLインジェクションとは別種のNoSQLインジェクションといった、運用と実装の落とし穴が出題される。
具体例
Amazon DynamoDBはキーバリュー/ドキュメント型で、テーブルを複数のパーティションに分けて書込みを分散し、IAMポリシーで表単位・項目単位のアクセス権を制御する。MongoDBはJSON形式のドキュメントを格納してレプリカセットで複製を持ち、Redisは主記憶上のキーバリュー型としてWebアプリのセッション情報の保持に使われる。
試験での引っ掛け
NoSQLはNot only SQLの意味で、SQLを禁じる技術でも関係データベースの上位互換でもない。「分散しているから安全」も誤りで、複製が多いぶんアクセス制御と暗号化の対象が増える。またSQLインジェクション対策をしても、問合せをJSONで組み立てるNoSQLインジェクションは別に防ぐ必要がある。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。