PostgreSQL ブリッジモデル - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

PostgreSQL ブリッジモデル

PostgreSQL ブリッジモデルは、プール型アプローチとサイロ型アプローチを組み合わせたものです。プールモデルと同様に、テナントごとに 1 つの PostgreSQL インスタンスをプロビジョニングします。テナントデータの分離を維持するには、PostgreSQL の論理構造を使用します。次の図では、PostgreSQL データベースを使用してデータを論理的に分離しています。

注記

PostgreSQL データベースは、個別の Amazon RDS for PostgreSQL または Aurora PostgreSQL と互換性のある DB インスタンスを参照しません。代わりに、データを分離するための PostgreSQL データベース管理システムの論理的な構成を指します。

SaaS PostgreSQL bridge model with separate databases

次の図に示すように、各データベースにテナント固有のスキーマを含む単一の PostgreSQL データベースを使用してブリッジモデルを実装することもできます。

SaaS PostgreSQL bridge model with separate schemas

ブリッジモデルには、プールモデルと同じノイズの多いネイバーとテナントのパフォーマンスの分離という問題があります。また、テナントごとに個別のデータベースまたはスキーマをプロビジョニングする必要があるため、運用上およびプロビジョニング上のオーバーヘッドがいくらか発生します。テナントのパフォーマンスに関する懸念に迅速に対応するには、効果的な監視が必要です。また、テナント固有の使用状況を監視するためのアプリケーションインストルメンテーションも必要です。全体的に見て、ブリッジモデルは、新しい PostgreSQL データベースまたはスキーマが必要となるため、テナントのオンボーディング作業を少しだけ増やす RLS の代替手段と見なすことができます。サイロモデルと同様に、アプリケーションまたはデータアクセスレイヤーは、関連するPostgreSQLデータベースまたはスキーマへのテナントのマッピングを維持する必要があります。