fbpx
Wikipedia

Apache Hadoop

Apache Hadoop es un entorno de trabajo para software, bajo licencia libre, para programar aplicaciones distribuidas que manejen grandes volúmenes de datos (big data).[1]​ Permite a las aplicaciones trabajar con miles de nodos en red y petabytes de datos. Hadoop se inspiró en los documentos de Google sobre MapReduce y Google File System (GFS).

Apache Hadoop
Información general
Tipo de programa Sistema de archivos distribuido
Autor
  • Doug Cutting
  • Mike Cafarella
Desarrollador Apache Software Foundation
Lanzamiento inicial 1 de abril de 2006
Licencia Apache License 2.0
Estado actual Activo
Idiomas inglés
Información técnica
Programado en Java
Plataformas admitidas Java
Versiones
Última versión estable 1.0.015 de diciembre de 2011
Enlaces
Sitio web oficial
Repositorio de código

Hadoop es un proyecto de la organización Apache que está siendo construido y usado por una comunidad global de contribuyentes,[2]​ mediante el lenguaje de programación Java. Yahoo! ha sido el mayor contribuyente al proyecto,[3]​ y usa Hadoop extensivamente en su negocio.[4]

Historia

Hadoop fue creado por Doug Cutting,[5]​ que lo nombró así por el elefante de juguete de su hijo.[6]​ Fue desarrollado originalmente para apoyar la distribución del proyecto de motor de búsqueda, denominado Nutch.[7]

Características

Arquitectura

Hadoop consiste básicamente en el Hadoop Common, que proporciona acceso a los sistemas de archivos soportados por Hadoop. El paquete de software The Hadoop Common contiene los archivos .jar y los scripts necesarios para ejecutar Hadoop. El paquete también proporciona código fuente, documentación, y una sección de contribución que incluye proyectos de la Comunidad Hadoop.

Una funcionalidad clave es que para la programación efectiva de trabajo, cada sistema de archivos debe conocer y proporcionar su ubicación: el nombre del rack (más precisamente, del switch) donde está el nodo trabajador. Las aplicaciones Hadoop pueden usar esta información para ejecutar trabajo en el nodo donde están los datos y, en su defecto, en el mismo rack/switch, reduciendo así el tráfico de red troncal (backbone traffic). El sistema de archivos HDFS usa esto cuando replica datos, para intentar conservar copias diferentes de los datos en racks diferentes. El objetivo es reducir el impacto de un corte de energía de rack o de fallo de interruptor de modo que incluso si se producen estos eventos, los datos todavía puedan ser legibles.[8]

Un clúster típico Hadoop incluye un nodo maestro y múltiples nodos esclavo. El nodo maestro consiste en jobtracker (rastreador de trabajo), tasktracker (rastreador de tareas), namenode (nodo de nombres), y datanode (nodo de datos). Un esclavo o compute node (nodo de cómputo) consisten en un nodo de datos y un rastreador de tareas. Hadoop requiere tener instalados entre nodos en el clúster JRE 1.6 o superior, y SSH.

Sistemas de archivos

Hadoop Distributed File System

El Hadoop Distributed File System (HDFS) es un sistema de archivos distribuido, escalable y portátil escrito en Java para el framework Hadoop. Cada nodo en una instancia Hadoop típicamente tiene un único nodo de datos; un clúster de datos forma el clúster HDFS. La situación es típica porque cada nodo no requiere un nodo de datos para estar presente. Cada nodo sirve bloques de datos sobre la red usando un protocolo de bloqueo específico para HDFS. El sistema de archivos usa la capa TCP/IP para la comunicación; los clientes usan RPC para comunicarse entre ellos. El HDFS almacena archivos grandes (el tamaño ideal de archivo es de 128 MB[9]​), a través de múltiples máquinas. Consigue fiabilidad mediante replicado de datos a través de múltiples hosts, y no requiere almacenamiento RAID en ellos. Con el valor de replicación por defecto, 3, los datos se almacenan en 3 nodos: dos en el mismo rack, y otro en un rack distinto. Los nodos de datos pueden hablar entre ellos para reequilibrar datos, mover copias, y conservar alta la replicación de datos. HDFS no cumple totalmente con POSIX porque los requerimientos de un sistema de archivos POSIX difieren de los objetivos de una aplicación Hadoop, porque el objetivo no es tanto cumplir los estándares POSIX sino la máxima eficacia y rendimiento de datos. HDFS fue diseñado para gestionar archivos muy grandes.[9]​ HDFS no proporciona Alta disponibilidad.

