Backup e ripristino

Questo articolo descrive come funzionano il backup e il ripristino dei dati per Parallel Data Warehouse (PDW). Utilizzare operazioni di backup e ripristino per il disaster recovery. Puoi anche usare backup e ripristino per copiare un database da un appliance all'altro.

Nozioni di base su backup e ripristino

Un backup di database PDW è una copia di un database di un'appliance, archiviata in un formato che consente di ripristinare il database originale in un'appliance.

Crea un backup del database PDW utilizzando l'istruzione BACKUP DATABASE T-SQL. Il backup è formattato per essere utilizzato con l'istruzione RESTORE DATABASE . Non puoi usare il backup per altri scopi. Puoi ripristinare il backup solo su un appliance con lo stesso numero o un numero maggiore di nodi di calcolo.

PDW usa la tecnologia di backup di SQL Server per eseguire il backup e il ripristino dei database dell'appliance. Le opzioni di backup di SQL Server sono preconfigurate per l'utilizzo della compressione dei backup. Non è possibile impostare opzioni di backup, ad esempio compressione, checksum, dimensioni del blocco e conteggio dei buffer.

Memorizza i backup del database su uno o più server di backup, che esistono nella tua rete cliente. PDW scrive un backup del database utente in parallelo direttamente dai nodi di calcolo a un unico server di backup. Ripristina in parallelo il backup del database utente direttamente dal server di backup ai nodi di calcolo.

Memorizza i backup sul server di backup come un insieme di file nel file system di Windows. Puoi solo ripristinare un backup del database PDW su PDW. Tuttavia, è possibile archiviare i backup del database dal server di backup a un'altra posizione usando i processi di backup dei file di Windows standard. Per altre informazioni sui server di backup, vedere Acquisire e configurare un server di backup.

Tipi di backup del database

Devi fare il backup di due tipi di dati: database utenti e database di sistema, come il database master. PDW non fa il backup del registro delle transazioni.

Un backup completo del database è un backup di un intero database PDW. Questo tipo è il tipo di backup predefinito. Un backup completo di un database utente comprende gli utenti del database e i ruoli del database. Un backup del database principale include informazioni di autenticazione.

Un backup differenziale contiene tutte le modifiche apportate dall'ultimo backup completo. Un backup differenziale richiede in genere meno tempo rispetto a un backup completo e può essere eseguito più di frequente. Quando più backup differenziali si basano sullo stesso backup completo, ciascun backup differenziale include tutte le modifiche apportate rispetto al backup completo originale.

Ad esempio, è possibile creare un backup completo settimanale e un backup differenziale giornaliero. Per ripristinare il database utente, devi ripristinare il backup completo più l'ultimo differenziale, se esiste.

Un backup differenziale è supportato solo per i database utente. Un backup del database master è sempre un backup completo.

Per fare il backup dell'intero appliance, devi fare il backup di tutti i database degli utenti e del database master.

Processo di backup del database

Il diagramma seguente illustra il flusso di dati durante un backup del database.

Processo di backup PDW

Il processo di backup funziona come segue:

  1. Invii un'istruzione BACKUPDATABASE T-SQL al nodo di controllo.

    • Il backup è completo o differenziale.
  2. Per i database utente, il nodo di controllo (MPP Engine) crea un piano di query distribuito per eseguire un backup parallelo del database.

  3. Ogni nodo coinvolto nel backup utilizza la funzionalità di backup di SQL Server per copiare il proprio file di backup sul server di backup.

    • Ogni nodo coinvolto copia un file di backup nel server di backup.

    • Il backup del database utente (completo o differenziale) include un backup della parte del database archiviata in ogni nodo di calcolo e un backup degli utenti e dei ruoli del database.

  4. L'appliance esegue il backup in parallelo utilizzando la rete InfiniBand.

    • PDW esegue ogni backup completo e differenziale in parallelo. Tuttavia, più backup del database non vengono eseguiti contemporaneamente. Ogni richiesta di backup deve attendere il completamento dei backup inviati in precedenza.

    • Un backup del database master fa solo il backup dei dati dal nodo di controllo. Questo tipo di backup viene eseguito in modo seriale.

  5. Un backup del database PDW è un gruppo di file salvati in una directory che risiede al di fuori dell'appliance. Specifichi il nome della directory specificando il percorso di rete e il nome della directory. La cartella non può essere un percorso locale e non può trovarsi sul dispositivo.

  6. Dopo che il backup è terminato, puoi usare il file system di Windows per copiare la directory di backup in un'altra posizione, se lo desideri.

    • Un backup può essere ripristinato solo in un'appliance PDW con un numero di nodi di calcolo uguale o maggiore.

    • Non puoi cambiare il nome del backup prima di effettuare un ripristino. Il nome della directory di backup deve corrispondere al nome originale del backup. Il nome originale del backup si trova nel file backup.xml all'interno della directory di backup. Per ripristinare un database in un nome diverso, è possibile specificare il nuovo nome nel comando di ripristino. Ad esempio: RESTORE DATABASE MyDB1 FROM DISK = ꞌ\\10.192.10.10\backups\MyDB2ꞌ.

