Apache™ Hadoop® es un proyecto de software de código abierto que se puede utilizar para procesar de forma eficaz conjuntos de datos de gran tamaño. En lugar de utilizar un equipo grande para procesar y almacenar los datos, Hadoop facilita la creación de clústeres de hardware de consumo para analizar conjuntos de datos masivos en paralelo.

El ecosistema de Hadoop contiene numerosas aplicaciones y motores de ejecución, lo que aporta una variedad de herramientas para satisfacer las necesidades de sus cargas de trabajo de análisis. Amazon EMR facilita la creación y administración de clústeres elásticos y totalmente configurados de instancias de Amazon EC2 con Hadoop y otras aplicaciones ejecutados en el ecosistema de Hadoop.

Ilustración de los clústeres de Hadoop en AWS

Por lo general, Hadoop se refiere al proyecto Apache Hadoop, que incluye MapReduce (marco de ejecución), YARN (administrador de recursos) y HDFS (almacenamiento distribuido). También puede instalar Apache Tez, un marco de siguiente generación que se puede utilizar en lugar de Hadoop MapReduce como motor de ejecución.  Amazon EMR también incluye EMRFS, un conector que permite que Hadoop utilice Amazon S3 como capa de almacenamiento.

Sin embargo, también existen otras aplicaciones y marcos en el ecosistema de Hadoop, incluidas herramientas que permiten consultas de baja latencia, GUI para consultas interactivas, diversas interfaces como SQL y bases de datos NoSQL distribuidas. El ecosistema de Hadoop incluye numerosas herramientas de código abierto diseñadas para incorporar funcionalidades adicionales a los componentes principales de Hadoop. Puede utilizar Amazon EMR para instalar y configurar de forma sencilla herramientas como Hive, Pig, Hue, Ganglia, Oozie y HBase en su clúster. También puede ejecutar otros marcos, como Apache Spark para el procesamiento en memoria o Presto para SQL interactivo, así como Hadoop en Amazon EMR.

Amazon EMR instala y configura mediante programación aplicaciones en el proyecto Hadoop, incluidas Hadoop MapReduce, YARN y HDFS, en los nodos de su clúster. Sin embargo, a partir de la versión 5.x de Amazon EMR, Hive y Pig usan Apache Tezen lugar de Hadoop MapReduce como motor de ejecución.

Hadoop MapReduce y Tez, motores de ejecución del ecosistema Hadoop, procesan cargas de trabajo con marcos que dividen los trabajos en porciones más pequeñas que se pueden distribuir en nodos de su clúster de Amazon EMR. Están creados sabiendo que cualquier equipo de su clúster podría fallar en cualquier momento, por lo que se han diseñado con tolerancia a errores. Si se produce un fallo en un servidor que está ejecutando una tarea, Hadoop la ejecuta en otro equipo hasta que se finalice.

Puede escribir programas de MapReduce y Tez en Java, usar Hadoop Streaming para ejecutar scripts personalizados de forma paralela, utilizar Hive y Pig para abstracciones de nivel superior en lugar de MapReduce y Tez, u otras herramientas que interactúen coh Hadoop.

En lo referente a Hadoop 2, Yet Another Resource Negotiator (YARN) se encarga de la administración de recursos. YARN supervisa todos los recursos de su clúster y se asegura de que se asignen de forma dinámica a fin de completar las tareas del trabajo de procesamiento. YARN puede administrar cargas de trabajo de Hadoop MapReduce y Tez, además de otros marcos distribuidos, como Apache Spark.

Al utilizar el sistema de archivos de EMR (EMRFS) en su clúster de Amazon EMR, puede beneficiarse de Amazon S3 como capa de datos para Hadoop. Amazon S3 es altamente escalable, de bajo costo y está diseñado para ofrecer durabilidad, lo que lo convierte en un almacén de datos ideal para el procesamiento de big data. Al almacenar sus datos en Amazon S3, puede separar la capa informática de la capa de almacenamiento, lo que le permite elegir el tamaño del clúster de Amazon EMR idóneo en función de la capacidad de CPU y memoria necesarias para sus cargas de trabajo en lugar de poseer nodos adicionales en su clúster para maximizar el almacenamiento en clúster. Además, puede eliminar el clúster de Amazon EMR cuando esté en reposo para ahorrar costos, mientras que los datos seguirán estando en Amazon S3.

EMRFS está optimizado para Hadoop para la lectura y escritura en paralelo en Amazon S3 con alto desempeño, y puede procesar objetos cifrados con el cifrado del lado del cliente y del lado del servidor de Amazon S3. EMRFS le permite utilizar Amazon S3 como almacén de datos, mientras que Hadoop se puede usar en Amazon EMR como capa de consultas elástica.

Hadoop también incluye un sistema de almacenamiento distribuido, el Hadoop Distributed File System (HDFS), que almacena datos en discos locales de su clúster en bloques de gran tamaño. HDFS tiene un factor de replicación configurable (con x3 por defecto), lo que aporta mayor disponibilidad y durabilidad. HDFS monitoriza la replicación y equilibra los datos entre los nodos si se producen fallos en los nodos y se agregan nodos nuevos.

HDFS se instala automáticamente con Hadoop en su clúster de Amazon EM, y puede usar HDFS con Amazon S3 para almacenar sus datos de entrada y salida. Puede cifrar HDFS con facilidad con las configuraciones de seguridad de Amazon EMR. Además, Amazon EMR configura Hadoop para que use HDFS y el disco local para los datos intermedios creados durante los trabajos de Hadoop MapReduce, incluso si los datos de entrada se encuentran en Amazon S3.

