Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Curso Big Data
Curso Big Data
1. Batch Processing
El término de BATCH PROCESSING obedece a una técnica empleada para procesar y ejecutar una
gran cantidad de datos por lotes, permitiendo a cada uno de sus usuarios recopilar y almacenar volúmenes
de informacion en esta categoría, mejorando así, la eficiencia al priorizar el análisis correspondiente a cada
información que será relevante para una entidad determinada.
Por tanto, el valor que el Big Data deriva para la mayoría de las empresas en la actualidad en
dos vertientes, como lo es el uso de análisis y la habilitación de nuevos elementos, donde el
análisis les permite conocer datos, estadísticas y precisión relacionados con el proceso de
gestión en cada servicio y la relación con el consumidor, de su producto o servicio, como el
impacto en los clientes y la capacidad de procesar grandes volúmenes de datos en tiempo real,
eliminando así procesos engorrosos y latentes en las gestiones empresariales.
En este sentido, las plataformas bajo las estructuras algorítmicas de Hadoop de código abierto
para Spark, o Sqoop, Pig, Flume o Hive, por nombrar algunas de ellas, corresponden al
procesamiento de datos más eficaces en las gestiones empresariales actualmente, por ende,
detallaremos el funcionamiento de cada una de estas plataformas en el presente modulo.
1. Hadoop
Hadoop fue creado por Doug Cut, creador de Apache Lucene, el cual está basado en un
sistema de manejo de información por medio del procesamiento paralelo y distribuido de Big
Data, concebido para solucionar un problema de escalabilidad que existía en Nutch, un motor
de búsqueda y rastreo de código abierto.
Sin embargo, la herramienta de Hadoop al ser más conocida por su estructura de origen de
MapReduce y su sistema de archivos distribuido en sus siglas HDFS (Hadoop Distributed
File System), formando parte del componente principal del ecosistema Hadoop, también es
implementada para entornos cuyo de manejo de información bajo estructuras con vertientes
de escalabilidad a través de la computación distribuida.
Ejemplo de ello fue la adopción para el año 2006 de la empresa Yahoo en su infraestructura, con Apache
Hadoop, cuyo fin era optimizar su aplicación WebMap, cuya tecnología era capaz de construir o crear
elementos gráficos de la web para impulsar su motor de búsqueda.
Pero, ¿a qué se debió este cambio? Todo esto se debe a que su infraestructura anterior,
llamada “Dreadnaught”, había funcionado con éxito y crecido bien, de solo 20 nodos de
tamaño y se expandió a 600 nodos de clúster, pero desde entonces ha logrado la máxima
escalabilidad con aplicaciones distribuidas, porque funciona de forma muy similar a
MapReduce.
Siendo Hadoop YARN, el nuevo sustituto del componente monolítico de MapReduce cuya
base original es de la versión 1, donde la programación y la gestión de componentes activos
aislados de la gestión de canales de la herramienta MapReduce, que abre espacio para
varios “sistemas de aplicación”, que no se basaban en el procesamiento de MapReduce.
Por ello, el ecosistema Hadoop es diverso, con un elevado crecimiento día a día, siendo
imposible hacer un seguimiento de todos los diversos proyectos que interactúan con Hadoop
de alguna manera, por ende, detallamos una lista de las herramientas disponibles en el
ecosistema Hadoop:
Herramientas
Por otro lado, cuando un conjunto de datos excede el límite de almacenamiento de un solo
dispositivo, es importante dividirlo en varios dispositivos separados, cuya administración
de almacenamiento, se enfoca bajo un modelo distribuido dentro de red de dispositivos
respectivamente.
En lugares donde esta complejidad se convierte en un factor indispensable, lo que hace que
los sistemas de archivos distribuidos sean más complejos que los sistemas de archivos de
disco tradicionales, quizás la prueba más importante sea asegurarse de que el sistema de
archivos pueda soportar las fallas en los nodos sin pérdida de datos.
Actualmente, los clientes que llevan a cabo o utilizan el escenario Hadoop se mantienen en la
suposición de que ninguna información se perderá o socavará durante su proceso de
almacenamiento o el manejo de los datos.
No obstante, ya que cada actividad tanto de entrada y salida en el disco, o en la red conlleva
una pequeña posibilidad de introducir posibles errores en los datos que el disco o la red
puedan estar leyendo, cuando el manejo de grandes volúmenes de información, Hadoop
puede hacer frente a la posibilidad de alta información que pueda generar errores durante su
procesamiento final
Por lo tanto, HDFS verifica de forma transparente todos los datos escritos en él y verifica la
suma de datos al momento de la lectura de las características de los mismos, de forma
predetrminada, y genera un proceso de verificación separado para cada byte de
datos io.bytes.per.checksum, este valor predeterminado es de 512 bytes y cuando CRC-32
efectuá una adición de verificación de 4 bytes, la capacidad de almacenamiento es inferior al
1%.
Saber más
Por ejemplo, si un cliente que escribe datos los envía a una cadena de datanodes, y en el
último nodo de datos en la cadena de validación de la suma de comprobación, se detecta un
error, el cliente recibe una ChecksumException, que es una subclase de IOException, que
debe ser explícito para lograr un reintento en la operación de una actividad.
Seguidamente, al implementar una función de mapeo, cuya ejecución es muy simple donde
podemos abstraer valores como el año y la temperatura del aire, porque esos son los únicos
campos que nos interesan. En este caso, la función de mapa es solo la etapa de preparación de
datos, haciendo uso de la función de reducción, permitiendo en la ejecución del proceso
hallar la temperatura máxima para cada año establecido.
Así, la función de mapa es ideal para eliminar registros erróneos: aquí filtramos las
temperaturas faltantes, sospechosas o erróneas, y para visualizar el funcionamiento del mapa,
veamos los siguientes ejemplos de líneas de entrada (ver Eliminar algunas columnas no
utilizadas para ajustar la página, indicadas con elipses):
(1950, 0)
(1950, 22)
(1950, −11)
(1949, 111)
(1949, 78)
Una vez generada la salida de la función map, los datos generados son tratados por
el framework MapReduce antes de ser emitidos a la función reduce, cuyo procesamiento
clasifica y categoriza los pares establecidos por índice, generando la siguiente entrada:
(1949,[111,78])
(1950, [0, 22, −11])
Donde, el periodo anual permite la visualización de los datos a través de una lista de todas sus
lecturas de las variables de temperatura del aire, donde la función de reducción puede iterar
los datos a través de la lista leída y obtener de ella el máximo valor:
(1949,111)
(1950, 22)
Saber más
Por ende, Job Tracker gestiona las tareas a través de Task Tracker en función del nodo de datos que gestiona
las tareas o procesos reales. Job Tracker gestiona todos los trabajos solicitados por el cliente, pasa subtareas a
subnodos individuales, realiza un seguimiento de la disponibilidad y la finalización de la tarea.
De tal manera que, Hadoop V1 solo admite clústeres de aproximadamente 4000-5000 nodos y también tiene
un límite en la cantidad de procesos concurrentes que se pueden ejecutar, aunque solo tiene un tipo de
procesamiento, Map Reduce, a pesar de su gran potencia, pero no le permite cumplir requisitos como gráficos o
procesamiento en tiempo real.
Hadoop V2 también ofrece la capacidad de utilizar procesos distintos a Map Reduce, como
Apache Graph para procesar gráficos o Impala para buscar información, de modo que los
elementos de YARN se pueden distribuir entre sus distintos sistemas de procesamiento de
datos.
Ahora bien, esta arquitectura descrita permite la adaptación de Hadoop a clústeres mucho más grandes y
brinda la capacidad de tener más operaciones simultáneas, sin ignorar su enmarcada estructura para
desarrollar diversas operaciones no solo en Map Reduce, dentro de un renglón de tiempo establecido.
Puede funcionar con ambas versiones, por lo que la instalación / compilación y el uso real
también son diferentes, por ejemplo, para V1, hará una instalación manual del software,
mientras que para V2 usará la pila de software.
Esta arquitectura integra recursos adicionales en flujos de datos que no se han utilizado
anteriormente debido a las limitaciones tradicionales de los sistemas de gestión de datos
RDBM, donde es posible incrustar recursos como flujos de clics, la web, redes sociales,
sensores, máquinas, informes e imágenes en los datos., y mientras se ingresa los datos en
Hadoop, como entrada de flujo o lote, los colocamos en HDFS para su análisis directo o su
debida transferencia a otros sistemas.
Este enfoque funciona en los sistemas de RDBM, EDW y MPP extrayendo, convirtiendo y
cargando recursos compactos y que consumen mucho tiempo en la plataforma Hadoop
mucho más barata y cargándolos en la plataforma Hadoop mucho más barata, que es
esencialmente el modelo ETL. Extraiga y cargue todo en Hadoop, pero solo convierta los
datos correctos para su plataforma o necesidades de análisis.
Por lo tanto, YARN es el motor de esta arquitectura, como se mencionó anteriormente, antes de que se
introdujera YARN, MapReduce era el único motor informático de Hadoop. MapReduce tiene muchas ventajas,
pero también tiene muchas limitaciones; Hadoop tradicional pone en cola las tareas de MapaReduce y la tarea no
se puede realizar hasta la tarea anterior.
Por otro lado, MapaReduce, era un proceso por lotes que tardaba horas o días en completarse, pero es excelente
si usa un grupo para responder preguntas individuales de Big Data, pero si desea analizar las ventas diarias
con análisis de tablero, no tiene ninguna posibilidad.