Hem Personliga finanser Håll reda på datablock med NameNode i HDFS - dummies

Håll reda på datablock med NameNode i HDFS - dummies

Innehållsförteckning:

Video: Sammansättning av skåpstomme med centrumtappborrmaskinen. 2024

Video: Sammansättning av skåpstomme med centrumtappborrmaskinen. 2024
Anonim

NamnNoden fungerar som adressboken för Hadoop Distributed File System (HDFS) eftersom det inte vet endast vilka block som utgör enskilda filer, men också var var och en av dessa block och deras replikor lagras. När en användare lagrar en fil i HDFS, är filen uppdelad i datablock och tre kopior av dessa datablock lagras i slavnoder i hela Hadoop-klyftan.

Det finns många datablock för att hålla reda på. Som du kanske förväntar dig, vet du var kroppen är begravd, gör NameNode en kritiskt viktig komponent i ett Hadoop-kluster. Om NameNode inte är tillgängligt kan program inte få tillgång till data som lagras i HDFS.

Om du tittar på följande bild kan du se namnet Namnodem som körs på en huvudnodningsservern. All kartinformation som hanterar datablocken och deras motsvarande filer lagras i en fil som heter.

HDFS är ett journaling-filsystem, vilket innebär att alla dataändringar loggas i en redigeringsjournal som spårar händelser sedan den sista kontrollpunkten - sista gången då redigeringsloggen slogs samman. I HDFS upprätthålls redigeringsjournalen i en fil med namnet som lagras på NameNode.

NameNode start och drift

För att förstå hur NameNode fungerar, är det bra att titta på hur det börjar. Eftersom namnet med NameNode är att informera om hur många datablock de behöver för att bearbeta och hålla reda på den exakta platsen där de lagras behöver den alla blockpositioner och block-to-file mappings som finns tillgängliga i BAGGE.

Det här är stegen som NameNode tar. För att ladda all information som NamnNoden behöver efter det att den startas sker följande:

  1. NamnNoden laddar filen i minnet.

  2. NamnNoden laddar filen och återspelar de journalerade ändringarna för att uppdatera blockmetadata som redan finns i minnet.

  3. DataNode-daemonerna skickar namnen Blockera rapporter.

    För varje slavnod finns en blockrapport som listar alla datablock som finns lagrade där och beskriver hälsan för var och en.

Efter att startprocessen är klar har NameNode en komplett bild av alla data som är lagrade i HDFS, och den är redo att ta emot ansökningsförfrågningar från Hadoop-klienter.

Eftersom datafiler läggs till och tas bort baserat på klientförfrågningar skrivs ändringarna till slavnodens diskvolymer, journaluppdateringar görs till filen och ändringarna återspeglas i blockplatserna och metadata som är lagrade i namnet på NameNode.

Under hela klusterlivet skickar DataNode-daemonerna NameNode-hjärtslag (en snabbsignal) var tredje sekund, vilket indikerar att de är aktiva.(Det här standardvärdet kan konfigureras.) Varje sex timmar (igen en konfigurerbar standard) skickar DataNoder NameNode en blockrapport som beskriver vilka filblock som finns på deras noder. På så sätt har NameNode alltid en aktuell vy över tillgängliga resurser i klustret.

Skriva data

För att skapa nya filer i HDFS måste följande process ske:

  1. Klienten skickar en begäran till NameNode för att skapa en ny fil.

    Namnnoden bestämmer hur många block som behövs, och klienten får ett leasingavtal för att skapa dessa nya filblock i klustret. Som en del av detta leasingavtal har klienten en tidsgräns för att slutföra skapningsuppgiften. (Denna tidsgräns säkerställer att lagringsutrymmet inte tas upp vid misslyckade klientapplikationer.)

  2. Klienten skriver sedan de första kopiorna av filblocken till slavnoderna med hjälp av det leasingavtal som tilldelats av NameNode.

    NameNode hanterar skrivförfrågningar och bestämmer var filblokken och deras replikor måste skrivas, balansera tillgänglighet och prestanda. Den första kopian av ett filblock är skrivet i ett rack, och den andra och tredje kopian är skriven på ett annat rack än den första kopian, men i olika slavnoder i samma rack. Detta arrangemang minimerar nätverkstrafiken samtidigt som det säkerställs att inga datablock är på samma misslyckande punkt.

  3. Eftersom varje block är skrivet till HDFS skriver en särskild process de återstående replikerna till de andra slavnoderna som identifieras av NameNode.

  4. Efter att DataNode-daemonerna har bekräftat att filblockreplikor har skapats stänger klientprogrammet filen och meddelar namnet Noden, vilket stänger öppet leasingavtal.

Läser data

För att läsa filer från HDFS måste följande process ske:

  1. Klienten skickar en begäran till NameNode för en fil.

    NameNode bestämmer vilka block som är inblandade och väljer, baserat på blockens övergripande närhet till varandra och till klienten, den mest effektiva åtkomstvägen.

  2. Klienten får sedan åtkomst till blocken med de adresser som ges av NameNode.

Balansering av data i Hadoop-klyftan

Över tiden, med kombinationer av ojämna dataintagningsmönster (där vissa slavnoder kan ha mer data skrivna till dem) eller nodefel, kommer data sannolikt att vara ojämnt fördelade över rackarna och slavnoder i ditt Hadoop-kluster.

