【SaaS架构】在AWS上为多租户SaaS应用程序实施托管PostgreSQL -- 介绍

视频号

微信公众号

知识星球

Chinese, Simplified

当您选择一个数据库来存储操作数据时,必须考虑数据的结构、它将回答哪些查询、它将以多快的速度提供答案以及数据平台本身的弹性。除了这些一般考虑因素外,软件即服务(SaaS)对运营数据的影响,如性能隔离、租户安全以及多租户SaaS应用程序数据的典型特性和设计模式。本指南讨论了这些因素如何应用于将AmazonWebServices(AWS)上的PostgreSQL数据库用作多租户SaaS应用程序的主要操作数据存储。具体来说,本指南重点介绍了两个AWS管理的PostgreSQL选项:Amazon Aurora PostgreSQL Compatible Edition和Amazon Relational Database Service(Amazon RDS)for PostgreSQL。

目标业务成果

本指南详细分析了使用Aurora PostgreSQL Compatible和Amazon RDS for PostgreSQL的多租户SaaS应用程序的最佳实践。我们建议您使用本指南中提供的设计模式和概念,为您的多租户SaaS应用程序提供Aurora PostgreSQL Compatible或Amazon RDS for PostgreSQL的实现并使其标准化。

本规范性指南有助于实现以下业务成果:

  • 为您的用例选择最佳的AWS管理PostgreSQL选项–本指南将数据库使用的关系和非关系选项与SaaS应用程序进行比较。它还讨论了Aurora PostgreSQL Compatible和Amazon RDS for PostgreSQL的最佳用例。这些信息将有助于为您的SaaS应用程序选择最佳选项。
  • 通过采用SaaS分区模型实施SaaS最佳实践–本指南讨论并比较了适用于PostgreSQL数据库管理系统(DBMS)的三种广泛的SaaS分区模型:池、桥接和筒仓模型及其变体。这些方法捕获SaaS最佳实践,并在设计SaaS应用程序时提供灵活性。SaaS分区模型的实施是保持最佳实践的关键部分。
  • 在池SaaS分区模型中有效使用RLS–行级安全性(RLS)通过基于用户或上下文变量限制可以查看的行,支持在单个PostgreSQL表中强制执行租户数据隔离。当您使用池分区模型时,需要RLS来防止跨租户访问。
本文地址
https://architect.pub/implementing-managed-postgresql-multi-tenant-saas-applications-aws-introduction
SEO Title
Implementing managed PostgreSQL for multi-tenant SaaS applications on AWS -- Introduction