Introducció a HDFS
El Sistema de Fitxers Distribuït de Hadoop (HDFS) és un component clau de l'arquitectura de Hadoop. HDFS està dissenyat per emmagatzemar grans volums de dades de manera fiable i per proporcionar un accés ràpid a aquestes dades. A continuació, explorarem els conceptes bàsics d'HDFS, la seva arquitectura, les seves característiques principals i com utilitzar-lo.
Objectius d'aprenentatge
- Comprendre la funció i la importància d'HDFS en l'ecosistema Hadoop.
- Familiaritzar-se amb l'arquitectura d'HDFS.
- Aprendre les característiques clau d'HDFS.
- Conèixer les comandes bàsiques per interactuar amb HDFS.
Arquitectura d'HDFS
Components Principals
HDFS està format per dos components principals:
- Namenode: El servidor mestre que gestiona el sistema de fitxers i regula l'accés als fitxers per part dels clients.
- Datanodes: Els servidors que emmagatzemen les dades reals. Cada Datanode gestiona l'emmagatzematge de les dades en el node on s'executa.
Funcionament
- Namenode: Manté la informació sobre la ubicació dels blocs de dades en els Datanodes. També gestiona les operacions de lectura i escriptura dels fitxers.
- Datanodes: Emmagatzemen les dades en blocs i informen periòdicament al Namenode sobre l'estat dels blocs que emmagatzemen.
Diagrama de l'Arquitectura d'HDFS
+-----------------+ +-----------------+ | Client | | Client | +--------+--------+ +--------+--------+ | | | | v v +--------+--------+ +--------+--------+ | Namenode | | Namenode | +--------+--------+ +--------+--------+ | | | | v v +--------+--------+ +--------+--------+ | Datanode | | Datanode | +--------+--------+ +--------+--------+ | | | | v v +--------+--------+ +--------+--------+ | Datanode | | Datanode | +-----------------+ +-----------------+
Característiques Clau d'HDFS
- Alta Disponibilitat: HDFS replica les dades en múltiples Datanodes per garantir la disponibilitat i la tolerància a fallades.
- Escalabilitat: Pot gestionar petabytes de dades i escalar horitzontalment afegint més Datanodes.
- Tolerància a Fallades: En cas de fallada d'un Datanode, les dades es poden recuperar des d'altres Datanodes que contenen rèpliques dels blocs.
- Accés a Dades en Flux: Optimitzat per a lectures i escriptures seqüencials de grans volums de dades.
Comandes Bàsiques d'HDFS
Llistar Fitxers
Crear un Directori
Copiar Fitxers des del Sistema Local a HDFS
Copiar Fitxers des d'HDFS al Sistema Local
Eliminar Fitxers o Directoris
Exercicis Pràctics
Exercici 1: Crear i Llistar un Directori en HDFS
- Crea un directori anomenat
exercici1
a HDFS. - Llista el contingut del directori
exercici1
.
Solució
# Crear el directori hdfs dfs -mkdir /exercici1 # Llistar el contingut del directori hdfs dfs -ls /exercici1
Exercici 2: Copiar un Fitxer a HDFS i Descarregar-lo
- Copia un fitxer anomenat
dades.txt
des del sistema local a HDFS en el directoriexercici1
. - Descarrega el fitxer
dades.txt
des d'HDFS al sistema local.
Solució
# Copiar el fitxer a HDFS hdfs dfs -put /ruta/local/dades.txt /exercici1/dades.txt # Descarregar el fitxer des d'HDFS hdfs dfs -get /exercici1/dades.txt /ruta/local/dades.txt
Resum
En aquesta secció, hem après sobre el Sistema de Fitxers Distribuït de Hadoop (HDFS), incloent la seva arquitectura, components principals i característiques clau. També hem explorat algunes comandes bàsiques per interactuar amb HDFS i hem realitzat exercicis pràctics per reforçar els conceptes apresos. En la següent secció, aprofundirem en el Marc MapReduce, un altre component fonamental de l'ecosistema Hadoop.
Curs de Hadoop
Mòdul 1: Introducció a Hadoop
- Què és Hadoop?
- Visió general de l'ecosistema Hadoop
- Hadoop vs Bases de dades tradicionals
- Configuració de l'entorn Hadoop
Mòdul 2: Arquitectura de Hadoop
- Components bàsics de Hadoop
- HDFS (Sistema de fitxers distribuït de Hadoop)
- Marc MapReduce
- YARN (Yet Another Resource Negotiator)
Mòdul 3: HDFS (Sistema de fitxers distribuït de Hadoop)
Mòdul 4: Programació MapReduce
- Introducció a MapReduce
- Flux de treball d'una feina MapReduce
- Escriure un programa MapReduce
- Tècniques d'optimització de MapReduce
Mòdul 5: Eines de l'ecosistema Hadoop
Mòdul 6: Conceptes avançats de Hadoop
- Seguretat de Hadoop
- Gestió de clústers de Hadoop
- Ajust de rendiment de Hadoop
- Serialització de dades de Hadoop
Mòdul 7: Aplicacions reals i estudis de cas
- Hadoop en emmagatzematge de dades
- Hadoop en aprenentatge automàtic
- Hadoop en processament de dades en temps real
- Estudis de cas d'implementacions de Hadoop