Denna ojämn fördelning kan ha en negativ inverkan på prestanda eftersom efterfrågan på enskilda slavnoder kommer att bli obalanserad. noder med små data kommer inte att användas fullt ut; och noder med många block kommer att vara överanvända. ( Obs: Överanvändningen och underanvändningen är baserad på diskaktivitet, inte på CPU eller RAM.)

HDFS innehåller ett balanseringsverktyg för att omfördela block från överutnyttjade slavnoder till underutnyttjade enheter, samtidigt som man håller fast att block på olika slave noder och ställen. Hadoop-administratörer bör regelbundet kontrollera HDFS-hälsa, och om uppgifterna blir ojämnt fördelade bör de anropa balanserverktyget.

NameNode masterserverdesign

På grund av sin missionskritiska karaktär behöver mästarservern som kör NameNode-demonen markant olika hårdvarukrav än de för en slavnod. Mest viktigt måste komponenter på företagsnivå användas för att minimera sannolikheten för ett avbrott. Dessutom behöver du tillräckligt med RAM för att ladda alla metadata och platsdata i minnet om alla datablock som är lagrade i HDFS.

Håll reda på datablock med NameNode i HDFS - dummies

Redaktörens val

Jewish Funeral Traditions - dummies

Jewish Funeral Traditions - dummies

Judiska begravningar sker vanligen i en synagoge, begravningshem eller på en kyrkogård. Med tradition är judiska begravningar enkla (symboliserar tron ​​att människor är alla lika i döden), men de varierar mycket och har ingen uppsättning liturgi. Att skicka blommor till ett begravnings- eller sorgshem är starkt avskräckt i judendomen. Inte bara kommer ...

Identifiera komplicerade grävande dummies

Identifiera komplicerade grävande dummies

Komplicerat roende är det tekniska namnet som sorgproffs ger till en sorgprocess som sitter fast vid något tillfälle , vilket gör det omöjligt för de förlorade att framgångsrikt starta eller avsluta sorgprocessen. Komplicerat sorg är ofta ett tecken på olösta problem i förhållandet mellan de förlorade och den avlidne som gör det ...

Redaktörens val

Hur man ställer in kartkontroller i Main_iPad. Storyboard i din iOS App - dummies

Hur man ställer in kartkontroller i Main_iPad. Storyboard i din iOS App - dummies

När du har en anpassad vy för MapController i din iOS-app, måste du berätta för iPad-storyboardet att du laddar in din anpassade vy i stället för en UIViewController. Följ dessa steg: Välj Projekt navigator genom att välja Main_iPad. storyboard och välj sedan View Controller i View Controller - Map Scene i dokumentutskriften. ...

Hur man roterar objekt i din iOS-app - dummies

Hur man roterar objekt i din iOS-app - dummies

Här hittar du hur man rotera en vy (i så fall vrid bilen runt) i din iOS-app. För att göra det uppdaterar du den roterande kodstuben du startade med och ersätter den med den fetstilta koden. - (void) rotera {CGAffineTransform transform = CGAffineTransformMakeRotation (M_PI); void (^ animation) () = ^ () {self. bil. transformera = transformera; ...

Hur man ställer in en WeatherController i Main_iPad. storyboard-fil för din iOS-app - dummies

Hur man ställer in en WeatherController i Main_iPad. storyboard-fil för din iOS-app - dummies

Bör du lägga till en ny anpassad vykontroll till din iOS-app innan du fortsätter till dessa steg. Du behöver fortfarande berätta för storyboardet att du vill att den ska ladda den nya anpassade vykontrollen istället för en UIViewController. Följ dessa steg:

Redaktörens val

Spara en grafisk stil i Adobe CS5 Illustrator - dummies

Spara en grafisk stil i Adobe CS5 Illustrator - dummies

Adobe Creative Suite 5 (Adobe CS5) Illustrator tillåter Du sparar en grafisk stil. En grafisk stil är en kombination av alla inställningar du väljer för ett visst filter eller en effekt i Utseendepanelen. Genom att spara informationen i en grafisk stil lagras du dessa attribut så att du snabbt och enkelt kan tillämpa ...

Välj som ett transformationsverktyg i Adobe CS5 Illustrator - dummies

Välj som ett transformationsverktyg i Adobe CS5 Illustrator - dummies

I Adobe Creative Suite 5 (Adobe CS5 ) Illustratör du kan använda markeringsverktyget för att skala och rotera ett valt objekt. Dra begränsningsboxens handtag för att ändra storlek på objektet, eller flytta dig utanför ett handtag och sedan, när markören ändras till en flippig pil (en böjd pil med pilhuvud i båda ändarna), dra till ...

Objekttransformation i Adobe CS5 Illustrator - dummies

Objekttransformation i Adobe CS5 Illustrator - dummies

Verktygen Rotate, Reflect, Scale och Shear i Adobe Creative Suite 5 (Adobe CS5) Illustrator använder alla samma grundläggande steg för att utföra transformationer. Här är fem sätt att transformera ett objekt: en för en godtycklig omvandling och fyra andra för exakta omvandlingar baserat på en numerisk mängd som du anger. Vilkårlig omvandlingsmetod Eftersom detta ...