Hem Personliga finanser Hantera filer med Hadoop-filsystemkommandon - dummies

Hantera filer med Hadoop-filsystemkommandon - dummies

Video: Datorns grundfunktioner: hantera filer och mappar 2024

Video: Datorns grundfunktioner: hantera filer och mappar 2024
Anonim

HDFS är en av de två huvudkomponenterna i Hadoop-ramen; den andra är beräknings paradigmet som kallas MapReduce. Ett distribuerat filsystem är ett filsystem som hanterar lagring över ett nätverkskluster av maskiner.

HDFS lagrar data i block , enheter vars standardstorlek är 64 MB. Filer som du vill lagra i HDFS måste delas upp i blockstorlekstycken som sedan lagras oberoende i hela klustret. Du kan använda kommandot fsck line för att lista de block som utgör varje fil i HDFS, enligt följande:

% hadoop fsck / -files-blocks

Eftersom Hadoop är skrivet i Java hanteras alla interaktioner med HDFS via Java API. Tänk på att du inte behöver vara en Java-guru för att arbeta med filer i HDFS. Flera Hadoop-gränssnitt som byggdes ovanpå Java API är nu vanligt förekommande (och döljer Java), men det enklaste är kommandoradsgränssnittet; använd kommandoraden för att interagera med HDFS i de angivna exemplen.

Du kommer åt Hadoop-filsystemskalet genom att köra en form av hadoop-kommandot. Alla hadoop-kommandon påkallas av bin / hadoop-skriptet. (För att hämta en beskrivning av alla hadoopkommandon, kör Hadoop-skriptet utan att ange några argument.) Hadoop-kommandot har syntaxen

hadoop [--config confdir] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS]

config confdir-alternativet överskrider standardkonfigurationsmappen ($ HADOOP_HOME / conf), så du kan enkelt anpassa din Hadoop-miljökonfiguration. De generiska alternativen och kommandonalternativen är en vanlig uppsättning alternativ som stöds av flera kommandon.

Hadoop-filsystemskallkommandon (för kommandoradsgränssnitt) tar likformiga resursidentifierare (URI) som argument. En URI är en sträng av tecken som används för att identifiera ett namn eller en webresurs.

Strängen kan innehålla ett schema namn - en kvalificering för datakällans natur. För HDFS är programnamnet hdfs, och för det lokala filsystemet är programnamnet fil. Om du inte anger ett schemanamn är standardnamnet det namn som anges i konfigurationsfilen. En fil eller katalog i HDFS kan anges på ett fullständigt kvalificerat sätt, som i det här exemplet:

hdfs: // namenodehost / parent / child

Eller det kan helt enkelt vara / förälder / barn om konfigurationsfilen pekar till hdfs: // namenodehost.

Skalkommandon för Hadoop-filsystem, som liknar Linux-filkommandon, har följande allmänna syntax:

hadoop hdfs dfs - file_cmd

Läsare med tidigare Hadoop-upplevelse kan fråga "Men vad om hadoop fs kommandot?"Fs-kommandot avlägsnas i Hadoop 0. 2-serien, men det fungerar fortfarande i Hadoop 2. Använd hdfs dfs istället.

Som du kanske förväntar dig använder du kommandot mkdir för att skapa en katalog i HDFS, precis som du skulle göra på Linux eller på Unix-baserade operativsystem. Även om HDFS har en standardkatalog, / användare / $ USER, där $ USER är ditt användarnamn, måste du skapa det själv med hjälp av syntaxen

$ hadoop hdfs dfs -mkdir / user / login_user_name

Om du vill skapa en katalog med namnet "joanna" kör du det här mkdir-kommandot:

$ hadoop hdfs dfs -mkdir / user / joanna

Använd kommandot Hadoop put för att kopiera en fil från ditt lokala filsystem till HDFS:

$ hadoop hdfs dfs -put filnamn / user / login_user_name

Till exempel kopiera en fil med namnet. txt till den här nya katalogen, kör följande kommando:

$ hadoop hdfs dfs -put-data. txt / user / joanna

Kör kommandot ls för att få en HDFS-fillista:

$ hadoop hdfs dfs -ls. Hittade 2 objekt drwxr-xr-x - joanna supergroup 0 2013-06-30 12: 25 / användare / joanna -rw-r - r-- 1 joanna supergroup 118 2013-06-30 12: 15 / user / joanna / data. txt

