Aggiornare un'app in modo da usare la libreria client dei database elastici più recente

Si applica a: Database SQL di Azure

Le nuove versioni della libreria client dei database elastici sono disponibili tramite NuGet e l'interfaccia NuGet Package Manager in Visual Studio. Gli aggiornamenti contengono correzioni di bug e supporto delle nuove funzionalità della libreria client.

Per la versione più recente , passare a Microsoft.Azure.SqlDatabase.ElasticScale.Client.

Ricompilare l'applicazione con la nuova libreria e modificare i metadati esistenti del Gestore mappe delle partizioni archiviati nei database sul database SQL di Azure in modo che supportino le nuove funzionalità.

Seguendo l'ordine di questi passaggi è possibile essere sicuri che le versioni precedenti della libreria client non siano più presenti nell'ambiente quando gli oggetti dei metadati vengono aggiornati, e che pertanto dopo l'aggiornamento non saranno creati oggetti di metadati di versioni precedenti.

Passaggi dell'aggiornamento

1. Aggiornare le applicazioni. In Visual Studio, scaricare e fare riferimento alla versione più recente della libreria client in tutti i progetti di sviluppo che usano tale libreria; quindi ricompilare e distribuire.

  • Nella soluzione Visual Studio in uso selezionare Strumenti -->NuGet Package Manager -->Gestisci pacchetti NuGet per la soluzione.
  • (Visual Studio 2013) Nel riquadro sinistro selezionare Aggiornamenti, quindi il pulsante Aggiorna del pacchetto Libreria client di scalabilità elastica del database SQL di Azure che viene visualizzato nella finestra.
  • (2015 di Visual Studio) Impostare la casella del filtro su aggiornamento disponibile. Selezionare il pacchetto da aggiornare e selezionare il pulsante Aggiorna.
  • (Visual Studio 2017) Nella parte superiore della finestra di dialogo selezionare Aggiornamenti. Selezionare il pacchetto da aggiornare e selezionare il pulsante Aggiorna.
  • Compilare e distribuire.

2. Aggiornare gli script. Se si usano script PowerShell per gestire le partizioni, scaricare la nuova versione della libreria e copiarla nella directory da cui vengono eseguiti gli script.

3. Aggiornare il servizio di divisione e unione. Se si usa il servizio di divisione e unione di scalabilità elastica per riorganizzare i dati delle partizioni, scaricare e distribuire la versione più recente dello strumento. I passaggi dettagliati dell'aggiornamento per il servizio sono disponibili qui.

4. Aggiornare i database del Gestore mappe delle partizioni. Aggiornare i metadati che supportano le mappe delle partizioni nel database SQL di Azure. Esistono due modi per eseguire questa operazione, tramite PowerShell o C#. Entrambe le opzioni sono mostrate di seguito.

Opzione 1: aggiornare i metadati tramite PowerShell

  1. Scaricare l'utility della riga di comando più recente per NuGet da qui e salvarla in una cartella.
  2. Aprire un prompt dei comandi, passare alla stessa cartella ed eseguire il comando: nuget install Microsoft.Azure.SqlDatabase.ElasticScale.Client
  3. Passare alla sottocartella contenente la versione DLL scaricata del nuovo client, ad esempio: cd .\Microsoft.Azure.SqlDatabase.ElasticScale.Client.1.0.0\lib\net45
  4. Scaricare lo script di aggiornamento del client di database elastico dal Centro script e salvarlo nella stessa cartella contenente la DLL.
  5. Da quella cartella, eseguire PowerShell .\upgrade.ps1 dal prompt dei comandi e seguire i prompt.

Opzione 2: aggiornare i metadati tramite C#

In alternativa, creare un'applicazione Visual Studio che apre ShardMapManager, scorre tutte le partizioni ed esegue l'aggiornamento dei metadati chiamando i metodi UpgradeLocalStore e UpgradeGlobalStore come in questo esempio:

    ShardMapManager smm =
       ShardMapManagerFactory.GetSqlShardMapManager
       (connStr, ShardMapManagerLoadPolicy.Lazy);
    smm.UpgradeGlobalStore();

    foreach (ShardLocation loc in
     smm.GetDistinctShardLocations())
    {
       smm.UpgradeLocalStore(loc);
    }

Tali tecniche di aggiornamento dei metadati possono essere applicate più volte senza creare problemi. Se, ad esempio, una versione client precedente crea inavvertitamente una partizione dopo che è già stato eseguito l'aggiornamento, è possibile eseguire nuovamente l'aggiornamento in tutte le partizioni per garantire che nell'infrastruttura sia presente la versione dei metadati più aggiornata.

Nota: le nuove versioni della libreria client pubblicate fino a oggi continuano a funzionare con le versioni precedenti dei metadati di Gestore mappe partizioni sul database SQL di Azure e viceversa. Tuttavia, per sfruttare alcune delle nuove funzionalità nel client più recente, è necessario aggiornare i metadati. Tenere presente che gli aggiornamenti dei metadati non influiscono sui dati utente o sui dati specifici dell'applicazione, solo gli oggetti creati e usati da Gestore mappe partizioni. E le applicazioni continuano a funzionare nel corso della sequenza di aggiornamento descritta in precedenza.

Cronologia delle versioni del client di database elastico

Per la cronologia delle versioni, passare a Microsoft.Azure.SqlDatabase.ElasticScale.Client

Risorse aggiuntive

Se non si usano gli strumenti di database elastici, vedere la Guida introduttiva. In caso di domande, usare la ‭pagina Microsoft Q&A per il database SQL‬,mentre è possibile inserire le richieste di nuove funzionalità, aggiungere nuove idee o votare quelle esistenti nel forum relativo al feedback sul database SQL.