2014-04-20 10 views
5

Jestem programistą java, ucząc się Hadoop. Przeczytałem, że węzeł Nazwa w HDFS przechowuje informacje w dwóch plikach, mianowicie fsImage & editLog. W przypadku uruchomienia odczytuje te dane z dysku & wykonuje operację punktu kontrolnego.Gdzie znajduje się Sklep z nazwami fsImage and edit Log?

Ale w wielu miejscach czytałem również, że Name Node przechowuje dane w pamięci RAM &, dlatego apache zaleca maszynę z wysoką pamięcią RAM dla serwera Name Node.

Proszę mnie o tym poinformować. Jakie dane przechowują w pamięci RAM & skąd przechowuje fsImage and edit Log?

Przepraszam, jeśli zapytałem o coś oczywistego.

Odpowiedz

5

Pozwól mi najpierw odpowiedź

Jakie dane przechowywać w pamięci RAM & gdzie to przechowywać fsImage i edytować bali?

W pamięci RAM - plik do blokowania i blokowania mapowania węzłów danych. W magazynie trwałym (zawiera zarówno dziennik edycji, jak i plik fsimage) - metadane związane z plikiem (uprawnienia, nazwa itd.)

Odnośnie miejsca przechowywania odpowiedzi fsimage i editlog @ mashuai jest natychmiastowa.

Dla bardziej szczegółowej dyskusji można przeczytać na this

3

Przechowuje fsimage i editlog w dfs.name.dir, jest w hdfs-site.xml. Po uruchomieniu klastra NameNode ładuje fsimage i editlog do pamięci.

4

Kiedy zaczyna namenode, ładuje fsimage z pamięci trwałej (dysku) to miejsce określonej przez właściwość dfs.name.dir (Hadoop-1.x) lub dfs.namenode.name.dir (Hadoop-2.x) w hdfs-site.xml. Fsimage jest ładowany do pamięci głównej. Również, jak prosiłeś podczas uruchamiania namenode, wykonuje operację punktu kontrolnego. Namenode utrzymuje obraz Fs w pamięci RAM, aby szybko obsłużyć żądania.

Oprócz początkowego punktu kontrolnego, kolejne punkty kontrolne mogą być kontrolowane przez dostrojenie następujących parametrów w hdfs-site.xml.

dfs.namenode.checkpoint.period  # in second 3600 Secs by default 
dfs.namenode.checkpoint.txns   # No of namenode transactions 
0

Fsimage i editlog są przechowywane w dfs.name.dir, to w HDFS-site.xml. Podczas uruchamiania klastra, NameNode ładuje fsimage i editlog do pamięci (RAM).

0

Po uruchomieniu węzła Nazwa przechodzi w tryb awaryjny. Ładuje obraz FSImage z trwałego magazynu i odtwarza dzienniki edycji, aby utworzyć zaktualizowany widok pamięci HDFS (PLIK DO MAPY BLOKU). Następnie zapisuje zaktualizowany plik FSImage do trwałego magazynu. Teraz węzeł Nazwa oczekuje na raporty bloków z węzłów danych. Z raportów blokowych tworzy BLOCK TO DATA NODE MAPPING. Kiedy węzeł nazwa otrzymał pewien próg raportów bloków, wychodzi z trybu awaryjnego, a węzeł nazwa może zacząć obsługiwać żądania klientów. Za każdym razem, gdy jakakolwiek zmiana w meta danych wykonywana przez klienta, NameNode (NN) najpierw zapisuje zmiany rzeczowe w segmencie dziennika edycyjnego z rosnącą identyfikacją transakcji do trwałej pamięci masowej (Hard Disk). Następnie aktualizuje FSImage obecny w swojej pamięci RAM.

+0

Zobacz najpierw [jak-odpowiedź] (https://stackoverflow.com/help/how-to-answer) –

Powiązane problemy