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.
Azure HorizonDB je plně spravovaná cloudová databázová služba připravená pro AI postavená na PostgreSQL. Kombinuje členěnou architekturu výpočetních prostředků a úložiště s návrhem databáze jako protokolu, která zajišťuje předvídatelný výkon, zabezpečení na podnikové úrovni, vysokou dostupnost a bezproblémovou škálovatelnost pro klíčové úlohy.
Azure HorizonDB umožňuje vývojářům vytvářet inteligentní aplikace využívající AI prostřednictvím nativní podpory pro vkládání vektorů a integraci s nástroji Azure AI Foundry Tools a současně zachovat úplnou kompatibilitu PostgreSQL, aby stávající aplikace mohly snadno migrovat na Azure HorizonDB.
případy použití Azure HorizonDB
Azure HorizonDB je škálovatelná alternativa k postgreSQL nativní pro cloud a je navržená pro klíčové úlohy, které nejsou omezené, ale zahrnují:
- Transakční úlohy (OLTP) – zpracování transakcí s vysokou propustností, nízkou latencí a předvídatelným výkonem pro obchodní aplikace, platformy elektronického obchodování a back-endy SaaS.
- AI a inteligentní aplikace – Podpora nativního vektorového vyhledávání a vkládání umožňuje vytvářet kanály rag (retrieval-augmented generation), moduly doporučení a sémantické vyhledávání přímo v databázové vrstvě. Správa modelů AI a kanály AI dále zjednodušují vytváření inteligentních aplikací v databázi.
- Masivní škálování čtení – Aplikace, které mohou využívat škálování čtení s daty odolnými vůči výpadku zóny.
- Hybridní aplikace - Integrace s ekosystémem Azure, zrcadlení transakčních dat do OneLake ve Fabric a jejich integrace s dalšími analytickými daty.
Architektura Azure HorizonDB
Azure HorizonDB vychází ze dvou základních principů architektury: oddělení výpočetních prostředků a úložiště a návrhu databáze jako protokolu.
Agregované výpočetní prostředky a úložiště
Architektura plně odděluje výpočetní vrstvu od vrstvy úložiště:
- úroveň Compute – Výpočty ve službě Azure HorizonDB jsou bezstavové. Výpočetní prostředky (virtuální jádra a paměť) se dají nezávisle škálovat, aniž by to mělo vliv na úložiště a naopak. Čtení můžete horizontálně škálovat přidáním replik do clusteru HorizonDB.
- Storage layer – Vrstva úložiště používá dvě účelově sestavené skupiny úložišť: jednu vyhrazenou pro WAL, druhou pro data; obě mají odolnost zálohovanou Azure úložištěm. Všechna úložiště jsou ve výchozím nastavení odolná vůči zóně. Úložiště se automaticky škáluje při růstu dat nezávisle na zřízené výpočetní vrstvě.
Oddělení výpočetních prostředků a úložiště nabízí několik výhod:
- Škálujte výpočetní prostředky a úložiště nezávisle na požadavcích úloh.
- Rychlé zřizování replik pro čtení, protože sdílejí stejné základní úložiště a nevyžaduje se žádná replikace dat.
- Rychlejší převzetí služeb při selhání v rámci vysoké dostupnosti díky sdílenému odolnému úložišti WAL a bez nutnosti zpětného převíjení logu.
Architektura databáze jako protokolu
Azure HorizonDB využívá architekturu, v níž databáze funguje jako log a z výpočetní vrstvy do vrstvy úložiště se zapisuje pouze WAL (Write-Ahead Log). Datové stránky nejsou zapsány z výpočetních replik do vrstvy úložiště. WAL je autoritativní zdroj pravdy prostřednictvím systému.
- Všechny zápisy (Write ahead Log) jsou před potvrzením klientovi přidány do odolné logovací služby. Služba WAL je optimalizovaná pro sémantiku transakčního protokolu a optimalizovaná pro nízkou latenci.
- Filtrované WAL se odesílá pouze do uzlů úložiště, do nichž změny patří.
- Uzly úložiště rekonstruují stav stránky použitím WAL a eliminují tradiční kritické body kontrolních bodů.
- Tento přístup snižuje amplifikaci zápisu a zajišťuje konzistentní a předvídatelnou latenci zápisu bez ohledu na velikost databáze.
Kombinace těchto dvou principů umožňuje Azure HorizonDB zajistit vysokou propustnost, nízkou latenci a efektivní využití prostředků při zachování úplných záruk ACID.
Cluster
Zřízený prostředek Azure HorizonDB je clusterem. Cluster Azure HorizonDB má:
- Jedna nebo více výpočetních replik, z nichž jedna je zapisovatelná primární replika a ostatní jsou záložní repliky určené pro čtení.
- Jedna kopie dat v zónovém odolném úložišti sdílené všemi replikami v clusteru.
- Koncový bod pro čtení i zápis, který vždy odkazuje na primární repliku.
- Koncový bod jen pro čtení, který vyrovnává zatížení připojení ke všem čitelným replikám.
Výpočetní repliky
Výpočetní replika služby Azure HorizonDB může být buď primární (zapisovatelná), nebo pohotovostní replika, která je určená pro čtení a zároveň je kandidátem pro převzetí služeb při selhání. Replika výpočetních prostředků je místo, kde se nachází relační modul PostgreSQL a kde probíhá jazyk, dotazování a zpracování transakcí. Všechny interakce s clusterem Azure HorizonDB probíhají prostřednictvím výpočetních replik. Pokud chcete mít zónovou odolnost, potřebujete alespoň dvě repliky v clusteru. Repliky můžete přidat nebo odebrat do clusteru Azure HorizonDB podle toho, jak je vaše úloha potřebuje.
Výpočetní repliky mají zřízenou 8 GB paměti na jádro. Výpočetní repliky mají také místní mezipaměť SSD. Tato mezipaměť je mezipaměť NVMe s nízkou latencí, která ukládá horké stránky do mezipaměti a minimalizuje potřebu načítání dat ze vzdálené vrstvy úložiště. Mezipaměť se nachází na všech replikách, primárním a pohotovostním režimu.
Výpočetní repliky se využívají efektivně, protože úlohy související s trvalostí a vysokou dostupností přenášejí na vrstvu úložiště. Toto snižování zátěže poskytuje více procesoru, disku a sítě pro spouštění obchodní logiky aplikací v databázi. Následující úlohy jsou přesunuty z replik výpočetní vrstvy do vrstvy úložiště.
| Task | Proces PostgreSQL | Úspory prostředků |
|---|---|---|
| Odesílání WAL z replik | walsender | Vstupně-výstupní operace disku, vstupně-výstupní operace sítě |
| Archivace WAL do objektového úložiště | Archivátor | Vstupně-výstupní operace disku, vstupně-výstupní operace sítě |
| Zápis špinavé stránky | zapisovač na pozadí | Vstupně-výstupní operace disku |
| Vytváření kontrolních bodů | kontrolní bod | Vstupně-výstupní operace disku |
| Zálohy | pg_dump, pg_basebackup, pg_backup_start, pg_backup_stop | Vstupně-výstupní operace disku |
| Zápis celé stránky | Backendy zapisující do WAL | Vstupně-výstupní operace disku |
| Obnovení PostgreSQL WAL | obnovení spouštění | Vstupně-výstupní operace disku |
| Opětovné vytvoření repliky pro čtení PostgreSQL | obnovení spouštění | Vstupně-výstupní operace disku |
Storage
Azure HorizonDB spouští dvě flotily úložišť, které jsou podporovány Azure úložištěm objektů blob. Všechny vrstvy zásobníku úložiště jsou ve výchozím nastavení odolné vůči zóně.
Úložiště WAL
Služba WAL je účelová služba, která přijímá WAL z primární výpočetní repliky a je optimalizovaná pro vzorce zápisu WAL s nízkou latencí. Při změně dat (vložení, aktualizace nebo odstranění) na primární replice se WAL zapíše do služby WAL a transakce se potvrdí. WAL se poté asynchronně aplikuje na příslušné datové shardy v rámci úložného clusteru, aby se promítly nejnovější změny. Kromě toho se WAL odesílá do sekundárních výpočetních replik, aby se znovu provedly všechny změny stránek, které jsou v paměti replik. WAL se pak archivuje do Azure úložiště objektů blob a uchovává se po nakonfigurovanou dobu krátkodobého uchovávání.
Úložiště dat
Skupina úložišť dat je mezipaměť pro všechna data v databázi a poskytuje tato data všem výpočetním replikám v clusteru Azure HorizonDB. Úložiště se přiděluje dynamicky, protože databáze roste, aniž by bylo nutné konfigurovat velikost úložiště nebo IOPS. Data z relací postgres jsou horizontálně dělené napříč několika uzly úložiště v vozovém parku, aby se zajistila lepší škálovatelnost. Existuje několik kopií stejného horizontálního oddílu dat uložených napříč zónami kvůli odolnosti. Jak se WAL přehrává na flotile úložiště, špinavé stránky z vozového parku úložiště se pak zapisují do Azure Blob Storage.
úložiště Azure Blob
Azure Blob Storage poskytuje odolnost databázových dat také jako úložiště dat pro archivaci WAL. Data jsou uložena v účtech úložiště s redundancí napříč zónami. Zálohování databází se provádí jako snímky blobů.
Cena
Azure HorizonDB v současné době účtuje:
- Zřízený výpočetní výkon v jádrohodinách
- Využité databázové úložiště (GB/měsíc) a
- Využité úložiště záloh pro krátkodobé uchovávání.
Další podrobnosti o cenách najdete na stránce s cenami.
Omezení
Azure HorizonDB je aktuálně v preview. Následující funkce zatím nejsou k dispozici, na těchto funkcích aktivně pracujeme.
| funkce | Stav | Notes |
|---|---|---|
| Konfigurovatelné uchovávání záloh | Zatím nedostupné | V současné době je uchovávání záloh sedm dní. Pracujeme na povolení 1–35denního uchovávání záloh. |
| Repliky pro čtení mezi oblastmi | Zatím nedostupné | Replikace mezi oblastmi pro zotavení po havárii se zatím nepodporuje. |
| Klíče spravované zákazníkem (CMK) pro šifrování | Není k dispozici | Šifrování neaktivních uložených dat aktuálně používá pouze klíče spravované službou. |
| Konfigurovatelná časová období údržby | Zatím nedostupné | V současnosti probíhají aktualizace během okna údržby spravovaného systémem. Možnost konfigurovat vlastní časové intervaly údržby ještě není k dispozici |
| Sdružování připojení (PgBouncer) | Zatím nedostupné | Nástroj pro sdružování externích připojení se dá použít, když pracujeme na sdružování připojení ke službě. |
| Dlouhodobá retence | Není k dispozici | V současné době je uchovávání záloh sedm dní. |
| Ladění indexu | Zatím nedostupné | Ladění indexů bude brzy k dispozici. |
| Injektáž virtuální sítě | Není k dispozici | V současné době podporujeme privátní propojení. Integrace virtuální sítě se zatím nepodporuje. |
Note
Tento seznam odráží aktuální stav služby a při vydání nových funkcí se může změnit. Nejnovější aktualizace najdete v poznámkách k verzi .
oblasti Azure
Azure HorizonDB je aktuálně k dispozici v následujících oblastech Azure:
| Geography | Regions |
|---|---|
| Severní a Jižní Amerika | Střední Kanada, Střed USA, Východ USA, Západ USA 2, Západ USA 3 |
| Evropa | Německo – středozápad, Švédsko – střed |
| Asie a Tichomoří | Austrálie – východ |
Note
Dostupnost oblastí se může změnit a brzy přidáme další oblasti. Některé oblasti můžou mít omezení pro nová nasazení. Nejnovější dostupnost oblastí najdete na portálu Azure nebo se obraťte na podpora Azure.
Názory a podpora
Pokud máte dotazy nebo návrhy týkající se Azure HorizonDB, můžete získat pomoc a podporu prostřednictvím následujících kanálů:
- Chcete-li kontaktovat podporu Azure, vytvořte ticket v portálu Azure.
- Pokud chcete vyřešit problém s vaším účtem, vytvořte žádost o podporu na webu Azure Portal.
- Pokud chcete poskytnout zpětnou vazbu nebo požádat o nové funkce, vytvořte položku prostřednictvím UserVoice.