Condividi tramite


Passaggi di ottimizzazione post-migrazione quando si usa l'API Azure Cosmos DB for MongoDB

SI APPLICA A: MongoDB

Importante

Prima di eseguire i passaggi post-migrazione, leggere questa guida completa.

Questa guida alla post-migrazione di MongoDB fa parte della serie sulla migrazione di MongoDB. I passaggi critici per la migrazione di MongoDB sono pre-migrazione, migrazione e post-migrazione, come illustrato di seguito.

Diagramma dei passaggi di migrazione.

Panoramica della post-migrazione

Dopo aver eseguito la migrazione dei dati archiviati nel database MongoDB all'API per MongoDB di Azure Cosmos DB, è possibile connettersi ad Azure Cosmos DB e gestire i dati. Questa guida contiene la procedura da seguire dopo la migrazione. Per i passaggi di migrazione, fare riferimento all’esercitazione Eseguire la migrazione di MongoDB all'API di Azure Cosmos DB for MongoDB.

Per eseguire una post-migrazione completa, seguire questi passaggi

Nota

L'unico passaggio obbligatorio dopo la migrazione consiste nel modificare la stringa di connessione nell'applicazione in modo che punti al nuovo account Azure Cosmos DB. Tutti i passaggi successivi alla migrazione sono ottimizzazioni consigliate per migliorare le prestazioni a livello di dati. Tuttavia, se si esegue immediatamente il cutover dell'applicazione senza gli altri passaggi, l'applicazione visualizzerà immediatamente l'impatto dell'indicizzazione e della coerenza non ottimali. In particolare, se si esegue il cutover prima di configurare gli indici, l'applicazione potrebbe vedere un calo immediato di prezzo/prestazioni. Tenere presente che questo problema può essere risolto: una volta ottimizzato l'indice, ci si aspetta che spesso Azure Cosmos DB abbia prestazioni migliori della soluzione status quo su prezzo/prestazioni.

Prerequisiti

In questa guida si presuppone che l'utente mantenga un record dello stato di avanzamento della migrazione usando una sorta di artefatto di rilevamento, ad esempio un foglio di calcolo. Se non è già stato fatto, è consigliabile leggere la guida alla pre-migrazione per indicazioni sulla creazione di un foglio di calcolo della migrazione del patrimonio dei dati, l'individuazione delle risorse MongoDB esistenti e la pianificazione della migrazione.

Ottimizzare i criteri di indicizzazione

Per ottimizzare i prezzi e le prestazioni, è consigliabile procedere nel foglio di calcolo della migrazione del patrimonio dei dati e progettare una configurazione dell'indice per ogni risorsa.

  1. È consigliabile pianificare gli indici durante la fase di pre-migrazione. Aggiungere una colonna al foglio di calcolo della migrazione del patrimonio di dati per le impostazioni dell'indice.
    • Il server Azure Cosmos DB for MongoDB versione 3.6 e successive indicizza automaticamente solo il campo _id. Questo campo non può essere eliminato. Applica automaticamente l'univocità del campo _id per ogni chiave di partizione. Per indicizzare campi aggiuntivi, applicare i comandi di gestione dell'indice MongoDB. Questo criterio di indicizzazione predefinito differisce da Azure Cosmos DB for NoSQL, che indicizza tutti i campi per impostazione predefinita.

    • Per il server Azure Cosmos DB for MongoDB versione 3.2, tutti i campi dati vengono indicizzati automaticamente, per impostazione predefinita, durante la migrazione dei dati ad Azure Cosmos DB. In molti casi, questo criterio di indicizzazione predefinito è accettabile. In generale, la rimozione degli indici ottimizza le richieste di scrittura e il criterio di indicizzazione predefinito (ad esempio, l'indicizzazione automatica) ottimizza le richieste di lettura.

    • Le funzionalità di indicizzazione offerte da Azure Cosmos DB includono l'aggiunta di indici compositi, indici univoci e indici TTL (Time-To-Live). Viene eseguito il mapping dell'interfaccia di gestione degli indici al comando createIndex(). Altre informazioni in Indicizzazione in Azure Cosmos DB e Indicizzazione nell'API di Azure Cosmos DB for MongoDB.

  2. Applicare queste impostazioni di indice durante la post-migrazione.
    • Il servizio Migrazione del database di Azure esegue automaticamente la migrazione delle raccolte di MongoDB con indici univoci. È tuttavia necessario che gli indici univoci vengano creati prima della migrazione. Azure Cosmos DB non supporta la creazione di indici univoci quando sono già presenti dati nelle raccolte. Per altre informazioni, vedere Chiavi univoche in Azure Cosmos DB.

Distribuire i dati a livello globale

Azure Cosmos DB è disponibile in tutte le aree di Azure a livello mondiale.

  1. Seguire le indicazioni nell'articolo Distribuire i dati a livello globale nell'API di Azure Cosmos DB for MongoDB per distribuire i dati a livello globale. Dopo aver selezionato il livello di coerenza predefinito per l'account Azure Cosmos DB, è possibile associare una o più aree di Azure a seconda delle esigenze di distribuzione globale. Per la disponibilità elevata e la continuità aziendale, è consigliabile l’esecuzione sempre in almeno 2 aree. È possibile esaminare i suggerimenti per ottimizzare i costi delle distribuzioni in più aree in Azure Cosmos DB.

Impostare il livello di coerenza

Azure Cosmos DB offre cinque livelli di coerenza ben definiti. Per informazioni sul mapping tra il MongoDB e i livelli di coerenza di Azure Cosmos DB, vedere Livelli di coerenza e API di Azure Cosmos DB. Il livello di coerenza predefinito è Sessione. La modifica del livello di coerenza è facoltativa ed è possibile ottimizzarla per l'app. Per modificare il livello di coerenza usando il portale di Azure:

  1. Passare al pannello Coerenza predefinita in Impostazioni.
  2. Selezionare il livello di coerenza

La maggior parte degli utenti lascia il livello di coerenza all'impostazione predefinita di coerenza della sessione. Tuttavia, sono presenti compromessi di disponibilità e prestazioni per vari livelli di coerenza.

Connessione o cutover dell'applicazione

L'elaborazione del cutover o della connessione dell'applicazione consente di passare dall'applicazione all'uso di Azure Cosmos DB al termine della migrazione. Segui i passaggi riportati di seguito:

  1. In una nuova finestra accedere al portale di Azure.
  2. Nel riquadro sinistro del portale di Azure, aprire il menu Tutte le risorse e trovare l'account Azure Cosmos DB dove è stata eseguita la migrazione dei dati.
  3. Aprire il pannello Stringa di connessione. Il riquadro destro contiene tutte le informazioni necessarie per connettersi correttamente all'account.
  4. Usare le informazioni di connessione nella configurazione dell'applicazione (o in altre posizioni pertinenti) per riflettere la connessione all'API di Azure Cosmos DB for MongoDB nell'app. Screenshot che mostra le impostazioni per una stringa di connessione.

Per altre informazioni, vedere la pagina Connettere un'applicazione MongoDB ad Azure Cosmos DB.

Ottimizzazione per prestazioni ottimali

Un fatto comodo sull’indicizzazione, òa distribuzione globale e la coerenza: tutti questi elementi possono essere facilmente configurati e riconfigurati in base alle esigenze. Dopo aver completato il cutover dell'applicazione, è quindi consigliabile monitorare le prestazioni dell'applicazione e regolare queste impostazioni in base alle esigenze per soddisfare i requisiti dell'applicazione.

Passaggi successivi