Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Mnoho víceklientských řešení v Azure používá opensourcový systém pro správu relačních databází Azure Database for PostgreSQL. Tento článek popisuje funkce Azure Database for PostgreSQL, které jsou užitečné při práci s víceklientských systémů. Tento článek obsahuje také odkazy na pokyny a příklady použití Služby Azure Database for PostgreSQL ve víceklientských řešeních.
Režimy nasazení
Pro Azure Database for PostgreSQL jsou k dispozici následující režimy nasazení a jsou vhodné pro použití s víceklientských aplikací:
Flexibilní server Azure Database for PostgreSQL je dobrou volbou pro většinu víceklientských nasazení, která nevyžadují vysokou škálovatelnost, kterou poskytuje Azure Cosmos DB for PostgreSQL.
Flexibilní server Azure Database for PostgreSQL s elastickými clustery (Preview) poskytuje horizontální škálování ve spravované službě. Je vhodný pro víceklientské aplikace, které potřebují škálovat z několika tenantů na velký počet tenantů. Tato funkce je ve verzi Preview a nedoporučuje se pro produkční použití. Můžete ho ale začít vyhodnocovat pro budoucí implementaci.
Azure Cosmos DB for PostgreSQL je databázová služba spravovaná v Azure navržená pro řešení, která vyžadují vysokou úroveň škálování, například víceklientských aplikací. Tato služba je součástí řady produktů Azure Cosmos DB.
Poznámka:
Jednoúčelový server Azure Database for PostgreSQL je na cestě vyřazení a plánuje se na vyřazení do 28. března 2025. Nedoporučuje se pro nové víceklientské úlohy.
Funkce Azure Database for PostgreSQL, které podporují víceklientské prostředí
Když k vytvoření víceklientové aplikace použijete Azure Database for PostgreSQL, můžou vaše řešení vylepšit následující funkce.
Poznámka:
Některé funkce jsou dostupné jenom v konkrétních režimech nasazení. Následující doprovodné materiály popisují, které funkce jsou k dispozici.
Zabezpečení na úrovni řádků
Zabezpečení na úrovni řádků je užitečné při vynucování izolace na úrovni tenanta při použití sdílených tabulek. V PostgreSQL implementujete zabezpečení na úrovni řádků použitím zásad zabezpečení řádků u tabulek, abyste omezili přístup k řádkům podle tenanta.
Implementace zabezpečení na úrovni řádků v tabulce může ovlivnit výkon. Možná budete muset v tabulkách s povoleným zabezpečením na úrovni řádků vytvořit další indexy, aby se zajistilo, že výkon nebude ovlivněn. Když používáte zabezpečení na úrovni řádků, je důležité použít techniky testování výkonu k ověření, že vaše úloha splňuje základní požadavky na výkon.
Další informace najdete v tématu Zabezpečení serveru Azure Database for PostgreSQL.
Horizontální škálování s rozdělováním na segmenty
Model horizontálního dělení umožňuje škálovat úlohy napříč několika databázemi nebo databázovými servery.
Řešení, která potřebují vysokou úroveň škálování, můžou používat službu Azure Cosmos DB for PostgreSQL. Tento režim nasazení umožňuje horizontální horizontální dělení tenantů napříč několika servery nebo uzly. Pomocí distribuovaných tabulek ve víceklientských databázích zajistěte, aby všechna data tenanta byla uložena na stejném uzlu. Tento přístup zlepšuje výkon dotazů.
Poznámka:
V říjnu 2022 se služba Azure Database for PostgreSQL Hyperscale (Citus) přejmenovala jako Azure Cosmos DB for PostgreSQL a přesunula se do řady produktů Azure Cosmos DB.
Další informace najdete v následujících článcích:
- Návrh víceklientských databází pomocí služby Azure Cosmos DB for PostgreSQL
- Distribuované tabulky
- Volba distribučních sloupců
- Použití Citus pro víceklientských aplikací
Elastické klastry (náhled)
Elastické clustery jsou funkcí flexibilního serveru Azure Database for PostgreSQL. Poskytují možnosti horizontálního škálování v rámci jedné spravované služby. Tato možnost nasazení využívá funkce distribuovaných tabulek pro víceklientské úlohy, které vyžadují schopnost horizontálního škálování.
V řešeních s více tenanty umožňují elastické clustery shardování dat tenanta napříč několika uzly. Tabulky můžete distribuovat podle ID tenanta, abyste zajistili, že data tenanta se přidělují na konkrétních uzlech. Tento přístup může zlepšit výkon dotazů pro dotazy specifické pro tenanty.
Poznámka:
Elastické clustery jsou ve verzi Preview a jsou dostupné jenom na flexibilním serveru Azure Database for PostgreSQL.
Další informace najdete v tématu Elastické clustery na flexibilním serveru Azure Database for PostgreSQL (Preview).
Sdružování připojení
Postgres používá pro připojení model založený na procesu. Díky tomuto modelu je neefektivní udržovat velký počet nečinných připojení. Některé architektury s více tenanty vyžadují mnoho aktivních připojení, která negativně ovlivňují výkon serveru Postgres.
Sdružování připojení prostřednictvím nástroje PgBouncer se ve výchozím nastavení instaluje na flexibilním serveru Azure Database for PostgreSQL.
Další informace najdete v následujících článcích:
- PgBouncer na flexibilním serveru Azure Database for PostgreSQL
- Sdružování připojení ve službě Azure Cosmos DB for PostgreSQL
- Postup instalace a nastavení proxy serveru pro sdružování připojení PgBouncer s využitím služby Azure Database for PostgreSQL
Ověřování Microsoft Entra
Flexibilní server Azure Database for PostgreSQL podporuje ověřování připojení pomocí ID Microsoft Entra. Tato funkce umožňuje aplikačním úlohám ve víceklientských prostředích ověřit databázi pomocí instančního objektu nebo spravované identity specifického pro tenanta. Přístup k databázi je možné vymezit na jednotlivého tenanta. Kombinací ověřování Microsoft Entra ID s konkrétními zásadami zabezpečení řádků tenanta můžete snížit riziko aplikace, která přistupuje k datům jiného tenanta z víceklientské databáze.
Další informace najdete v následujících článcích:
- Ověřování Microsoft Entra ve službě Azure Database for PostgreSQL
- Připojení pomocí spravované identity k flexibilnímu serveru Azure Database for PostgreSQL
Důvěrné výpočetní prostředí Azure (Preview)
Flexibilní server Azure Database for PostgreSQL podporuje důvěrné výpočetní operace Azure prostřednictvím důvěryhodných spouštěcích prostředí (TEE), která poskytují hardwarovou ochranu pro data, která se používají. Tato funkce chrání data tenanta před neoprávněným přístupem operačního systému, hypervisoru nebo jiných aplikací.
U víceklientských řešení, která zpracovávají citlivá data, poskytuje důvěrné výpočetní prostředí ochranu dat na úrovni hardwaru během zpracování. Důvěrné výpočty používejte, když mají tenanti přísné požadavky na ochranu dat nebo požadavky na dodržování právních předpisů nebo pokud potřebujete zajistit, aby poskytovatel aplikace neměl přístup k datům tenanta.
Poznámka:
Důvěrné výpočetní operace jsou aktuálně ve verzi Preview a vyžadují konkrétní skladové položky virtuálních počítačů.
Další informace najdete v tématu Důvěrné výpočetní prostředí Azure pro Azure Database for PostgreSQL (Preview).
Šifrování
Data uložená na flexibilním serveru Azure Database for PostgreSQL se ve výchozím nastavení šifrují pomocí klíčů spravovaných Microsoftem, ale můžete také použít klíče spravované zákazníkem (CMK) a umožnit tak tenantům zadat vlastní šifrovací klíče.
Když používáte klíče CMK, můžete zadat vlastní šifrovací klíče uložené ve službě Azure Key Vault. Ve víceklientských prostředích vám tento přístup umožňuje používat různé šifrovací klíče pro různé tenanty, i když jsou jejich data uložená na stejném databázovém serveru. Tato funkce také poskytuje tenantům kontrolu nad svými vlastními šifrovacími klíči. Pokud se tenant rozhodne deaktivovat svůj účet, odstraněním přidruženého klíče zajistíte, že jejich data už nebudou přístupná.
Flexibilní server Azure Database for PostgreSQL podporuje automatické aktualizace verzí klíčů pro sady CMKs. Tato funkce se po obměně ve službě Key Vault automaticky aktualizuje na nové verze klíčů a nevyžaduje ruční správu verzí klíčů. Ve víceklientských prostředích, kde dodržování právních předpisů vyžaduje pravidelnou obměnu klíčů, tato automatizace snižuje ruční provozní úlohy a udržuje ochranu dat bez přerušení služby.
Další informace najdete v následujících článcích:
Přispěvatelé
Microsoft udržuje tento článek. Tento článek napsali následující přispěvatelé.
Hlavní autor:
- Daniel Scott-Raynsford | Architekt partnerského řešení, data a AI
Další přispěvatelé:
- John Downs | Hlavní softwarový inženýr, vzory a postupy Azure
- Arsen Vladimirskiy | Hlavní zákaznický inženýr, FastTrack pro Azure
- Paul Burpo | Hlavní zákaznický inženýr, FastTrack pro nezávislé výrobce softwaru (ISV) Azure
- Assaf Fraenkel | Vedoucí inženýr/datový architekt, Azure FastTrack pro nezávislé výrobce softwaru a začínající firmy
Pokud chcete zobrazit nepublikované profily LinkedIn, přihlaste se na LinkedIn.