Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Contenido
1. Almacenamiento de datos (BIG DATA) 2. BIG DATA - problemas en la industria de TI 3. Introduccin a Hadoop
MapReduce 6. Complementos de Hadoop 7. Usuarios destacados de Hadoop. 8. Logros 9. Novedades 10. Conclusiones
5.
Qu es Big Data?
Big Data es un concepto que se aplica a toda aquella informacin que no puede ser procesada o analizada usando procesos o herramientas convencionales (Aplicaciones de base de datos) debido al enorme volumen de datos sobre el cual hay que trabajar. Las soluciones de tecnologa de Big Data trae tcnicas de programacin nuevas y ms accesibles para trabajar en almacenamientos de datos masivos con datos tanto estructurados como no estructurados. A partir de 2012, los lmites al tamao de los conjuntos de datos que sean factibles para procesar en tiempo razonable eran del orden de Exabyte de datos (1 exabyte = 1024 petabyte)
de datos en muchas reas, incluyendo la meteorologa, simulaciones fsicas complejas, y la investigacin biolgica y ambiental. Afectar tambin de bsqueda de Internet, las finanzas y la informtica de negocios.
Los desafos incluyen la captura, recuperacin, almacenamiento,
HADOOP
Qu es Hadoop?
Es un proyecto de cdigo abierto escrito en java. Administrado por la Fundacin Apache Software. Los contribuidores de Hadoop trabajan para algunas de las compaas de tecnologa ms grandes del mundo. Esa comunidad diversa y motivada ha producido una plataforma realmente innovadora para la consolidacin, combinacin y compresin de datos a gran escala con el fin de comprender mejor el aluvin de datos. Las base de datos relacionales y Datawarehouse destacan en las cargas de trabajo OLTP y OLAP de datos estructurados. Hadoop, sin embargo, fue diseado para resolver un problema diferente: el anlisis rpido y fiable tanto de los datos estructurados como de datos complejos. Implementado tecnologa fsica, para pasar de los servidores individuales a miles de mquinas, cada uno con un almacenamiento local.
Caractersticas:
Esto es lo que hace que sea especialmente til:
Escalable: Es capaz de almacenar de forma fiable petabytes de proceso. (Mas de 4000 nodos)
Econmico: Distribuye los datos y el procesamiento a travs de clster de computadores comnmente disponibles (en miles). Eficiente: Mediante la distribucin de los datos, se puede procesar en paralelo en los nodos donde se encuentran los datos. Confiable: Mantiene automticamente mltiples copias de datos y automticamente vuelve a desplegar tareas de recopilacin de datos en caso de error.
Dnde obtengo el software para trabajar en Big Data?" La distribucin libre de Hadoop lo encuentra en el sitio web de Cloudera llamado CDH (para distribucin de Cloudera incluyendo Hadoop). Esto est disponible como una imagen VMWare.
Componentes Principales:
Hadoop se compone por tres elementos principales: Hadoop Common Otros complementos: Hue Mahout Oozie Sqoop Pig/Hive Hbase Zookeeper HDFS
MapReduce
Chukwa
Hadoop Commons:
Proporciona acceso a los sistemas de ficheros soportados por
Hadoop.
El paquete Common Hadoop contiene los archivos JAR
El paquete tambin proporciona el cdigo fuente, documentacin, y una seccin de la contribucin que incluye proyectos de la Hadoop Comunidad.
HDFS Caractersticas:
Altamente tolerante a fallos. Alto rendimiento. Apropiada para aplicaciones con grandes conjuntos de datos. Streaming de acceso a los datos del sistema de archivos. Puede ser construido con hardware comercial. Reduce el impacto de un corte de energa. Tiene una NameNode y DataNodes.
HDFS Arquitectura:
MAESTRO (NAMENODE): Un servidor maestro que gestiona el espacio de nombres del sistema de archivos y los metadatos adems regula el acceso a los archivos de los clientes. La NameNode hace que las operaciones de espacio de nombres del sistema de archivos como abrir, cerrar, cambiar el nombre, etc de los archivos y directorios disponibles a travs de una interfaz RPC. Tambin determina la asignacin de bloques de DataNodes. ESCLAVOS (DATANODES): mantener tres copias de cada bloque de datos, gestionan el almacenamiento conectado a los nodos que se ejecutan. La DataNodes son responsables de atender las solicitudes de lectura y escritura de los clientes del sistema de archivos, sino que tambin realizan la creacin de bloques, eliminacin, y la replicacin segn la instruccin de la NameNode.
HDFS Arquitectura:
NAMENODE: Es el engranaje central del HDFS. Administra el almacenamiento de datos.
HDFS Arquitectura:
DATANODE: Cientos o miles de DataNodes por clster (grupo de computadoras) Organizados en racks. Operaciones de Entrada/Salida ocurren sobre el DataNode. Contienen informacin replicada entre ellos. Alta tolerancia a fallas.
HDFS Arquitectura:
Client
TCP/IP Networking
NameNode
Metadata
DataNode
DataNode
DataNode
DataNode
bloque 3df2
...
...
13
Escribir archivo
Distributed FileSystem FSData InputStream
1. crear
HDFS cliente
JVM cliente nodo cliente
3. leer 6. cerca
NameNode
nombre de nodo
HDFS cliente
JVM cliente nodo cliente
2. crear
3. escribir 7. cerca
NameNode
8. completo
nombre de nodo
DataNode
DataNode
DataNode
DataNode
DataNode
DataNode
nodo de datos
nodo de datos
nodo de datos
nodo de datos
nodo de datos
nodo de datos
Si un nodo de datos se estrell, se elimina el nodo se estrell, el bloque actual recibe un identificador nuevo, as como para eliminar los datos parciales de los nodos que han fallado ms tarde, y NameNode asigna un otro nodo.
MapReduce:
Es el nombre dado a la combinacin de dos procesos separados necesarios para la extraccin de valores de un gran nmero de orgenes de datos distintos. La parte MAP funciona como extractor y asigna valores a determinadas claves para un nico documento. La parte REDUCE realiza la funcin de acumulacin y combina las claves de mltiples documentos para crear un valor reducido (combinado) nico para cada clave a partir de los mltiples valores generados. Un trabajo grande puede dividirse en varias tareas, razn por la cual se pueden emplear varias mquinas para resolver cada una de estas. Debido a que el trabajo a realizar puede ser dividido en varias tareas y a su vez estas tareas pueden ser ejecutadas en paralelo en diversas mquinas diferentes se provee un enorme poder de procesamiento, lo cual brinda una gran escalabilidad horizontal. Como los datos se encuentran replicados en las mquinas (nodos) que conforman el clster tiene una alta tolerancia a fallas ya que si uno de los nodos deja de estar disponible por algn motivo, otro nodo puede ocupar su lugar.
Caractersticas:
Creado por Doug Cutting Google lo introdujo en 2004 y a posteriori en 2006 por Yahoo para dar soporte al procesamiento paralelo de datos. Consiste en la ejecucin de dos procesos separados, Map y Reduce Paralelismo (procesa varios datos al mismo a tiempo) Escalabilidad (Puede manejar y almacenar petabytes de forma segura) Tolerancia a fallos Curva de aprendizaje elevada
Map:
C1 es una clave entrante que puede ser un archivo (Vi1) luego pasa por un proceso MAP que divide esos valores del archivo en varias claves (K1)
k1 v1 C1 vi1
Map
k2 v2 k1 v3 k3 v4
C2 vi2
Map
k1 v5 k2 v6 k3 v7 C3 vi3
Map
k1 v8
k4 v9
Map:
K1 es una clave que tiene un valor V1 todos los valores se ordenan de acuerdo a cada clave.
k1 k2
v1 v2
k1
v1 v3 v5 v8
k1 v3
k3
v4
k1 v5
k2 k3
MEZCLAR Y ORDENAR
k2
v2 v6
v6 v7
k3
v4 v7
k1 v8
k4
v9
k4
v9
Map:
Recibe como entrada un par (clave, lista de valores) y recupera como salida un nico par (clave, valor)
k1
v1 v3 v5 v8
Reduce
k1
vf1
k2
v2 v6
Reduce
k2
vf2
k3
v4 v7
Reduce
k3
vf3
k4
v9
Reduce
k4
vf4
De funcin Reducir
MapReduce Arquitectura:
Tiene dos componentes importantes: JobTracker TaskTracker
Input Job (Map, Reduce, Input)
JobTracker
Assign Task
Assign Task
Assign Task
TaskTracker
Data transfer
TaskTracker
Data transfer
TaskTracker
MapReduce Arquitectura:
JOBTRACKER: Planificador de tareas
JobTracker
Assign Task
MapReduce Arquitectura:
TASKTRACKER:
Assign Task
TaskTracker
Data transfer
TaskTracker
MapReduce Arquitectura:
Master
JobTracker
NameNode
Slave
Slave
Slave
TaskTracker DataNode
TaskTracker DataNode
TaskTracker DataNode
Complementos de Hadoop:
HUE: Interfaz web para simplificar el uso de Hadoop. MAHOUT: minera de datos sobre Hadoop (DATAMINIG). OOZIE: Planificadores de workflows para gestionar trabajos Hadoop. CHUKWA: Sistema de recogida de datos para monitorizar grandes sistemas distribuidos (HDFS). SQOOP: (ETL) Transferir datos entre Hadoop y BD relacionales. PIG: Lenguaje data-flow para facilitar la programacin MapReduce. HIVE: Infraestructura de data-warehouse construida sobre Hadoop. para proporcionar el resumen de datos, consultas y anlisis.
Complementos de Hadoop:
HBASE: BD oficial Hadoop, ejecuta BD no-relacional (NoSQL) ZOOKEEPER: Servicios centralizado basados en clster (es decir, que se ejecutan en paralelo) y que necesitan estar Sincronizados
Yahoo!: Ms de 100.000 CPUs en - 20.000 equipos con Hadoop, el mayor clster: 2.000 nodos (2 * cajas 4 CPU con disco de 4TB cada uno), que se utiliza para apoyar la investigacin para sistemas de anuncios y Web Search. AOL: Se utiliza para una variedad de cosas que van desde la generacin de estadsticas de ejecutar algoritmos avanzados para hacer el anlisis del comportamiento y la orientacin; tamao de clster es de 50 mquinas, Intel Xeon, procesadores dobles, de doble ncleo, cada uno con 16 GB de RAM y 800 GB de disco duro nos da una total de 37 TB de capacidad HDFS. Facebook: Para almacenar las copias de las fuentes de datos y registros dimensin interna y lo utilizan como una fuente de informacin para el anlisis y / aprendizaje de mquinas; 320 mquina con cluster 2.560 ncleos y alrededor de 1,3 PB de almacenamiento de datos. FOX Interactive Media: 3 X 20 mquina con cluster (8 ncleos, almacenamiento 2TB); 10 maquinas con cluster (8 ncleos , almacenamiento 1TB); Se utiliza para el anlisis de registros, la minera de datos y aprendizaje automtico.
Universidad de Nebraska Lincoln: un tamao mediano Hadoop cluster (200TB) para almacenar y brindar los datos
Logros:
El Apache Hadoop proyecto de software de cdigo abierto gan el primer premio en 2011 en los PREMIOS A LA INNOVACIN MEDIAGUARDIAN.
Doug Cutting, uno de los fundadores de Apache Hadoop y arquitecto jefe de CLOUDERA - el proveedor lder de software y servicios basados en Apache Hadoop - dijo: Empujar Apache Hadoop en la gestin de datos mediante la potenciacin de las empresas para dar sentido a sus cada vez ms grandes y diversas colecciones de datos."
Logros:
Julio 2012 - Hadoop gana TERABYTE ORDENAR BENCHMARK. Todos los benchmarks miden el tiempo para ordenar distinta cantidad de registros. Para repartir la carga utilizaron un cluster gigante coordinado con Apache Hadoop. De esta manera, Apache Hadoop logr ordenar 1 Terabyte de datos en 62 segundos, y 1 Petabyte en 16.25 horas. Es la primera vez que un producto de software libre logra ganar esta competencia. Los mejores resultados:
BYTES 500,000,000,000 1,000,000,000,000 100,000,000,000,000 1,000,000,000,000,000 NODOS 1406 1460 3452 3658 TIEMPO 59 segundos 62 segundos 173 minutos 975 minutos
De esta manera, Apache Hadoop logr el record al ordenar 500GB en 1 minuto (categora Minute del benchmark SortGray), y logr tambin el record de 0.578 TB/minuto al ordenar 100TB en 173 minutos (categora Gray del benchmark SortGray).
Novedades:
Hadoop 2.0 ser anunciado prximamente, y un nuevo componente de la estructura YARN en su ncleo promete llevar a Hadoop ms all de MapReduce, mejores consultas SQL, anlisis de grficas y procesamiento de flujo. YARN es descrito como un tipo de sistema operativo distribuido a gran escala para aplicaciones de Big Data la tarea principal es la de asignar recursos en todas las aplicaciones que se ejecutan sobre Hadoop para permitirles ejecutarse de forma simultnea y con niveles consistentes de servicio para los usuarios finales.
Conclusiones:
Hadoop es un framework muy potente y realmente
sencillo de utilizar, permite reducir el trfico en la captura, almacenamiento, bsqueda, intercambio, anlisis y visualizacin.
Una
enorme cantidad de datos puede ser almacenada y grandes clculos se podra hacer en un nico compuesto con plena seguridad y proteccin. Hadoop pueda ser utilizado de manera eficiente.
Gracias.