Aggiornare un'app in modo da usare la libreria client dei database elastici più recenteUpgrade an app to use the latest elastic database client library

Le nuove versioni della libreria client dei database elastici sono disponibili tramite NuGet e l'interfaccia NuGetPackage Manager in Visual Studio.New versions of the Elastic Database client library are available through NuGetand the NuGetPackage Manager interface in Visual Studio. Gli aggiornamenti contengono correzioni di bug e supporto delle nuove funzionalità della libreria client.Upgrades contain bug fixes and support for new capabilities of the client library.

Per la versione più recente , passare a Microsoft.Azure.SqlDatabase.ElasticScale.Client.For the latest version: Go to Microsoft.Azure.SqlDatabase.ElasticScale.Client.

Compilazione dell'applicazione con la nuova libreria, nonché la modifica dei metadati Shard Map Manager esistenti archiviati nei database SQL di Azure in modo che supportino le nuove funzionalità.Rebuild your application with the new library, as well as change your existing Shard Map Manager metadata stored in your Azure SQL Databases to support new features.

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.Performing these steps in order ensures that old versions of the client library are no longer present in your environment when metadata objects are updated, which means that old-version metadata objects won’t be created after upgrade.

Passaggi dell'aggiornamentoUpgrade steps

1. Aggiornare le applicazioni.1. Upgrade your applications. 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.In Visual Studio, download and reference the latest client library version into all of your development projects that use the library; then rebuild and deploy.

  • Nella soluzione Visual Studio in uso selezionare Strumenti --> Gestione pacchetti NuGet --> Gestisci pacchetti NuGet per la soluzione.In your Visual Studio solution, select Tools --> NuGet Package Manager --> Manage NuGet Packages for Solution.
  • (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.(Visual Studio 2013) In the left panel, select Updates, and then select the Update button on the package Azure SQL Database Elastic Scale Client Library that appears in the window.
  • (2015 di Visual Studio) Impostare la casella del filtro su aggiornamento disponibile.(Visual Studio 2015) Set the Filter box to Upgrade available. Selezionare il pacchetto da aggiornare, e fare clic sul pulsante Aggiorna .Select the package to update, and click the Update button.
  • (Visual Studio 2017) Nella parte superiore della finestra di dialogo selezionare Aggiornamenti.(Visual Studio 2017) At the top of the dialog, select Updates. Selezionare il pacchetto da aggiornare, e fare clic sul pulsante Aggiorna .Select the package to update, and click the Update button.
  • Compilare e distribuire.Build and Deploy.

2. Aggiornare gli script.2. Upgrade your scripts. 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.If you are using PowerShell scripts to manage shards, download the new library version and copy it into the directory from which you execute scripts.

3. Aggiornare il servizio di divisione e unione.3. Upgrade your split-merge service. 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.If you use the elastic database split-merge tool to reorganize sharded data, download and deploy the latest version of the tool. I passaggi dettagliati dell'aggiornamento per il servizio sono disponibili qui.Detailed upgrade steps for the Service can be found here.

4. Aggiornare i database di Gestore mappe partizioni.4. Upgrade your Shard Map Manager databases. Aggiornare i metadati che supportano le mappe delle partizioni nel database SQL di Azure.Upgrade the metadata supporting your Shard Maps in Azure SQL Database. Esistono due modi per eseguire questa operazione, tramite PowerShell o C#.There are two ways you can accomplish this, using PowerShell or C#. Entrambe le opzioni sono mostrate di seguito.Both options are shown below.

Opzione 1: aggiornare i metadati tramite PowerShellOption 1: Upgrade metadata using PowerShell

  1. Scaricare l'utility della riga di comando più recente per NuGet da qui e salvarla in una cartella.Download the latest command-line utility for NuGet from here and save to a folder.
  2. Aprire un prompt dei comandi, passare alla stessa cartella ed eseguire il comando: nuget install Microsoft.Azure.SqlDatabase.ElasticScale.ClientOpen a Command Prompt, navigate to the same folder, and issue the command: nuget install Microsoft.Azure.SqlDatabase.ElasticScale.Client
  3. Passare alla sottocartella contenente la versione DLL appena scaricata, ad esempio: cd .\Microsoft.Azure.SqlDatabase.ElasticScale.Client.1.0.0\lib\net45Navigate to the subfolder containing the new client DLL version you have just downloaded, for example: cd .\Microsoft.Azure.SqlDatabase.ElasticScale.Client.1.0.0\lib\net45
  4. Scaricare lo scriplet di aggiornamento del client di database elastico dal Centro scripte salvarlo nella stessa cartella contenente la DLL.Download the elastic database client upgrade scriptlet from the Script Center, and save it into the same folder containing the DLL.
  5. Da quella cartella, eseguire “PowerShell .\upgrade.ps1” dal prompt dei comandi e seguire i prompt.From that folder, run “PowerShell .\upgrade.ps1” from the command prompt and follow the prompts.

Opzione 2: aggiornare i metadati tramite C#Option 2: Upgrade metadata using 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:Alternatively, create a Visual Studio application that opens your ShardMapManager, iterates over all shards, and performs the metadata upgrade by calling the methods UpgradeLocalStore and UpgradeGlobalStore as in this example:

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.These techniques for metadata upgrades can be applied multiple times without harm. 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.For example, if an older client version inadvertently creates a shard after you have already updated, you can run upgrade again across all shards to ensure that the latest metadata version is present throughout your infrastructure.

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.Note: New versions of the client library published to-date continue to work with prior versions of the Shard Map Manager metadata on Azure SQL DB, and vice-versa. Tuttavia, per sfruttare alcune delle nuove funzionalità nel client più recente, è necessario aggiornare i metadati.However to take advantage of some of the new features in the latest client, metadata needs to be upgraded. Tenere presente che gli aggiornamenti dei metadati non influiscono sui dati utente o sui dati specifici dell'applicazione, solo gli oggetti creati e utilizzati da Gestore mappe partizioni.Note that metadata upgrades will not affect any user-data or application-specific data, only objects created and used by the Shard Map Manager. E le applicazioni continuano a funzionare nel corso della sequenza di aggiornamento descritta in precedenza.And applications continue to operate through the upgrade sequence described above.

Cronologia delle versioni del client di database elasticoElastic database client version history

Per la cronologia delle versioni, passare a Microsoft.Azure.SqlDatabase.ElasticScale.ClientFor version history, go to Microsoft.Azure.SqlDatabase.ElasticScale.Client

Risorse aggiuntiveAdditional resources

Se non si usano gli strumenti di database elastici,Not using elastic database tools yet? vedere la Guida introduttiva.Check out our Getting Started Guide. Se ci sono domande, è possibile visitare il forum sul database SQL mentre è possibile inserire le richieste di nuove funzionalità nel forum relativo a commenti e suggerimenti sul database SQL.For questions, please reach out to us on the SQL Database forum and for feature requests, please add them to the SQL Database feedback forum.