Filförteckningen bryts ned enligt beskrivningen i den här listan:

  • Kolumn 1 visar filläge ("d" för katalog och "-" för normal fil, följt av behörigheterna). De tre tillståndstyperna - läs (r), skriv (w) och exekvera (x) - är samma som du hittar på Linux- och Unix-baserade system. Exekveringsbehörigheten för en fil ignoreras eftersom du inte kan utföra en fil på HDFS. Tillstånden grupperas av ägare, grupp och allmänhet (alla andra).

  • Kolumn 2 visar replikationsfaktorn för filer. (Begreppet replikering gäller inte kataloger.) Blockerna som utgör en fil i HDFS replikeras för att säkerställa feltolerans. replikeringsfaktorn, eller antalet replikor som hålls för en specifik fil, kan konfigureras. Du kan ange replikeringsfaktorn när filen skapas eller senare, via din applikation.

  • Kolumnerna 3 och 4 visar filen ägare och gruppen . Supergrupp är namnet på gruppen superusers, och en superuser är användaren med samma identitet som NameNode-processen. Om du startar NameNode är du superanvändare för nu. Det här är en speciell grupp - vanliga användare kommer att ha sina användaruppgifter tillhör en grupp utan speciella egenskaper - en grupp som helt enkelt definieras av en Hadoop-administratör.

  • Kolumn 5 visar filens storlek, i byte eller 0 om det är en katalog.

  • Kolumnerna 6 och 7 visar datum och tid för respektive ändringar.

  • Kolumn 8 visar det okvalificerade namnet (vilket betyder att programnamnet inte är angivet) för filen eller katalogen.

Använd Hadoop get-kommandot för att kopiera en fil från HDFS till ditt lokala filsystem:

$ hadoop hdfs dfs -get filnamn / user / login_user_name

Använd Hadoop rm kommando för att ta bort en fil eller en tom katalog:

$ hadoop hdfs dfs -rm filnamn / user / login_user_name

Använd kommandot hadoop hdfs dfs -help för att få detaljerad hjälp för alla alternativ.

Hantera filer med Hadoop-filsystemkommandon - dummies

Redaktörens val

Hur man lägger till text i en sätter () Funktion i C Programmering

Hur man lägger till text i en sätter () Funktion i C Programmering

När du behöver visa en annan textrad, använd C-programmeringsfärdigheterna för att skapa en annan puts () -funktion i källkoden, som visas i Visa två textlinjer. VISA TILL TEXTFINER # inkludera int main () {sätter ("Hickory, Dickory, Dock,"); sätter ("musen sprang klockan."); returnera (0);} Den andra ...

Förklarar variabler i C-dummies

Förklarar variabler i C-dummies

Variabler är det som gör dina program zooma. Programmering kan bara inte bli gjort utan dem. Så om du inte har introducerats till variabler än, här går du. Valerie Variable är en numerisk variabel. Hon älskar att hålla nummer - vilket nummer som helst; det spelar ingen roll. När hon ser ett lika tecken tar hon ett värde och ...

Redaktörens val

Gör rädsla för din vän - dummies

Gör rädsla för din vän - dummies

Rädsla är lika verklig som mod. Även om värdet av rädsla inte är lika uppenbart som modets värde, har det dess fördelar. Rädsla är din instinkt som säger att du är obehaglig - även om situationen inte kommer att skada dig. Alla har haft den känslan när man hellre drar locket ...

Hur man ökar din självmedvetenhet - dummies

Hur man ökar din självmedvetenhet - dummies

Du kommer att vara med dig själv under en livstid. Ingenting kommer att förändra det faktum. Att lära känna, som att lyssna på och uppskatta själv är avgörande för din sanity. Kanske kommer du till att älska, acceptera och omfamna alla du är, är svår för dig att föreställa dig just nu, men du kan göra ...

Hur man ökar din mentala flexibilitet - dummies

Hur man ökar din mentala flexibilitet - dummies

ÄR flexibel i arbete och relationer är ett tecken på en högpresterande. Medan perfektionister är styva och obehagliga i sitt arbete och hur de interagerar med andra, är högpresterande mer öppna och tillmötesgående. Att vara mer flexibel på jobbet gav Ralph aldrig förslag under brainstorming vid gruppmöten. Han kände att hans lag ...

Redaktörens val

Nätverksadministration: Linux-installation och virtuella konsoler - dummies

Nätverksadministration: Linux-installation och virtuella konsoler - dummies

Linux är i sig ett kommandoradsorienterat operativsystem. Grafiska användargränssnitt - inklusive installationsprogrammets GUI - tillhandahålls av en valfri komponent som heter X Window System. Men medan du arbetar med det grafiska användargränssnittet för installationsprogrammet, håller Linux flera ytterligare kommandorads-konsoler öppna. Normalt behöver du inte ...

Nätverksadministration: Linux-loggning, logg och systemavstängning - dummies

Nätverksadministration: Linux-loggning, logg och systemavstängning - dummies

Alla användare som åtkomst ett Linux-system, lokalt eller över ett nätverk, måste verifieras av ett giltigt användarkonto på systemet. I det följande får du veta hur du loggar in och ut på ett Linux-system och hur du stänger av systemet. Logga in När Linux startar upp visas det ...

Nätverksadministration: Licensserver - Dummies

Nätverksadministration: Licensserver - Dummies

I vissa program kan du köpa nätverkslicenser som gör att du kan installera programvaran på många datorer som du vill, men reglera antalet personer som kan använda programvaran vid en viss tidpunkt. För att styra hur många som använder programvaran, är en särskild licensserver inrättad. När en användare börjar ...