Configurare la distribuzione globale in Azure Cosmos DB usando l'API per Table

SI APPLICA A: Tabella

Questo articolo illustra le attività seguenti:

  • Configurare la distribuzione globale tramite il portale di Azure
  • Configurare la distribuzione globale usando l'API per Table

Aggiungere aree di database globali tramite il portale di Azure

Azure Cosmos DB è disponibile in tutte le aree di Azure a livello mondiale. Dopo aver selezionato il livello di coerenza predefinito per l'account di database, è possibile associare una o più aree, a seconda del livello di coerenza predefinito e delle esigenze di distribuzione globale scelti.

  1. Nella barra a sinistra del portale di Azure fare clic su Azure Cosmos DB.

  2. Nella pagina Azure Cosmos DB selezionare l'account di database da modificare.

  3. Nella pagina dell'account fare clic su Replica i dati a livello globale dal menu.

  4. Nella pagina Replica i dati a livello globale selezionare le aree da aggiungere o rimuovere facendo clic su di esse nella mappa e quindi scegliere Salva. L'aggiunta di aree ha un costo. Per altre informazioni, vedere la pagina relativa ai prezzi o l'articolo Distribuire i dati a livello globale con Azure Cosmos DB.

    Fare clic sulle aree nella mappa per aggiungerle o rimuoverle

Dopo l'aggiunta di una seconda area, viene abilitata l'opzione Failover manuale nella pagina Replica i dati a livello globale del portale. È possibile usare questa opzione per testare il processo di failover o per modificare l'area di scrittura primaria. Dopo avere aggiunto una terza area, l'opzione Priorità di failover viene abilitata nella stessa pagina per poter modificare l'ordine di failover per le operazioni di lettura.

Selezionare aree di database globali

Esistono due scenari comuni per la configurazione di due o più aree:

  1. Offerta di accesso con bassa latenza ai dati indipendentemente dalla posizione del mondo in cui si trovano gli utenti finali
  2. Aggiunta di resilienza a livello di area per garantire continuità aziendale e ripristino di emergenza (BCDR)

Per offrire l'accesso con bassa latenza agli utenti finali, è consigliabile distribuire l'applicazione e Azure Cosmos DB nelle aree corrispondenti alla località in cui si trovano gli utenti dell'applicazione.

A fini di continuità aziendale e ripristino di emergenza, è consigliabile aggiungere le aree in base alle coppie di aree descritte nell'articolo Replica tra più aree in Azure: continuità aziendale e ripristino di emergenza.

Connessione a un'area preferita tramite l'API per Table

Per sfruttare i vantaggi della distribuzione globale, le applicazioni client devono specificare la località corrente in cui è in esecuzione l'applicazione. Per eseguire questa operazione, è necessario impostare la proprietà CosmosExecutorConfiguration.CurrentRegion. La proprietà CurrentRegion deve contenere una sola località. Ogni istanza del client può indicare un'area specifica per le letture a bassa latenza. Le aree devono essere denominate usando i relativi nomi visualizzati ad esempio "Stati Uniti occidentali".

L’SDK di Azure Cosmos DB for Table seleziona automaticamente l'endpoint che garantisce la comunicazione ottimale in base alla configurazione degli account e alla disponibilità corrente delle aree. Viene assegnata la priorità all'area più vicina per offrire ai client la latenza migliore. Dopo aver impostato la proprietà CurrentRegion corrente, le richieste di lettura e scrittura vengono indirizzate come indicato di seguito:

  • Richieste di lettura: tutte le richieste di lettura vengono inviate all'area CurrentRegion configurata. In base alla prossimità, l'SDK seleziona automaticamente un'area con replica geografica di fallback per la disponibilità elevata.

  • Richieste di scrittura: l'SDK invia automaticamente tutte le richieste di scrittura all'area di scrittura corrente. In un account con operazioni di scrittura in più aree, l'area corrente gestirà anche le richieste di scrittura. In base alla prossimità, l'SDK seleziona automaticamente un'area con replica geografica di fallback per la disponibilità elevata.

Se non si specifica la proprietà CurrentRegion, l'SDK userà l'area di scrittura corrente per tutte le operazioni.

Ad esempio, se un account Azure Cosmos DB risiede nelle aree "Stati Uniti occidentali" e "Stati Uniti orientali". Se "Stati Uniti occidentali" è l'area di scrittura e l'applicazione risiede nell'area "Stati Uniti orientali". Se la proprietà CurrentRegion non è configurata, tutte le richieste di lettura e scrittura vengono sempre indirizzate all'area "Stati Uniti occidentali". Se la proprietà CurrentRegion è configurata, tutte le richieste di lettura e scrittura vengono gestite dall'area "Stati Uniti orientali".

Passaggi successivi

In questa esercitazione sono state eseguite le operazioni seguenti:

  • Configurare la distribuzione globale tramite il portale di Azure
  • Configurare la distribuzione globale tramite le API Table di Azure Cosmos DB