180 likes | 280 Views
HDFS. Hadoop Distributed File System. Problem. Chcemy odczytać a następnie przetworzyć 1 TB danych 1 komputer , 4 dyski , 100Mb/s każdy = 45 min 10 komputerów , 4 dyski , 100MB/s każdy = 4,5 min Problemy Niezawodność komputerów Wielkość klastra
E N D
HDFS Hadoop Distributed File System
Problem • Chcemyodczytać a następnieprzetworzyć1 TB danych • 1 komputer, 4 dyski, 100Mb/s każdy = 45 min • 10 komputerów, 4 dyski, 100MB/s każdy = 4,5 min • Problemy • Niezawodnośćkomputerów • Wielkośćklastra • Wspólnainfrastruktura (wydajnainiezawodna)
Rozwiązanie - Hadoop • Hadoop Core • Rozproszony system plików • Map/Reduce • Open Source – Apache • Java • Środowiska: Linux, Windows, OS X, Solaris • Start w 2004
HDFS • Zarządzaneprzezjedenwęzeł – transmisja z wieloma • Plikisądzielone • Transparentnie • Typowawielkośćbloków 64 MB (4KB Unix) • Replikowane • Wręczliniowaskalowalność • Dostęppoprzez Java, C, liniękomend • Działanaistniejącymsystemieplików (ext3, ext4, XFS) • Google GFS
Typywęzłów • HDFS • NameNode • DataNode • Map/Reduce • JobTracker • TaskTracker
NameNode • Tylkojeden w klastrze • Utrzymujeinformacje o systemieplików • Single Point of Failure • Dane trzymane w pamięci RAM • Liczbaplików w klastrzeograniczonawielkośćiąpamięci RAM • Secondary NameNode – przechowujekopięmetadanych
DataNode • Wiele w klastrze • Zarządzablokamidanych • Obsługujeklienta • Okresowowysyłazawartośćwęzła do NameNode
Block Placement • Domyślnie 3 repliki • Umiejscowienie (Rack Awareness) • Na tymsamymwęźle • W innejszafie • W jeszczeinnejszafie • Dane czytanesą z najbliższegomiejsca • Re-replikacja
Poprawnośćdanych • CRC32 • Tworzeniepliku • Suma kontrolnanakażde 512 bajtów – generowaneprzezklienta • PrzechowywanenaDataNode • Odczytpliku • Dane isumakontrolnaprzesyłana do klienta I weryfikowana • OkresowawalidacjaprzezDataNode
Web UI • NameNode • DataNode • JobTracker
Bonus • Import Checkpoint • Rebalancer • Rack Awareness • Safemode • Fsck • Recovery Mode • Upgrade and rollback • File permissions and security • Scalability • Synthetic Load Generator • WebHDFS REST API
Ktokorzysta • Amazon • Adobe • Alibaba • eBay • Facebook • IBM • Last.fm • LinkedIn • Powerset / Microsoft • Yahoo – 40 tys. Komputerów, 4500 węzłów