Ilustración de cómo funciona Hadoop en AWS
Beneficios de Hadoop en la nube – Icono de velocidad

Puede iniciar un nuevo clúster de Hadoop de forma dinámica y rápida, o añadir servidores a su clúster de Amazon EMR existente, con lo que se reduce significativamente el tiempo que se tarda en poner los recursos a disposición de sus usuarios y científicos de datos. El uso de Hadoop en la plataforma de AWS puede incrementar significativamente la agilidad de su empresa al reducir el costo y el tiempo que conlleva la asignación de recursos para la experimentación y el desarrollo.

Beneficios de Hadoop en la nube – Icono de reducción de la complejidad

La configuración, la creación de redes, la configuración de seguridad y la instalación del servidor en Hadoop, así como el constante mantenimiento administrativo, pueden resultar actividades complicadas y exigentes. Como servicio administrado, Amazon EMR satisface sus requisitos de infraestructura de Hadoop para que pueda concentrarse en sus actividades comerciales principales.

Beneficios de Hadoop en la nube – Icono de integración

Puede integrar de forma sencilla su entorno de Hadoop con otros servicios como Amazon S3, Amazon Kinesis, Amazon Redshift y Amazon DynamoDB a fin de facilitar el movimiento de datos, los flujos de trabajo y el análisis en los diversos servicios de la plataforma de AWS. Además, puede usar el catálogo de datos de AWS Glue como un repositorio de metadatos administrado para Apache Hive y Apache Spark.

Beneficios de Hadoop en la nube – Icono de ahorro de dinero

Muchos trabajos de Hadoop experimentan picos de tráfico. Por ejemplo, un trabajo de ETL se puede ejecutar una vez cada hora, día o mes, mientras que es posible que los trabajos de modelado para empresas financieras o de secuenciación genética se ejecuten solamente unas cuantas veces el año. El uso de Hadoop en Amazon EMR le permite iniciar estos clústeres de cargas de trabajo de forma sencilla, guardar los resultados y apagar sus recursos de Hadoop cuando ya no los necesite a fin de evitar costos de infraestructura innecesarios.

Beneficios de Hadoop en la nube – Icono de disponibilidad

Al utilizar Hadoop en Amazon EMR, dispone de la flexibilidad de implementar sus clústeres en cualquier cantidad de zonas de disponibilidad en cualquier región de AWS. Un problema o amenaza potencial en una región o zona se puede evitar de forma sencilla implementando un clúster en otra zona en cuestión de minutos.

Beneficios de Hadoop en la nube – Icono de flexibilidad

La planificación de la capacidad antes de implementar un entorno de Hadoop puede resultar, con frecuencia, en la existencia de costosos recursos en reposo o limitaciones de recursos. Con Amazon EMR, puede crear clústeres con la capacidad necesaria en cuestión de minutos y utilizar Auto Scaling para ampliar y reducir los nodos automáticamente.

Dada su enorme escalabilidad, Hadoop se utiliza con frecuencia para procesar cargas de trabajo de big data. Para incrementar la potencia de procesamiento de su clúster de Hadoop, puede añadir más servidores con los recursos de CPU y memoria idóneos para satisfacer sus necesidades.

Hadoop proporciona un nivel elevado de durabilidad y disponibilidad, a la vez que permite procesar cargas de trabajo de análisis informático en paralelo. La combinación de disponibilidad, durabilidad y escalabilidad de procesamiento convierte a Hadoop en la elección ideal para cargas de trabajo de big data. Puede utilizar Amazon EMR para crear y configurar un clúster de instancias de Amazon EC2 que ejecuten Hadoop en cuestión de minutos, y comenzar a extraer valor de sus datos.

Hadoop se puede utilizar para analizar datos de secuencias de clics para segmentar los usuarios y conocer sus preferencias. Los anunciantes también pueden analizar secuencias de clics y registros de impresión de publicidad para ofrecer anuncios más eficaces.

Descubra cómo Razorfish utiliza Hadoop en Amazon EMR para el análisis de secuencias de clics »

Hadoop se puede utilizar para procesar registros generados por aplicaciones web y móviles. Hadoop ayuda a los clientes a transformar petabytes de datos desestructurados o semiestructurados en perspectivas útiles sobre las aplicaciones o los usuarios.

Obtenga información sobre cómo Yelp utiliza Hadoop en Amazon EMR para impulsar características clave del sitio web »

Las aplicaciones del ecosistema de Hadoop como Hive permiten a los usuarios utilizar Hadoop MapReduce con una interfaz de SQL, lo que facilita el análisis a escala masiva, y el almacenamiento de datos distribuidos tolerante a fallos. Use Hadoop para almacenar sus datos y permita que sus usuarios realicen consultas en datos de cualquier tamaño.

Descubra cómo Netflix usa Hadoop en Amazon EMR para ejecutar un almacén de datos a escala de petabytes »

Hadoop se puede utilizar para procesar grandes cantidades de datos genómicos y otros conjuntos de datos científicos de gran tamaño de forma rápida y eficiente. AWS ha puesto a disposición de la comunidad los datos del proyecto de los 1 000 genomas de forma gratuita.

Más información sobre la genómica en AWS »

Dada su escalabilidad masiva y sus costos inferiores, Hadoop es ideal para cargas de trabajo de ETL, como la recopilación, clasificación, reunión y agregación de conjuntos de datos de gran tamaño para una utilización más sencilla por parte de los sistemas de recepción de datos.

Descubra cómo Euclid usa Hadoop en Amazon EMR para ETL y la agregación de datos »

 



Apache y Hadoop son marcas comerciales de Apache Software Foundation.