Il servizio di importazione/esportazione del database SQL di Azure e di Istanza gestita di SQL richiede molto tempo per importare o esportare un database

Si applica a:Database SQL di AzureIstanza gestita di SQL di Azure

Quando si usa il servizio di importazione/esportazione, il processo potrebbe richiedere più tempo del previsto. Questo articolo descrive le possibili cause del ritardo e metodi alternativi per la soluzione alternativa.

Servizio di importazione/esportazione del database SQL di Azure

Il servizio di importazione/esportazione del database SQL di Azure è un servizio Web basato su REST che viene eseguito in ogni data center di Azure. Questo servizio viene richiamato quando si usa l'opzione Importa o esporta un database per spostare il database nel portale di Azure. Il servizio fornisce servizi di accodamento e calcolo di richieste gratuite, per eseguire importazioni ed esportazioni tra database SQL di Azure e archiviazione BLOB di Azure.

Le operazioni di importazione ed esportazione non rappresentano un backup tradizionale del database fisico, ma un backup logico del database che utilizza un formato BACPAC speciale. Il formato BACPAC consente di evitare di dover usare un formato fisico che può variare tra le varie versioni di Microsoft SQL Server, database SQL di Azure e Istanza gestita di SQL di Azure.

Quali sono le cause dei ritardi nei processi?

Il servizio di importazione/esportazione del database SQL di Azure fornisce un numero limitato di macchine virtuali di calcolo per area per elaborare le operazioni di importazione ed esportazione. Le macchine virtuali di calcolo sono ospitate per area per assicurarsi che l'importazione o l'esportazione eviti ritardi e addebiti della larghezza di banda tra le aree. Se vengono effettuate troppe richieste contemporaneamente nella medesima area, possono verificarsi ritardi significativi nell'elaborazione delle operazioni. Il tempo necessario per completare le richieste può variare da alcuni secondi a varie ore.

Inoltre, poiché il servizio di importazione/esportazione esegue un backup logico del database, il tempo necessario per il completamento dipende dal numero di oggetti nel database rispetto a un backup tradizionale del database fisico.

Nota

Dopo l'assegnazione di risorse e l'elaborazione di una richiesta, il servizio annulla automaticamente la richiesta dopo due giorni.

Se le esportazioni del database vengono usate solo per il ripristino dall'eliminazione accidentale dei dati, tutte le edizioni database SQL di Azure offrono funzionalità di ripristino self-service dai backup generati dal sistema. Tuttavia, se sono necessarie queste esportazioni per altri motivi e prestazioni di importazione/esportazione più veloci o più prevedibili, prendere in considerazione le opzioni seguenti:

Aspetti da considerare quando si importa o si esporta un database.

  • Tutti i metodi descritti in questo articolo usano le unità di transazione di database (DTU) o la quota della CPU, il che causa la limitazione da parte del servizio database SQL di Azure. È possibile visualizzare le statistiche DTU per database nel portale di Azure. Se il database ha raggiunto i limiti delle risorse, aggiornare il livello di servizio per aggiungere altre risorse.
  • Idealmente, è consigliabile eseguire applicazioni client, per esempio l'utilità sqlpackage o l'applicazione di applicazione livello dati personalizzata, da una macchina virtuale nella stessa area del database. In caso contrario potrebbero verificarsi problemi di prestazioni correlati alla latenza di rete.
  • L'esportazione di tabelle di grandi dimensioni senza indici con cluster può essere molto lenta o causare errori. Questo comportamento si verifica per la tabella non può essere suddivisa ed esportata in parallelo. Al contrario, deve essere esportata in una singola transazione e ciò causa un rallentamento delle prestazioni e potenziali errori durante l'esportazione, in particolare per tabelle di grandi dimensioni.

Considerazioni relative all'esportazione di un database