Modalità di ripristino del database

Un ripristino completo del database ricrea il database PDW usando i dati nel backup del database. Il processo di ripristino del database ripristina prima un backup completo, e poi, opzionalmente, ripristina un backup differenziale. Il processo di ripristino del database include gli utenti del database e i ruoli del database.

Un ripristino della sola intestazione restituisce le informazioni di intestazione di un database. Non ripristina i dati sull'apparecchio.

Un ripristino del dispositivo è un ripristino dell'intero dispositivo. Questa operazione di ripristino include il ripristino di tutti i database utente e del database master.

Processo di ripristino

Il diagramma seguente illustra il flusso di dati durante un ripristino del database.

Processo di ripristino

Ripristino su un'appliance con lo stesso numero di nodi di calcolo

Durante il ripristino dei dati, l'appliance rileva il numero di nodi di calcolo nell'appliance di origine e nell'appliance di destinazione. Se entrambe le appliance hanno un numero uguale di nodi di calcolo, il processo di ripristino funziona come segue:

  1. Il backup del database da ripristinare è disponibile in una condivisione file di Windows in un server di backup non appliance. Per ottenere prestazioni ottimali, questo server è connesso alla rete InfiniBand dell'appliance.

  2. L'utente invia un'istruzione RESTORE DATABASE tsql al nodo Control.

    • Il ripristino è un ripristino completo o un ripristino dell'intestazione. Il ripristino completo ripristina un backup completo e quindi ripristina facoltativamente un backup differenziale.
  3. Il nodo Controllo (motore MPP) crea un piano di query distribuito per eseguire un ripristino parallelo del database.

    • Analytics Platform System (PDW) esegue il ripristino di un database utente in parallelo. Tuttavia, più backup e ripristini del database non vengono eseguiti contemporaneamente. Il motore MPP inserisce ogni istruzione di ripristino in una coda; deve attendere il completamento delle richieste di backup e ripristino inviate in precedenza.

    • Un ripristino del database master ripristina solo i dati nel nodo Di controllo; il ripristino viene eseguito in modo seriale.

    • Un ripristino delle informazioni sull'intestazione è un'operazione rapida e non ripristina i dati nei nodi di calcolo o di controllo. Il nodo Controllo restituisce invece i risultati come output della query.

  4. I file di backup vengono copiati nei nodi di calcolo corretti in parallelo, in genere sulla rete InfiniBand dell'appliance.

  5. Ogni nodo di calcolo ripristina la parte del database utente. Se uno dei ripristini non viene completato correttamente, tutti i database vengono rimossi e il ripristino viene completato in modo non riuscito.

Ripristino in un'appliance con un numero maggiore di nodi di calcolo

Il ripristino di un backup in un'appliance con un numero maggiore di nodi di calcolo aumenta la dimensione allocata al database proporzionalmente al numero di nodi di calcolo.

Ad esempio, quando si ripristina un database da 60 GB da un'appliance a 2 nodi (30 GB per nodo) in un'appliance a 6 nodi, SQL Server PDW crea un database da 180 GB (6 nodi con 30 GB per nodo) nell'appliance a 6 nodi. SQL Server PDW ripristina inizialmente il database in 2 nodi in modo che corrisponda alla configurazione di origine e quindi ridistribuisce i dati in tutti e 6 i nodi.

Dopo la ridistribuzione, ogni nodo di calcolo conterrà meno dati effettivi e più spazio disponibile rispetto a ogni nodo di calcolo nell'appliance di origine più piccola. Usare lo spazio aggiuntivo per l'aggiunta di altri dati al database. Se le dimensioni del database ripristinate sono maggiori di quelle necessarie, è possibile usare ALTER DATABASE per ridurre le dimensioni dei file di database.

Compito di backup e ripristino Descrzione
Preparare un server come server di backup. Acquisire e configurare un server di backup
Eseguire il backup di un database. BACKUP DATABASE
Ripristinare un database. RESTORE DATABASE