Otros sistemas de archivos

A junio de 2010, la lista de sistemas de archivos soportados incluye:

  • HDFS: El sistema propio de Hadoop. Está diseñado para la escala de decenas petabytes de almacenamiento y funciona sobre los sistemas de archivos de base.
  • Amazon S3: se dirige a clusters almacenados en la infraestructura del servidor bajo demanda Amazon Elastic Compute Cloud. No hay conciencia de racks en este sistema de archivos, porque todo él es remoto.
  • CloudStore: (previamente llamado Kosmos Distributed File System), el cual es consciente de los racks.
  • FTP: almacena todos sus datos en un servidor FTP accessible remotamente.
  • HTTP y HTTPS de solo lectura.

Hadoop puede trabajar directamente con cualquier sistema de archivos distribuido, el cual puede ser montado por el sistema operativo subyacente simplemente usando la URL file://, sin embargo esto tiene un precio: la pérdida de la localidad. Para reducir el tráfico de red, Hadoop necesita saber qué servidores están más próximos a los datos; esta información la pueden proporcionar los puentes específicos del sistema de archivos específico de Hadoop.

La configuración por defecto incluye Amazon S3, y el almacén de archivos CloudStore, a través de las URLs s3:// y kfs://.

Se han escrito varios puentes de sistema de archivos de terceros, ninguno de los cuales están actualmente en las distribuciones de Hadoop. Estas pueden ser más de propósito general que HDFS, el cual está muy sesgado hacia grandes archivos y solo ofrece un subconjunto de la semántica esperada de sistema de archivos Posix Filesystem: no se puede bloquear o escribir en cualquier parte salvo la cola de un archivo.

Job Tracker y Task Tracker: el motor MapReduce

Aparte del sistema de archivos, está el motor MapReduce, que consiste en un Job Tracker (rastreador de trabajos), para el cual las aplicaciones cliente envían trabajos MapReduce.

El rastreador de trabajos (Job Tracker) impulsa el trabajo fuera a los nodos Task Tracker disponibles en el clúster, intentando mantener el trabajo tan cerca de los datos como sea posible. Con un sistema de archivos consciente del rack en el que se encuentran los datos, el Job Tracker sabe qué nodo contiene la información, y que otras máquinas están cerca. Si el trabajo no puede ser almacenado en el nodo actual donde residen los datos, se da la prioridad a los nodos del mismo rack. Esto reduce el tráfico de red en la red principal backbone. Si un Task Tracker (rastreador de tareas) falla o no llega a tiempo, la parte de trabajo se reprograma. El TaskTracker en cada nodo genera un proceso separado JVM para evitar que el propio TaskTracker mismo falle si el trabajo en cuestión tiene problemas. Se envía información desde el TaskTracker al JobTracker cada pocos minutos para comprobar su estado. El estado del Job Tracker y el TaskTracker y la información obtenida se pueden ver desde un navegador web proporcionado por Jetty.

Si el Job Tracker fallaba en Hadoop 0.20 o anterior, todo el trabajo en curso se perdía. Hadoop versión 0.21 añadió algunos autoguardados al proceso; el rastreador de trabajo graba lo que está en el sistema de archivos. Cuando un Job Tracker comienza, busca datos para recomenzar el trabajo donde lo dejó. En versiones anteriores, todo el trabajo activo se perdía cuando se reiniciaba el Job Tracker.

Las limitaciones de esto son:

  • La asignación de trabajo de los seguidores de trabajo es muy sencilla. Cada rastreador de tarea tiene un número de plazas disponibles, llamadas ranuras o slots (por ejemplo, "4 slots"). Cada mapa activo o cada “reduce” toma (ocupa) una posición. El Rastreador de Trabajo asigna trabajo para el seguidor más cercano a los datos con una ranura disponible. No hay ninguna consideración de la carga activa actual de la máquina asignada, y por tanto de su disponibilidad real.
  • Si una tarea de seguimiento es muy lenta, se puede retrasar toda la operación MapReduce -especialmente hacia el final de un trabajo, donde todo puede estar a la espera de una sola tarea lenta-. Con la ejecución especulativa activada, sin embargo, una tarea simple puede ejecutarse en múltiples nodos esclavos. Así que esta tecnología permite una conexión en red muy eficiente.

Programación de tiempo

