Nell’articolo sul modello architetturale a tre livelli (three-tier), abbiamo analizzato ruolo e peculiarità di ciascuno di essi. Focalizziamoci adesso sul data layer, cioè sull’ultimo strato, quello più profondo per intenderci. Abbiamo visto che il suo compito è quello di gestire la permanenza dei dati delle applicazioni e soddisfare le richieste di lettura/scrittura da parte del livello business layer.

Verrebbe a questo punto da chiederci come questi due livelli, business e data layer, comunichino fra loro.


L’importanza dei dati

Da un punto di vista prettamente fisico, il business layer è formato da un insieme di server connessi fra loro in modo opportuno. Il data layer, invece, è composto da uno o più elementi storage che offrono il loro servizio al livello soprastante.

Per semplicità immaginiamo per ora un solo apparato di storage. Naturalmente in un centro di elaborazione dati non dobbiamo pensare a un semplice disco fisso, ma, piuttosto, a molti dischi meccanici (o allo stato solido), gestiti da un controllore elettronico, il cui compito è di interpretare le richieste in input dei server e richiedere ai singoli dischi la lettura di tali informazioni, per poi ripassarle in output. Questi dischi sono sempre in qualche configurazione RAID per la protezione dei dati (vedere l'articolo corrispondente per ulteriori dettagli). Sono molto robusti e la loro affidabilità è molto alta, come ci si aspetterebbe per la gestione di dati di fondamentale importanza.

Molto spesso si costruisce anche una ridondanza geografica, con diverse installazioni di storage sparse in vari luoghi. Ricordiamoci che ogni azienda basa il proprio core business sui dati, perderli improvvisamente vorrebbe dire chiudere i battenti… Pertanto progettare un data layer veloce e affidabile è un’impresa della massima importanza.

Lo storage come SAN

Ritorniamo alla nostra domanda iniziale. Come il business layer e il data layer comunicano fra loro? Ci sono diverse soluzioni, ma una delle più utilizzate, soprattutto nelle grandi aziende che hanno budget importanti, è la SAN.

SAN è l’acronimo di Storage Area Network e indica una rete ad altissima velocità costituita da storage (anche di diverse tecnologie) e apparati di rete dedicati. Nella SAN il protocollo di comunicazione è conosciuto come FC (fibre channel).

Lo storage viene solitamente suddiviso in pezzettini, chiamati dischi virtuali, i quali vengono esposti ai server. Come questi dischi virtuali corrispondono poi ai dischi fisici dello storage, non è una questione che interessa i server che ci devono accedere. È un’informazione gestita dallo storage stesso mediante un suo controller.

L’apparato di rete (in genere sono almeno due per ridondanza), chiamato switch FC, ha il compito di connettere i server agli storage virtuali, mediante dei costrutti logici chiamati zone. Tramite queste configurazioni possiamo far ‘vedere’ un disco virtuale a uno o più server o impedire che uno di questi veda un particolare disco. Il tutto è implementabile accedendo ai suddetti switch FC.

Il protocollo Fibre Channel

I server come usano questi dischi virtuali? Dopo aver configurato correttamente tutta la SAN, i server vedranno i dischi virtuali di loro competenza esattamente come se fossero degli hard disk interni al server stesso. Per quest’ultimo, infatti, non c’è alcuna differenza tra un disco locale e un disco virtuale in una SAN. Il server non è a conoscenza della differenza e non può distinguerli. Pertanto lui legge e scrive dei dati su quello che per lui è semplicemente un disco, poi sarà la SAN a gestire opportunamente le richieste sul data layer, è un suo problema.

Il Fibre Channel (FC) è un protocollo di trasferimento dati ad alta velocità e senza perdita (lossless protocol) usato nelle SAN. Questo vuol dire che le informazioni fra server e storage (e viceversa) devono rimanere sempre integre durante la trasmissione; in caso di errore bisogna ritrasmettere il dato.

Generalmente il protocollo FC viaggia su connessioni a fibra ottica (ma può usare anche ordinari cavi in rame). Come già detto, è utilizzato nei moderni CED (Centro Elaborazione Dati) per la connessione fra gli apparati server (business layer) e gli storage (data layer).Quest'ultimo livello può essere a sua volta scomposto in sotto livelli in base alla velocità di accesso e di lettura/scrittura degli storage. Questa velocità dipende dalla tecnologia dei supporti di storage, come dischi allo stato solido (SSD), dischi meccanici e librerie di nastri magnetici.

In definitiva possiamo affermare che, sebbene non sia l’unica soluzione a disposizione, la SAN e il protocollo FC sono tuttora molto usati nelle grandi aziende. I vantaggi sono l’alta affidabilità dell’intero sistema e le velocità raggiungibili. Di contro, però, bisogna tener conto dei costi degli apparati (storage, switch e connettori FC e cavi) sensibilmente più alti. Inoltre non si possono sottovalutare neanche i costi di formazione del personale, il quale deve essere capace di configurare e gestire una SAN, operazioni piuttosto complesse e delicate.