sql >> データベース >  >> RDS >> PostgreSQL

マルチテナントレールアプリケーション:さまざまな手法の長所と短所は何ですか?

    MSDNには、マルチテナントデータアーキテクチャの概要 があります。 。

    スペクトルの一端には、テナントごとに1つのデータベースがあります(「シェアードナッシング」)。 「シェアードナッシング」は、ディザスタリカバリを非常に簡単にし、テナント間の分離度が最も高くなります。ただし、テナントあたりの平均コストも最も高く、サーバーあたりのテナント数は最も少なくなっています。

    スペクトルのもう一方の端では、すべての共有テーブルのすべての行にテナントID番号を格納します(「すべてを共有」)。 「すべてを共有」すると、ディザスタリカバリが困難になります。単一のテナントの場合、一部だけを復元する必要があります。 すべての共有テーブルの行-そしてそれは最も低い分離度を持っています。 (不適切に形成されたクエリはプライベートデータを公開する可能性があります。)ただし、テナントあたりのコストが最も低く、サーバーあたりのテナント数が最も多くなります。

    この テナントごとに1つのスキーマについて話しているように。権限に細心の注意を払ってください(SQL GRANT および REVOKE ステートメント。そして、 ALTER DEFAULT PRIVILEGES 。)



    1. Java Oracle localhost接続エラー(ORA-12505)

    2. TLS証明書を使用したOracleデータベースへのJDBC接続

    3. OracleBIND変数での複数の値の宣言

    4. pg_restoreエラー:ロールXXXは存在しません