Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT

Oggi vi presenteremo le caratteristiche dell'utilizzo di SQL Server 2019 con il sistema di archiviazione Unity XT, fornendo anche raccomandazioni per la virtualizzazione di SQL Server tramite la tecnologia VMware, e per la configurazione e gestione dei componenti fondamentali dell'infrastruttura Dell EMC.

Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT
Nel 2017, Dell EMC e VMware hanno pubblicato i risultati di un sondaggio sulle tendenze e l'evoluzione di SQL Server — "Trasformazione di SQL Server: verso flessibilità e resilienza" (SQL Server Transformation: Toward Agility and Resiliency), che ha utilizzato le esperienze della comunità dei membri della Professional Association of SQL Server (PASS). I risultati mostrano che gli ambienti di database SQL Server stanno crescendo sia in dimensioni che in complessità, a causa dell'aumento dei volumi di dati e delle nuove esigenze aziendali. I database SQL Server sono attualmente implementati in molte aziende, garantendo il funzionamento di applicazioni critiche e spesso fungendo da base per la trasformazione digitale. 

Nel tempo trascorso dall'ultima indagine, Microsoft ha rilasciato la nuova generazione di DBMS: SQL Server 2019. Oltre al miglioramento delle funzionalità principali del motore relazionale e dello storage, sono stati introdotti nuovi servizi e funzionalità. Ad esempio, SQL Server 2019 include il supporto per il workload di big data utilizzando Apache Spark e il file system distribuito Hadoop (Hadoop Distributed File System, HDFS).

Alleanza Dell EMC e Microsoft

Dell EMC e Microsoft collaborano da tempo nello sviluppo di soluzioni per SQL Server. Un'implementazione di successo di una piattaforma di database complessa come Microsoft SQL Server richiede il coordinamento delle funzionalità software con l'infrastruttura IT sottostante. Questa infrastruttura comprende capacità di elaborazione del processore, risorse di memoria, sistemi di storage e servizi di rete. Dell EMC offre un'infrastruttura per la piattaforma SQL Server adatta a qualsiasi tipo di workload e applicazioni.

La gamma di server Dell EMC PowerEdge offre molteplici configurazioni di processori e memoria. Queste configurazioni sono adatte per una vasta gamma di carichi di lavoro, dalle piccole applicazioni aziendali ai sistemi critici più grandi, come la pianificazione delle risorse aziendali (ERP), i data warehouse, l'analisi avanzata, l'e-commerce e altro ancora. La gamma di sistemi di archiviazione è progettata per gestire dati strutturati e non strutturati. 

I clienti che implementano SQL Server 2019 con l'infrastruttura Dell EMC possono gestire dati strutturati e non strutturati utilizzando SQL Server e Apache Spark. SQL Server supporta inoltre combinazioni di tecnologie di accesso ai client, comunicazioni tra server e comunicazioni 'server-storage'. Il concetto di Dell EMC si basa su un modello disaggregato, che offre un ecosistema aperto. Le organizzazioni possono scegliere tra un'ampia gamma di applicazioni di rete standard del settore, sistemi operativi e piattaforme hardware. Questo approccio garantisce il massimo controllo sulle tecnologie e le architetture, portando a significativi risparmi e flessibilità.

VMware offre virtualizzazione di tutti i componenti critici dell'infrastruttura necessari a SQL Server per garantire elevate prestazioni e coerenza operativa. Oltre al cloud privato, VMware propone anche modelli ibridi per i carichi di lavoro, che abbracciano architetture cloud sia private che pubbliche. 

Molte organizzazioni ricorrono alla virtualizzazione per ridurre i costi dell'infrastruttura, garantire alta disponibilità e semplificare il recupero in caso di disastro. Il 94% degli esperti di SQL Server intervistati segnala un certo livello di virtualizzazione nel proprio ambiente. Il 70% di coloro che utilizzano la virtualizzazione ha scelto VMware. Il 60% ha un livello di virtualizzazione di SQL Server pari o superiore al 75%. Inoltre, i risultati dell'indagine dimostrano chiaramente che alta disponibilità e recupero in caso di disastro, realizzati a livello di virtualizzazione, sono stati fattori determinanti nella decisione di virtualizzare i database SQL Server.

Nuove funzionalità di SQL Server 2019

La piattaforma di database SQL Server 2019 comprende un'ampia varietà di tecnologie, funzionalità e servizi che supportano applicazioni critiche, come analisi, database aziendali, business intelligence (BI) e elaborazione di transazioni scalabile (OLTP). La piattaforma SQL Server ha acquisito funzionalità per la gestione dell'integrazione dei dati, data warehousing, reporting e analisi avanzata, nonché funzionalità di replica e gestione di tipi di dati semi-strutturati. Naturalmente, non tutti i clienti o applicazioni richiedono tutte queste funzionalità. Inoltre, in molti casi è preferibile separare i servizi SQL Server tramite virtualizzazione. 

Oggi, le aziende spesso devono affidarsi a grandi volumi di dati provenienti da un'ampia varietà di set di dati in continua espansione. Con SQL Server 2019, è possibile ottenere informazioni preziose praticamente in tempo reale da tutti i dati. I cluster di SQL Server 2019 offrono un ambiente completo per lavorare con grandi set di dati, inclusi l'uso del machine learning e le capacità di intelligenza artificiale. Le principali nuove funzioni e gli aggiornamenti in SQL Server 2019 sono elencati nel documento Microsoft.

Sistema di storage di fascia media Dell EMC Unity XT

La serie di storage DELL EMC Unity è stata lanciata quasi tre anni fa e da allora sono state vendute oltre 40.000 unità. I clienti hanno apprezzato questo array di fascia media per la sua semplicità, prestazioni ed economicità. Le piattaforme di fascia media Dell EMC Unity XT sono soluzioni di storage condiviso che garantiscono bassa latenza, alta larghezza di banda e costi di gestione ridotti per i carichi di lavoro di SQL Server. Tutti i sistemi Unity XT utilizzano un'architettura a doppio processore (storage processors, SP) per gestire l'input/output e svolgere operazioni sui dati in modalità attiva/attiva. Nella Unity XT dual SP, un completo collegamento interno SAS da 12 Gbps e un'architettura multi-core brevettata sono utilizzati per garantire alte prestazioni ed efficienza. Gli array disco consentono di scalare la capacità di storage con scaffali aggiuntivi.

Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT
Nel Dell EMC Unity XT, la nuova generazione di array (ibridi e completamente flash), le prestazioni sono notevolmente aumentate, l'efficienza è migliorata e sono state aggiunte nuove funzionalità e servizi per ambienti multi-cloud. 

L'architettura Unity XT consente di elaborare i dati simultaneamente, riducendo la loro volumetria e supportando servizi come la replica senza compromettere le prestazioni delle applicazioni. Rispetto alla generazione precedente, le prestazioni dello storage Dell EMC Unity XT sono raddoppiate, e il tempo di risposta è diminuito del 75%. E naturalmente, Dell EMC Unity supporta lo standard NVMe.

Le soluzioni di storage con unità NVMe mostrano le loro migliori caratteristiche in applicazioni sensibili alla latenza. Ad esempio, in applicazioni come enormi database, NVMe offre bassa latenza e alte velocità di trasferimento dati. La riduzione delle latenze e l'aumento del parallelismo migliorano significativamente le prestazioni delle operazioni di lettura/scrittura. Non sorprende che, secondo le previsioni di IDC, entro il 2021 gli array flash con connessione NVMe e NVMe-oF (NVMe over Fabric) costituiranno circa la metà di tutti i ricavi provenienti da sistemi di archiviazione esterna nel mondo. 

L'efficienza della memorizzazione è migliorata dagli algoritmi di compressione dei dati. Il Dell EMC Unity XT può ridurre il volume dei dati fino a cinque volte. Un altro indicatore importante è l'efficienza complessiva del sistema. Il Dell EMC Unity XT utilizza l'85% della capacità di sistema. La compressione e la deduplicazione vengono eseguite in modalità inline, a livello dei controller. I dati sono conservati in forma compressa. Il sistema automatizza anche la gestione delle istantanee dei dati.

I flash array Unity, semplici da usare e con accesso unificato (sia blocco che file), offrono tempi di risposta costanti, si integrano con i servizi di archiviazione cloud e supportano l'upgrade senza migrazione dei dati. Nella configurazione base, questo sistema di archiviazione versatile è installato in 30 minuti.

La tecnologia di archiviazione dei dati chiamata "pool dinamici" consente la transizione da una capacità statica a una dinamica, offrendo una grande flessibilità operativa e semplicità nell'aumento della capacità del sistema. I pool dinamici risparmiano capacità e budget e richiedono meno tempo per la ristrutturazione. L'espansione della capacità e delle prestazioni del Dell EMC Unity non richiede migrazione dei dati. 

Molte aziende oggi utilizzano, insieme alla propria infrastruttura locale, diversi servizi cloud pubblici. Dell EMC Unity XT può funzionare come componente dell'ambiente cloud di Dell Technologies Cloud. Questo sistema di archiviazione può essere utilizzato nel cloud pubblico e per trasferire dati nel cloud privato. Inoltre, lo storage Dell EMC Unity XT è disponibile con il modello "as a service". È uno dei servizi di storage cloud di Dell EMC Cloud Storage Services.
 
Le soluzioni di archiviazione cloud stanno guadagnando sempre più popolarità, poiché consentono di aumentare il ritorno sugli investimenti riducendo i costi dell'infrastruttura. I servizi di archiviazione cloud Cloud Storage Services espandono i data center dei clienti verso il cloud, fornendo storage Dell EMC (direttamente connesso alle risorse del cloud pubblico) come servizio. I fornitori esterni possono garantire connessioni ad alta velocità (con bassa latenza) dal cloud pubblico direttamente ai sistemi Dell EMC Unity, PowerMax e Isilon nel data center del cliente.

La famiglia Unity XT comprende i sistemi Unity XT All-Flash, Unity XT Hybrid, UnityVSA e Unity Cloud Edition.
 

Array ibridi e flash unificati 

Le sistemi di archiviazione Unity XT Hybrid e Unity XT All-Flash basati su processori Intel realizzano un'architettura integrata per accesso a blocchi, file e volumi VMware VVols, supportando i protocolli di archiviazione di rete (NAS), iSCSI e Fibre Channel (FC). Le piattaforme Unity XT Hybrid e Unity XT All-Flash sono pronte per l'uso con unità NVMe.

I sistemi ibridi Unity XT supportano il funzionamento in ambienti multi-cloud. Il supporto per ambienti multi-cloud significa espandere il sistema di archiviazione verso il cloud o distribuire nel cloud con flessibili opzioni di utilizzo delle risorse. Gli archivi multi-cloud sono progettati per garantire mobilità e portabilità dei dati tra più piattaforme cloud, sia private che pubbliche. Questo influenza non solo i processi di movimentazione dei dati, ma anche l'organizzazione dell'accesso delle applicazioni ai dati in più cloud pubblici.

Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT
Questi array ibridi offrono le seguenti funzionalità:

  • Scalabilità fino a 16 PB di capacità grezza.
  • Funzionalità integrate di riduzione del volume dei dati per tutti i pool flash.
  • Installazione e configurazione rapide (in media richiedono 25 minuti).

Le tecnologie degli SSD stanno evolvendo rapidamente, e nei prossimi anni sul mercato arriveranno nuovi prodotti rivoluzionari. Nel frattempo, le aziende continueranno a sostituire i tradizionali dischi HDD con SSD per migliorare le prestazioni, semplificare la gestione e risparmiare energia. Le nuove generazioni di array flash saranno caratterizzate da strumenti di automazione dello storage più avanzati, integrazione con il cloud pubblico e protezione dei dati integrata. 

I sistemi Unity XT All-Flash offrono elevate velocità, efficienza e supporto per più cloud. Le loro caratteristiche includono:

  • Prestazioni raddoppiate.
  • Riduzione del volume dei dati fino a 7:1.
  • Installazione e configurazione rapide (il processo richiede meno di 30 minuti).

 UnityVSA

Il sistema UnityVSA è uno storage definito dal software per ambienti virtuali VMware ESXi, utilizzando capacità di archiviazione server, condivisa o cloud. UnityVSA HA, una configurazione con due storage UnityVSA, offre una robustezza aggiuntiva. Lo storage UnityVSA offre:

  • Fino a 50 TB di capacità di storage unificato completamente funzionale.
  • Compatibilità con i sistemi e le funzionalità di Unity XT.
  • Supporto per sistemi ad alta disponibilità (UnityVSA HA).
  • Connessione come NAS e iSCSI.
  • Replica dei dati da altre piattaforme Unity XT.

Unity Cloud Edition

Per la sincronizzazione dei file e le operazioni di disaster recovery, la famiglia Unity XT include la versione Unity Cloud Edition, che offre:

  • Funzionalità di archiviazione complete utilizzando un'SAN definita dal software (SDS) distribuita nel cloud.
  • Implementazione semplice di archiviazione a blocchi e file tramite VMware Cloud su AWS.
  • Supporto per il disaster recovery, inclusi test e analisi dei dati.

Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT

Unity XT All Flash per SQL Server

Nel rapporto Unisphere Research del 2017 "Trasformazione di SQL Server: sulla strada verso flessibilità e resilienza" (SQL Server Transformation: Toward Agility and Resiliency) il 22% degli intervistati ha riferito di utilizzare la tecnologia di archiviazione flash in produzione (16%) o di pianificarlo (6%). Il 30% utilizza array ibridi che includono memoria flash. Il 13% utilizza array flash a connessione diretta. Il 13% effettua backup di database SQL Server su archiviazione flash.

Un'implementazione così rapida degli storage flash per l'uso con SQL Server significa che i sistemi Unity XT All-Flash sono particolarmente adatti per sviluppatori e amministratori di SQL Server. I sistemi Unity XT All-Flash offrono agli sviluppatori e agli amministratori di SQL Server capacità e prestazioni superiori a quelle delle tipiche reti di archiviazione (SAN).

Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT
I sistemi Unity XT All-Flash, pronti per l'implementazione NVMe (per prestazioni ancora più elevate e bassa latenza), hanno un form factor 2U, supportano processori dual-core e due controllori in modalità attiva/attiva.

Modelli Unity XT All-Flash

Unity XT 

Processori 

Memoria (per processore)

Numero massimo di unità

Capacità 'grezza' massima (PB) 

380F 

1 Intel E5-2603 v4 
6c/1.7 GHz

64 

500 

2.4 

480F 

2 Intel Xeon Silver 
4108 8c/1.8 GHz 

96 

750 

4.0 

680F 

2 Intel Xeon Silver 
4116 12c/2.1 GHz

192 

1,000 

8.0 

880F 

2 Intel Xeon Gold 6130 
16c/2.1 GHz

384 

1,500 

16.0 

Ulteriori dettagli possono essere trovati nelle specifiche del sistema (Dell EMC Unity XT Storage Series Specification Sheet).

Pool di archiviazione

Molti professionisti che lavorano con SQL Server sanno che tutti i moderni array di storage offrono la possibilità di raggruppare i dischi in unità di storage più grandi con un livello fisso di protezione RAID. Gruppi separati di dischi con protezione RAID sono i tradizionali pool di storage. Mentre i sistemi ibridi Unity XT supportano solo i pool standard, gli array Unity XT All-Flash offrono anche pool di storage dinamici. Nei pool di storage dinamici, la protezione RAID si applica agli extent dei dischi, ovvero a unità di storage più piccole rispetto a un disco completo. I pool dinamici offrono maggiore flessibilità nella gestione e nell'espansione dei pool di dischi. 

Dell EMC fornisce raccomandazioni per la gestione dei pool di storage per ottenere le massime prestazioni con la minima complessità. Ad esempio, si raccomanda di ridurre il numero di pool di storage Unity XT per semplificare e aumentare la flessibilità. Tuttavia, configurare pool di storage aggiuntivi può essere molto vantaggioso in alcuni casi, inclusi quando è necessario:

  • Supporta carichi di lavoro diversi con profili di input/output differenti.
  • Attributi risorse per raggiungere specifici parametri di prestazione.
  • Assegnare risorse dedicate per la multiutenza.
  • Creare domini più piccoli per evitare guasti.

Volumi di archiviazione (LUN)

Come trovare un compromesso tra gestione e flessibilità nella scelta del numero di volumi in un array? Per la massima flessibilità in Unity con SQL Server, si raccomanda di creare volumi per ogni file di database. In pratica, la maggior parte delle organizzazioni adotta un approccio stratificato, dove i database critici ottengono la massima flessibilità, mentre i file di database meno importanti vengono raggruppati su un numero minore di volumi più grandi. È consigliabile esaminare tutti i requisiti dei database e delle relative applicazioni, poiché le tecnologie di protezione dei dati e monitoraggio dipendono dall'isolamento e dalla collocazione dei file.

Gestire volumi multipli può spesso risultare complesso, specialmente negli ambienti virtuali. Gli ambienti virtualizzati di SQL Server sono un ottimo esempio di quando può avere senso ospitare diversi tipi di file su un unico volume. L'amministratore del database o l'amministratore dello storage (o entrambi) devono trovare il giusto equilibrio tra flessibilità e facilità di gestione nella determinazione del numero di volumi da creare.

Archiviazione file

I server NAS ospitano i file system sulla piattaforma di archiviazione Unity XT. I file system possono essere accessibili tramite i protocolli SMB o NFS, e grazie al file system multi-protocollo è possibile utilizzare entrambi i protocolli contemporaneamente. Per connettere l'host a file system SMB, NFS e multi-protocollo, così come ai dati VMware NFS e ai volumi virtuali VMware, i server NAS utilizzano interfacce virtuali. I file system e le interfacce virtuali sono isolati all'interno dello stesso server NAS, consentendo l'uso di più server NAS per la multi-tenancy. I server NAS attivano automaticamente il failover in caso di guasto, se il processore di archiviazione non funziona. Anche i file system associati passano al failover in caso di guasto.

SQL Server 2012 (11.x) e versioni successive supportano il protocollo Server Message Block (SMB) 3.0, che consente la condivisione di file di rete per l'archiviazione. Sia per l'installazione autonoma che per un cluster ad alta disponibilità, puoi installare i database di sistema (master, model, msdb e tempdb) e i database utente del Database Engine con l'opzione di archiviazione SMB. L'uso dell'archiviazione SMB è una buona scelta quando si utilizzano i gruppi di disponibilità Always On, poiché per una risorsa condivisa è necessario avere accesso a una risorsa di rete ad alta disponibilità.

La creazione di risorse condivise SMB per il deployment di SQL Server con Unity XT è un processo semplice in tre fasi: è necessario creare un server NAS, un file system e una risorsa SMB condivisa. Il software Dell EMC Unisphere Storage Management include un'utilità di impostazione guidata che aiuterà a portare a termine questo processo. Tuttavia, quando si eseguono carichi di lavoro di SQL Server su risorse condivise SMB, è importante considerare alcuni aspetti cruciali che non riguardano necessariamente l'uso delle risorse condivise SMB. Microsoft ha stilato un elenco di considerazioni relative all'installazione e alla sicurezza, insieme ai problemi noti al momento; per ulteriori dettagli, consultare la sezione 'Installazione di SQL Server con risorse di file SMB' nei documenti Microsoft.

Snapshot dei dati

I dati sono diventati la risorsa più importante per le aziende, e oggi gli ambienti critici richiedono non solo backup. È necessario garantire che le applicazioni siano sempre online, con operazioni e aggiornamenti senza interruzioni. Questi ambienti richiedono anche elevate prestazioni e disponibilità dei dati grazie a opzioni come la replicazione locale degli snapshot e la replicazione remota.

L'array di storage Unity XT offre la funzionalità di snapshot per blocchi e file, utilizzando flussi di lavoro, operazioni e architettura comuni. La metodologia di snapshot di Unity fornisce un modo semplice ed efficace per proteggere i dati. Gli snapshot rendono il ripristino dei dati più facile: è possibile ripristinare a uno snapshot precedente o copiare dati selezionati da uno snapshot precedente. Nella tabella seguente sono indicati i termini di conservazione degli snapshot per i sistemi Unity XT.

Storage locale e remoto degli snapshot dei dati

Tipo di snapshot

CLI
UI
REST

Manuale 

Programmato 

Manuale 

Programmato 

Manuale 

Programmato 

Locale 

1 anno 

1 anno

5 anni 

4 settimane

100 anni

Senza limiti

Remoto 

5 anni

255 settimane 

5 anni

255 settimane

5 anni

255 settimane

Gli snapshot non sono una sostituzione diretta di altri metodi di protezione dei dati, come il backup. Possono solo integrare il backup tradizionale come prima linea di difesa per scenari con un RTO basso.

La funzione di istantanee Dell EMC Unity include la riduzione del volume dei dati e una deduplicazione avanzata. Le istantanee beneficiano anche del risparmio di spazio ottenuto nella risorsa di archiviazione originale. Quando crei un'istantanea di una risorsa di archiviazione con funzionalità di riduzione del volume dei dati, i dati nella risorsa possono essere compressi o deduplicati.

Ecco alcune osservazioni relative al ripristino del database quando si utilizzano le istantanee con i database SQL Server:

  • Tutti i componenti del database SQL Server devono essere protetti come un insieme di dati. Quando i file di dati e dei log si trovano su LUN diversi, questi LUN devono far parte di un gruppo consistente. Il gruppo consistente garantisce che l'istantanea venga creata contemporaneamente su tutti i LUN del gruppo. Quando i file di dati e dei log si trovano su più risorse di file condivisi SMB, le risorse condivise devono trovarsi all'interno dello stesso file system.
  • Durante il ripristino di un database SQL Server da uno snapshot basato su blocchi, se l'istanza di SQL Server deve rimanere connessa, utilizzare la connessione all'host Unisphere. Per il ripristino basato su file, viene creato un ulteriore risorsa condivisa SMB utilizzando lo snapshot come sorgente. Dopo aver collegato i volumi, il database può essere collegato con un altro nome o può sostituire un database esistente ripristinato.

  • Quando si esegue il ripristino utilizzando il metodo Snapshot Restore in Unisphere, mettere l'istanza di SQL Server in modalità offline. SQL Server non è a conoscenza delle operazioni di ripristino. Mettere l'istanza in modalità offline garantisce che i volumi non vengano danneggiati durante le operazioni di scrittura nel database prima del ripristino. Una volta che l'istanza viene riavviata, il ripristino di emergenza di SQL Server porterà i database a uno stato coerente.
  • Consenti istantanee per più volumi di storage contemporaneamente e, prima di abilitare ulteriori istantanee, assicurati che il sistema sia in modalità operativa raccomandate durante il monitoraggio.

Automazione e pianificazione delle istantanee

Le istantanee in Unity XT possono essere automatizzate. Nel sistema di gestione dello storage Unisphere sono disponibili le seguenti opzioni di istantanee predefinite: protezione predefinita, protezione con un periodo di conservazione più breve e protezione con un periodo di conservazione più lungo. Ogni opzione crea istantanee quotidiane e le conserva per diversi periodi di tempo.

Puoi scegliere una (o entrambe) delle opzioni di pianificazione — ogni x ore (da 1 a 24) e quotidianamente / settimanalmente. La pianificazione quotidiana / settimanale delle istantanee consente di specificare un orario e giorni specifici per la creazione delle istantanee. Per ciascuna opzione selezionata è necessario impostare una politica di conservazione, che può essere configurata per l'eliminazione automatica o la conservazione temporanea.

Ulteriori informazioni sulle istantanee Unity – nel documentazione di Dell EMC Unity

Cloni sottili

Un clone sottile è una copia in lettura/scrittura accessibile di una risorsa di archiviazione a blocchi sottile, come un volume, un gruppo coerente o un archivio dati VMware VMFS, che condivide i blocchi con la risorsa genitore. I cloni sottili sono un ottimo modo per rappresentare rapidamente e in modo compatto le copie di un database di SQL Server, cosa che non può essere realizzata con gli strumenti tradizionali di SQL Server. Dopo che il clone sottile è stato presentato all'host, i volumi possono essere messi in modalità operativa (online), e il database sarà collegato utilizzando il metodo di collegamento DB in SQL Server.

Quando si utilizza la funzione di aggiornamento con i cloni sottili, disattivare (mettere offline) tutti i database presenti nel clone sottile. Questo deve essere fatto prima dell'operazione di aggiornamento. Se non si mettono i database in modalità offline prima di eseguire l'aggiornamento, ciò può portare a errori di incongruenza dei dati o risultati errati dei dati in SQL Server.

Replicazione dei dati

La replica è una funzione software che sincronizza i dati con un sistema remoto, sia nello stesso oggetto che in un'altra posizione. Le impostazioni di replica e configurazione di Unity consentono di scegliere il metodo più efficace per soddisfare i requisiti RTO/RPO per i database SQL Server, mantenendo un equilibrio tra prestazioni e larghezza di banda.

Quando si utilizza la replica Dell EMC Unity per proteggere i database SQL Server su più volumi, è consigliabile raggruppare tutti i dati e i volumi dei log di database in un'unica famiglia o sistema di file consistenti. La replica viene quindi configurata all'interno di quel gruppo o sistema di file e può includere volumi o risorse condivise di più database. I database che richiedono impostazioni di replica diverse devono trovarsi in LUN, gruppi consistenti o sistemi di file separati.

I cloni sottili sono compatibili sia con la replicazione sincrona che con quella asincrona. Quando un clone sottile viene replicato nella destinazione, diventa una copia completa del volume, di un gruppo consistente o di uno storage VMFS. Dopo la replicazione, il clone sottile è un volume completamente indipendente con le proprie impostazioni.

Microsoft SQL Server 2019 e le flash array Dell EMC Unity XT
Il processo di replicazione di un clone sottile tra i sistemi sorgente e di destinazione.

La replicazione del database tempdb non è necessaria, poiché il file viene ricostruito al riavvio di SQL Server e pertanto i metadati non corrispondono al metodo di altre istanze di SQL Server. Una selezione attenta dei volumi da replicare e del contenuto di questi volumi elimina il traffico di replicazione superfluo.

Gestione integrata della copia dei dati di Microsoft SQL Server

La maggior parte dei moderni prodotti di storage (inclusi tutti i prodotti Dell EMC) può creare copie "coerenti con il sistema operativo" di qualsiasi tipo di file attraverso:

  • Un ordine di scrittura coerente del sistema operativo a tutti i livelli — dall'host al dispositivo di archiviazione.
  • Raggruppamenti di volumi in modo che l'ordine di scrittura venga mantenuto per più file su volumi diversi.

Con la diffusione degli dispositivi di archiviazione scalabili, Microsoft ha sviluppato un'API per i fornitori di storage. Questa API consente ai fornitori di archiviazione di coordinare le proprie azioni con il software del database SQL Server per creare copie "coerenti con l'applicazione" tramite il servizio di shadow copy dei volumi (VSS). Queste copie simulano l'interazione tra SQL Server e il sistema operativo durante le operazioni pianificate e la chiusura di SQL Server. Tutti i buffer di scrittura vengono svuotati e le transazioni vengono sospese fino a quando tutti i dischi non sono aggiornati e coerenti a un determinato punto nel tempo, che è registrato nel log di SQL.

Il software Dell EMC AppSync, integrato con gli snapshot di Unity XT, semplifica e automatizza il processo di creazione, utilizzo e gestione delle copie di lavoro coerenti con l'applicazione. Questo software è progettato per essere utilizzato in scenari di gestione delle copie per il ripristino e il riutilizzo delle banche dati. 

Il software AppSync scopre automaticamente i database delle applicazioni, analizza la loro struttura e visualizza la struttura dei file attraverso i livelli di hardware o di virtualizzazione nello storage di base Unity XT. Gestisce tutte le azioni necessarie, dalla creazione e verifica di copie al montaggio di istantanee sul host di destinazione e all'avvio o ripristino del database. AppSync supporta e semplifica i flussi di lavoro di SQL Server, compresi gli aggiornamenti e il ripristino del database operativo.

Riduzione dei dati e deduplicazione avanzata

La famiglia di sistemi di storage Dell EMC Unity offre servizi multifunzionali e facili da usare per la riduzione dei dati. I risparmi vengono ottenuti non solo sulle risorse primarie di storage configurate, ma anche su snapshot e clone sottili di queste risorse. Gli snapshot e i clone sottili ereditano la configurazione per la riduzione dei dati dallo storage originale, aumentando il risparmio di capacità.

La funzione di riduzione del volume dei dati include attività di deduplicazione, compressione e rilevamento di blocchi vuoti, aumentando potenzialmente lo spazio utile di archiviazione per gli oggetti degli utenti e per uso interno. La funzione di riduzione del volume dei dati di Unity XT sostituisce la funzione di compressione in Unity OE 4.3 e versioni successive. La compressione è un algoritmo di riduzione dei dati che può diminuire la distribuzione fisica della capacità necessaria per conservare un insieme di dati.

I sistemi Unity XT forniscono anche una funzionalità avanzata di deduplicazione, attivabile se è attivata la riduzione del volume dei dati. La deduplicazione avanzata riduce la capacità necessaria per i dati degli utenti, mantenendo solo un numero ridotto di copie (spesso solo una copia) dei blocchi di dati di Unity. L'area di deduplicazione è un LUN. Tieni presente questo durante la scelta dello schema di archiviazione. Un numero inferiore di LUN porta a una migliore deduplicazione, ma un numero maggiore di LUN garantisce prestazioni elevate. 

Il risparmio di capacità grazie alla deduplicazione avanzata può fornire il massimo rendimento nella maggior parte degli ambienti, ma richiede anche l'uso delle risorse dei processori dell'array Unity. In OE 5.0, se abilitata, la deduplicazione avanzata deduplica qualsiasi blocco (compresso o non compresso). Maggiori informazioni sono disponibili nella documentazione Dell EMC.

Nella tabella seguente sono elencate le configurazioni supportate per la riduzione dei dati e la deduplicazione avanzata:

Riduzione dei dati in Unity (tutti i modelli) e supporto avanzato per la deduplicazione

Versione Unity OE 

Tecnologia 

Tipo di pool supportato 

Modelli supportati

4.3 / 4.4 

Riduzione del volume dei dati 

Pool flash — tradizionale o dinamico 

300, 400, 500, 600, 300F, 400F, 500F, 600F, 350F, 450F, 550F, 650F 

4.5 
 

Riduzione del volume dei dati 

300, 400, 500, 600, 300F, 400F, 500F, 600F, 350F, 450F, 550F, 650F 

Riduzione del volume dei dati e deduplicazione avanzata*

450F, 550F, 650F 


 

Riduzione del volume dei dati 

300, 400, 500, 600, 300F, 400F, 500F, 600F, 350F, 450F, 550F, 650F, 380, 480, 680, 880, 380F, 480F, 680F, 880F 

Riduzione dei dati e deduplicazione avanzata

450F, 550F, 650F, 380, 480, 680, 880, 380F, 480F, 680F, 880F

* La riduzione del volume dei dati è disabilitata per impostazione predefinita e deve essere attivata prima che la deduplicazione avanzata diventi un'opzione disponibile. Una volta attivata la riduzione del volume dei dati, la deduplicazione avanzata è disponibile, ma è disabilitata per impostazione predefinita.

Riduzione del volume dei dati in Unity e compressione dei dati in SQL Server

Il rilascio di SQL Server 2008 Enterprise Edition è stata la prima versione con proprie capacità di compressione dei dati. Durante la compressione a livello di righe e pagine, SQL Server 2008 utilizza la conoscenza del formato della tabella dell'interno database SQL Server per ridurre lo spazio occupato dagli oggetti del database. La riduzione dello spazio consente di memorizzare più righe in una pagina e più pagine nel pool dei buffer. Poiché i dati non salvati nel formato di pagina dati 8k, come ad esempio i dati fuori riga, come NVARCHAR (MAX), non utilizzeranno i metodi di compressione delle righe o delle pagine, Microsoft ha introdotto le funzioni Transact-SQL COMPRESS e DECOMPRESS. 

Queste funzioni utilizzano un approccio tradizionale per la compressione dei dati (algoritmo GZIP), che deve essere chiamato per ogni sezione di dati per comprimere o decomprimere.

La compressione di Unity XT, che non si applica esclusivamente a SQL Server, utilizza un algoritmo software per analizzare e comprimere i dati del sistema di archiviazione. A partire dal rilascio di Unity OE 4.1, la compressione dei dati di Unity è stata disponibile per i volumi di archiviazione a blocchi e per i dati VMFS nel pool di memoria flash. Con Unity OE 4.2, la compressione è stata resa disponibile anche per i file system e i dati NFS nei pool di archiviazione su memoria flash.

La scelta del metodo di compressione dei dati per SQL Server dipende da diversi fattori. Questi includono il tipo di contenuto del database, le risorse di CPU disponibili — sia nello storage che nei server del database, e le risorse di input/output necessarie per mantenere gli SLA. In generale, ci si può aspettare un ulteriore risparmio di spazio per i dati compressi tramite SQL Server; tuttavia, i dati compressi tramite la funzione di compressione TSQL utilizzando l'algoritmo GZIP probabilmente non otterranno un ulteriore significativo risparmio di spazio dalle funzioni di compressione di Unity XT, poiché la maggior parte dei vantaggi è ottenuta grazie al primo algoritmo universale applicato.

La compressione di Unity consente un risparmio di spazio se i dati sull'oggetto di archiviazione sono compressi almeno del 25%. Prima di abilitare la compressione per l'oggetto di archiviazione, verifica se contiene dati che possono essere compressi. Non attivare la compressione per l'oggetto di archiviazione se non porta a un risparmio di capacità. 

Quando si decide se utilizzare la riduzione del volume dei dati di Unity, la compressione a livello di database SQL Server o entrambi, considera quanto segue:

  • I dati scritti nel sistema Unity vengono convalidati dall'host dopo essere stati salvati nella cache di sistema. Tuttavia, il processo di compressione non viene avviato fino a quando la cache non viene svuotata.

  • Il risparmio ottenuto con la compressione non riguarda solo le risorse di archiviazione Unity XT, ma anche gli snapshot e i thin clone della risorsa.
  • Durante il processo di compressione, più blocchi vengono aggregati utilizzando un algoritmo di campionamento per determinare se i dati possono essere compressi. Se l'algoritmo di campionamento determina che si può ottenere solo un risparmio minimo, la compressione viene saltata e i dati vengono registrati nel pool.
  • Quando i dati vengono compressi prima di essere scritti su un supporto, il numero di operazioni su di essi viene notevolmente ridotto. Pertanto, la compressione aiuta a ridurre l'usura della memoria flash diminuendo il volume fisico dei dati scritti sullo storage.

Per ulteriori informazioni sulla compressione delle righe e delle pagine in SQL Server per tabelle e indici, consulta documenti Microsoft.

Ricorda che qualsiasi forma di compressione richiede risorse della CPU. A elevate esigenze di larghezza di banda, la compressione può avere un impatto significativo sulle prestazioni. Anche elevati tassi di scrittura delle workload OLAP possono ridurre i benefici della compressione per il database SQL Server.

Gli esperti di Dell EMC hanno studiato il risparmio potenziale utilizzando i reali coefficienti di riduzione dati nel sistema Unity. Il gruppo ha raccolto dati da macchine virtuali VMware, condivisioni di file, database SQL Server, macchine virtuali Microsoft Hyper-V, ecc.

I risultati dello studio hanno mostrato che la riduzione del volume del file di log di SQL Server è quasi dieci volte inferiore a quella del file di dati:

  • Volume del database = 1,49: 1 (32,96%)
  • Volume dei log = 12,9: 1 (92,25%)

Il database SQL Server è stato fornito con due volumi. I file del database sono archiviati in un volume, mentre i registri delle transazioni sono in un altro. L'uso della tecnologia di riduzione dei dati con i volumi del database può ridurre lo spazio di archiviazione; tuttavia, è necessario considerare l'impatto sulle prestazioni quando si decide se abilitare la deduplicazione sui volumi del database. Sebbene la riduzione effettiva del volume del database possa variare a seconda dei dati memorizzati, i risultati della ricerca hanno mostrato che lo spazio di archiviazione per i registri delle transazioni SQL Server può essere significativamente ridotto.

Migliori pratiche per la riduzione dei dati

Prima di abilitare la riduzione dei dati su un oggetto di archiviazione, considera le seguenti raccomandazioni:

  • Utilizza il monitoraggio del sistema di archiviazione per assicurarti che disponga delle risorse disponibili per supportare la riduzione dei dati.
  • Abilita la riduzione dei dati per più oggetti di archiviazione contemporaneamente. Prima di abilitarla su ulteriori oggetti di archiviazione, monitora il sistema per assicurati che sia in modalità operativa consigliata.
  • Nei modelli Unity XT x80F, la riduzione del volume dei dati consente di risparmiare capacità se i dati nel blocco di memorizzazione vengono compressi di almeno l'1%.

La riduzione del volume dei dati nei modelli precedenti Unity x80F, in esecuzione con OE 5.0, garantiva un risparmio se i dati erano comprimibili di almeno il 25%.

  • Prima di abilitare la riduzione del volume dei dati su un'unità di memorizzazione, verifica se l'oggetto contiene dati comprimibili. Tipi di dati specifici, come video, audio, immagini e dati binari, di solito offrono pochi vantaggi dalla compressione. Non abilitare la riduzione del volume dei dati su un'unità di memorizzazione se non ci sarà risparmio di spazio.
  • Valuta la possibilità di compressione selettiva dei volumi di dati che di solito si comprimono bene.

Virtualizzazione VMware

VMware vSphere è una piattaforma efficace e sicura per la virtualizzazione e l'ambiente cloud. I principali componenti di vSphere sono VMware vCenter Server e l'ipervisor VMware ESXi.

vCenter Server — una piattaforma di gestione unificata per gli ambienti vSphere. Si distingue per la facilità di implementazione e l'ottimizzazione proattiva delle risorse. ESXi è un hypervisor open source, installato direttamente sui server fisici. ESXi ha accesso diretto alle risorse hardware e un piccolo peso di 150 MB, il che riduce al minimo i requisiti di memoria. Garantisce prestazioni affidabili per diverse carichi di lavoro delle applicazioni e supporta configurazioni potenti di macchine virtuali — fino a 128 CPU virtuali, 6 TB di RAM e 120 dispositivi.

Affinché SQL Server funzioni in modo efficace su hardware moderno, il sistema operativo SQL Server (SQLOS) deve "comprendere" la struttura dell'hardware. Con l'emergere di sistemi multicore e multi-nodo con accesso non uniforme alla memoria (NUMA), è diventato particolarmente importante comprendere le interrelazioni tra i core, i processori logici e fisici.

Processori 

Un processore virtuale (vCPU) è un'unità centrale di elaborazione virtuale assegnata a una macchina virtuale. Il numero totale di vCPU assegnate viene calcolato come:

Totale vCPU = (numero di socket virtuali) * (numero di core virtuali per socket)

Se la stabilità delle prestazioni è importante, VMware raccomanda che il numero totale di CPU virtuali assegnate a tutte le macchine virtuali non superi il numero totale di core fisici disponibili sull'host ESXi, ma è possibile aumentare il numero di CPU virtuali assegnate se il monitoraggio mostra che ci sono risorse CPU non utilizzate disponibili.

Nei sistemi con tecnologia Intel Hyper-Threading attivata, il numero di core logici (vCPU) è il doppio di quello dei core fisici. In questo caso, non assegnare il numero totale di CPU virtuali.

Le variazioni di latenza influenzano meno i carichi di lavoro SQL Server di livello inferiore. Pertanto, questi carichi di lavoro possono essere eseguiti su host con un rapporto maggiore di vCPU a fisici. Livelli di carico CPU ragionevoli possono aumentare la capacità complessiva del sistema, massimizzare il risparmio sulle licenze e mantenere prestazioni adeguate.

Intel Hyper-Threading aumenta generalmente la capacità totale dell'host del 10–30%, suggerendo un rapporto tra CPU virtuali e processori fisici da 1,1 a 1,3. VMware raccomanda di abilitare Hyper-Threading nel BIOS UEFI quando possibile, affinché ESXi possa sfruttare i vantaggi di questa tecnologia. VMware consiglia inoltre di effettuare test accurati e monitoraggio durante l'uso di Hyper-Threading per i carichi di lavoro di SQL Server.

Memoria

Quasi tutti i server moderni utilizzano un'architettura di accesso alla memoria non uniforme (NUMA) per la comunicazione tra la memoria principale e i processori. NUMA è un'architettura hardware per la memoria condivisa che implementa la suddivisione dei blocchi di memoria fisica tra i processori fisici. Un nodo NUMA è costituito da uno o più socket CPU insieme a un blocco di memoria dedicata. 

Negli ultimi dieci anni, NUMA è stata un tema ampiamente discusso. La relativa complessità di NUMA è dovuta, in particolare, alle implementazioni da parte di diversi fornitori. Negli ambienti virtualizzati, la complessità di NUMA è influenzata anche dal numero di parametri di configurazione e livelli - dall'hardware attraverso l'ipervisore fino al sistema operativo ospite e, infine, all'applicazione SQL Server. Una buona comprensione dell'architettura hardware NUMA è un requisito fondamentale per qualsiasi amministratore di database SQL Server che lavora con un'istanza SQL Server virtualizzata.

Per ottenere maggiore efficienza sui server con un numero elevato di core, Microsoft ha introdotto SoftNUMA. Il software SoftNUMA consente di suddividere le risorse CPU disponibili all'interno di una NUMA in più nodi SoftNUMA. Secondo VMware, SoftNUMA è compatibile con la topologia NUMA virtuale (vNUMA) di VMware e può ottimizzare ulteriormente la scalabilità e le prestazioni del motore del database per la maggior parte dei carichi di lavoro…

Con la virtualizzazione VMware e SQL Server, utilizzare:

  • Monitoraggio delle macchine virtuali per rilevare la carenza di risorse di memoria per SQL Server Database Engine. Questo problema porta a un aumento delle operazioni di input/output e a una diminuzione delle prestazioni.

  • Per migliorare le prestazioni, prevenite conflitti di memoria tra macchine virtuali evitando un sovraccarico eccessivo della memoria a livello dell'host ESXi.
  • Considerate la possibilità di verificare l'assegnazione hardware della memoria fisica NUMA per determinare la quantità massima di memoria che può essere assegnata a una macchina virtuale entro i confini fisici NUMA.
  • Se raggiungere prestazioni adeguate è l'obiettivo principale, considerate la possibilità di riservare una quantità di memoria pari a quella assegnata. Questa configurazione garantisce che la macchina virtuale riceva solo memoria fisica.

Storage virtualizzato

La configurazione dello storage in un ambiente virtualizzato richiede una buona comprensione dell'infrastruttura SAN. Così come per NUMA, è essenziale capire come funzionano i diversi livelli di input/output — in questo caso, dall'applicazione nella VM fino alla lettura e scrittura fisica delle informazioni su un supporto di memorizzazione permanente.

vSphere offre una serie di opzioni per configurare lo storage, utili nell'implementazione di SQL Server con l'array Unity XT. FS VMFS è il metodo di storage più comunemente utilizzato nei sistemi di storage a blocchi, come Unity XT. L'array Unity XT rappresenta il livello inferiore, costituito da dispositivi fisici presentati da vSphere come dischi logici (volumi). I volumi Unity XT sono formattati come volumi VMFS dal hypervisor ESXi. Gli amministratori VMware creano uno o più dischi virtuali (VMDK), che vengono presentati al sistema operativo guest. RDM consente alla macchina virtuale di accedere direttamente allo storage a blocchi (tramite FC o iSCSI) di Unity XT senza la formattazione VMFS. I volumi VMFS e RDM possono fornire la stessa larghezza di banda delle transazioni. 

Per lo storage NFS per ESXi, Dell EMC consiglia di utilizzare VMware NFS invece dei file system NFS generici. Una macchina virtuale che esegue SQL Server e utilizza VMDK in uno storage NFS non è a conoscenza del layer NFS sottostante. Il sistema operativo guest tratta la macchina virtuale come un server fisico in esecuzione su Windows Server e SQL Server. I dischi condivisi per configurazioni di istanze di cluster ad alta disponibilità negli storage NFS non sono supportati.

I volumi virtuali VMware vSphere (VVols) offrono un controllo più dettagliato a livello di macchina virtuale, indipendentemente dalla rappresentazione fisica sottostante (ad esempio, volumi o file system). La replicazione basata su array con VVols è supportata a partire da VVol 2.0 (vSphere 6.5). Un disco VVol può essere utilizzato al posto di un disco RDM per fornire risorse di disco per un'istanza di cluster SQL ad alta disponibilità, a partire da vSphere 6.7, con supporto per il failover persistente tramite SCSI.

Reti virtualizzate

La rete nel mondo virtuale segue gli stessi concetti logici che nel mondo fisico, ma utilizza software anziché cavi fisici e switch. L'impatto della latenza di rete sui carichi di lavoro di SQL Server può variare significativamente. Monitorare le metriche di prestazione della rete su un carico di lavoro esistente o su un sistema di test ben implementato per un periodo rappresentativo aiuta a creare una rete virtuale.

Quando si utilizza la virtualizzazione VMware con SQL Server, è necessario considerare quanto segue:

  • Sia gli switch virtuali standard che quelli distribuiti forniscono le funzionalità necessarie per SQL Server.
  • Per una separazione logica del traffico di gestione, vSphere vMotion e storage di rete, utilizzare il tagging VLAN e i gruppi di porte degli switch virtuali.
  • VMware consiglia vivamente di abilitare le Jumbo Frames sugli switch virtuali in cui è attivato il traffico di vSphere vMotion o il traffico iSCSI.
  • In generale, seguire le raccomandazioni di rete per i sistemi operativi e l'hardware ospite.

 Conclusione 

I database SQL Server stanno diventando sempre più grandi e complessi. In SQL Server 2019, Microsoft ha migliorato le funzionalità principali di SQL Server e ha aggiunto nuove funzionalità, come il supporto per i carichi di lavoro di big data tramite Apache Spark e HDFS. Dell EMC, in collaborazione con Microsoft, continua a fornire i componenti infrastrutturali necessari per l'ambiente SQL Server: server, storage e reti. 

Osserviamo un notevole aumento del tempo di attività e una riduzione dei costi totali di proprietà (TCO) quando gli specialisti di storage e database collaborano per creare soluzioni infrastrutturali per SQL Server su piattaforme di storage condiviso. L'array Flash Dell EMC Unity XT è una soluzione di fascia media, adatta per sviluppatori e amministratori SQL Server che necessitano di elevate prestazioni e bassa latenza. Il sistema Unity XT All-Flash è progettato per funzionare su tutti i dispositivi flash e supporta CPU a doppio socket, configurazioni a doppio controller e ottimizzazione multi-core.

Sempre più frequentemente, le organizzazioni virtualizzano i propri ambienti SQL Server. Sebbene la virtualizzazione aggiunga un ulteriore livello di progettazione all'architettura, essa offre vantaggi significativi. Speriamo che alcune delle funzioni e degli strumenti VMware più comunemente utilizzati negli ambienti SQL Server, presentati sopra, possano esservi utili. Raccomandiamo anche riferimenti a risorse per ulteriori informazioni.

Link utili

Dell EMC

VMware

Microsoft

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster