Principy distribuovaných relačních databází
PLATÍ PRO: Azure Cosmos DB for PostgreSQL (využívající rozšíření databáze Citus do PostgreSQL)
Azure Cosmos DB je globálně distribuovaná databázová platforma pro noSQL i relační databáze libovolného škálování. Tento článek se zabývá distribuovanými relačními databázemi v kontextu možnosti relačního rozhraní API služby Azure Cosmos DB.
Další informace o dalších možnostech úložiště dat v Azure najdete v tématu Volba správného úložiště dat v Centru architektury Azure.
Výzvy
Často, když si přečtete o velkých objemech nebo vysokých transakčních úlohách, je snadné si myslet, že tyto úlohy jsou mnohem větší než všechny, se kterými se vaše aplikace může setkat. Předpoklad, že vaše úloha zůstane malá, může být bezpečným předpokladem na začátku projektu, nápadu nebo organizace. Tento předpoklad ale může rychle vést ke scénáři, kdy úloha vaší aplikace roste daleko nad rámec jakýchkoli předpovědí, které jste provedli. Není neobvyklé slyšet scénáře úloh, které splňují maximální propustnost nebo výpočetní výkon databáze s jednou instancí, která byla úsporná a výkonná na začátku projektu.
Relační databáze
Relační databáze uspořádají data do tabulkového formátu (řádku/sloupce) s relacemi mezi různými tabulkami v databázích. Relační databáze jsou běžné v různých podnicích. Tyto podniky často mají spoustu softwarových vývojářů, kteří napsali kód proti relační databázi nebo správcům, kteří navrhují schémata a spravují platformy relačních databází. Relační databáze také často podporují transakce se zárukami ACID.
Mnoho systémů relačních databází je bohužel zpočátku nakonfigurováno organizacemi jedním uzlem s horními omezeními výpočetních, paměťových a síťových prostředků. Tento kontext může vést k nesprávnému předpokladu, že všechny relační databáze jsou ve své podstatě jediné uzly.
Distribuované databáze
Díky mnoha nativním cloudovým dokumentům white paper se běžně dozvíte o výhodách databází NoSQL, díky kterým se zdá, že relační databáze nejsou rozumnou volbou pro rozsáhlé databáze nebo distribuované úlohy. I když mnoho distribuovaných databází není relačních, existují možnosti pro distribuované úlohy relačních databází.
Mnoho z těchto možností distribuovaných relačních databází vyžaduje, aby vaše organizace naplánoval velké škálování a distribuci od začátku projektu. Tento požadavek na plánování může na začátku projektu výrazně zjednodušit, aby se zajistilo, že jsou všechny relevantní uzly serveru nakonfigurované, spravované a spravované vaším týmem. Požadavky na plánování, implementaci a sítě pro globálně distribuovanou relační databázi můžou být mnohem složitější než umístění jedné instance (nebo uzlu).
Azure Cosmos DB
Azure Cosmos DB je databázová platforma, která nabízí distribuovaná rozhraní API pro data v noSQL i relačních variantách. Relační rozhraní API pro Azure Cosmos DB je konkrétně založené na PostgreSQL a rozšíření Citus.
Citus je rozšíření PostgreSQL, které přidává podporu postgres pro distribuci dat a transakcí. Azure Cosmos DB for PostgreSQL je plně spravovaná služba využívající Citus, která automaticky poskytuje vysokou dostupnost bez nutnosti ručního plánování, správy a údržby jednotlivých uzlů serveru. S rozhraním API for PostgreSQL můžete začít s plně spravovaným clusterem s jedním uzlem, sestavit databázové řešení a pak ho škálovat na klíč podle potřeby vaší aplikace v průběhu času. S rozhraním API for PostgreSQL nemusíte předem plánovat složitý distribuční projekt ani plánovat projekt pro migraci dat z jednoho uzlu na distribuovanou databázi.
Další kroky
Chcete začít se službou Azure Cosmos DB?