Apache Hadoop es un marco de trabajo de código abierto escrito en java que permite procesamiento distribuido de grandes conjuntos de datos a través de clusters de ordenadores mediante sencillos modelos de programación. Hadoop marco la aplicación funciona en un entorno que proporciona almacenamiento distribuido y cálculos en grupos de equipos. Hadoop se ha diseñado para aumentar la escala de un solo servidor a miles de máquinas, cada uno ofreciendo a los cálculos y el almacenamiento.
En su núcleo, Hadoop tiene dos capas principales:
MapReduce es un modelo de programación paralela para escribir las aplicaciones distribuidas de Google para garantizar un proceso eficaz de grandes cantidades de datos (datos de varios terabytes de juegos), en grandes grupos (miles de nodos) de hardware básico de manera segura, tolerante a fallos. El programa se ejecuta en MapReduce Hadoop Apache que es un marco de código abierto.
El Hadoop Distributed File System (HDFS) se basa en el Google File System (GFS) y proporciona un sistema de ficheros distribuido que está diseñado para ejecutarse en hardware. Tiene muchas similitudes con los actuales sistemas de archivos distribuidos. Sin embargo, las diferencias con otros sistemas de ficheros distribuidos son importantes. Es muy tolerante a errores y está diseñado para ser instalado en hardware de bajo costo. Proporciona un alto rendimiento en el acceso a datos de aplicaciones y es adecuado para aplicaciones con grandes conjuntos de datos.
Aparte de los mencionados dos componentes básicos, Hadoop marco incluye también los dos módulos siguientes:
Hadoop común : Estas son las bibliotecas de Java y las utilidades requeridas por otros módulos Hadoop.
Hadoop HILO : Este es un marco para la planificación de tareas y administración de recursos de clúster.
Es bastante caro para construir grandes servidores con configuraciones que manejan grandes transformaciones, pero como una alternativa, usted puede atar muchos ordenadores de consumo con una sola CPU, como un único funcional sistema distribuido y en la práctica, el agrupado las máquinas pueden leer el conjunto de datos en paralelo y proporcionar un rendimiento mucho mayor. Además, es más barato que un servidor de gama alta. Así que este es el primer factor de motivación detrás con Hadoop que agrupados y se extiende a través de bajo costo máquinas.
Hadoop se ejecuta código a través de un cluster de computadoras. Este proceso incluye las siguientes tareas básicas que Hadoop realiza:
Hadoop marco permite al usuario escribir rápidamente y probar sistemas distribuidos. Es eficiente y automático que distribuye los datos y trabajar a través de las máquinas y a su vez, utiliza el paralelismo de los núcleos de CPU.
Hadoop no depende de hardware para proporcionar tolerancia a fallos y alta disponibilidad (FTHA), y Hadoop propia biblioteca ha sido diseñado para detectar y controlar errores en el nivel de aplicación.
Los servidores se pueden añadir o quitar del clúster dinámicamente y Hadoop continúa funcionando sin interrupción.
Otra gran ventaja de Hadoop es que aparte de ser open source, que es compatible en todas las plataformas ya que está basado en Java.