Video: Cursuri de Utilizare PC / Windows 10 pentru incepatori - 6 / 11- File Explorer, gestiunea fisierelor 2024
HDFS este una dintre cele două componente principale ale cadrului Hadoop; cealaltă este paradigma computațională cunoscută sub numele de MapReduce. Un sistem de fișiere distribuit este un sistem de fișiere care gestionează stocarea într-un grup de mașini în rețea. HDFS stochează date în
blocuri , unități a căror dimensiune implicită este de 64MB. Fișierele pe care doriți să le stocați în HDFS trebuie să fie împărțite în bucăți de dimensiune bloc care sunt apoi stocate independent în întregul grup. Puteți folosi comanda liniei fsck pentru a lista blocurile care alcătuiesc fiecare fișier în format HDFS, după cum urmează:
Deoarece Hadoop este scris în Java, toate interacțiunile cu HDFS sunt gestionate prin Java API. Rețineți, totuși, că nu trebuie să fiți un guru Java pentru a lucra cu fișiere în HDFS. Mai multe interfețe Hadoop construite pe partea de sus a API-ului Java sunt acum utilizate în comun (și ascund Java), dar cea mai simplă este interfața de linie de comandă; utilizați linia de comandă pentru a interacționa cu HDFS în exemplele furnizate.
Accesați shell-ul sistemului de fișiere Hadoop executând o formă a comenzii hadoop. Toate comenzile hadoop sunt invocate de scriptul bin / hadoop. (Pentru a prelua o descriere a tuturor comenzilor hadoop, rulați scriptul hadoop fără a specifica argumente.) Comanda hadoop are sintaxa hadoop [--config confdir] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS]
opțiunea config confdir suprascrie directorul de configurare implicit ($ HADOOP_HOME / conf), astfel încât să puteți ușor personaliza configurația de mediu Hadoop. Opțiunile generice și opțiunile de comandă reprezintă un set comun de opțiuni care sunt acceptate de mai multe comenzi.
URI este un șir de caractere care se utilizează pentru a identifica un nume sau o resursă web. Șirul poate include un nume de sistem
- un calificativ pentru natura sursei de date. Pentru HDFS, numele schemei este hdfs, iar pentru sistemul de fișiere local, numele schemei este fișier. Dacă nu specificați un nume de schemă, implicit este numele schemei specificat în fișierul de configurare. Un fișier sau un director în HDFS poate fi specificat într-un mod complet calificat, cum ar fi în acest exemplu: hdfs: // namenodehost / parent / child
Sau poate fi simplu / parent / child la hdfs: // namenodehost.
Comenzile shell-ului sistemului de fișiere Hadoop, care sunt similare cu comenzile de fișiere Linux, au următoarea sintaxă generală:
hadoop hdfs dfs -
file_cmd Cititorii cu o experiență anterioară Hadoop ar putea întreba: despre comanda hasoop fs?"Comanda fs este depreciată în seria de lansări Hadoop 0. 2, dar nu funcționează încă în Hadoop 2. Utilizați hdfs dfs în schimb.
Așa cum v-ați putea aștepta, utilizați comanda mkdir pentru a crea un director în HDFS, la fel cum ați face pe Linux sau pe sistemele de operare bazate pe Unix. Deși HDFS are un director de lucru implicit, / user / $ USER, unde
$ USER este numele dvs. de utilizator de autentificare, trebuie să îl creați singur folosind sintaxa $ hadoop hdfs dfs -mkdir /
login_user_name De exemplu, pentru a crea un director numit "joanna", executați această comandă mkdir:
$ hadoop hdfs dfs -mkdir / user / joanna
sistemul de fișiere local la HDFS:
$ hadoop hdfs dfs -put
numele fișierului / user / login_user_name De exemplu, pentru a copia un fișier numit date. txt la acest nou director, executați următoarea comandă pus:
$ hadoop hdfs dfs -put data. txt / user / joanna
Rulați comanda ls pentru a obține o listă de fișiere HDFS:
$ hadoop hdfs dfs -ls. S-au găsit 2 articole drwxr-xr-x - joanna supergroup 0 2013-06-30 12: 25 / user / joanna -rw-r- r-- 1 joanna supergroup 118 2013-06-30 12: 15 / user / joanna / date.
Coloana 1 afișează modul
fișier
-
("d" pentru director și "-" pentru fișierul normal, urmat de permisiuni). Cele trei tipuri de permisiuni - citiți (r), scrieți (w) și executați (x) - sunt aceleași pe care le găsiți pe sistemele Linux și Unix. Permisiunea de executare pentru un fișier este ignorată, deoarece nu puteți executa un fișier pe HDFS. Permisiunile sunt grupate după proprietar, grup și public (toți ceilalți). Coloana 2 prezintă factorul de replicare pentru fișiere. (Conceptul de replicare nu se aplică directoarelor.) Blocurile care compun un fișier în HDFS sunt replicate pentru a asigura toleranța la erori. Factorul de replicare
-
, sau numărul de replici care sunt păstrate pentru un anumit fișier, este configurabil. Puteți specifica factorul de replicare atunci când fișierul este creat sau mai târziu, prin intermediul aplicației. Coloanele 3 și 4 prezintă fișierul proprietar
-
și grup . Supergroup este numele grupului de superuseri, iar un superuser este utilizatorul cu aceeași identitate ca procesul NameNode. Dacă începeți NameNode, sunteți superutilizator deocamdată. Acesta este un grup special - utilizatorii obișnuiți vor avea utilizatorii săi aparțin unui grup fără caracteristici speciale - un grup care este pur și simplu definit de un administrator Hadoop. Coloana 5 arată dimensiunea fișierului, în octeți sau 0 dacă este un director. Coloanele 6 și 7 indică data și ora ultimei modificări, respectiv.
-
Coloana 8 indică numele necalificat (ceea ce înseamnă că numele schemei nu este specificat) al fișierului sau al directorului.
-
Utilizați comanda Hadoop get pentru a copia un fișier din HDFS în sistemul de fișiere local:
-
$ hadoop hdfs dfs -get
numele fișierului
/ user / login_user_name comanda pentru a șterge un fișier sau un director gol: $ hadoop hdfs dfs -rm
numele fișierului
/ user / login_user_name Utilizați comanda hdfs dfs -help pentru a obține ajutor detaliat pentru fiecare opțiune.