Dela via


Flera klientorganisationer och Azure Database for PostgreSQL

Många lösningar för flera klientorganisationer i Azure använder relationsdatabashanteringssystemet med öppen källkod Azure Database for PostgreSQL. I den här artikeln granskar vi funktionerna i Azure Database for PostgreSQL som är användbara när du arbetar med system med flera klientorganisationer. Artikeln länkar också till vägledning och exempel för hur du använder Azure Database for PostgreSQL i en lösning med flera klientorganisationer.

Distributionsmodeller

Det finns två distributionslägen för Azure Database for PostgreSQL som är lämpliga för användning med program med flera klienter:

  • Flexibel server – Det här är ett bra val för de flesta distributioner med flera klientorganisationer som inte kräver den höga skalbarhet som tillhandahålls av Azure Cosmos DB för PostgreSQL.
  • Azure Cosmos DB for PostgreSQL – en Azure-hanterad databastjänst som är utformad för lösningar som kräver en hög skalningsnivå, som ofta innehåller program med flera klienter. Den här tjänsten ingår i Azure Cosmos DB-serien med produkter.

Anteckning

Azure Database for PostgreSQL – Enskild server är på pensionsvägen och är planerad att pensioneras senast den 28 mars 2025. Det rekommenderas inte för nya arbetsbelastningar med flera klientorganisationer.

Funktioner i Azure Database for PostgreSQL som stöder flera klientorganisationer

När du skapar ett program med flera klientorganisationer med Azure Database for PostgreSQL finns det ett antal funktioner som du kan använda för att förbättra lösningen.

Anteckning

Vissa funktioner är bara tillgängliga i specifika distributionslägen. Dessa funktioner anges i vägledningen nedan.

Säkerhet på radnivå

Säkerhet på radnivå är användbart för att framtvinga isolering på klientnivå när du använder delade tabeller. I PostgreSQL implementeras säkerhet på radnivå genom att tillämpa radsäkerhetsprinciper på tabeller för att begränsa åtkomsten till rader efter klientorganisation.

Det kan finnas en viss prestandapåverkan när du implementerar säkerhet på radnivå i en tabell. Därför kan ytterligare index behöva skapas i tabeller med säkerhet på radnivå aktiverat för att säkerställa att prestanda inte påverkas. Vi rekommenderar att du använder tekniker för prestandatestning för att verifiera att din arbetsbelastning uppfyller dina grundläggande prestandakrav när säkerhet på radnivå är aktiverat.

Mer information:

Horisontell skalning med horisontell partitionering

Med horisontell partitioneringsmönstret kan du skala din arbetsbelastning över flera databaser eller databasservrar.

Lösningar som behöver en mycket hög skalningsnivå kan använda Azure Cosmos DB for PostgreSQL. Det här distributionsläget möjliggör horisontell horisontell partitionering av klientorganisationer över flera servrar (noder). Genom att använda distribuerade tabeller i databaser med flera klienter kan du se till att alla data för en klientorganisation lagras på samma nod, vilket ökar frågeprestandan.

Anteckning

Från oktober 2022 har Azure Database for PostgreSQL Hyperskala (Citus) bytt namn till Azure Cosmos DB för PostgreSQL och flyttats till Cosmos DB-produktfamiljen.

Mer information:

Anslutningspooler

Postgres använder en processbaserad modell för anslutningar. Den här modellen gör det ineffektivt att underhålla ett stort antal inaktiva anslutningar. Vissa arkitekturer med flera klientorganisationer kräver ett stort antal aktiva anslutningar, vilket påverkar Postgres-serverns prestanda negativt.

Anslutningspooler via PgBouncer installeras som standard i Azure Database for PostgreSQL flexibel server.

Mer information:

Deltagare

Den här artikeln underhålls av Microsoft. Den skrevs ursprungligen av följande deltagare.

Huvudförfattare:

Andra deltagare:

  • John Downs | Huvudkundtekniker, FastTrack för Azure
  • Arsen Vladimirskiy | Huvudkundtekniker, FastTrack för Azure
  • Paul Burpo | Huvudkundtekniker, FastTrack för Azure ISV:er
  • Assaf Fraenkel | Senior Engineer/Data Architect, Azure FastTrack för ISV:er och nystartade företag

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg

Granska lagrings- och datametoder för flera klientorganisationer.