Per altre informazioni su QFS e la sua genesi, scarica il nostro documento
qui.

L’utilizzo di Big Data non è né facile né economico.

I Big Data richiedono in genere operazioni intensive di archiviazione ed elaborazione, ingenti quantità di elettricità e spazio per l’esecuzione e il raffreddamento dell’hardware, nonché personale e risorse abbondanti. Come sa qualsiasi organizzazione che utilizza cluster di dati di grandi dimensioni in un ambiente di produzione, i costi associati possono moltiplicarsi rapidamente, rendendo l’efficienza un requisito irrinunciabile.

Presentazione di QFS 1.0

Sviluppato in Quantcast e reso oggi disponibile alla community open source, Quantcast File System (QFS) è un’alternativa al file system distribuito Hadoop (HDFS, Hadoop Distributed File System) per l’elaborazione di dati batch su larga scala. Si tratta di un file system distribuito ottimizzato per la produzione, 100% open source, completamente integrato con Hadoop e in grado di garantire performance significativamente migliori a fronte di un utilizzo di spazio su disco inferiore del 50%.

Perché open source?

I file system sono componenti infrastrutturali critici che devono garantire solidità. Riteniamo che la supervisione e la collaborazione da parte della community open source possa offrire il metodo migliore per perfezionare QFS, offrendo incredibili vantaggi alle organizzazioni che scelgono di adottarlo.

Incoraggiamo commenti, domande e contributi al progetto QFS e non vediamo l’ora di collaborare alla sua continua evoluzione. Introdurremo le nostre modifiche in GitHub, creando periodicamente pacchetti di nuove versioni.

Più potenza di elaborazione, meno hardware

Requisiti di archiviazione dei dati compatti significano un numero minore di dischi rigidi da acquistare e rendere operativi. Una maggiore velocità effettiva dei dati significa potenza superiore e risultati migliori. Abbiamo realizzato QFS per offrire entrambi questi vantaggi.

Caratteristiche chiave di QFS
  • Correzione degli errori Reed-Solomon (RS). Poiché in un cluster di grandi dimensioni sistemi irraggiungibili e dischi rigidi inattivi rappresentano la norma anziché l’eccezione, la capacità di tollerare dati mancanti è essenziale. HDFS utilizza una replica tripla, che moltiplica per tre i dati. QFS utilizza solo metà dello spazio su disco, sfruttando la stessa tecnica di correzione degli errori dei CD e i DVD, offrendo maggiore potenza di recupero con un’espansione solo 1,5 volte maggiore.
  • Maggiore velocità effettiva in scrittura. Una codifica dei dati più snella non significa solo un maggiore risparmio dello spazio su disco, ma anche una quantità minore di dati da scrivere. Poiché ogni processo su QFS scrive solo la metà dei dati fisici, impone la metà del carico sul cluster. I processi scrivono dati più rapidamente e possono essere eseguiti in numero maggiore contemporaneamente.
  • Velocità di lettura maggiore. Un disco rigido è il componente più lento di un cluster, con una velocità di lettura massima di circa 50 MB/s. Poiché HDFS legge ogni blocco di dati da una singola unità, ne eredita lo stesso limite di velocità. QFS legge ogni blocco da sei unità in parallelo, per una velocità di lettura teorica massima di 300 MB/s. Questo comportamento si traduce in un enorme incremento di velocità per processi reali.
  • I/O diretto. Il metodo più rapido per leggere dati da (o scrivere dati in) un’unità è in burst sequenziali di grandi dimensioni. Le normali API di I/O dei file consentono al sistema operativo di memorizzare i dati nel buffer e di effettuare lo swapping dei tempi dei dischi tra processi diversi, un comportamento che provoca la suddivisione di burst efficienti e di grandi dimensioni in altri più piccoli e inefficienti. QFS utilizza API di basso livello che offrono maggiore controllo, mantenendo ottimale l’accesso ai dischi.
  • Memoria fissa. QFS è stato implementato in C++ e gestisce attentamente la propria memoria all’interno di un footprint fisso. Ne derivano operazioni rapide, senza interruzioni per Garbage Collection. QFS rappresenta anche un ottimo vicino per altri processi sullo stesso sistema, in quanto non richiede mai memoria aggiuntiva al sistema operativo a scapito di swapping e attività dei dischi extra. La gestione della memoria di QFS aiuta a mantenere elevate le performance e a semplificare l’amministrazione.
  • Affidabilità collaudata. L’affidabilità è un aspetto critico per un file system e viene ottenuta solo nel tempo e attraverso un duro lavoro in un ambiente adeguatamente complesso. I requisiti di elaborazione dei dati di Quantcast sono aumentati costantemente con il crescere della nostra azienda. Riceviamo oltre 40 terabyte al giorno e la nostra elaborazione MapReduce giornaliera può superare 20 petabyte.