コンテナデータベース【CDB】Container Database

概要

コンテナデータベースとは、一つのデータベース管理システムの内部に、論理的に独立した複数のデータベースを収容・管理する仕組み、あるいはその親となるデータベースのこと。複数のデータベース環境を一つの基盤に集約するマルチテナント構成の実現に用いられる。
コンテナデータベースのイメージ画像

コンテナデータベースの内部には、「プラガブルデータベース」(PDBPluggable Database)と呼ばれる個別のデータベースが複数格納される。各プラガブルデータベースは独立したスキーマ、利用者アカウントオブジェクトを保持し、外部のアプリケーションからは通常の単体データベースと区別がつかない。一方、データベースエンジンの実行環境やメモリ管理などのリソースはコンテナデータベース全体で共有される。

プラガブルデータベースはコンテナデータベースから切り離してファイルとして持ち出し、別のコンテナデータベースへ移転することも可能である。この可搬性により、開発環境から本番環境への移行など、データベースの移動や再配置を簡略化できる。

従来は、業務システムごとに個別のデータベースインスタンスを用意するのが一般的だった。この方式ではシステム数が増えるのに連動してメモリCPUなどのリソース消費が増え、バックアップパッチ適用といった保守作業もそれぞれ個別に行わなければならないため負担が大きかった。

コンテナデータベースでは一つの管理基盤の下に複数のデータベースを集約できるため、これらの運用作業を一元的に実施しやすくなる。サーバ仮想化のようにオペレーティングシステム(OS)ごと分離する手法と異なり、OSやデータベースエンジンの処理能力を共有しつつ、データアクセス権限のみを論理的に分離するため、より軽量な統合が実現できる。

代表的な実装として、米オラクルOracle)社の「Oracle Database」におけるコンテナデータベースが知られており、2013年リリースのOracle Database 12cで導入された。利用者ごとに独立したデータベース環境を提供するクラウドサービスホスティングサービスでも採用されることがある。なお、アプリケーションの実行環境を隔離するコンテナ型仮想化の「コンテナ」とは異なる概念である。

(2026.6.10更新)
 
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。