SlideShare una empresa de Scribd logo
1 de 39
Fernando Contrera
Big Data computación
distribuida
Módulo III
Aprendizaje
• Comprender sobre las tecnologías para el
procesamiento de big data.
• Entender el sistema de archivos
distribuidos (HDFS)
• Visualizar la arquitectura Maestro-Esclavo.
• Diferenciar los tipos de archivos: texto y
secuencias
• Comprender sobre el administrador de
recursos YARN
Objetivos
Hadoop HDFS
• Hadoop es un sistema no
relacional de almacenamiento y
procesamiento de datos
distribuido en clústers de
computadoras.
• Fue diseñado para afrontar los
desafíos de analizar y procesar
grandes volúmenes de datos a
gran escala.
¿Qué es Hadoop?
Procesamiento Big Data
Fragmentación de datos
• Debido a proveer una arquitectura
escalable usando software básico,
donde cada nodo sirve como
servidor de datos y
procesamiento, los archivos se
dividen en fragmentos de 64MB
c/u (configurable) y se almacenan
cada porción en múltiples nodos.
• Afronta los desafíos: de fallos de
nodos, redes de cuello de botella
y programación distribuida.
¿Por qué la computación distribuida?
Fragmentación de datos
• Sólo un nodo puede ser definido
como maestro, el resto son
esclavos.
• El NameNode es el encargado
de realizar los seguimientos de
los contenidos de todos los
DataNodes.
• Cada uno de estos nodos de
datos contienen los fragmentos
de los datos
Arquitectura Maestro - Esclavo
Arquitectura de lectura y escritura HDFS
Fragmentación de datos
• Todos los datos se almacenan en partes de 64MB com tamaño estándar, pero es
configurable.
• Para evitar fallas del servidor y racks, se realizan una copia de seguridad en dos o tres
ubicaciones de todos los datos.
• Los datos se almacenan lo más cercano posible para garantizar el procesamiento
veloz.
• Garantiza la integridad de los datos, una vez escritos no se pueden destruir.
• Para garantizar la velocidad de almacenamiento e integridad de los datos, sólo
funciona en modo APPEND, donde se agregan los registros al final del
almacenamiento existente y no se pueden actualizar.
Características HDFS
• Almacenamiento distribuido: Hadoop permite almacenar grandes cantidades de datos en clústeres de servidores, utilizando una
arquitectura distribuida. Los datos se dividen en bloques y se distribuyen entre los nodos del clúster, lo que proporciona alta
disponibilidad y tolerancia a fallos.
• Procesamiento distribuido: Hadoop utiliza el modelo de programación MapReduce para procesar datos distribuidos en paralelo.
MapReduce divide las tareas en etapas de "map" y "reduce", donde el procesamiento se realiza en los nodos del clúster de forma
independiente y luego se combinan los resultados.
• Escalabilidad: Hadoop es altamente escalable, lo que significa que puede manejar eficientemente grandes volúmenes de datos y
aumentar el tamaño del clúster según sea necesario. Esto permite el procesamiento y almacenamiento de datos a gran escala.
• Tolerancia a fallos: Hadoop es capaz de manejar fallos en los nodos del clúster de forma transparente. Si un nodo falla durante el
procesamiento, los datos y las tareas se redistribuyen automáticamente a otros nodos disponibles, lo que asegura la continuidad
del procesamiento sin interrupciones.
• Análisis de datos: Hadoop es utilizado para el análisis de datos a gran escala, como la minería de datos, el procesamiento de
registros, el análisis de texto, la generación de informes y el análisis de patrones. Las herramientas y bibliotecas de Hadoop,
como Apache Hive, Apache Pig y Apache Spark, permiten realizar consultas y análisis complejos sobre los datos almacenados
en el clúster.
• Almacenamiento de datos no estructurados: Hadoop es adecuado para el almacenamiento y procesamiento de datos no
estructurados o semiestructurados, como archivos de registro, documentos de texto, imágenes, videos y datos de redes sociales.
Usos HDFS
Yet another resource negotiator
• Es un sistema operativo
distribuido a gran escala para
aplicaciones Big Data.
• Gestiona los recursos y supervisa
las cargas de trabajo al tiempo
que garantiza la alta disponibilidad
en múltiples clusters de Hadoop.
• Es una plataforma para ejecutar
múltiples herramientas y
aplicaciones
YARN
• Es un marco para el procesamiento paralelo
con un movimiento mínimo de datos y
resultados casi en tiempo real.
• Tienen dos tipos de trabajos para sus
tareas:
Map: Mapea el trabajo en muchas tareas.
Reduce: combina las entradas de todos
nodos en una salida.
• Sólo un proceso es maestro el resto
esclavo.
• Hay un JobTracker que realiza el
seguimiento de los contenidos de todos los
TaskTraker.
• Cada TaskTracker realiza un seguimiento
de los procesos en un nodo de cálculo.
Map Reduce
Secuencia Map Reduce
Contador de palabras usando Map Reduce
Hadoop framework
Hadoop ecosistema
Instalación local
Lo que aprenderás
• Concepto de docker.
• Instalar docker en tu maquina local.
• Instanciar un contenedor de Hadoop.
• Copiar archivos al contenedor.
• Instanciar comandos HDFS
• Correr la aplicación de contador de palabras
¿Qué es docker?
Docker es una solución de contenedor de
código abierto que le permite en
contenedores y empaquetar una aplicación y
sus dependencias en contenedores Docker
para fines de desarrollo y implementación.
Un contenedor Docker es un entorno
preconfigurado que incluye todas las
instalaciones necesarias para la aplicación
que se ejecuta dentro de él. Cada
contenedor tiene una aplicación en
ejecución, y cada contenedor funciona en el
motor Docker, que a su vez se ejecuta en la
parte superior del sistema operativo host.
Contenedores docker
Configurar Docker y docker-compose
Para configurar este único clúster
Hadoop usando Docker, asegúrese
de que Docker está instalado en su
computadora. Ejecute los siguientes
comandos para asegurarse de que
Docker ya esté configurado para
ejecutar docker-compose.
Configurar Docker y docker-compose
Ejecutar el comando en su terminal:
docker —version y
docker-compose —version, debería
visualizar de la siguiente manera,
puede diferir el número de versión
Comandos utiles docker
Ejecutar el comando en su terminal:
docker ps
Para listar los contenedores activos
y sus características.
Instalar github
Asegúrate de tener git o GitHub
instalado en su computadora.
Corremos el comando git —version
para visualizar nuestra versión.
Configurar un solo clúster Hadoop usando docker-compose
Comenzamos clonando el repositorio docker-Hadoop de Github de la siguiente manera:
git clone https://github.com/big-data-europe/docker-hadoop.git
Configurar un solo clúster Hadoop usando docker-compose
El repositorio de muestra anterior tiene un Hadoop docker-compopose.yml listo y listo para ser desplegado en contenedores
Docker. Navegue a la carpeta clonada y luego ejecute el siguiente comando para iniciar el contenedor usando docker-compose:
Dentro de la carpeta inicia el contenedor con el comando: docker-compose up -d
Configurar un solo clúster Hadoop usando docker-compose
Una vez corrido e instanciado los contenedores corremos el comando docker ps para listar los contenedores activos
Podemos visualizar varios contenedores activos tanto en la terminal como en la aplicación docker
Configurar un solo clúster Hadoop usando docker-compose
Verificamos si el programa inicio correctamente accediendo a nuestro navegador en la siguiente dirección:
http://localhost:9870/ y listo!
Prueba de la aplicación Hadoop usando MapReduce Job
Abrimos una terminal o visual estudio y corremos el siguiente comando:
docker exec -it namenode bash
Y nos ingresara de la siguiente manera, luego ingresamos a la carpeta tmp con el comando cd /tmp
mkdir input
echo "Hello World" >input/f1.txt
echo "Hello Docker" >input/f2.txt
Luego creamos una carpeta y dos archivos con el siguiente
comando.
Prueba de la aplicación Hadoop usando MapReduce Job
Continuamos en la terminal
o visual estudio y corremos
el siguiente comando para
crear un directorio HDFS
llamado input:
hadoop fs -mkdir -p input
Y colocamos todos los
archivos de input en todos
los nodos en HDFS
hdfs dfs -put ./input/* input
Prueba de la aplicación Hadoop usando MapReduce Job
Descargamos el
programa de
contador de
palabras .jar del
siguiente enlace
Y lo copiamos en el
root de la carpeta.
Prueba de la aplicación Hadoop usando MapReduce Job
Abrimos otra
terminal y
corremos el
comando docker
ps para saber el id
de nuestro
namenode
Prueba de la aplicación Hadoop usando MapReduce Job
Corremos el comando
docker cp para copiar el
archivo a nuestro
namenode:
De nuestro computador a
la carpeta tmp de nuestro
server:
docker cp hadoop-
mapreduce-examples-
2.7.1-sources.jar
c84bfe7a5ab6:/tmp
c84bfe7a5ab6 es el ID del contenedor
Prueba de la aplicación Hadoop usando MapReduce Job
Ingresamos de vuelta a
nuestro contenedor con
el comando
docker exec -it namenode bash
Dentro de nuestro
contenedor corremos la
aplicación
hadoop jar hadoop-mapreduce-examples-2.7.1-sources.jar
org.apache.hadoop.examples.WordCount input output
Prueba de la aplicación Hadoop usando MapReduce Job
Imprimimos el resultado
del contador con el
comando:
hdfs dfs -cat output/part-r-
00000
La impresión muestra la
cantidad de palabras en
los dos archivos creados!
Prueba de la aplicación Hadoop usando MapReduce Job
Visualizamos los
archivos desde el
navegador
Prueba de la aplicación Hadoop usando MapReduce Job
Visualizamos los
archivos desde el
navegador
Prueba de la aplicación Hadoop usando MapReduce Job
Visualizamos los
archivos desde el
navegador
Felicidades!
Has configurado tu sistema local distribuido
con Hadoop
Siguientes pasos
En base a lo aprendido
✓Responder las preguntas de las tareas 1 y 2
✓Las preguntas sobre algunos problemas en la instalación pueden ser
remitidas vía correo a la siguiente dirección contra.fer08@gmail.com
Glosario
• ¿Qué es Hadoop? : https://hadoop.apache.org/
• Comandos Hadoop: https://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-
common/FileSystemShell.html#cat
• Map reduce WordCount: https://hadoop.apache.org/docs/r1.2.1/mapred_tutorial.html
• Hadoop ecosystem: https://data-flair.training/blogs/hadoop-ecosystem-components/
• Docker Hadoop: https://github.com/big-data-europe/docker-hadoop
• Docker: https://www.docker.com/
• Certiporf BDPC : https://certiprof.com/pages/big-data-professional-certificate-bdpc

Más contenido relacionado

Similar a Big Data computación distribuida con Hadoop HDFS

Big Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStackBig Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStackSoftware Guru
 
Polybase
PolybasePolybase
PolybaseSolidQ
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Joseph Lopez
 
Herramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache HadoopHerramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache HadoopDavid Albela Pérez
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDaniel Cruz
 
Drupal 7 (2)
Drupal 7 (2)Drupal 7 (2)
Drupal 7 (2)jecol59
 
Webinar de Introducción a Hive y Zeppelin
Webinar de Introducción a Hive y ZeppelinWebinar de Introducción a Hive y Zeppelin
Webinar de Introducción a Hive y ZeppelinFederico Leven
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Miguel Pastor
 
Construyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDISConstruyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDISGonzalo Chacaltana
 
Monta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IMonta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IUrko Zurutuza
 
Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL ServerEduardo Castro
 
Nuestro primer Sitio Web Con Software Libre
Nuestro primer Sitio Web Con Software LibreNuestro primer Sitio Web Con Software Libre
Nuestro primer Sitio Web Con Software LibreHollman Enciso
 

Similar a Big Data computación distribuida con Hadoop HDFS (20)

Big Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStackBig Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStack
 
Taller girona
Taller gironaTaller girona
Taller girona
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Polybase
PolybasePolybase
Polybase
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
 
Herramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache HadoopHerramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache Hadoop
 
Programación Disribuida
Programación DisribuidaProgramación Disribuida
Programación Disribuida
 
Usando docker
Usando dockerUsando docker
Usando docker
 
Desarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nubeDesarrollo de aplicaciones en la nube
Desarrollo de aplicaciones en la nube
 
Drupal 7 (2)
Drupal 7 (2)Drupal 7 (2)
Drupal 7 (2)
 
introduction to hadoop
introduction to hadoopintroduction to hadoop
introduction to hadoop
 
Anexojl
AnexojlAnexojl
Anexojl
 
Introducción a Hadoop
Introducción a HadoopIntroducción a Hadoop
Introducción a Hadoop
 
Webinar de Introducción a Hive y Zeppelin
Webinar de Introducción a Hive y ZeppelinWebinar de Introducción a Hive y Zeppelin
Webinar de Introducción a Hive y Zeppelin
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring
 
Construyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDISConstruyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDIS
 
Monta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IMonta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión I
 
Hadoop And Pig And MapReduce
Hadoop And Pig And MapReduceHadoop And Pig And MapReduce
Hadoop And Pig And MapReduce
 
Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL Server
 
Nuestro primer Sitio Web Con Software Libre
Nuestro primer Sitio Web Con Software LibreNuestro primer Sitio Web Con Software Libre
Nuestro primer Sitio Web Con Software Libre
 

Big Data computación distribuida con Hadoop HDFS

  • 1. Fernando Contrera Big Data computación distribuida Módulo III
  • 2. Aprendizaje • Comprender sobre las tecnologías para el procesamiento de big data. • Entender el sistema de archivos distribuidos (HDFS) • Visualizar la arquitectura Maestro-Esclavo. • Diferenciar los tipos de archivos: texto y secuencias • Comprender sobre el administrador de recursos YARN Objetivos
  • 3. Hadoop HDFS • Hadoop es un sistema no relacional de almacenamiento y procesamiento de datos distribuido en clústers de computadoras. • Fue diseñado para afrontar los desafíos de analizar y procesar grandes volúmenes de datos a gran escala. ¿Qué es Hadoop? Procesamiento Big Data
  • 4. Fragmentación de datos • Debido a proveer una arquitectura escalable usando software básico, donde cada nodo sirve como servidor de datos y procesamiento, los archivos se dividen en fragmentos de 64MB c/u (configurable) y se almacenan cada porción en múltiples nodos. • Afronta los desafíos: de fallos de nodos, redes de cuello de botella y programación distribuida. ¿Por qué la computación distribuida?
  • 5. Fragmentación de datos • Sólo un nodo puede ser definido como maestro, el resto son esclavos. • El NameNode es el encargado de realizar los seguimientos de los contenidos de todos los DataNodes. • Cada uno de estos nodos de datos contienen los fragmentos de los datos Arquitectura Maestro - Esclavo
  • 6. Arquitectura de lectura y escritura HDFS
  • 7. Fragmentación de datos • Todos los datos se almacenan en partes de 64MB com tamaño estándar, pero es configurable. • Para evitar fallas del servidor y racks, se realizan una copia de seguridad en dos o tres ubicaciones de todos los datos. • Los datos se almacenan lo más cercano posible para garantizar el procesamiento veloz. • Garantiza la integridad de los datos, una vez escritos no se pueden destruir. • Para garantizar la velocidad de almacenamiento e integridad de los datos, sólo funciona en modo APPEND, donde se agregan los registros al final del almacenamiento existente y no se pueden actualizar. Características HDFS
  • 8. • Almacenamiento distribuido: Hadoop permite almacenar grandes cantidades de datos en clústeres de servidores, utilizando una arquitectura distribuida. Los datos se dividen en bloques y se distribuyen entre los nodos del clúster, lo que proporciona alta disponibilidad y tolerancia a fallos. • Procesamiento distribuido: Hadoop utiliza el modelo de programación MapReduce para procesar datos distribuidos en paralelo. MapReduce divide las tareas en etapas de "map" y "reduce", donde el procesamiento se realiza en los nodos del clúster de forma independiente y luego se combinan los resultados. • Escalabilidad: Hadoop es altamente escalable, lo que significa que puede manejar eficientemente grandes volúmenes de datos y aumentar el tamaño del clúster según sea necesario. Esto permite el procesamiento y almacenamiento de datos a gran escala. • Tolerancia a fallos: Hadoop es capaz de manejar fallos en los nodos del clúster de forma transparente. Si un nodo falla durante el procesamiento, los datos y las tareas se redistribuyen automáticamente a otros nodos disponibles, lo que asegura la continuidad del procesamiento sin interrupciones. • Análisis de datos: Hadoop es utilizado para el análisis de datos a gran escala, como la minería de datos, el procesamiento de registros, el análisis de texto, la generación de informes y el análisis de patrones. Las herramientas y bibliotecas de Hadoop, como Apache Hive, Apache Pig y Apache Spark, permiten realizar consultas y análisis complejos sobre los datos almacenados en el clúster. • Almacenamiento de datos no estructurados: Hadoop es adecuado para el almacenamiento y procesamiento de datos no estructurados o semiestructurados, como archivos de registro, documentos de texto, imágenes, videos y datos de redes sociales. Usos HDFS
  • 9. Yet another resource negotiator • Es un sistema operativo distribuido a gran escala para aplicaciones Big Data. • Gestiona los recursos y supervisa las cargas de trabajo al tiempo que garantiza la alta disponibilidad en múltiples clusters de Hadoop. • Es una plataforma para ejecutar múltiples herramientas y aplicaciones YARN
  • 10. • Es un marco para el procesamiento paralelo con un movimiento mínimo de datos y resultados casi en tiempo real. • Tienen dos tipos de trabajos para sus tareas: Map: Mapea el trabajo en muchas tareas. Reduce: combina las entradas de todos nodos en una salida. • Sólo un proceso es maestro el resto esclavo. • Hay un JobTracker que realiza el seguimiento de los contenidos de todos los TaskTraker. • Cada TaskTracker realiza un seguimiento de los procesos en un nodo de cálculo. Map Reduce
  • 12. Contador de palabras usando Map Reduce
  • 16. Lo que aprenderás • Concepto de docker. • Instalar docker en tu maquina local. • Instanciar un contenedor de Hadoop. • Copiar archivos al contenedor. • Instanciar comandos HDFS • Correr la aplicación de contador de palabras
  • 17. ¿Qué es docker? Docker es una solución de contenedor de código abierto que le permite en contenedores y empaquetar una aplicación y sus dependencias en contenedores Docker para fines de desarrollo y implementación. Un contenedor Docker es un entorno preconfigurado que incluye todas las instalaciones necesarias para la aplicación que se ejecuta dentro de él. Cada contenedor tiene una aplicación en ejecución, y cada contenedor funciona en el motor Docker, que a su vez se ejecuta en la parte superior del sistema operativo host.
  • 19. Configurar Docker y docker-compose Para configurar este único clúster Hadoop usando Docker, asegúrese de que Docker está instalado en su computadora. Ejecute los siguientes comandos para asegurarse de que Docker ya esté configurado para ejecutar docker-compose.
  • 20. Configurar Docker y docker-compose Ejecutar el comando en su terminal: docker —version y docker-compose —version, debería visualizar de la siguiente manera, puede diferir el número de versión
  • 21. Comandos utiles docker Ejecutar el comando en su terminal: docker ps Para listar los contenedores activos y sus características.
  • 22. Instalar github Asegúrate de tener git o GitHub instalado en su computadora. Corremos el comando git —version para visualizar nuestra versión.
  • 23. Configurar un solo clúster Hadoop usando docker-compose Comenzamos clonando el repositorio docker-Hadoop de Github de la siguiente manera: git clone https://github.com/big-data-europe/docker-hadoop.git
  • 24. Configurar un solo clúster Hadoop usando docker-compose El repositorio de muestra anterior tiene un Hadoop docker-compopose.yml listo y listo para ser desplegado en contenedores Docker. Navegue a la carpeta clonada y luego ejecute el siguiente comando para iniciar el contenedor usando docker-compose: Dentro de la carpeta inicia el contenedor con el comando: docker-compose up -d
  • 25. Configurar un solo clúster Hadoop usando docker-compose Una vez corrido e instanciado los contenedores corremos el comando docker ps para listar los contenedores activos Podemos visualizar varios contenedores activos tanto en la terminal como en la aplicación docker
  • 26. Configurar un solo clúster Hadoop usando docker-compose Verificamos si el programa inicio correctamente accediendo a nuestro navegador en la siguiente dirección: http://localhost:9870/ y listo!
  • 27. Prueba de la aplicación Hadoop usando MapReduce Job Abrimos una terminal o visual estudio y corremos el siguiente comando: docker exec -it namenode bash Y nos ingresara de la siguiente manera, luego ingresamos a la carpeta tmp con el comando cd /tmp mkdir input echo "Hello World" >input/f1.txt echo "Hello Docker" >input/f2.txt Luego creamos una carpeta y dos archivos con el siguiente comando.
  • 28. Prueba de la aplicación Hadoop usando MapReduce Job Continuamos en la terminal o visual estudio y corremos el siguiente comando para crear un directorio HDFS llamado input: hadoop fs -mkdir -p input Y colocamos todos los archivos de input en todos los nodos en HDFS hdfs dfs -put ./input/* input
  • 29. Prueba de la aplicación Hadoop usando MapReduce Job Descargamos el programa de contador de palabras .jar del siguiente enlace Y lo copiamos en el root de la carpeta.
  • 30. Prueba de la aplicación Hadoop usando MapReduce Job Abrimos otra terminal y corremos el comando docker ps para saber el id de nuestro namenode
  • 31. Prueba de la aplicación Hadoop usando MapReduce Job Corremos el comando docker cp para copiar el archivo a nuestro namenode: De nuestro computador a la carpeta tmp de nuestro server: docker cp hadoop- mapreduce-examples- 2.7.1-sources.jar c84bfe7a5ab6:/tmp c84bfe7a5ab6 es el ID del contenedor
  • 32. Prueba de la aplicación Hadoop usando MapReduce Job Ingresamos de vuelta a nuestro contenedor con el comando docker exec -it namenode bash Dentro de nuestro contenedor corremos la aplicación hadoop jar hadoop-mapreduce-examples-2.7.1-sources.jar org.apache.hadoop.examples.WordCount input output
  • 33. Prueba de la aplicación Hadoop usando MapReduce Job Imprimimos el resultado del contador con el comando: hdfs dfs -cat output/part-r- 00000 La impresión muestra la cantidad de palabras en los dos archivos creados!
  • 34. Prueba de la aplicación Hadoop usando MapReduce Job Visualizamos los archivos desde el navegador
  • 35. Prueba de la aplicación Hadoop usando MapReduce Job Visualizamos los archivos desde el navegador
  • 36. Prueba de la aplicación Hadoop usando MapReduce Job Visualizamos los archivos desde el navegador
  • 37. Felicidades! Has configurado tu sistema local distribuido con Hadoop
  • 38. Siguientes pasos En base a lo aprendido ✓Responder las preguntas de las tareas 1 y 2 ✓Las preguntas sobre algunos problemas en la instalación pueden ser remitidas vía correo a la siguiente dirección contra.fer08@gmail.com
  • 39. Glosario • ¿Qué es Hadoop? : https://hadoop.apache.org/ • Comandos Hadoop: https://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop- common/FileSystemShell.html#cat • Map reduce WordCount: https://hadoop.apache.org/docs/r1.2.1/mapred_tutorial.html • Hadoop ecosystem: https://data-flair.training/blogs/hadoop-ecosystem-components/ • Docker Hadoop: https://github.com/big-data-europe/docker-hadoop • Docker: https://www.docker.com/ • Certiporf BDPC : https://certiprof.com/pages/big-data-professional-certificate-bdpc