Por defecto Hadoop usa el método FIFO para programar la realización de trabajos desde una cola de trabajo. En la versión 0.19 el job scheduler (programador de trabajos) fue refactorizado fuera de Hadoop, lo cual añadió la habilidad de usar un programador alternativo.[10]

Planificador justo

El fair scheduler (planificador justo o limpio) fue desarrollado por Facebook. El objetivo del planificador es proporcionar rápida respuesta para trabajos pequeños y calidad de servicio (QOS, en sus siglas en inglés) para trabajos de producción. El fair scheduler se basa en 3 conceptos básicos:[11]

  1. Los trabajos se agrupan en pools.
  2. Cada pool tiene asignada una porción mínima garantizada.
  3. El exceso de capacidad se distribuye entre trabajos.

Por defecto, los trabajos que están sin categorizar van a un pool por defecto. Las pools tienen que especificar el n.º mínimo de slots de mapa, los reduce slots, y un límite en el número de trabajos ejecutándose.

Programador de capacidad

El programador de capacidad fue desarrollado por Yahoo. Soporta varias funciones similares a las del fair scheduler.[12]

  • Los trabajos son presentados en las colas.
  • A las colas se le asigna una fracción de la capacidad total de recursos.
  • Los recursos libres se asignan a las colas más allá de su capacidad total.
  • Dentro de una cola, un trabajo con un alto nivel de prioridad tendrá acceso a los recursos de la cola.

No es posible la expropiación de recursos cuando se está ejecutando un trabajo.

Otras aplicaciones

El sistema de archivos HDFS no se restringe a MapReduce jobs. Puede usarse para otras aplicaciones, muchas de las cuales están bajo desarrollo en Apache. La lista incluye la base de datos HBase, el sistema de aprendizaje automático Apache Mahout, y operaciones de matriz. Hadoop puede usarse en teoría para cualquier tipo de trabajo orientado a lotes, en lugar de tiempo real, el cual es muy intensivo en datos, y ser capaz de trabajar en piezas de datos en paralelo. En octubre de 2009, entre las aplicaciones comerciales de Hadoop[13]​ se incluían:

  • Registro y/o análisis de fuentes de clics (clickstream) de varios tipos
  • Analíticas de marketing
  • Aprendizaje automático y/o extracción de datos sofisticados (data mining)
  • Procesamiento de imágenes
  • El tratamiento de mensajes XML
  • Web de rastreo y/o procesamiento de textos
  • Archivado general, incluidos los relacionales y datos tabulares, por ejemplo, para cumplimiento

Usuarios prominentes

El 19 de febrero de 2008, Yahoo! Inc. lanzó lo que pretendía era la más grande aplicación de producción Hadoop. El Yahoo! Search Webmap es una aplicación de Hadoop que se ejecuta en más de 10 000 núcleos Linux Clusters de racimo y produce datos que se utilizan actualmente en todos los resultados de búsqueda de Yahoo!. En junio de 2009, Yahoo! hizo disponible el código fuente de la versión de Hadoop que usa en producción.[14]

Aparte de Yahoo!, otras organizaciones usan Hadoop para ejecutar cómputos enormes distribuidos. Algunas de éstas empresas incluyen:[2]

Con Sun Grid Engine y Nutanix

Hadoop puede usarse también en granjas de computadoras y entornos de alto rendimiento. La integración con Sun Grid Engine fue lanzada, y ejecutar Hadoop en Sun Grid (el servicio bajo demanda de utility computing) es posible.[17]​ En la implementación inicial de la integración, el programador de tiempo de CPU no sabe la localización de los datos. Desafortunadamente, esto significa que el procesado no es hecho siempre en el mismo rack donde están los datos; esto era una característica principal de la Rutin Hadoop. Una mejor integración con localización de datos se anunció durante la Sun HPC Software Workshop '09.[18]

Sun también tiene el proyecto Hadoop Live CD OpenSolaris, que permite ejecutar un clúster Hadoop completamente funcional usando un live CD.[19]

Por su parte, la tecnología de Nutanix, también es capaz de soportar plataformas Hadoop, aportando las grandes ventajas de su arquitectura (redundancia, rendimientos, enorme facilidad de gestión, etc), sin las dependencias de storage habituales en estas infraestructuras Cloud.

Referencias

