Importare raccolte di grandi dimensioni

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Per i database avvisati dallo strumento di migrazione dei dati sono troppo grandi, è necessario un approccio diverso per la creazione di pacchetti di dati per eseguire la migrazione ad Azure DevOps Services. Se non si è certi che la raccolta superi la soglia delle dimensioni, è consigliabile eseguire una convalida dello strumento di migrazione dei dati nella raccolta. La convalida consente di sapere se è necessario usare il metodo della macchina virtuale di SQL Azure per l'importazione.

Determinare se è possibile ridurre le dimensioni della raccolta

Prima di procedere, è consigliabile verificare se i dati precedenti possono essere puliti. Nel corso del tempo, le raccolte possono creare grandi volumi di dati. Questa crescita è una parte naturale del processo DevOps, ma potrebbe non essere necessario conservare tutti i dati. Alcuni esempi comuni di dati non più rilevanti sono aree di lavoro meno recenti e risultati di compilazione.

La pulizia degli artefatti meno recenti e non più rilevanti potrebbe rimuovere molto più spazio del previsto e determinare se si usa il metodo di importazione DACPAC o una macchina virtuale di SQL Azure.

Importante

Dopo aver eliminato i dati meno recenti, non è possibile recuperarli a meno che non si ripristini un backup precedente della raccolta.

Se si è sotto la soglia DACPAC, seguire le istruzioni per generare un pacchetto di applicazione livello dati per l'importazione. Se non è ancora possibile ottenere il database sotto la soglia DACPAC, è necessario configurare una macchina virtuale di SQL Azure da importare in Azure DevOps Services.

Configurare una macchina virtuale di SQL Azure da importare in Azure DevOps Services

Verrà ora illustrato come eseguire questa operazione. A livello generale, si:

  • Configurare una macchina virtuale di SQL Azure.
  • (Facoltativo) Limitare l'accesso solo agli indirizzi IP di Azure DevOps Services.
  • Configurare le eccezioni del firewall IP.
  • Ripristinare il database nella macchina virtuale.
  • Configurare la raccolta per l'importazione.
  • Configurare il file di specifica di importazione per la macchina virtuale di destinazione

Configurare una macchina virtuale di SQL Azure

È possibile configurare una macchina virtuale di SQL Azure dal portale di Azure con pochi clic. Per informazioni su come, vedere Usare il portale di Azure per effettuare il provisioning di una macchina virtuale Windows con SQL Server.

Nota

Durante la configurazione della macchina virtuale di SQL Azure, tenere presente che le prestazioni della macchina virtuale e dei dischi dati collegati avranno un impatto significativo sulle prestazioni dell'importazione. Per questo motivo, è consigliabile :

  • Selezione delle dimensioni di una macchina virtuale al livello di D8s_v5_* o superiore
  • Uso di Managed Disks
  • Consulenza delle prestazioni della macchina virtuale e del disco. Assicurarsi che l'infrastruttura sia configurata in modo che nessuna delle operazioni di I/O al secondo della macchina virtuale o delle operazioni di I/O al secondo di archiviazione diventi un collo di bottiglia sulle prestazioni dell'importazione. Ad esempio, verificare che il numero di dischi dati collegati alla macchina virtuale sia sufficiente per supportare le operazioni di I/O al secondo dalla macchina virtuale.

Azure DevOps Services è disponibile in diverse aree di Azure in tutto il mondo. Questi valori sono visibili nella tabella seguente.

Importante

Per assicurarsi che l'importazione venga avviata correttamente, è fondamentale inserire i dati nell'area corretta. Se si configura la macchina virtuale di SQL Azure in una località diversa dalle aree elencate nella tabella seguente, l'importazione non verrà avviata.

Se si usa questo metodo di importazione, determinare dove creare la macchina virtuale di SQL Azure facendo riferimento alla tabella seguente. La creazione della macchina virtuale in un'area diversa da quella in questo elenco non è supportata per l'esecuzione di un'importazione.

Area di importazione desiderata Area della macchina virtuale di SQL Azure
Stati Uniti centrale Stati Uniti centrali
Europa occidentale Europa occidentale
Australia orientale Australia orientale
Brasile meridionale Brasile meridionale
India meridionale India meridionale
Canada centrale Canada centrale
Asia Pacifico Asia sud-orientale (Singapore)
Regno Unito meridionale Regno Unito meridionale

Anche se Azure DevOps Services è disponibile in più aree negli Stati Uniti, solo l'area Stati Uniti centrale accetta nuove organizzazioni. Attualmente le aziende non possono importare i dati in altre aree di Azure degli Stati Uniti.

Nota

I clienti daCPAC devono consultare la tabella dell'area nella sezione "Passaggio 3: Caricare il file DACPAC". Le linee guida precedenti sono solo per le macchine virtuali di SQL Azure.

