Share via


Informatie over gedistribueerde relationele databases

VAN TOEPASSING OP: Azure Cosmos DB for PostgreSQL (mogelijk gemaakt door de Citus-databaseextensie voor PostgreSQL)

Azure Cosmos DB is een wereldwijd gedistribueerd databaseplatform voor zowel NoSQL als relationele databases van elke schaal. In dit artikel worden gedistribueerde relationele databases verkend in de context van de relationele API-optie van Azure Cosmos DB.

Zie Het juiste gegevensarchief kiezen in het Azure Architecture Center voor meer informatie over andere opties voor gegevensopslag in Azure.

Uitdagingen

Wanneer u vaak leest over grote volumes of grote transactionele workloads, is het gemakkelijk om te denken dat deze workloads veel groter zijn dan de workloads waarmee uw toepassing te maken kan krijgen. De veronderstelling dat uw workload klein blijft, kan een veilige veronderstelling zijn aan het begin van een project, idee of organisatie. Deze veronderstelling kan echter snel leiden tot een scenario waarin de workload van uw toepassing veel verder groeit dan eventuele voorspellingen die u hebt gedaan. Het is niet ongebruikelijk om verhalen te horen over workloads die voldoen aan de maximale doorvoer of verwerkingskracht van de database met één exemplaar die economisch en presterend was aan het begin van een project.

Relationele databases

Relationele databases organiseren gegevens in tabelvorm (rij/kolom) met relaties tussen verschillende tabellen in de databases. Relationele databases zijn gebruikelijk in verschillende ondernemingen. Deze ondernemingen hebben vaak een schat aan softwareontwikkelaars die code hebben geschreven op basis van een relationele database of beheerders die schema's ontwerpen en relationele databaseplatforms beheren. Relationele databases ondersteunen ook vaak transacties met ACID-garanties.

Helaas worden veel relationele databasesystemen in eerste instantie geconfigureerd door organisaties op een manier met één knooppunt, met hoge beperkingen voor rekenkracht, geheugen en netwerkresources. Deze context kan leiden tot een onjuiste veronderstelling dat alle relationele databases van nature één knooppunt zijn.

Gedistribueerde databases

Bij veel cloudeigen whitepapers is het gebruikelijk om te horen over de voordelen van NoSQL-databases, waardoor het lijkt alsof relationele databases geen redelijke keuze zijn voor grootschalige databases of gedistribueerde workloads. Hoewel veel gedistribueerde databases niet-relationeel zijn, zijn dat opties die er zijn voor gedistribueerde relationele databaseworkloads.

Voor veel van deze opties voor gedistribueerde relationele databases moet uw organisatie grote schaal en distributie plannen vanaf het begin van het project. Deze planningsvereiste kan aanzienlijke complexiteit toevoegen aan het begin van een project om ervoor te zorgen dat alle relevante serverknooppunten worden geconfigureerd, beheerd en onderhouden door uw team. De plannings-, implementatie- en netwerkvereisten voor een wereldwijd gedistribueerde relationele database kunnen eenvoudig worden uitgebreid tot veel complexer dan één exemplaar (of knooppunt).

Azure Cosmos DB

Azure Cosmos DB is een databaseplatform dat gedistribueerde gegevens-API's biedt in zowel NoSQL- als relationele varianten. De relationele API voor Azure Cosmos DB is gebaseerd op PostgreSQL en de Citus-extensie.

Citus is een PostgreSQL-extensie die ondersteuning toevoegt aan Postgres voor de distributie van gegevens en transacties. Azure Cosmos DB for PostgreSQL is een volledig beheerde service met citus, waarmee u automatisch hoge beschikbaarheid krijgt zonder dat u afzonderlijke serverknooppunten handmatig hoeft te plannen, beheren en onderhouden. Met de API voor PostgreSQL kunt u beginnen met een volledig beheerd cluster met één knooppunt, uw databaseoplossing bouwen en deze vervolgens kant-en-klaar schalen naarmate de behoeften van uw toepassing in de loop van de tijd toenemen. Met de API voor PostgreSQL hoeft u geen complex distributieproject vooraf te plannen of een project te plannen om uw gegevens van één knooppunt naar een gedistribueerde database te migreren.

Volgende stappen

Wilt u aan de slag met Azure Cosmos DB?