Notas

  1. "Hadoop es un framework que ejecuta aplicaciones en grandes clusters de hardware dedicado. El framework proporciona a las aplicaciones de forma transparente fiabilidad y movilidad de datos. Hadoop implementa un paradigma computacional llamado map/reduce, donde la aplicación se divide en muchos pequeños fragmentos de trabajo, cada uno de los cuales se pueden ejecutar o volver a ejecutar en cualquier nodo del clúster. Además, proporciona un sistema de archivos distribuido que almacena los datos en los nodos de cómputo, produciendo un alto ancho de banda agregado en todo el clúster. Ambos, map/reduce y el sistema de archivos distribuidos, están diseñados de manera que las fallas de nodo se gestionan automáticamente mediante el framework." Hadoop Overview
  2. . Archivado desde el original el 29 de noviembre de 2012. Consultado el 16 de febrero de 2011. 
  3. . Archivado desde el original el 8 de julio de 2009. Consultado el 16 de febrero de 2011. 
  4. Ashlee Vance (17 de marzo de 2009). «Hadoop, a Free Software Program, Finds Uses Beyond Search». New York Times. Consultado el 20 de enero de 2010. 
  5. "Hadoop contains the distributed computing platform that was formerly a part of Nutch. This includes the Hadoop Distributed Filesystem (HDFS) and an implementation of map/reduce." About Hadoop el 12 de julio de 2009 en Wayback Machine.
  6. [1] #HADOOP-3412 Refactor the scheduler out of the JobTracker - ASF JIRA
  7. [2] (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última). Hadoop Fair Scheduler Design Document
  8. Capacity Scheduler Guide
  9. "How 30+ enterprises are using Hadoop", in DBMS2
  10. Hadoop and Distributed Computing at Yahoo!
  11. «Mitula Search/Hadoop». Consultado el 6 de septiembre de 2011. 
  12. . Archivado desde el original el 13 de agosto de 2010. Consultado el 26 de junio de 2010. 
  13. . Sun Microsystems. 16 de enero de 2008. Archivado desde el original el 12 de septiembre de 2008. 
  14. . Sun Microsystems. 10 de septiembre de 2009. Archivado desde el original el 5 de julio de 2010. 
  15. . Sun Microsystems. 29 de agosto de 2008. Archivado desde el original el 22 de octubre de 2009. 

20. Cyttek Group http://cyttek.com/consultoria/cyttek-big-data-manager/ (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).

Bibliografía

  • Lam, Chuck (28 de julio de 2010). Hadoop in Action (1st edición). Manning Publications. p. 325. ISBN 1935182196. 
  • Venner, Jason (22 de junio de 2009). (1st edición). Apress. p. 440. ISBN 1430219424. Archivado desde el original el 5 de diciembre de 2010. Consultado el 16 de febrero de 2011. 
  • White, Tom (16 de junio de 2009). Hadoop: The Definitive Guide (1st edición). O'Reilly Media. p. 524. ISBN 0596521979. 

Véase también

Enlaces internos

  •   Portal:Software libre. Contenido relacionado con Software libre.
  • Nutch - un esfuerzo para construir un motor de búsqueda de código abierto, basado en Lucene y Hadoop. También creado por Doug Cutting.
  • Hortonworks - plataforma libre basada en Hadoop con soporte comercial
  • Cloudera - plataforma libre basada en Hadoop con soporte comercial y aplicaciones de gestión disponibles
  • Datameer Analytics Solution – motor de análisis, visualización e integración de fuentes de datos y almacenamiento
  • HBase - base de datos modelo BigTable
  • IBM - plataforma libre basada en Hadoop con soporte comercial y aplicaciones de gestión y manejo de tecnologías open source.
  • Hypertable - alternativa a HBase
  • MapReduce - algoritmo de filtrado de datos fundamentales Hadoop
  • Apache Mahout - algoritmos de Machine Learning implementados en Hadoop
  • Apache Cassandra - una base de datos orientada a columnas que soporta acceso desde Hadoop
  • Computación en nube
  • Big data
  • Sqoop

Enlaces externos

  • (en inglés) Sitio web oficial
  • LUCA Talk: Hadoop vs Spark en YouTube.
  •   Datos: Q29120
  •   Multimedia: Apache Hadoop

apache, hadoop, entorno, trabajo, para, software, bajo, licencia, libre, para, programar, aplicaciones, distribuidas, manejen, grandes, volúmenes, datos, data, permite, aplicaciones, trabajar, miles, nodos, petabytes, datos, hadoop, inspiró, documentos, google. Apache Hadoop es un entorno de trabajo para software bajo licencia libre para programar aplicaciones distribuidas que manejen grandes volumenes de datos big data 1 Permite a las aplicaciones trabajar con miles de nodos en red y petabytes de datos Hadoop se inspiro en los documentos de Google sobre MapReduce y Google File System GFS Apache HadoopInformacion generalTipo de programaSistema de archivos distribuidoAutorDoug CuttingMike CafarellaDesarrolladorApache Software FoundationLanzamiento inicial1 de abril de 2006LicenciaApache License 2 0Estado actualActivoIdiomasinglesInformacion tecnicaProgramado enJavaPlataformas admitidasJavaVersionesUltima version estable1 0 015 de diciembre de 2011EnlacesSitio web oficial Repositorio de codigo editar datos en Wikidata Hadoop es un proyecto de la organizacion Apache que esta siendo construido y usado por una comunidad global de contribuyentes 2 mediante el lenguaje de programacion Java Yahoo ha sido el mayor contribuyente al proyecto 3 y usa Hadoop extensivamente en su negocio 4 Indice 1 Historia 2 Caracteristicas 2 1 Arquitectura 2 2 Sistemas de archivos 2 2 1 Hadoop Distributed File System 2 2 2 Otros sistemas de archivos 2 3 Job Tracker y Task Tracker el motor MapReduce 2 3 1 Programacion de tiempo 2 3 1 1 Planificador justo 2 3 1 2 Programador de capacidad 2 4 Otras aplicaciones 3 Usuarios prominentes 4 Con Sun Grid Engine y Nutanix 5 Referencias 5 1 Notas 5 2 Bibliografia 6 Vease tambien 7 Enlaces internos 8 Enlaces externosHistoria EditarHadoop fue creado por Doug Cutting 5 que lo nombro asi por el elefante de juguete de su hijo 6 Fue desarrollado originalmente para apoyar la distribucion del proyecto de motor de busqueda denominado Nutch 7 Caracteristicas EditarArquitectura Editar Hadoop consiste basicamente en el Hadoop Common que proporciona acceso a los sistemas de archivos soportados por Hadoop El paquete de software The Hadoop Common contiene los archivos jar y los scripts necesarios para ejecutar Hadoop El paquete tambien proporciona codigo fuente documentacion y una seccion de contribucion que incluye proyectos de la Comunidad Hadoop Una funcionalidad clave es que para la programacion efectiva de trabajo cada sistema de archivos debe conocer y proporcionar su ubicacion el nombre del rack mas precisamente del switch donde esta el nodo trabajador Las aplicaciones Hadoop pueden usar esta informacion para ejecutar trabajo en el nodo donde estan los datos y en su defecto en el mismo rack switch reduciendo asi el trafico de red troncal backbone traffic El sistema de archivos HDFS usa esto cuando replica datos para intentar conservar copias diferentes de los datos en racks diferentes El objetivo es reducir el impacto de un corte de energia de rack o de fallo de interruptor de modo que incluso si se producen estos eventos los datos todavia puedan ser legibles 8 Un cluster tipico Hadoop incluye un nodo maestro y multiples nodos esclavo El nodo maestro consiste en jobtracker rastreador de trabajo tasktracker rastreador de tareas namenode nodo de nombres y datanode nodo de datos Un esclavo o compute node nodo de computo consisten en un nodo de datos y un rastreador de tareas Hadoop requiere tener instalados entre nodos en el cluster JRE 1 6 o superior y SSH Sistemas de archivos Editar Hadoop Distributed File System Editar El Hadoop Distributed File System HDFS es un sistema de archivos distribuido escalable y portatil escrito en Java para el framework Hadoop Cada nodo en una instancia Hadoop tipicamente tiene un unico nodo de datos un cluster de datos forma el cluster HDFS La situacion es tipica porque cada nodo no requiere un nodo de datos para estar presente Cada nodo sirve bloques de datos sobre la red usando un protocolo de bloqueo especifico para HDFS El sistema de archivos usa la capa TCP IP para la comunicacion los clientes usan RPC para comunicarse entre ellos El HDFS almacena archivos grandes el tamano ideal de archivo es de 128 MB 9 a traves de multiples maquinas Consigue fiabilidad mediante replicado de datos a traves de multiples hosts y no requiere almacenamiento RAID en ellos Con el valor de replicacion por defecto 3 los datos se almacenan en 3 nodos dos en el mismo rack y otro en un rack distinto Los nodos de datos pueden hablar entre ellos para reequilibrar datos mover copias y conservar alta la replicacion de datos HDFS no cumple totalmente con POSIX porque los requerimientos de un sistema de archivos POSIX difieren de los objetivos de una aplicacion Hadoop porque el objetivo no es tanto cumplir los estandares POSIX sino la maxima eficacia y rendimiento de datos HDFS fue disenado para gestionar archivos muy grandes 9 HDFS no proporciona Alta disponibilidad Otros sistemas de archivos Editar A junio de 2010 la lista de sistemas de archivos soportados incluye HDFS El sistema propio de Hadoop Esta disenado para la escala de decenas petabytes de almacenamiento y funciona sobre los sistemas de archivos de base Amazon S3 se dirige a clusters almacenados en la infraestructura del servidor bajo demanda Amazon Elastic Compute Cloud No hay conciencia de racks en este sistema de archivos porque todo el es remoto CloudStore previamente llamado Kosmos Distributed File System el cual es consciente de los racks FTP almacena todos sus datos en un servidor FTP accessible remotamente HTTP y HTTPS de solo lectura Hadoop puede trabajar directamente con cualquier sistema de archivos distribuido el cual puede ser montado por el sistema operativo subyacente simplemente usando la URL file sin embargo esto tiene un precio la perdida de la localidad Para reducir el trafico de red Hadoop necesita saber que servidores estan mas proximos a los datos esta informacion la pueden proporcionar los puentes especificos del sistema de archivos especifico de Hadoop La configuracion por defecto incluye Amazon S3 y el almacen de archivos CloudStore a traves de las URLs s3 y kfs Se han escrito varios puentes de sistema de archivos de terceros ninguno de los cuales estan actualmente en las distribuciones de Hadoop Estas pueden ser mas de proposito general que HDFS el cual esta muy sesgado hacia grandes archivos y solo ofrece un subconjunto de la semantica esperada de sistema de archivos Posix Filesystem no se puede bloquear o escribir en cualquier parte salvo la cola de un archivo Job Tracker y Task Tracker el motor MapReduce Editar Aparte del sistema de archivos esta el motor MapReduce que consiste en un Job Tracker rastreador de trabajos para el cual las aplicaciones cliente envian trabajos MapReduce El rastreador de trabajos Job Tracker impulsa el trabajo fuera a los nodos Task Tracker disponibles en el cluster intentando mantener el trabajo tan cerca de los datos como sea posible Con un sistema de archivos consciente del rack en el que se encuentran los datos el Job Tracker sabe que nodo contiene la informacion y que otras maquinas estan cerca Si el trabajo no puede ser almacenado en el nodo actual donde residen los datos se da la prioridad a los nodos del mismo rack Esto reduce el trafico de red en la red principal backbone Si un Task Tracker rastreador de tareas falla o no llega a tiempo la parte de trabajo se reprograma El TaskTracker en cada nodo genera un proceso separado JVM para evitar que el propio TaskTracker mismo falle si el trabajo en cuestion tiene problemas Se envia informacion desde el TaskTracker al JobTracker cada pocos minutos para comprobar su estado El estado del Job Tracker y el TaskTracker y la informacion obtenida se pueden ver desde un navegador web proporcionado por Jetty Si el Job Tracker fallaba en Hadoop 0 20 o anterior todo el trabajo en curso se perdia Hadoop version 0 21 anadio algunos autoguardados al proceso el rastreador de trabajo graba lo que esta en el sistema de archivos Cuando un Job Tracker comienza busca datos para recomenzar el trabajo donde lo dejo En versiones anteriores todo el trabajo activo se perdia cuando se reiniciaba el Job Tracker Las limitaciones de esto son La asignacion de trabajo de los seguidores de trabajo es muy sencilla Cada rastreador de tarea tiene un numero de plazas disponibles llamadas ranuras o slots por ejemplo 4 slots Cada mapa activo o cada reduce toma ocupa una posicion El Rastreador de Trabajo asigna trabajo para el seguidor mas cercano a los datos con una ranura disponible No hay ninguna consideracion de la carga activa actual de la maquina asignada y por tanto de su disponibilidad real Si una tarea de seguimiento es muy lenta se puede retrasar toda la operacion MapReduce especialmente hacia el final de un trabajo donde todo puede estar a la espera de una sola tarea lenta Con la ejecucion especulativa activada sin embargo una tarea simple puede ejecutarse en multiples nodos esclavos Asi que esta tecnologia permite una conexion en red muy eficiente Programacion de tiempo Editar Por defecto Hadoop usa el metodo FIFO para programar la realizacion de trabajos desde una cola de trabajo En la version 0 19 el job scheduler programador de trabajos fue refactorizado fuera de Hadoop lo cual anadio la habilidad de usar un programador alternativo 10 Planificador justo Editar El fair scheduler planificador justo o limpio fue desarrollado por Facebook El objetivo del planificador es proporcionar rapida respuesta para trabajos pequenos y calidad de servicio QOS en sus siglas en ingles para trabajos de produccion El fair scheduler se basa en 3 conceptos basicos 11 Los trabajos se agrupan en pools Cada pool tiene asignada una porcion minima garantizada El exceso de capacidad se distribuye entre trabajos Por defecto los trabajos que estan sin categorizar van a un pool por defecto Las pools tienen que especificar el n º minimo de slots de mapa los reduce slots y un limite en el numero de trabajos ejecutandose Programador de capacidad Editar El programador de capacidad fue desarrollado por Yahoo Soporta varias funciones similares a las del fair scheduler 12 Los trabajos son presentados en las colas A las colas se le asigna una fraccion de la capacidad total de recursos Los recursos libres se asignan a las colas mas alla de su capacidad total Dentro de una cola un trabajo con un alto nivel de prioridad tendra acceso a los recursos de la cola No es posible la expropiacion de recursos cuando se esta ejecutando un trabajo Otras aplicaciones Editar El sistema de archivos HDFS no se restringe a MapReduce jobs Puede usarse para otras aplicaciones muchas de las cuales estan bajo desarrollo en Apache La lista incluye la base de datos HBase el sistema de aprendizaje automatico Apache Mahout y operaciones de matriz Hadoop puede usarse en teoria para cualquier tipo de trabajo orientado a lotes en lugar de tiempo real el cual es muy intensivo en datos y ser capaz de trabajar en piezas de datos en paralelo En octubre de 2009 entre las aplicaciones comerciales de Hadoop 13 se incluian Registro y o analisis de fuentes de clics clickstream de varios tipos Analiticas de marketing Aprendizaje automatico y o extraccion de datos sofisticados data mining Procesamiento de imagenes El tratamiento de mensajes XML Web de rastreo y o procesamiento de textos Archivado general incluidos los relacionales y datos tabulares por ejemplo para cumplimientoUsuarios prominentes EditarEl 19 de febrero de 2008 Yahoo Inc lanzo lo que pretendia era la mas grande aplicacion de produccion Hadoop El Yahoo Search Webmap es una aplicacion de Hadoop que se ejecuta en mas de 10 000 nucleos Linux Clusters de racimo y produce datos que se utilizan actualmente en todos los resultados de busqueda de Yahoo En junio de 2009 Yahoo hizo disponible el codigo fuente de la version de Hadoop que usa en produccion 14 Aparte de Yahoo otras organizaciones usan Hadoop para ejecutar computos enormes distribuidos Algunas de estas empresas incluyen 2 A9 com AOL Booz Allen Hamilton EHarmony eBay Facebook Fox Interactive Media Freebase IBM ImageShack ISI Joost Last fm LinkedIn Meebo Metaweb Mitula 15 The New York Times Ning Powerset ahora parte de Microsoft Rackspace StumbleUpon 16 Tuenti Twitter Veoh Zoosk 1 amp 1 MercadoLibreCon Sun Grid Engine y Nutanix EditarHadoop puede usarse tambien en granjas de computadoras y entornos de alto rendimiento La integracion con Sun Grid Engine fue lanzada y ejecutar Hadoop en Sun Grid el servicio bajo demanda de utility computing es posible 17 En la implementacion inicial de la integracion el programador de tiempo de CPU no sabe la localizacion de los datos Desafortunadamente esto significa que el procesado no es hecho siempre en el mismo rack donde estan los datos esto era una caracteristica principal de la Rutin Hadoop Una mejor integracion con localizacion de datos se anuncio durante la Sun HPC Software Workshop 09 18 Sun tambien tiene el proyecto Hadoop Live CD OpenSolaris que permite ejecutar un cluster Hadoop completamente funcional usando un live CD 19 Por su parte la tecnologia de Nutanix tambien es capaz de soportar plataformas Hadoop aportando las grandes ventajas de su arquitectura redundancia rendimientos enorme facilidad de gestion etc sin las dependencias de storage habituales en estas infraestructuras Cloud Referencias EditarNotas Editar Hadoop es un framework que ejecuta aplicaciones en grandes clusters de hardware dedicado El framework proporciona a las aplicaciones de forma transparente fiabilidad y movilidad de datos Hadoop implementa un paradigma computacional llamado map reduce donde la aplicacion se divide en muchos pequenos fragmentos de trabajo cada uno de los cuales se pueden ejecutar o volver a ejecutar en cualquier nodo del cluster Ademas proporciona un sistema de archivos distribuido que almacena los datos en los nodos de computo produciendo un alto ancho de banda agregado en todo el cluster Ambos map reduce y el sistema de archivos distribuidos estan disenados de manera que las fallas de nodo se gestionan automaticamente mediante el framework Hadoop Overview a b Applications and organizations using Hadoop Archivado desde el original el 29 de noviembre de 2012 Consultado el 16 de febrero de 2011 Hadoop Credits Page Archivado desde el original el 8 de julio de 2009 Consultado el 16 de febrero de 2011 Yahoo Launches World s Largest Hadoop Production Application Hadoop creator goes to Cloudera Ashlee Vance 17 de marzo de 2009 Hadoop a Free Software Program Finds Uses Beyond Search New York Times Consultado el 20 de enero de 2010 Hadoop contains the distributed computing platform that was formerly a part of Nutch This includes the Hadoop Distributed Filesystem HDFS and an implementation of map reduce About Hadoop Archivado el 12 de julio de 2009 en Wayback Machine https web archive org web 20090714010337 http hadoop apache org core docs r0 17 2 hdfs user guide html Rack Awareness a b The Hadoop Distributed File System Architecture and Design 1 HADOOP 3412 Refactor the scheduler out of the JobTracker ASF JIRA 2 enlace roto disponible en Internet Archive vease el historial la primera version y la ultima Hadoop Fair Scheduler Design Document 3 Capacity Scheduler Guide How 30 enterprises are using Hadoop in DBMS2 Hadoop and Distributed Computing at Yahoo Mitula Search Hadoop Consultado el 6 de septiembre de 2011 HBase at StumbleUpon Archivado desde el original el 13 de agosto de 2010 Consultado el 26 de junio de 2010 Creating Hadoop pe under SGE Sun Microsystems 16 de enero de 2008 Archivado desde el original el 12 de septiembre de 2008 HDFS Aware Scheduling With Grid Engine Sun Microsystems 10 de septiembre de 2009 Archivado desde el original el 5 de julio de 2010 OpenSolaris Project Hadoop Live CD Sun Microsystems 29 de agosto de 2008 Archivado desde el original el 22 de octubre de 2009 20 Cyttek Group http cyttek com consultoria cyttek big data manager enlace roto disponible en Internet Archive vease el historial la primera version y la ultima Bibliografia Editar Lam Chuck 28 de julio de 2010 Hadoop in Action 1st edicion Manning Publications p 325 ISBN 1935182196 Venner Jason 22 de junio de 2009 Pro Hadoop 1st edicion Apress p 440 ISBN 1430219424 Archivado desde el original el 5 de diciembre de 2010 Consultado el 16 de febrero de 2011 White Tom 16 de junio de 2009 Hadoop The Definitive Guide 1st edicion O Reilly Media p 524 ISBN 0596521979 Vease tambien EditarEnlaces internos Editar Portal Software libre Contenido relacionado con Software libre Nutch un esfuerzo para construir un motor de busqueda de codigo abierto basado en Lucene y Hadoop Tambien creado por Doug Cutting Hortonworks plataforma libre basada en Hadoop con soporte comercial Cloudera plataforma libre basada en Hadoop con soporte comercial y aplicaciones de gestion disponibles Datameer Analytics Solution motor de analisis visualizacion e integracion de fuentes de datos y almacenamiento HBase base de datos modelo BigTable IBM plataforma libre basada en Hadoop con soporte comercial y aplicaciones de gestion y manejo de tecnologias open source Hypertable alternativa a HBase MapReduce algoritmo de filtrado de datos fundamentales Hadoop Apache Mahout algoritmos de Machine Learning implementados en Hadoop Apache Cassandra una base de datos orientada a columnas que soporta acceso desde Hadoop Computacion en nube Big data SqoopEnlaces externos Editar en ingles Sitio web oficial LUCA Talk Hadoop vs Spark en YouTube Datos Q29120 Multimedia Apache Hadoop Obtenido de https es wikipedia org w index php title Apache Hadoop amp oldid 133103850, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos