Oggi parleremo di come gestire al meglio i dati in un mondo in cui le reti di quinta generazione, i scanner genomici e le auto a guida autonoma producono in un giorno più dati di quanti ne abbia generato l'intera umanità prima della rivoluzione industriale.

Il nostro mondo genera sempre più informazioni. Una parte di esse è fugace e si perde altrettanto rapidamente con cui è stata raccolta. Altre devono essere memorizzate più a lungo, mentre alcune sono progettate per durare "secoli", almeno così appare dal nostro attuale punto di vista. I flussi di informazioni si depositano nei data center con una tale velocità che qualsivoglia nuovo approccio o tecnologia, destinati a soddisfare questa incessante "domanda", invecchiano rapidamente.

40 anni di sviluppo degli archivi distribuiti
I primi archivi di rete nel nostro formato attuale sono apparsi negli anni '80. Molti di voi hanno avuto a che fare con NFS (Network File System), AFS (Andrew File System) o Coda. Dopo un decennio, le mode e le tecnologie sono cambiate, e i file system distribuiti hanno ceduto il passo agli archivi basati su GPFS (General Parallel File System), CFS (Clustered File Systems) e StorNext. Come base, sono stati utilizzati archivi a blocchi di architettura classica, sopra i quali è stata creata un'unica file system tramite un livello software. Queste e soluzioni simili sono ancora utilizzate, occupano una loro nicchia e sono piuttosto richieste.
All'inizio del millennio, la parodigma degli archivi distribuiti è cambiata leggermente, e i sistemi con architettura SN (Shared-Nothing) sono emersi come leader. C'è stata una transizione dall'archiviazione a cluster all'archiviazione su nodi separati, che di norma erano server classici con software affidabile per la memorizzazione; sono sulla base di questi principi che sono stati sviluppati HDFS (Hadoop Distributed File System) e GFS (Global File System).
Verso il 2010, i concetti alla base dei sistemi di archiviazione distribuiti hanno iniziato a essere riflessi sempre più in prodotti commerciali completi, come VMware vSAN, Dell EMC Isilon e la nostra . Dietro queste piattaforme ci sono ormai non solo comunità di appassionati, ma fornitori specifici che sono responsabili della funzionalità, supporto, assistenza del prodotto e garantiscono il suo ulteriore sviluppo. Tali soluzioni sono particolarmente richieste in vari settori.

Operatori di telecomunicazioni
Probabilmente, uno dei più antichi utilizzatori dei sistemi di archiviazione distribuiti sono gli operatori di telecomunicazioni. Nello schema è visibile quali gruppi di applicazioni producono il principale volume di dati. OSS (Operations Support Systems), MSS (Management Support Services) e BSS (Business Support Systems) rappresentano tre strati software complementari necessari per fornire servizi agli abbonati, la rendicontazione finanziaria al fornitore e il supporto operativo agli ingegneri dell'operatore.
Spesso i dati di questi strati sono fortemente mescolati tra loro e, per evitare l'accumulo di copie inutili, si utilizzano gli archivi distribuiti, che accumulano l'intero volume di informazioni provenienti dalla rete operante. Gli archivi sono uniti in un pool comune, a cui accedono tutti i servizi.
I nostri calcoli mostrano che il passaggio dai tradizionali sistemi di archiviazione (SBC) ai sistemi a blocchi permette di risparmiare fino al 70% del budget solamente rinunciando ai sistemi SBC dedicati di classe hi-end e utilizzando normali server di architettura classica (di solito x86), operanti in combinazione con software specializzato. Gli operatori mobili hanno già da tempo iniziato ad acquistare tali soluzioni in volumi significativi. In particolare, gli operatori russi utilizzano prodotti simili di Huawei da oltre sei anni.
Sì, alcuni compiti non possono essere svolti con sistemi distribuiti. Ad esempio, quando ci sono requisiti elevati per le prestazioni o compatibilità con vecchi protocolli. Tuttavia, almeno il 70% dei dati elaborati dall'operatore può essere collocato in un pool distribuito.

