Sto cercando di capire come viene gestita la scrittura dei dati in HDFS leggendo hadoop-2.4.1 documentation.Come vengono scritti i dati su HDFS?
secondo il seguente schema:
ogni volta che un cliente scrive qualcosa di HDFS, non ha alcun contatto con il NameNode ed è responsabile della suddivisione in blocchi e la replica. Suppongo che in questo caso il client sia una macchina che esegue una shell HDFS (o equivalente).
Tuttavia, non capisco come sia gestito. Infatti, secondo la stessa documentazione:
I DataNodes svolgono anche la creazione di blocco, la cancellazione e la replica su istruzione NameNode.
Lo schema presentato sopra è corretto? In tal caso,
- è il namenode informato solo dei nuovi file quando riceve un Blockreport (che può richiedere del tempo, suppongo)?
perché il client scrive su più nodi?
Se questo schema non è corretto, in che modo la creazione di file funziona con HDF?
Secondo l'articolo collegato, il client chiede dove scrivere i blocchi sul namenode in precedenza (http: //bradhedlund.s3.amazonaws. com/2011/Hadoop-network-intro/Writing-Files-to-HDFS-s.png). Ciò renderebbe sbagliato lo schema sopra, che è il nocciolo della mia domanda :) Potresti confermarlo? – fxm
Sì, penso, vedere questo stupendo [collegamento] (http://bigdatahandler.com/wp-content/uploads/2013/10/HDFS.pdf). – Mouna