Di seguito sono riportate alcune altre configurazioni di MACCHINE virtuali di SQL Azure consigliate:

  • Configurare il database temporaneo SQL per l'uso di un'unità diversa dall'unità C. Idealmente, l'unità deve avere spazio libero sufficiente, almeno equivalente alla tabella più grande del database.
  • Se il database di origine è ancora superiore a 1 terabyte (TB) dopo aver ridotto le dimensioni, è necessario collegare dischi aggiuntivi da 1 TB e combinarli in una singola partizione per ripristinare il database nella macchina virtuale.
  • Se le dimensioni dei database di raccolta sono superiori a 1 TB, è consigliabile usare un'unità SSD sia per il database temporaneo che per il database di raccolta. Prendere in considerazione anche l'uso di macchine virtuali di dimensioni maggiori con 16 CPU virtuali (vCPU) e 128 GB di RAM.
  • Per raggiungere il computer, è necessario disporre di un indirizzo IP pubblico per il servizio.

Limitare l'accesso solo agli indirizzi IP di Azure DevOps Services

Per altri dettagli, vedere la pagina Limitare l'accesso agli indirizzi IP di Azure DevOps Services.

Ripristinare il database nella macchina virtuale

Dopo aver configurato e configurato una macchina virtuale di Azure, è necessario eseguire il backup scollegato dall'istanza di Azure DevOps Server alla macchina virtuale di Azure. Azure offre diversi metodi documentati per eseguire questa attività. Il database di raccolta deve essere ripristinato nell'istanza di SQL e non richiede l'installazione di Azure DevOps Server nella macchina virtuale.

Configurare la raccolta per l'importazione

Dopo aver ripristinato il database di raccolta nella macchina virtuale di Azure, configurare un account di accesso SQL per consentire ad Azure DevOps Services di connettersi al database per importare i dati. Questo account di accesso consente solo l'accesso in lettura a un singolo database.

Per iniziare, aprire SQL Server Management Studio nella macchina virtuale e quindi aprire una nuova finestra di query sul database da importare.

Impostare il ripristino del database su semplice:

ALTER DATABASE [<Database name>] SET RECOVERY SIMPLE;

Creare un account di accesso SQL per il database e assegnare l'account di accesso "TF edizione Standard XECROLE":

USE [<database name>]
CREATE LOGIN <pick a username> WITH PASSWORD = '<pick a password>'
CREATE USER <username> FOR LOGIN <username> WITH DEFAULT_SCHEMA=[dbo]
EXEC sp_addrolemember @rolename='TFSEXECROLE', @membername='<username>'

Dopo l'esempio di Fabrikam, i due comandi SQL saranno:

ALTER DATABASE [Foo] SET RECOVERY SIMPLE;

USE [Foo]
CREATE LOGIN fabrikam WITH PASSWORD = 'fabrikamimport1!'
CREATE USER fabrikam FOR LOGIN fabrikam WITH DEFAULT_SCHEMA=[dbo]
EXEC sp_addrolemember @rolename='TFSEXECROLE', @membername='fabrikam'

Nota

Assicurarsi di abilitare SQL Server e autenticazione di Windows modalità in SQL Server Management Studio nella macchina virtuale. Se non si abilita la modalità di autenticazione, l'importazione avrà esito negativo.

Configurare il file di specifica di importazione per la macchina virtuale di destinazione

Aggiornare il file di specifica di importazione per includere informazioni su come connettersi all'istanza di SQL Server. Aprire il file di specifica di importazione e apportare gli aggiornamenti seguenti:

  1. Rimuovere il parametro DACPAC dall'oggetto file di origine.

    La specifica di importazione prima della modifica è illustrata nel codice seguente:

    Screenshot della specifica di importazione prima della modifica.

    La specifica di importazione dopo la modifica è illustrata nel codice seguente:

    Screenshot della specifica di importazione dopo la modifica.

  2. Compilare i parametri obbligatori e aggiungere l'oggetto proprietà seguente all'interno dell'oggetto di origine nel file di specifica.

    "Properties":
    {
        "ConnectionString": "Data Source={SQL Azure VM Public IP};Initial Catalog={Database Name};Integrated Security=False;User ID={SQL Login Username};Password={SQL Login Password};Encrypt=True;TrustServerCertificate=True" 
    }
    

Dopo aver applicato le modifiche, nell'esempio Fabrikam la specifica di importazione sarà simile alla seguente:

Screenshot della specifica di importazione che fa riferimento a una macchina virtuale di SQL Azure.

La specifica di importazione è ora configurata per l'uso di una macchina virtuale di SQL Azure per l'importazione. Procedere con il resto dei passaggi di preparazione da importare in Azure DevOps Services. Al termine dell'importazione, assicurarsi di eliminare l'account di accesso SQL o ruotare la password. Microsoft non conserva le informazioni di accesso al termine dell'importazione.