Wereldwijde distributie van Azure Cosmos DB instellen met behulp van de API voor Table

Important

Zoekt u een databaseoplossing voor grootschalige scenario's met een 99.999% SLA (Availability Service Level Agreement), directe automatische schaalaanpassing en automatische failover in meerdere regio's? Overweeg Azure Cosmos DB voor NoSQL.

Dit artikel behandelt de volgende taken:

  • Wereldwijde distributie configureren met behulp van Azure Portal
  • Globale distributie configureren met behulp van de API voor Table

Globale databaseregio's toevoegen met Azure Portal

Azure Cosmos DB is wereldwijd beschikbaar in alle Azure-regio's. Nadat u het standaardconsistentieniveau voor uw databaseaccount hebt geselecteerd, kunt u een of meer regio's aan het account koppelen (afhankelijk van uw keuze van het standaardconsistentieniveau en behoeften voor globale distributie).

  1. Klik in Azure Portal in de linkerbalk op Azure Cosmos DB.

  2. Selecteer op de pagina Azure Cosmos DB het databaseaccount dat u wilt wijzigen.

  3. Klik op de accountpagina op Gegevens wereldwijd repliceren in het menu.

  4. Selecteer op de pagina Gegevens globaal repliceren de regio's die u wilt toevoegen of verwijderen door op de kaart op regio's te klikken. Klik vervolgens op Opslaan. Er zijn kosten verbonden aan het toevoegen van regio's. Raadpleeg de pagina met prijzen of het artikel Gegevens globaal distribueren met Azure Cosmos DB voor meer informatie.

    Klik op de kaart op de regio's die u wilt toevoegen of verwijderen

Zodra u een tweede regio toevoegt, komt de optie Handmatige failover beschikbaar op de pagina Gegevens globaal repliceren in de portal. Deze optie kunt u gebruiken om het failoverproces te testen of om de primaire regio voor schrijfbewerkingen te wijzigen. Als u een derde regio toevoegt, komt op dezelfde pagina de optie Failoverprioriteiten beschikbaar. Hiermee kunt u de failovervolgorde voor leesbewerkingen wijzigen.

Het selecteren van globale databaseregio's

Er zijn twee gangbare scenario's voor het configureren van twee of meer regio's:

  1. Gegevenstoegang met lage latentie bieden aan eindgebruikers, ongeacht waar deze zich bevinden
  2. Regionale tolerantie toevoegen voor bedrijfscontinuïteit en herstel na noodgevallen (BCDR)

Voor het leveren van lage latentie aan eindgebruikers wordt aanbevolen om zowel de applicatie als Azure Cosmos DB te implementeren in de regio's die overeenkomen met de locaties van de gebruikers van de applicatie.

Voor BCDR is het raadzaam om regio's toe te voegen op basis van de regioparen die worden beschreven in de replicatie tussen regio's in Azure: Bedrijfscontinuïteit en herstel na noodgevallen.

Verbinding maken met een voorkeursregio met behulp van de API voor Table

Als u wilt profiteren van de wereldwijde distributie, moeten door clienttoepassingen de huidige locaties worden opgegeven waar de toepassing wordt uitgevoerd. Dit doet u door de eigenschap CosmosExecutorConfiguration.CurrentRegion in te stellen. De eigenschap CurrentRegion moet één locatie bevatten. Elk clientexemplaar kan een eigen regio opgeven voor leesbewerkingen met lage latentie. De regio moet benoemd worden met hun weergavenamen, zoals "West US".

De Azure Cosmos DB for Table SDK kiest automatisch het beste eindpunt om mee te communiceren op basis van de accountconfiguratie en de huidige regionale beschikbaarheid. De regio die het dichtst in de buurt is krijgt de prioriteit, zodat clients over de beste latentie beschikken. Nadat u de huidige eigenschap, CurrentRegion, hebt ingesteld, worden lees- en schrijfaanvragen als volgt omgeleid:

  • Leesaanvragen: alle leesaanvragen worden verzonden naar de geconfigureerde CurrentRegion. Op basis van nabijheid selecteert de SDK automatisch een geo-gerepliceerde regio om op terug te kunnen vallen, zodat hoge beschikbaarheid wordt geboden.

  • Schrijfaanvragen: de SDK verzendt automatisch alle schrijfaanvragen naar de huidige schrijfregio. In een account met schrijfbewerkingen voor meerdere regio's dient de huidige regio ook de schrijfaanvragen. Op basis van nabijheid selecteert de SDK automatisch een geo-gerepliceerde regio om op terug te kunnen vallen, zodat hoge beschikbaarheid wordt geboden.

Als u eigenschap CurrentRegion niet opgeeft, gebruikt de SDK de huidige schrijfregio voor alle bewerkingen.

Als een Azure Cosmos DB-account zich bijvoorbeeld in de regio 'VS - west' en 'VS - oost' bevindt. Als "West US" de schrijfregio is en de toepassing zich bevindt in "Oost US". Als de eigenschap CurrentRegion niet is geconfigureerd, worden alle lees- en schrijfaanvragen altijd omgeleid naar de regio VS - west. Als de eigenschap CurrentRegion is geconfigureerd, worden alle leesaanvragen vanuit de regio US - oost afgehandeld.

Volgende stappen 

In deze zelfstudie hebt u het volgende gedaan:

  • Wereldwijde distributie configureren met behulp van Azure Portal
  • Globale distributie met Azure Cosmos DB instellen met behulp van de Table-API’s