Hadoop vs Spark

Get Started. It's Free
or sign up with your email address
Hadoop vs Spark by Mind Map: Hadoop vs Spark

1. Hadoop

1.1. Rendimiento

1.1.1. Rendimiento más lento

1.1.1.1. Utiliza discos para el almacenamiento

1.1.1.2. Depende de la velocidad de lectura y escritura del disco

1.2. Costar

1.2.1. Plataforma de código abierto

1.2.2. Utiliza harware de consumo asequible

1.2.3. Más fácil de encontrar profesionales capacitados de Hadoop

1.3. Procesamiento de datos

1.3.1. Lo mejor para el procesamiento por lotes.

1.3.2. MapReduce para dividir un gran conjunto de datos en un clúster para el análisis paralelo.

1.4. Tolerancia a fallos

1.4.1. Un sistema altamente tolerante a fallos.

1.4.2. Un sistema altamente tolerante a fallos.

1.5. Escalabilidad

1.5.1. Fácilmente escalable mediante la adición de nodos y discos para el almacenamiento.

1.5.2. Soporta decenas de miles de nodos sin un límite conocido.

1.6. Seguridad

1.6.1. Extremadamente seguro.

1.6.2. Soporta LDAP, ACLs, Kerberos, SLAs, etc.

1.7. Facilidad de uso y soporte de idiomas

1.7.1. Más difícil de usar con menos idiomas compatibles.

1.7.2. Utiliza Java o Python para aplicaciones MapReduce.

1.8. Aprendizaje Automático

1.8.1. Más lento que Spark

1.8.2. Los fragmentos de datos pueden ser demasiado grandes y crear cuellos de botella.

1.8.3. Mahout es la biblioteca principal.

1.9. Programación y gestión de recursos

1.9.1. Utiliza soluciones externas.

1.9.2. YARN es la opción más común para la gestión de recursos.

1.9.3. Oozie está disponible para la programación de flujos de trabajo.

2. Spark

2.1. Rendimiento

2.1.1. Rendimiento rápido en Memoria con operaciones reducidas de lectura y escritura de datos

2.2. Costar

2.2.1. Una plataforma de código abierto

2.2.2. Se basa en la memoria para la computación

2.2.3. Aumenta considerablemente los costos de funcionamiento.

2.3. Procesamiento de datos

2.3.1. Adecuado para el análisis de datos iterativo y de transmisión en vivo.

2.3.2. Funciona con RDD y DAG para ejecutar operaciones.

2.4. Tolerancia a fallos

2.4.1. Realiza un seguimiento del proceso de creación de bloques RDD

2.4.2. Puede reconstruir un conjunto de datos cuando falla una partición.

2.4.3. Puede usar un DAG para reconstruir datos entre nodos.

2.5. Escalabilidad

2.5.1. Un poco más difícil de escalar porque depende de la RAM para los cálculos.

2.5.2. Admite miles de nodos en un clúster.

2.6. Seguridad

2.6.1. No es seguro

2.6.2. Se basa en la integración con Hadoop para lograr el nivel de seguridad necesario.

2.7. Facilidad de uso y soporte de idiomas

2.7.1. Más fácil de usar.

2.7.2. Permite el modo de shell interactivo.

2.7.3. Las API se pueden escribir en Java, Scala, R, Python, Spark SQL.

2.8. Aprendizaje Automático

2.8.1. Mucho más rápido con el procesamiento en memoria.

2.8.2. Utiliza MLlib para cálculos.

2.9. Programación y gestión de recursos

2.9.1. Tiene herramientas integradas

2.9.1.1. Asignación

2.9.1.2. Programación

2.9.1.3. Monitoreo de recursos.