Tema 7: Hadoop Flashcards
1
Q
¿Qué es Hadoop?
A
Es un proyecto OpenSource de Apache que sirve para almacenar y procesar rápidamente grandes cantidades de cualquier tipo de datos.
Proporciona almacenamiento, memoria, procesamiento, redes, …
2
Q
Características principales del funcionamiento de Hadoop.
A
- División de grandes problemas en más pequeños.
- Procesamiento se mueve a la localización de los datos.
3
Q
Diferencias entre DB relacionales y Hadoop.
A
- En Hadoop puede haber cualquier tipo de datos: estructurados, semiestructurados y no estructurados.
- Hadoop tiene muy alto rendimiento.
- Las consultas en DB relacionales son en SQL, en Hadoop se puede usar JAVA, Python, HQL, Pig, …
- Hadoop es OpenSource (gratis)
- Hadoop se usa para analizar vídeo, audio, registros, minería de datos.
- En Hadoop el modelo de datos es clave-valor. En BDR es relacional.
- La escalabilidad en Hadoop es horizontal, en BDR es vertical (más costoso).
- Hadoop se puede usar con hardware básico, las BDR suele requerir hardware de gama alta.
4
Q
Componentes principales de Hadoop.
A
- HDFS: Sistema de ficheros distribuido auto-gestionado (sistema de almacenamiento de Hadoop).
- MapReduce: sistema de computación distribuida y paralela.
- YARN: sistema operativo distribuido.
5
Q
Características el HDFS (Hadoop Distributed File System).
A
- Sistema de almacenamiento de Hadoop.
- Arquitectura master-slave.
- Gran capacidad de almacenamiento.
- Replicación de datos (buena tolerancia a fallos)
- Escalabilidad horizontal (inclusión de nuevo nodos para aumentar la potencia de procesamiento)
- Bajo coste
- Simplicidad al desarrollar programas que se paralelicen sobre su arquitectura.
- Flexibilidad (acepta cualquier cantidad y tipo de dato)
6
Q
Características de MapReduce.
A
- Map: acepta par clave-valor y emite par clave-valor intermedio.
- Reduce: acepta par clave-valor intermedio y emite un par clave-valor de salida.
7
Q
¿Qué es PigLatin?
A
Es un lenguaje de flujo de datos, muy similar a SQL. Permite escribir de forma más sencilla MapReduce.
Se usa en el entorno de ejecución grunt shell.