Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
Následující verze Obě strany příští revize
kj:hadoop-a-hdfs [18.08.2017 15:17]
kj
kj:hadoop-a-hdfs [18.09.2017 15:33]
kj
Řádek 12: Řádek 12:
  
 ==== Architektura Hadoopu ==== ==== Architektura Hadoopu ====
 +
 +{{ :​kj:​arch_hadoop.png?​400| }}
 +
   * HDFS: distribuovaný FS   * HDFS: distribuovaný FS
 +      * velký soubor je rozdělen na 64 MB chunky a třikrát replikován
 +
 +
   * YARN: plánovač úloh a alokátor zdrojů   * YARN: plánovač úloh a alokátor zdrojů
-      * Application – alokuje zdroje+      * Application ​Master ​– alokuje zdroje
       * Resource Manager – globální správce zdrojů pro cluster. řeknu mu o paměť, RAM, on mi řekne, zda to jde       * Resource Manager – globální správce zdrojů pro cluster. řeknu mu o paměť, RAM, on mi řekne, zda to jde
       * Node Manager – podřízený správce zdrojů na nodu, kouká se, zda je dost místa pro danou operaci       * Node Manager – podřízený správce zdrojů na nodu, kouká se, zda je dost místa pro danou operaci
 +
 +{{ https://​2xbbhjxc6wk3v21p62t8n4d4-wpengine.netdna-ssl.com/​wp-content/​uploads/​2012/​08/​yarnflow1-600x371.png?​400| }}
 +  ​
   * MapReduce   * MapReduce
 +  * Zookeeper - ukládání konfiguračních souborů
   * zvěřinec nad tím: Hive, Spark, HBase, Zookeeper (sdílení konfiguračních souborů, komunikace clusterů), Kafka, Flink, Kassandra, Kudu, ...   * zvěřinec nad tím: Hive, Spark, HBase, Zookeeper (sdílení konfiguračních souborů, komunikace clusterů), Kafka, Flink, Kassandra, Kudu, ...
  
-{{ :​kj:​arch_hadoop.png?​400| }}+
  
   * **Name Node** - ukládá metadata   * **Name Node** - ukládá metadata
Řádek 28: Řádek 38:
       * Získává bloky od ostatních DataNodů ​       * Získává bloky od ostatních DataNodů ​
       * Dostává příkaz delete od NameNode       * Dostává příkaz delete od NameNode
-  * **replikační faktor** většinou 3 2 repliky ve stejném racku, třetí replika mimo+  ​* **Secondary NameNode** 
 +      * pomocník pro NameNode, NE jeho záloha 
 +      * dva soubory  
 +          * **fsimage** - jak vypadá FS poté, co NameNode začal 
 +          * **edit logs** - posloupnost změn na FS poté, co NameNode začal  
 +      * po restartu NN jsou editlogs aplikovány na fsimage, abychom dostali poslední verzi snapshotu FS 
 +      * ale restarty NN jsou vzácné, takže edit logy můžou být hodně velké a merge může dlouho trvat 
 +      * je třeba nějak zmenšit velikost edit logů 
 +  ​* **replikační faktor** většinou 32 repliky ve stejném racku, třetí replika mimo
  
 {{ :​kj:​arch_hadoop2.png?​400| }} {{ :​kj:​arch_hadoop2.png?​400| }}
Řádek 38: Řádek 56:
 ==== Typy souborů ==== ==== Typy souborů ====
  
-  * **řádkové** - CSV, TSV, Avro+  * **řádkové** - CSV, TSV, Avro (obsahuje schéma)
       * vhodné, pokud se ptám často na většinu sloupců       * vhodné, pokud se ptám často na většinu sloupců
   * **sloupcové** - ORC, Parquet ​   * **sloupcové** - ORC, Parquet ​
       * vhodné, pokud se ptám jen na část sloupců       * vhodné, pokud se ptám jen na část sloupců
       * nevhodné pro modifikaci (v Hadoopu netřeba), náročné pro zápis       * nevhodné pro modifikaci (v Hadoopu netřeba), náročné pro zápis
-  ​* SequenceFile - vhodný formát pro hodně malých souborů+      * má metadata až na konci - předtím je ještě nezná, dává smysl 
 +  ​* SequenceFile - data ve formátu klíč, hodnota 
 +      * vhodný formát pro hodně malých souborů
  
 ==== Komprese ==== ==== Komprese ====
kj/hadoop-a-hdfs.txt · Poslední úprava: 18.09.2017 16:16 autor: kj