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.
Důležité
Azure Cosmos DB for PostgreSQL se už pro nové projekty nepodporuje. Tuto službu nepoužívejte pro nové projekty. Místo toho použijte jednu z těchto dvou služeb:
Azure Cosmos DB for NoSQL můžete použít pro distribuované databázové řešení navržené pro vysoce škálovatelné scénáře s 99,999% smlouvou o úrovni služeb (SLA), okamžitým automatickým škálováním a automatickým převzetím služeb při selhání napříč několika oblastmi.
Použijte funkci Elastic Clusters služby Azure Database for PostgreSQL pro horizontálně dělené PostgreSQL pomocí opensourcového rozšíření Citus.
Spouštění efektivních dotazů v klastru vyžaduje, aby se tabulky správně distribuovaly mezi servery. Doporučená distribuce se liší podle typu aplikace a vzorů dotazů.
Ve službě Azure Cosmos DB for PostgreSQL fungují dobře dva druhy aplikací. Prvním krokem při modelování dat je zjistit, které z nich se více podobá vaší aplikaci.
Rychlý přehled
| Víceklientové aplikace | Aplikace v reálném čase |
|---|---|
| V některých případech schéma zahrnuje desítky nebo stovky tabulek | Malý počet tabulek |
| Dotazy týkající se jednoho nájemce (společnosti/obchodu) v danou chvíli | Relativně jednoduché analytické dotazy s agregacemi |
| Úlohy OLTP pro obsluhu webových klientů | Velké množství přijímaných převážně neměnných dat |
| Úlohy OLAP obsluhující analytické dotazy pro jednotlivé klienty | Často se soustředí kolem velkých tabulek událostí |
Příklady a charakteristiky
Víceklientová aplikace
Obvykle se jedná o aplikace SaaS, které obsluhují jiné společnosti, účty nebo organizace. Většina aplikací SaaS je ze své podstaty relační. Mají přirozenou dimenzi, podle které mohou distribuovat data mezi uzly: pouze rozkládejte podle tenant_id.
Azure Cosmos DB for PostgreSQL umožňuje škálovat databázi na miliony tenantů, aniž byste museli znovu navrhovat aplikaci. Relační sémantiku, kterou potřebujete, můžete zachovat, jako jsou spojení, omezení cizího klíče, transakce, ACID a konzistence.
- Příklady: Weby, které hostují prodejní fronty pro jiné firmy, jako je digitální marketingové řešení nebo nástroj pro automatizaci prodeje.
- Charakteristiky: Dotazy související s jedním tenantem, nikoli spojování informací mezi tenanty. To zahrnuje úlohy OLTP pro obsluhu webových klientů a úlohy OLAP, které obsluhují analytické dotazy pro jednotlivé tenanty. Desítky nebo stovky tabulek ve schématu databáze jsou také indikátorem datového modelu s více tenanty.
Škálování aplikace s více tenanty pomocí služby Azure Cosmos DB for PostgreSQL také vyžaduje minimální změny kódu aplikace. Podporujeme oblíbené architektury, jako je Ruby on Rails a Django.
Analýzy v reálném čase
Aplikace vyžadující masivní paralelismus, koordinující stovky jader pro rychlé zpracování číselných, statistických nebo sčítacích dotazů. Díky horizontálnímu dělení a paralelizaci dotazů SQL napříč několika uzly umožňuje Azure Cosmos DB for PostgreSQL provádět dotazy v reálném čase napříč miliardami záznamů za sekundu.
Tabulky v datových modelech analýzy v reálném čase se obvykle distribuují podle sloupců, jako jsou user_id, host_id nebo device_id.
- Příklady: Řídicí panely analýzy orientované na zákazníky, které vyžadují dobu odezvy podsekundy.
- Charakteristiky: Několik tabulek, které jsou často zaměřené na velkou tabulku událostí zařízení, webů nebo uživatelů a vyžadují vysoký objem ingestace většinou neměnných dat. Relativně jednoduché (ale výpočetně náročné) analytické dotazy zahrnující několik agregací a skupinových BY
Pokud se vaše situace podobá některému z výše uvedených případů, pak dalším krokem je rozhodnout, jak horizontálně dělit data v clusteru. Výběr distribučních sloupců správce databáze musí odpovídat vzorům přístupu typických dotazů, aby se zajistil výkon.
Další kroky
- Výběr distribučního sloupce pro tabulky v aplikaci pro efektivní distribuci dat