Informatie over gedistribueerde NoSQL-databases

VAN TOEPASSING OP: Nosql MongoDB Cassandra Gremlin Tabel

Azure Cosmos DB is een wereldwijd gedistribueerd databaseplatform voor zowel NoSQL als relationele databases van elke schaal. In dit artikel worden gedistribueerde NoSQL-databases verkend in de context van de verschillende NoSQL API-opties 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

Een van de uitdagingen bij het onderhouden van een databasesysteem is dat veel database-engines vergrendelingen en vergrendelingen toepassen om strikte ACID-semantiek af te dwingen. Deze benadering is nuttig in scenario's waarin databases een hoge consistentie van de status van de gegevens vereisen, ongeacht hoe deze worden geopend. Hoewel deze benadering een hoge consistentie belooft, maakt het zware compromissen met betrekking tot gelijktijdigheid, latentie en beschikbaarheid. Deze beperking is in wezen een architectuurbeperking en dwingt elk team met een hoge transactionele workload om tijdelijke oplossingen te vinden, zoals het handmatig distribueren of sharden van gegevens over veel verschillende databases of databaseknooppunten. Deze tijdelijke oplossingen kunnen tijdrovend en lastig zijn om te implementeren.

NoSQL-databases

NoSQL-databases verwijzen naar databases die zijn ontworpen om horizontaal schalen te vereenvoudigen door de consistentie aan te passen om de afwegingen voor gelijktijdigheid, latentie en beschikbaarheid te minimaliseren. NoSQL-databases bieden configureerbare consistentieniveaus, zodat gegevens kunnen worden geschaald op verschillende knooppunten en snelheid of beschikbaarheid bieden die beter is afgestemd op de behoeften van uw toepassing.

Gedistribueerde databases

Gedistribueerde databases verwijzen naar databases die worden geschaald over veel verschillende exemplaren of locaties. Hoewel veel NoSQL-databases zijn ontworpen voor schaalaanpassing, zijn niet alle noodzakelijkerwijs gedistribueerde databases. Bovendien vereisen veel NoSQL-databases tijd en moeite om te distribueren over redundante knooppunten voor lokale redundantie of globaal voor geo-redundantie. De plannings-, implementatie- en netwerkvereisten voor een wereldwijd gedistribueerde database kunnen complex zijn.

Azure Cosmos DB

Met een gedistribueerde database die ook een NoSQL-database is, zijn grote transactionele workloads plotseling eenvoudiger te bouwen en te beheren. Azure Cosmos DB is een databaseplatform dat gedistribueerde gegevens-API's biedt in zowel NoSQL- als relationele varianten. Veel van de NoSQL-API's bieden verschillende consistentieopties waarmee u het consistentie- of beschikbaarheidsniveau kunt afstemmen dat voldoet aan de vereisten van uw echte toepassing. Uw database kan worden geconfigureerd om hoge consistentie te bieden met compromissen voor snelheid en beschikbaarheid. Op dezelfde manier kan uw database worden geconfigureerd om de beste prestaties te bieden met voorspelbare compromissen voor consistentie en latentie van uw gerepliceerde gegevens. Azure Cosmos DB distribueert uw gegevens automatisch en dynamisch over lokale exemplaren of wereldwijd. Azure Cosmos DB kan ook ACID-garanties bieden en doorvoer schalen om toe te wijzen aan de vereisten van uw toepassing.

Volgende stappen

Wilt u aan de slag met Azure Cosmos DB?