Implementando o PostgreSQL gerenciado para aplicativos SaaS multilocatários em AWS - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Implementando o PostgreSQL gerenciado para aplicativos SaaS multilocatários em AWS

Tabby Ward e Thomas Davis, da Amazon Web Services ()AWS

Abril de 2024 (histórico do documento)

Quando você seleciona um banco de dados para armazenar dados operacionais, é fundamental considerar como os dados devem ser estruturados, quais consultas eles responderão, com que rapidez fornecerão respostas e a resiliência da própria plataforma de dados. Além dessas considerações gerais, há implicações de software como serviço (SaaS) para dados operacionais, como isolamento de desempenho, segurança de inquilinos e características e padrões de design exclusivos que são típicos de dados para aplicativos SaaS multilocatários. Este guia discute como esses fatores se aplicam ao uso de um banco de dados PostgreSQL na Amazon Web Services AWS() como armazenamento de dados operacional primário para um aplicativo SaaS multilocatário. Especificamente, o guia se concentra em duas opções AWS gerenciadas do PostgreSQL: Amazon Aurora PostgreSQL Compatible Edition e Amazon Relational Database Service (Amazon RDS) para PostgreSQL.

Resultados de negócios desejados

Esta orientação fornece uma análise detalhada das melhores práticas para aplicativos SaaS multilocatários usando o Aurora PostgreSQL compatível e o Amazon RDS for PostgreSQL. Recomendamos que você use os padrões e conceitos de design fornecidos neste guia para informar e padronizar sua implementação do Aurora compatível com PostgreSQL ou do Amazon RDS for PostgreSQL para seus aplicativos SaaS multilocatários.

Essa orientação prescritiva ajuda a alcançar os seguintes resultados comerciais:

  • Escolhendo a melhor opção AWS gerenciada do PostgreSQL para seu caso de uso — Esta orientação compara opções relacionais e não relacionais para uso de banco de dados com aplicativos SaaS. Também discute quais casos de uso são mais adequados para o Aurora PostgreSQL compatível e o Amazon RDS for PostgreSQL. Essas informações ajudarão a selecionar a melhor opção para seu aplicativo SaaS.

  • Aplicação das melhores práticas de SaaS por meio da adoção de um modelo de particionamento SaaS — Este guia discute e compara três modelos amplos de particionamento de SaaS que são aplicáveis a um sistema de gerenciamento de banco de dados (DBMS) PostgreSQL: modelos de pool, bridged e silo e suas variações. Essas abordagens capturam as melhores práticas de SaaS e oferecem flexibilidade ao projetar um aplicativo SaaS. A aplicação de um modelo de particionamento SaaS é uma parte crucial da preservação das melhores práticas.

  • Uso efetivo do RLS em modelos de particionamento SaaS de pool — a segurança em nível de linha (RLS) suporta a imposição do isolamento de dados do locatário em uma única tabela do PostgreSQL, restringindo as linhas que podem ser visualizadas com base no usuário ou em uma variável de contexto. Quando você usa o modelo de particionamento de pool, o RLS é necessário para impedir o acesso entre inquilinos.