Tutorial HDFS: Introduzione a HDFS e alle sue caratteristiche



Questo blog tutorial HDFS ti aiuterà a comprendere il file system distribuito HDFS o Hadoop e le sue caratteristiche. In breve, esplorerai anche i suoi componenti principali.

Tutorial HDFS

Prima di andare avanti in questo blog tutorial HDFS, lascia che ti guidi attraverso alcune delle folli statistiche relative a HDFS:

  • Nel 2010, Facebook ha affermato di avere uno dei più grandi archivi di cluster HDFS 21 petabyte di dati.
  • Nel 2012, Facebook ha dichiarato di avere il più grande cluster singolo HDFS con più di 100 PB di dati .
  • E Yahoo ! ha più di 100.000 CPU in oltre 40.000 server in esecuzione Hadoop, con il suo più grande cluster Hadoop in esecuzione 4.500 nodi . Tutto sommato, Yahoo! I negozi 455 petabyte di dati in HDFS.
  • Infatti, nel 2013, la maggior parte dei grandi nomi della Fortune 50 ha iniziato a utilizzare Hadoop.

Troppo difficile da digerire? Destra. Come discusso in , Hadoop ha due unità fondamentali: S tormentare e in lavorazione . Quando dico parte di archiviazione di Hadoop, mi riferisco a HDFS che sta per File system distribuito Hadoop . Quindi, in questo blog, ti presenterò HDFS .





Qui parlerò di:

  • Cos'è HDFS?
  • Vantaggi di HDFS
  • Caratteristiche di HDFS

Prima di parlare di HDFS, lasciate che vi dica, cos'è un file system distribuito?



DFS o file system distribuito:

Parla di file system distribuito gestione dati , cioè file o cartelle su più computer o server. In altre parole, DFS è un file system che ci consente di archiviare dati su più nodi o macchine in un cluster e consente a più utenti di accedere ai dati. Quindi, fondamentalmente, ha lo stesso scopo del file system disponibile nella tua macchina, come per Windows hai NTFS (New Technology File System) o per Mac hai HFS (Hierarchical File System). L'unica differenza è che, in caso di file system distribuito, i dati vengono archiviati su più macchine anziché su una singola macchina. Anche se i file sono archiviati in rete, DFS organizza e visualizza i dati in modo tale che un utente seduto su una macchina avrà la sensazione che tutti i dati siano archiviati in quella stessa macchina.

Cos'è HDFS?

Il file system distribuito Hadoop o HDFS è un file system distribuito basato su Java che consente di archiviare dati di grandi dimensioni su più nodi in un cluster Hadoop. Quindi, se installi Hadoop, ottieni HDFS come sistema di archiviazione sottostante per l'archiviazione dei dati nell'ambiente distribuito.

Facciamo un esempio per capirlo. Immagina di avere dieci macchine o dieci computer con un disco rigido da 1 TB su ogni macchina. Ora, HDFS afferma che se installi Hadoop come piattaforma su queste dieci macchine, otterrai HDFS come servizio di archiviazione. Hadoop Distributed File System è distribuito in modo tale che ogni macchina contribuisca con la propria memoria individuale per memorizzare qualsiasi tipo di dati.



Tutorial HDFS: vantaggi di HDFS

1. Archiviazione distribuita:

Archiviazione distribuita - Tutorial HDFS - Edureka

Quando si accede al file system distribuito Hadoop da una qualsiasi delle dieci macchine nel cluster Hadoop, si avrà la sensazione di aver effettuato l'accesso a una singola macchina di grandi dimensioni con una capacità di archiviazione di 10 TB (archiviazione totale su dieci macchine). Cosa significa? Significa che puoi memorizzare un singolo file di grandi dimensioni di 10 TB che verrà distribuito sulle dieci macchine (1 TB ciascuna).Così è non limitato ai confini fisici di ogni singola macchina.

2. Calcolo distribuito e parallelo:

Poiché i dati sono suddivisi tra le macchine, ci consentono di trarne vantaggio Calcolo distribuito e parallelo . Comprendiamo questo concetto con l'esempio precedente. Supponiamo che siano necessari 43 minuti per elaborare un file da 1 TB su una singola macchina. Quindi, ora dimmi, quanto tempo ci vorrà per elaborare lo stesso file da 1 TB quando hai 10 macchine in un cluster Hadoop con una configurazione simile: 43 minuti o 4,3 minuti? 4,3 minuti, giusto! Cos'è successo qua? Ciascuno dei nodi sta lavorando con una parte del file da 1 TB in parallelo. Pertanto, il lavoro che richiedeva 43 minuti prima, ora viene completato in soli 4,3 minuti poiché il lavoro è stato suddiviso su dieci macchine.

3. Scalabilità orizzontale:

Ultimo ma non meno importante, parliamo del ridimensionamento orizzontale o ridimensionamento in Hadoop. Esistono due tipi di ridimensionamento: verticale e orizzontale . Nella scalabilità verticale (scale up), aumenti la capacità hardware del tuo sistema. In altre parole, procurati più RAM o CPU e le aggiungi al tuo sistema esistente per renderlo più robusto e potente. Ma ci sono sfide associate al ridimensionamento verticale o al ridimensionamento:

  • C'è sempre un limite al quale puoi aumentare la tua capacità hardware. Quindi, non puoi continuare ad aumentare la RAM o la CPU della macchina.
  • Nel ridimensionamento verticale, arresti prima la macchina. Quindi aumenti la RAM o la CPU per renderlo uno stack hardware più robusto. Dopo aver aumentato la capacità dell'hardware, riavviare la macchina. Questo tempo morto quando si arresta il sistema diventa una sfida.