Settore bancario
In ogni banca convivono numerosi sistemi IT eterogenei, che vanno dal processing all'automated banking system. Questa infrastruttura lavora anch'essa con enormi volumi di informazioni, e gran parte delle operazioni non richiede elevate prestazioni e affidabilità dei sistemi di archiviazione, come ad esempio sviluppo, testing, automazione dei processi d'ufficio, ecc. Qui l'uso dei tradizionali sistemi SBC è possibile, ma ogni anno diventa sempre meno vantaggioso. Inoltre, in questo caso manca la flessibilità nella spesa delle risorse SBC, la cui prestazione è calcolata in base al carico di picco.
Nell'uso di sistemi di archiviazione distribuiti, i loro nodi, che sono di fatto normali server, possono essere convertiti in qualsiasi momento, ad esempio, in una farm di server e utilizzati come piattaforma di calcolo.

Laghi di dati
Nello schema sopra è riportato un elenco dei tipici consumatori di servizi . Possono trattarsi di servizi di governo elettronico (ad esempio, "Servizi statali"), digitalizzati dalle imprese, strutture finanziarie e altro. Tutti loro hanno bisogno di lavorare con grandi volumi di informazioni eterogenee.
L'operatività dei tradizionali sistemi di archiviazione dati per risolvere tali compiti non è efficace, poiché è necessario sia un accesso ad alte prestazioni a database a blocchi, sia un accesso convenzionale a biblioteche di documenti scansionati, conservati come oggetti. A ciò può essere associato, ad esempio, un sistema di ordinazione tramite web portal. Per realizzare tutto ciò su una piattaforma di un tradizionale sistema di archiviazione dati, è necessaria una grande dotazione di attrezzature per compiti diversi. Un unico sistema di archiviazione orizzontale versatile può coprire tutte le mansioni elencate in precedenza: sarà sufficiente creare diversi pool con caratteristiche di archiviazione differenti.

Generatori di nuova informazione
La quantità di informazioni conservate nel mondo cresce di circa il 30% all'anno. Queste sono buone notizie per i fornitori di sistemi di archiviazione, ma qual è e sarà la principale fonte di questi dati?
Dieci anni fa, i generatori principali sono diventati i social network, il che ha richiesto la creazione di un gran numero di nuovi algoritmi, soluzioni hardware, ecc. Attualmente si distinguono tre principali motori di crescita dei volumi di archiviazione. Il primo è il cloud computing. Attualmente, circa il 70% delle aziende utilizza in un modo o nell'altro servizi cloud. Questi possono essere sistemi di posta elettronica, backup e altre entità virtualizzate.
Il secondo motore è rappresentato dalle reti di quinta generazione. Si tratta di nuove velocità e nuovi volumi di trasmissione dati. Secondo le nostre previsioni, la diffusione capillare del 5G porterà a una diminuzione della domanda di schede di memoria flash. Qualunque sia la memoria disponibile nel telefono, questa si esaurisce comunque, e con un canale da 100 megabit non c'è alcuna necessità di conservare le fotografie localmente.
Al terzo gruppo di motivi per cui cresce la domanda di sistemi di archiviazione appartengono lo sviluppo esplosivo dell'intelligenza artificiale, la transizione all'analisi dei big data e la tendenza all'automazione universale di tutto ciò che è possibile.
Una caratteristica del "nuovo traffico" è la sua . Dobbiamo archiviare questi dati, senza definirne il formato. Questo è necessario solo durante la lettura successiva. Ad esempio, un sistema bancario di scoring per determinare l'importo del prestito disponibile esaminerà le foto che hai pubblicato sui social media, determinando con quale frequenza vai al mare e nei ristoranti, mentre allo stesso tempo studierà gli estratti dei tuoi documenti medici a disposizione. Questi dati, da un lato, sono onnicomprensivi, ma dall'altro sono privi di omogeneità.

Oceano di dati non strutturati
Quali problemi comporta l'emergere dei "nuovi dati"? Il principale di questi è, ovviamente, l'enorme volume di informazioni e il tempo necessario per la loro archiviazione. Un solo automobile autonomo moderno senza conducente genera ogni giorno fino a 60 TB di dati provenienti da tutti i suoi sensori e meccanismi. Per sviluppare nuovi algoritmi di movimento, queste informazioni devono essere elaborate entro le stesse 24 ore, altrimenti inizieranno ad accumularsi. Inoltre, devono essere conservate a lungo — per decenni. Solo allora, in futuro, sarà possibile trarre conclusioni basate su ampie selezioni analitiche.
Un dispositivo per la decodifica delle sequenze genetiche produce circa 6 TB al giorno. E i dati raccolti con il suo aiuto non prevedono affatto la cancellazione, ovvero devono essere conservati per sempre in modo ipotetico.
Infine, ci sono le reti di quinta generazione. Oltre alle informazioni effettivamente trasmesse, una rete del genere è anche un enorme generatore di dati: registri delle azioni, registrazioni delle chiamate, risultati intermedi delle interazioni tra macchine, ecc.
Tutto ciò richiede lo sviluppo di nuovi approcci e algoritmi per l'archiviazione e l'elaborazione delle informazioni. E tali approcci stanno emergendo.

Tecnologie di una nuova era
Si possono distinguere tre gruppi di soluzioni destinate a far fronte alle nuove esigenze dei sistemi di archiviazione delle informazioni: l'implementazione dell'intelligenza artificiale, l'evoluzione tecnica dei supporti di dati e le innovazioni nell'architettura dei sistemi. Iniziamo con l'IA.

Nei nuovi sistemi di Huawei, l'intelligenza artificiale viene già utilizzata a livello di archiviazione, dotata di un processore AI in grado di analizzare autonomamente il proprio stato e prevedere guasti. Se il sistema di archiviazione è collegato a un cloud di servizio con notevoli capacità computazionali, l'intelligenza artificiale sarà in grado di elaborare più informazioni e aumentare la precisione delle proprie ipotesi.
Oltre ai guasti, questa AI è in grado di prevedere il carico di picco futuro e il tempo rimanente fino all'esaurimento della capacità. Questo consente di ottimizzare le prestazioni e scalare il sistema prima che si verifichino eventi indesiderati.

Ora parliamo dell'evoluzione dei supporti di memorizzazione. Le prime chiavette USB erano realizzate con tecnologia SLC (Single-Level Cell). I dispositivi basati su di essa erano rapidi, affidabili e stabili, ma avevano una capacità ridotta e costavano molto. Aumentare il volume e ridurre il prezzo è stato possibile attraverso alcuni compromessi tecnici, che hanno comportato una diminuzione della velocità, dell'affidabilità e della durata dei dischi. Tuttavia, la tendenza non ha influito sui sistemi di archiviazione, che grazie a vari espedienti architetturali sono diventati complessivamente più performanti e più affidabili.
Ma perché erano necessari i sistemi di archiviazione All-Flash? Non era sufficiente semplicemente sostituire gli HDD obsoleti con nuovi SSD dello stesso formato? Questo è stato necessario per sfruttare efficacemente tutte le risorse dei nuovi dischi a stato solido, cosa che nei sistemi più vecchi era semplicemente impossibile.
Ad esempio, Huawei ha sviluppato un insieme di tecnologie per affrontare questa sfida, una delle quali è , che ha massimizzato l'ottimizzazione delle interazioni "disco - controller".
L'identificazione intelligente ha reso possibile suddividere i dati in più flussi e affrontare diversi fenomeni indesiderati, come (write amplification). Allo stesso tempo, i nuovi algoritmi di recupero, in particolare , hanno aumentato la velocità di ricostruzione, riducendo il tempo necessario a valori assolutamente trascurabili.
Guasti, saturazione, "garbage collection": questi fattori non influenzano più le prestazioni del sistema di archiviazione grazie a specifici miglioramenti nei controller.

Inoltre, gli storage di dati a blocchi si preparano ad accogliere . Ricordiamo che lo schema classico di accesso ai dati funzionava in questo modo: la CPU si collegava al controller RAID tramite il bus PCI Express. Questo, a sua volta, interagiva con i dischi meccanici tramite SCSI o SAS. L'uso di NVMe nel backend ha notevolmente accelerato l'intero processo, ma presentava un inconveniente: gli storage dovevano avere una connessione diretta alla CPU per fornire un accesso diretto alla memoria.
La fase successiva nello sviluppo della tecnologia, che stiamo osservando ora, è stata l'implementazione di NVMe-oF (NVMe over Fabrics). Per quanto riguarda le tecnologie a blocchi di Huawei, già ora supportano FC-NVMe (NVMe over Fibre Channel), e NVMe over RoCE (RDMA over Converged Ethernet) è in arrivo. I modelli di prova sono pienamente funzionali, e restano solo alcuni mesi prima della loro presentazione ufficiale. Notiamo che tutto questo arriverà anche nei sistemi distribuiti, dove l'"Ethernet senza perdite" sarà molto richiesto.

Un ulteriore modo per ottimizzare il lavoro specificamente degli storage distribuiti è stato l'abbandono completo della mirroring dei dati. Le soluzioni Huawei non utilizzano più n copie, come nel consueto RAID 1, e passano completamente a un meccanismo (Erasure coding). Un'apposita suite matematica calcola, con una certa periodicità, blocchi di controllo che consentono di recuperare i dati intermedi in caso di perdita.
I meccanismi di deduplicazione e compressione diventano obbligatori. Se nei classici storage di rete siamo limitati dal numero di CPU installate nei controller, nei sistemi di storage distribuiti scalabili orizzontalmente ogni nodo contiene tutto il necessario: dischi, memoria, CPU e interconnessione. Queste risorse sono sufficienti affinché la deduplicazione e la compressione abbiano un impatto minimo sulle prestazioni.
E sugli approcci hardware per l'ottimizzazione. Qui, il carico sui processori centrali è stato ridotto grazie all'uso di circuiti aggiuntivi dedicati (o di blocchi dedicati nella stessa CPU), che svolgono il ruolo di (TCP/IP Offload Engine) o che si occupano dei compiti matematici di EC, deduplicazione e compressione.

Nuovi approcci all'archiviazione dei dati hanno trovato realizzazione nell'architettura disaggregata (distribuita). Nei sistemi di archiviazione centralizzati c'è una fabbrica di server, collegata tramite Fibre Channel a con un gran numero di array. Gli svantaggi di questo approccio sono le difficoltà di scalabilità e la garanzia di un livello di servizio (in termini di prestazioni o latenza). I sistemi iperconvergenti utilizzano gli stessi host, sia per l'archiviazione che per l'elaborazione delle informazioni. Questo offre opportunità di scalabilità praticamente illimitate, ma comporta costi elevati per mantenere l'integrità dei dati.
A differenza di entrambi gli approcci precedenti, l'architettura disaggregata implica la separazione del sistema in una fabbrica computazionale e un sistema di archiviazione orizzontale. Ciò offre i vantaggi di entrambe le architetture e consente di scalare praticamente solo l'elemento la cui prestazione è insufficiente.

Dall'integrazione alla convergenza
Un compito classico, la cui rilevanza è cresciuta negli ultimi 15 anni, è la necessità di garantire simultaneamente l'archiviazione a blocchi, l'accesso ai file, l'accesso agli oggetti, il lavoro di un farming per big data, ecc. La ciliegina sulla torta potrebbe essere anche, per esempio, un sistema di backup su nastro magnetico.
Nella prima fase si è riusciti a unificare solamente la gestione di questi servizi. Sistemi di archiviazione dati eterogenei erano legati a qualche software specializzato, tramite il quale l'amministratore distribuiva le risorse dai pool disponibili. Tuttavia, poiché a livello hardware questi pool erano diversi, la migrazione del carico tra di essi era impossibile. A un livello di integrazione più alto, l'unificazione avveniva a livello di gateway. Con l'accesso comune ai file, era possibile utilizzare diversi protocolli.
Il metodo più avanzato di convergenza disponibile attualmente implica la creazione di un sistema ibrido universale. Questo è esattamente ciò che deve diventare il nostro . L'accesso universale utilizza le stesse risorse hardware, logicamente suddivise in diversi pool, ma consente la migrazione del carico. Tutto ciò può essere gestito tramite un'unica console di gestione. In questo modo, siamo riusciti a realizzare il concetto di «un DC - un SAN».

Il costo dell'archiviazione delle informazioni determina attualmente molte soluzioni architettoniche. E sebbene possa essere considerato un elemento centrale, oggi discutiamo dell'archiviazione «live» con accesso attivo, quindi è necessario considerare anche le prestazioni. Un'altra caratteristica importante dei sistemi distribuiti di nuova generazione è l'unificazione. Nessuno vuole avere più sistemi disconnessi, gestiti da diverse console. Tutte queste caratteristiche sono state integrate nella nuova serie di prodotti Huawei. .
SAN di nuova generazione
OceanStor Pacific soddisfa i requisiti di affidabilità a livello di «sei nove» (99,9999%) e può essere utilizzato per creare DC di classe HyperMetro. Con una distanza fino a 100 km tra i due data center, i sistemi mostrano una latenza aggiuntiva di 2 ms, il che consente di creare soluzioni di disaster recovery, comprese quelle con server a quorum.

I prodotti della nuova serie dimostrano versatilità nei protocolli. Già adesso, OceanStor 100D supporta l'accesso a blocchi, l'accesso agli oggetti e l'accesso Hadoop. A breve sarà implementato anche l'accesso file. Non è necessario conservare più copie dei dati se possono essere forniti attraverso diversi protocolli.

A prima vista, che relazione ha il concetto di «rete senza perdite» con le SAN? Sta nel fatto che i sistemi di archiviazione distribuiti si basano su una rete veloce che supporta gli algoritmi e il meccanismo RoCE corrispondenti. Anche un sistema di intelligenza artificiale supportato dai nostri switch aiuta ad aumentare la velocità della rete e a ridurre la latenza. . Il guadagno di prestazioni delle SAN con l'attivazione di AI Fabric può arrivare fino al 20%.

Che cos'è il nuovo nodo di SAN distribuita OceanStor Pacific? La soluzione in fattore di forma 5U include 120 drive e può sostituire tre nodi classici, offrendo così un risparmio di spazio nel rack superiore a due volte. Grazie all'eliminazione della memorizzazione delle copie, l'efficienza dei drive aumenta in modo significativo (fino a +92%).
Siamo abituati a considerare lo storage definito da software come un software speciale installato su un server classico. Ma ora, per raggiungere parametri ottimali, questa architettura richiede anche nodi speciali. Essa include due server basati su processori ARM che gestiscono array di dischi rigidi da tre pollici.

Questi server sono poco adatti a soluzioni iperconvergenti. In primo luogo, le applicazioni per ARM sono piuttosto limitate, e in secondo luogo, è difficile mantenere un equilibrio del carico. Proponiamo di passare a uno storage separato: un cluster di calcolo, rappresentato da server classici o rack, funziona separatamente ma si collega ai nodi di storage OceanStor Pacific, che svolgono anch’essi i loro compiti specifici. E questo si rivela vantaggioso.
Prendiamo come esempio una soluzione classica per l’archiviazione di grandi dati con un sistema iperconvergente che occupa 15 rack server. Se distribuiamo il carico tra server di calcolo separati e nodi di storage OceanStor Pacific, separandoli l’uno dall’altro, il numero di rack necessari si ridurrà della metà! Questo riduce i costi di gestione del data center e abbassa il costo totale di proprietà. In un mondo in cui il volume delle informazioni conservate cresce del 30% all’anno, non ci si può permettere di trascurare tali vantaggi.
***
Puoi ottenere ulteriori informazioni sulle soluzioni Huawei e sui loro casi d’uso sul nostro o contattando direttamente i rappresentanti dell'azienda.
Fonte: habr.com
