Configurare l'accelerazione integrata e l'offload

Si applica a: SQL Server 2022 (16.x)

Questo articolo illustra come configurare un'accelerazione integrata e l'offload con Intel® QuickAssist Technology (QAT) per SQL Server. Intel® QAT è una soluzione integrata di accelerazione e offload. Per altre informazioni, vedere Accelerazione integrata e offload.

Installare i driver

  1. Scaricare i driver.

    La versione minima della libreria dell'acceleratore QATzip supportata è 1.8.0-0010, ma è consigliabile installare sempre la versione più recente dal fornitore. I driver sono disponibili nella pagina di destinazione di Intel® Quick Assist Technology.

  2. Seguire le istruzioni del fornitore per installare i driver nel server.

  3. Riavviare il server dopo aver installato i driver.

Verificare i componenti installati

Se i driver sono installati, sono disponibili i file seguenti:

  • La libreria QATzip è disponibile all'indirizzo C:\Windows\system32\.
  • La libreria ISA-L installata con QATzip è disponibile all'indirizzo C:\Program Files\Intel\ISAL\*.

I percorsi precedenti si applicano sia alla distribuzione hardware che a quella solo software.

Abilitare l'offload hardware

Dopo aver installato i driver, configurare l'istanza del server.

  1. Impostare l'opzione di configurazione del server hardware offload enabled su 1 per abilitare tutti gli acceleratori di SQL Server. Per impostazione predefinita, questa impostazione è 0. Questa impostazione è un'opzione di configurazione avanzata. Per impostare questa impostazione, eseguire i comandi seguenti:

    sp_configure 'show advanced options', 1;
    GO
    RECONFIGURE
    GO
    
    sp_configure 'hardware offload enabled', 1;
    GO
    RECONFIGURE
    GO
    
  2. Arrestare e riavviare il servizio SQL Server.

    Nota

    Se l'opzione hardware offload enabled è uguale a 0, tutte le operazioni di offload e accelerazione sono disabilitate, tuttavia le configurazioni specifiche dell'acceleratore verranno mantenute.

  3. Configurare il server per l'uso dell'offload hardware per un acceleratore specifico. Eseguire ALTER SERVER CONFIGURATION per abilitare l'accelerazione hardware. Gli esempi seguenti impostano questa configurazione per Intel® QAT.

    Scegliere uno degli esempi seguenti, a. Abilitare l'offload hardware con il fallback software o b. Supporto software

    a. Abilitare l'offload hardware dell'acceleratore

    La configurazione della compressione hardware protegge la CPU host: la modalità hardware Intel® QAT è progettata per proteggere la CPU del sistema host sottostante. Questo metodo offre prestazioni ottimali quando il sistema sottostante si trova in carichi di lavoro più elevati.

    ALTER SERVER CONFIGURATION   
    SET HARDWARE_OFFLOAD = ON (ACCELERATOR = QAT);  
    

    Suggerimento

    Se il dispositivo hardware non riesce per qualsiasi motivo, l'acceleratore può eseguire normalmente il fallback alla modalità software.

    b. Forzare l'abilitazione della modalità software dell'acceleratore

    ALTER SERVER CONFIGURATION
    SET HARDWARE_OFFLOAD = ON (ACCELERATOR = QAT, MODE = SOFTWARE)
    

    Importante

    Le prestazioni dell'algoritmo QAT_DEFLATE in termini di modalità SOFTWARE e HARDWARE rispetto a MS_XPRESS variano in base a diversi fattori. La pressione del carico di lavoro del sistema host può essere in corso durante l'esecuzione del backup e la potenza di elaborazione e memoria disponibili del dispositivo hardware Intel® QuickAssist Technology (QAT) sono tutti fattori che potrebbero influire sulle prestazioni dell'algoritmo di compressione sfruttato.

  4. Riavviare l'istanza di SQL Server. È necessario riavviare l'istanza di SQL Server dopo aver eseguito un comando in SET HARDWARE_OFFLOAD = ....

  5. Per verificare la configurazione, eseguire:

    SELECT * FROM sys.dm_server_accelerator_status;
    GO
    

    I risultati della query identificano:

    • mode_desc: modalità NONE, SOFTWARE o HARDWARE
    • mode_reason_desc: motivo della modalità
    • accelerator_library_version: versione dell'acceleratore in modalità utente
    • accelerator_driver_version: versione dell'acceleratore in modalità Kernel

L'acceleratore è abilitato se la descrizione della modalità è SOFTWARE o HARDWARE. mode_reason_desc spiega perché il risultato è la modalità SOFTWARE o HARDWARE.

Se vengono trovati altri risultati, vedere sys.dm_server_accelerator_status (Transact-SQL) per la risoluzione dei problemi.

Disabilitare l'offload e l'accelerazione

L'esempio seguente disabilita l'offload hardware e l'accelerazione per un acceleratore Intel® QAT.

ALTER SERVER CONFIGURATION   
SET HARDWARE_OFFLOAD = OFF (ACCELERATOR = QAT);  

Operazione di backup

SQL Server 2022 (16.x) introduce un'estensione ALGORITHM per la compressione dei backup per BACKUP (Transact-SQL).

Il comando T-SQL BACKUP WITH COMPRESSION è stato esteso per consentire un algoritmo di compressione di backup specificato. Per l'accelerazione della compressione dei backup, Intel® QAT usa un algoritmo denominato QAT_DEFLATE. Se i driver sono disponibili e la configurazione di SQL Server è stata completata correttamente come illustrato nei passaggi descritti in precedenza, WITH COMPRESSION avvia un backup compresso intel® QAT.

Nota

L'algoritmo di compressione standard è MS_XPRESS ed è l'opzione di compressione predefinita.

Usare il comando ALGORITHM per specificare uno di questi due algoritmi (MS_XPRESS, QAT_DEFLATE) per la compressione dei backup.

L'esempio seguente esegue la compressione dei backup usando l'accelerazione hardware Intel® QAT.

BACKUP DATABASE <database> TO DISK = '<path>\<file>.bak'  
WITH COMPRESSION (ALGORITHM = QAT_DEFLATE); 

Una delle istruzioni seguenti usa l'opzione di compressione MS_XPRESS predefinita:

BACKUP DATABASE <database> TO DISK = '<path>\<file>.bak'  
WITH COMPRESSION (ALGORITHM = MS_XPRESS); 
BACKUP DATABASE <database> TO DISK = '<path>\<file>.bak'  
WITH COMPRESSION; 

La tabella seguente fornisce un riepilogo di BACKUP DATABASE con le opzioni COMPRESSION che iniziano con SQL Server 2022 (16.x).

Backup - comando Descrizione
BACKUP DATABASE <database_name> TO DISK Eseguire il backup senza compressione o compressione a seconda dell'impostazione predefinita.
BACKUP DATABASE <database_name> TO DISK WITH COMPRESSION Eseguire il backup usando l'impostazione predefinita in sp_configure.
BACKUP DATABASE <database_name> TO DISK WITH COMPRESSION (ALGORITHM = MS_XPRESS) Eseguire il backup con compressione usando l'algoritmo MS_XPRESS.
BACKUP DATABASE <database_name> TO  DISK WITH COMPRESSION (ALGORITHM = QAT_DEFLATE) Eseguire il backup con la compressione usando il catalogo QATzip.

Nota

Gli esempi nella tabella precedente specificano DISK come destinazione. La destinazione effettiva può essere DISK, TAPE o URL.

Configurazioni predefinite

È possibile regolare il comportamento predefinito della compressione dei backup di SQL Server. È possibile modificare la configurazione predefinita del server e altre opzioni. È possibile abilitare o disabilitare l'accelerazione hardware, è possibile abilitare la compressione dei backup come impostazione predefinita ed è anche possibile modificare l'algoritmo di compressione predefinito come usando sp_configure.

Lo stato di queste opzioni si riflette in sys.configurations (Transact-SQL). Visualizzare la configurazione della configurazione dell'offload e dell'accelerazione congestione dinamica sys.dm_server_accelerator_status (Transact-SQL).

La configurazione backup compression algorithm modifica l'algoritmo di compressione del backup predefinito per la compressione dei backup. Se si modifica questa opzione, l'algoritmo predefinito verrà modificato quando l'algoritmo non viene specificato nel comando BACKUP ... WITH COMPRESSION.

È possibile visualizzare le impostazioni predefinite correnti per la compressione dei backup in sys.configurations (Transact-SQL), ad esempio:

SELECT * FROM sys.configurations    
WHERE name = 'backup compression algorithm'; 
SELECT * FROM sys.configurations    
WHERE name = 'backup compression default'; 

Per modificare queste impostazioni di configurazione, usare la stored procedure di sistema sp_configure (Transact-SQL). Ad esempio:

EXEC sp_configure 'backup compression default', 1;   
RECONFIGURE; 

Per rendere effettiva questa modifica non è necessario riavviare SQL Server.

La configurazione backup compression algorithm imposta l'algoritmo di compressione predefinito. Per impostare Intel® QAT come algoritmo di compressione predefinito per SQL Server, usare lo script seguente:

EXEC sp_configure 'backup compression algorithm', 2;   
RECONFIGURE; 

Per ripristinare l'algoritmo di compressione predefinito, usare lo script seguente:

EXEC sp_configure 'backup compression algorithm', 1;   
RECONFIGURE; 

Per rendere effettiva questa modifica non è necessario riavviare SQL Server.

Operazioni di ripristino

I metadati del file di backup identificano se il backup del database è compresso e quale algoritmo è stato usato per comprimere il backup.

Usare RESTORE HEADERONLY per visualizzare l'algoritmo di compressione. Vedere Istruzioni RESTORE - HEADERONLY (Transact-SQL).

Nota

Se l'opzione di configurazione HARDWARE_OFFLOAD dell'ambito server non è abilitata e/o i driver Intel® QAT non sono stati installati, SQL Server restituisce l'errore 17441, (Msg 17441, Level 16, State 1, Line 175 This operation requires Intel(R) QuickAssist Technology (QAT) libraries to be loaded.)

Per ripristinare un backup compresso Intel® QAT, è necessario caricare gli assembly corretti nell'istanza di SQL Server che avvia l'operazione di ripristino. Non è necessario disporre dell'hardware QAT per ripristinare i backup compressi QAT. Tuttavia, per ripristinare i backup QAT è necessario quanto segue:

  • Il driver QAT deve essere installato nel computer
  • L'offload hardware deve essere abilitato (sp_configure 'hardware offload enabled', 1;)
  • La configurazione dell'istanza di SQL Server deve avere ALTER SERVER CONFIGURATION SET HARDWARE_OFFLOAD ON (ACCELERATOR = QAT) impostato come descritto in precedenza.

I backup QAT eseguiti in modalità HARDWARE possono essere ripristinati in modalità SOFTWARE e viceversa.

Cronologia dei backup

È possibile visualizzare l'algoritmo di compressione e la cronologia di tutte le operazioni di backup e ripristino di SQL Server in un'istanza nella tabella di sistema backupset (Transact-SQL). A questa tabella di sistema è stata aggiunta una nuova colonna per SQL Server 2022 (16.x), compression_algorithm, che ad esempio indica MS_EXPRESS o QAT_DEFLATE.

Avvio del servizio - dopo la configurazione

Dopo aver configurato l'accelerazione integrata e l'offload, ogni volta che viene avviato il servizio SQL Server, il processo di SQL Server cerca il catalogo software dello spazio utente necessario che si interfaccia con l'API del driver di periferica di accelerazione hardware e carica gli assembly software, se disponibili. Per l'acceleratore Intel® QAT, la libreria di spazi utente è QATzip. Questa libreria offre numerose funzionalità. Il catalogo software QATzip è un'API software dello spazio utente in grado di interfacciarsi con l'API del driver del kernel QAT. Viene usato principalmente dalle applicazioni che cercano di accelerare la compressione e la decompressione dei file usando uno o più dispositivi Intel® QAT.

Nel caso del sistema operativo Windows, è disponibile una libreria software gratuita per QATzip, Intel Intelligent Storage Library (ISA-L). Questo funge da meccanismo di fallback software per QATzip in caso di errore hardware e un'opzione basata su software quando l'hardware non è disponibile.

Nota

La non disponibilità di un dispositivo hardware Intel® QAT non impedisce alle istanze di eseguire operazioni di backup o ripristino usando l'algoritmo QAT_DEFLATE. Se il dispositivo fisico non è disponibile, l'algoritmo software verrà usato come soluzione di fallback.

Passaggi successivi