In caso di ridimensionamento orizzontale (ridimensionamento) , si aggiungono più nodi al cluster esistente invece di aumentare la capacità hardware delle singole macchine. E, soprattutto, puoi aggiungere più macchine in movimento cioè senza arrestare il sistema . Pertanto, durante il ridimensionamento non abbiamo alcun tempo di inattività o zona verde, niente di simile. Alla fine della giornata, avrai più macchine che lavorano in parallelo per soddisfare le tue esigenze.

come aggiungere java al percorso

Video tutorial HDFS:

Puoi guardare il video fornito di seguito in cui tutti i concetti relativi a HDFS sono stati discussi in dettaglio:

Tutorial HDFS: Caratteristiche di HDFS

Comprenderemo queste funzionalità in dettaglio quando esploreremo l'architettura HDFS nel nostro prossimo blog tutorial HDFS. Ma, per ora, diamo una panoramica delle funzionalità di HDFS:

  • Costo: L'HDFS, in generale, viene distribuito su un hardware di base come il tuo desktop / laptop che usi ogni giorno. Quindi, è molto economico in termini di costo di proprietà del progetto. Poiché utilizziamo hardware di base a basso costo, non è necessario spendere enormi quantità di denaro per scalare il cluster Hadoop. In altre parole, l'aggiunta di più nodi al tuo HDFS è conveniente.
  • Varietà e volume di dati: Quando parliamo di HDFS, parliamo di archiviazione di dati enormi, ad esempio terabyte e petabyte di dati e diversi tipi di dati. Quindi, puoi archiviare qualsiasi tipo di dati in HDFS, sia esso strutturato, non strutturato o semi strutturato.
  • Affidabilità e tolleranza ai guasti: Quando archivi i dati su HDFS, divide internamente i dati forniti in blocchi di dati e li archivia in modo distribuito nel tuo cluster Hadoop. L'informazione relativa a quale blocco di dati si trova su quale dei nodi di dati viene registrata nei metadati. NameNode gestisce i metadati e il file DataNodes sono responsabili della conservazione dei dati.
    Il nodo nome replica anche i dati, ovvero conserva più copie dei dati. Questa replica dei dati rende HDFS molto affidabile e tollerante ai guasti. Quindi, anche se uno qualsiasi dei nodi si guasta, possiamo recuperare i dati dalle repliche che risiedono su altri nodi di dati. Per impostazione predefinita, il fattore di replica è 3. Pertanto, se si memorizza 1 GB di file in HDFS, occuperà finalmente 3 GB di spazio. Il nodo del nome aggiorna periodicamente i metadati e mantiene coerente il fattore di replica.
  • Integrità dei dati: L'integrità dei dati indica se i dati archiviati nel mio HDFS sono corretti o meno. HDFS controlla costantemente l'integrità dei dati archiviati rispetto al suo checksum. Se trova un guasto, lo segnala al nodo del nome. Quindi, il nodo del nome crea nuove repliche aggiuntive e quindi elimina le copie danneggiate.
  • Elevata produttività: Il rendimento è la quantità di lavoro svolto in un'unità di tempo. Parla della velocità con cui puoi accedere ai dati dal file system. Fondamentalmente, ti dà un'idea delle prestazioni del sistema. Come hai visto nell'esempio sopra, dove abbiamo usato dieci macchine insieme per migliorare il calcolo. Lì siamo stati in grado di ridurre il tempo di elaborazione da 43 minuti a un mero 4,3 minuti poiché tutte le macchine lavoravano in parallelo. Pertanto, elaborando i dati in parallelo, abbiamo ridotto enormemente il tempo di elaborazione e, di conseguenza, abbiamo ottenuto un throughput elevato.
  • Località dei dati: La località dei dati parla di spostare l'unità di elaborazione sui dati piuttosto che i dati sull'unità di elaborazione. Nel nostro sistema tradizionale, portavamo i dati al livello dell'applicazione e quindi li elaboravamo. Ma ora, a causa dell'architettura e dell'enorme volume di dati, portare i dati al livello dell'applicazione lo faràridurre le prestazioni di rete in misura notevole.Quindi, in HDFS, portiamo la parte di calcolo ai nodi di dati in cui risiedono i dati. Quindi, non stai spostando i dati, stai portando il programma o il processoparte dei dati.

Quindi ora, hai una breve idea di HDFS e delle sue caratteristiche. Ma credetemi ragazzi, questa è solo la punta dell'iceberg. Nel mio prossimo , Mi immergerò in profondità nel Architettura HDFS e svelerò i segreti del successo di HDFS. Insieme risponderemo a tutte quelle domande che stanno riflettendo nella tua testa come:

  • Cosa succede dietro le quinte quando leggi o scrivi dati in Hadoop Distributed File System?
  • Quali sono gli algoritmi, come la consapevolezza del rack, che rendono HDFS così tollerante ai guasti?
  • In che modo Hadoop Distributed File System gestisce e crea la replica?
  • Cosa sono le operazioni di blocco?

Ora che hai compreso HDFS e le sue caratteristiche, controlla il file da Edureka, una società di formazione online affidabile con una rete di oltre 250.000 studenti soddisfatti sparsi in tutto il mondo. Il corso di formazione per la certificazione Edureka Big Data Hadoop aiuta gli studenti a diventare esperti in HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume e Sqoop utilizzando casi d'uso in tempo reale nel settore Retail, Social Media, Aviation, Tourism, Finance.

Hai domande per noi? Per favore menzionalo nella sezione commenti e ti risponderemo.