Arquitectura de Datos a Gran Escala
Arquitectura de Datos a Gran Escala
Director
Codirector
Ingeniería de Sistemas
Bucaramanga
2024
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 2
Tabla de contenido
Introducción .................................................................................................................................... 9
1. Justificación .............................................................................................................................. 10
2. Objetivos ................................................................................................................................... 12
5. Metodología .............................................................................................................................. 33
Conclusiones ................................................................................................................................. 55
Referencias .................................................................................................................................... 57
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 5
Lista de Tablas
Tabla 2 Comparación de Arquitecturas: Data Pond, Multicapa y Dos Capas (Lambda) ............ 34
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 6
Lista de Figuras
Resumen
Título: Modelo de arquitectura para la ingestión, procesamiento y análisis de datos a gran escala*
Palabras Clave: Lago de datos, Arquitectura lagos de datos, Datos a gran escala, Procesamiento
de datos
Descripción:
Esta tesis investiga el campo del big data, explorando soluciones para su gestión y
aprovechamiento óptimo. En un mundo donde la acumulación de datos es imparable, las empresas
encuentran oportunidades invaluables. Herramientas como Hadoop y Elasticsearch, diseñadas para
superar los desafíos del procesamiento convencional, permiten la eficaz manipulación de vastos
volúmenes de datos distribuidos. Esta investigación también ofrece un panorama completo de las
herramientas disponibles para construir soluciones integrales.
El núcleo de esta tesis reside en la exploración profunda de los fundamentos de los Data Lakes y
su integración en la gestión del big data. Se desglosan arquitecturas esenciales y se examinan
tecnologías clave que posibilitan la construcción de entornos de almacenamiento y procesamiento
de datos altamente adaptables.
Un caso de estudio concreto en la industria petrolera de Texas sirve de ejemplo ilustrativo. Se
detalla la recolección y análisis de datos relevantes provenientes de diversas fuentes, como la
Energy Information Administration y el Servicio Geológico de Estados Unidos. Este estudio
demuestra cómo las herramientas de procesamiento de big data y la implementación de Data Lakes
pueden generar valor y simplificar la toma de decisiones estratégicas en un sector industrial
altamente competitivo.
En resumen, esta tesis aborda el universo del big data, enfocándose en cómo los Data Lakes se han
convertido en una solución esencial para gestionar la avalancha de información en nuestros días.
Con un enfoque particular en la industria petrolera de Texas, esta investigación explora cómo estas
tecnologías innovadoras pueden revolucionar el tratamiento de datos, facilitando análisis
profundos y decisiones fundamentadas.
*
Trabajo de Grado
**
Facultad de Ingenierías Fisicomecánicas. Escuela de Ingeniería de Sistemas e Informática.
Ingeniería de Sistemas. Director: Jathinson Meneses Mendoza. Magister en Gestión, Aplicación y
Desarrollo de Software. Codirector: Henry Andres Jimenez Herrera. Magister en Ingeniería de
Sistemas e Informática.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 8
Abstract
Title: Architecture model for large-scale data ingestion, processing and analysis*
Key Words: Data lake, Data Lake architecture, large scale data, Data processing
Description:
This thesis investigates the broad field of big data, exploring solutions for its management and
optimal use. In a world where data accumulation is unstoppable, companies are finding invaluable
opportunities. Tools such as Hadoop and Elasticsearch, designed to overcome the challenges of
conventional processing, enable the efficient manipulation of vast volumes of distributed data.
This research also provides a comprehensive overview of the tools available to build end-to-end
solutions.
The core of this thesis lies in the in-depth exploration of the fundamentals of Data Lakes and their
integration into big data management. It breaks down essential architectures and examines key
technologies that make it possible to build highly adaptive data storage and processing
environments.
A specific case study in the Texas oil industry serves as an illustrative example. The collection and
analysis of relevant data from a variety of sources, such as the Energy Information Administration
and the U.S. Geological Survey, is detailed. This study demonstrates how big data processing tools,
and the implementation of Data Lakes can generate value and simplify strategic decision making
in a highly competitive industry sector.
In summary, this thesis addresses the universe of big data, focusing on how Data Lakes have
become an essential solution for managing today's flood of information. With a particular focus
on the Texas oil industry, this research explores how these innovative technologies can
revolutionize data processing, facilitating deep analysis and informed decisions.
*
Degree Work
**
Faculty of Physicomechanical Engineering. School of Systems Engineering and Computer
Science. Systems engineer. Director: Jathinson Meneses Mendoza. Master’s in software
management, Application, and Development. Co-director: Henry Andres Jimenez Herrera.
Master’s in systems Engineering and Computer Science.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 9
Introducción
En la era de la información actual, el ritmo acelerado con el que se generan datos ha dado
cantidades masivas de información. Esta generación masiva de datos la conocemos con el término
de big data (Liu, Isah, & Zulkernine, 2020), son conjuntos de datos complejos que superan las
escalable que no solo aborde la ingesta y el procesamiento de datos a gran escala, sino que también
Una arquitectura efectiva para la ingestión, procesamiento y análisis de datos a gran escala
aplicable. Los enfoques tradicionales ya no son suficientes; en su lugar, se requiere una estructura
que pueda adaptarse a la evolución constante de las demandas de datos y que aproveche
Dos de estas tecnologías merecen especial atención en este contexto. En primer lugar,
más robustas. Por otro lado, Elasticsearch, también de código abierto, ha redefinido la búsqueda y
donde la velocidad es esencial, soportando una amplia variedad de tipos de datos, desde datos
tecnologías pertinentes, esta tesis busca construir un modelo arquitectónico integral y aplicarlo en
un escenario concreto, sentando así las bases para una gestión efectiva y estratégica de los datos
1. Justificación
las organizaciones operan y toman decisiones. La diversidad de fuentes, desde bases de datos
internas hasta plataformas de redes sociales, ha dado lugar a una extensa variedad de datos que
desafían los métodos tradicionales de gestión y análisis. Ante este panorama, surge una necesidad:
este contexto. Al permitir el almacenamiento escalable y eficiente de datos crudos en todas sus
formas y tipos, el lago de datos se presenta como una solución crucial para administrar, analizar y
deben innovar con frecuencia en este mundo altamente competitivo, es aquí donde se hace
necesario un análisis detallado de los datos con la finalidad de impulsar la toma de decisiones
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 11
comerciales inteligentes, permitiéndoles ser más eficaces y eficientes, en este punto es donde las
adicionalmente se cubren algunas de las tecnologías que potencialmente se pueden usar para su
evolución.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 12
2. Objetivos
Definir una arquitectura que permita la integración de datos a gran escala para la
de datos.
escala.
3. Marco Teórico
gran cantidad de datos sin procesar en su formato original, permitiendo su acceso y análisis cuando
es necesario.
Liu, R et al. (2020), mencionan que esto contrasta con el enfoque tradicional de
almacenamiento de datos, también conocido como esquema de escritura, que requiere un diseño
de los datos, lo que permite una mayor flexibilidad y eficiencia en el procesamiento y análisis de
los datos. Convirtiéndolo en una herramienta valiosa para el almacenamiento de datos en su estado
original, permitiendo a los usuarios realizar análisis ad-hoc y tomar decisiones basadas en los datos
en tiempo real.
Liu, R et al. (2020), adicionalmente se comenta que un lago de datos permite integrar y
procesar técnicas de búsqueda y análisis de datos que de otro modo no serían posibles.
Un lago de datos puede ser construido desde cero o utilizando una plataforma existente.
Algunas plataformas de nube populares, como Amazon Web Services, Microsoft Azure, Google
Cloud y el ecosistema Hadoop, ofrecen servicios que se pueden enlazar para lograr una
escalabilidad adecuada.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 14
de datos, así como servicios de análisis y visualización, lo que permite a los usuarios implementar
conocimientos a través de big data, el análisis ad-hoc de big data, los análisis complejos de big
data y el uso de herramientas complejas sobre big data, como OLAP, informes y paneles.
proceso de análisis y diseño detallado, que incluye el examen de las fuentes de datos, la
comprensión de los procesos de negocio y el perfilamiento de los datos. Como resultado, se obtiene
informes y análisis de datos. La Tabla 1 del estudio de Liu, R et al. (2020) resume las diferencias
Tabla 1
Estructura de datos Los datos son procesados, sólo Los datos son sin procesar,
la información estructurada es todos los tipos de datos
capturada y organizada en (estructurados, semi
esquemas estructurados, no
estructurados) se capturan en
su forma original
Costo de almacenamiento El almacenamiento de datos El almacenamiento de datos
lleva mucho tiempo y es costoso es relativamente económico.
Accesibilidad Costoso hacer cambios, por lo Las actualizaciones se
tanto, bastante complicado pueden realizar rápidamente,
lo que lo hace muy accesible.
Esquema El esquema se define antes de El esquema se define después
que se almacenen los datos, lo de almacenar los datos, lo
que ofrece rendimiento y que lo hace muy ágil y
seguridad escalable
Procesamiento de datos Utiliza el proceso de extracción, Utiliza el proceso de
transformación y carga (ETL). extracción, transformación y
carga (ETL).
Usuarios Ideal para usuarios operativos, Ideal para usuarios
como analistas de negocios, ya avanzados como científicos
que los datos están estructurados de datos que realizan análisis
y son fáciles de usar. profundos con herramientas
analíticas avanzadas
Los almacenes de datos siguen siendo herramientas empresariales valiosas para el análisis
concepto de lago de datos como una solución complementaria, permitiendo una gestión más
3.3 Arquitectura
los primeros años de la década de 2010. Según Hlupić et al. (2022), inicialmente, los lagos de datos
estaban destinados a contener grandes volúmenes de diversos datos en su forma original y sin
cambios. Han surgido varias arquitecturas, cada una de las cuales brinda ciertos beneficios para el
Uno de los bloques comunes en todas las arquitecturas es la zona de aterrizaje, donde los
datos sin procesar se colocan para su ingestión en el lago de datos (Hlupić et al., 2022). La ingestión
de datos se ha convertido en el enfoque principal para cargar los datos en el lago de datos, ya que
es más adecuado para procesos de extracción, carga y transformación que para la integración de
datos. Este es especialmente significativo cuando las fuentes de datos proporcionan datos de alta
capa de almacenamiento permanente para datos sin procesar. Con el tiempo, esta evolucionó a la
consta de dos capas de procesamiento: una capa por lotes para datos almacenados en la memoria
persistente y una capa de velocidad para datos incrementales no almacenados (Hlupić et al., 2022).
Una vez que los datos se almacenan en la memoria persistente, dejan de estar disponibles en la
capa de velocidad.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 17
Figura 1
Nota. Adaptada de Two layered Data Lake architecture de Hlupić, T., Oreščanin, D., Ružak, D.,
Lake, permitiendo acceso a datos sin procesar y con un modelo bien definido a través de una capa
almacenamiento temporal en el área de aterrizaje. Los datos son luego almacenados de forma
persistente en el área de base, que sirve como fuente para el acceso y análisis de datos (Hlupić et
al., 2022).
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 18
Figura 2
Nota. Adaptada de High-level Data Lakehouse architecture de Hlupić, T., Oreščanin, D., Ružak,
1. El estanque de datos sin procesar es el primer lugar donde se almacenan los datos
de alta velocidad, como IoT y datos provenientes de APIs, con algunos metadatos
aplicados.
datos sin procesar a través de procesos ETL, utilizado para brindar soporte al
inactivos menos utilizados de los otros estanques para su uso solo cuando son
Figura 3
Nota. Adaptada de Data Pond architecture de Hlupić, T., Oreščanin, D., Ružak, D., & Baranović,
M. (2022).
Este enfoque se basa en incorporar capas con separación de preocupaciones. Cada capa se
comunica con las contiguas y los datos deben canalizarse a través de las cuatro capas (Hlupić et
Figura 4
Arquitectura Multicapa
Nota. Adaptada de Layered Data Lake architecture de Hlupić, T., Oreščanin, D., Ružak, D., &
Baranović, M. (2022).
Capa de almacenamiento, alberga tanto los metadatos como los datos sin procesar,
brindando soporte para distintas formas y estructuras de datos, y proporciona una interfaz que
transformación e integración de datos para obtener una forma final definida, además de crear
Capa de Interacción, los usuarios finales tienen acceso a los metadatos y a los datos
El modelo descrito se basa en la arquitectura zonificada según Hlupić et al., 2022. Según
esta propuesta, se establecen múltiples zonas con distintos propósitos. La zona de aterrizaje
temporalmente almacena datos en su estado original hasta que son procesados y almacenados de
manera permanente. Paralelamente, la zona sin procesar mantiene los datos en su formato original
para asegurar la preservación de la información histórica y ofrecer una fuente para futuros análisis.
Las zonas armonizada y destilada siguen el enfoque Data Vault y contienen datos
estructurados. La primera incluye datos estructurados sin procesar, mientras que la segunda aplica
lógica empresarial a los datos. En contraste, la zona de entrega proporciona datos procesados para
aplicaciones comerciales, mientras que la "zona exploratoria" ofrece un modelo definido para
consultas de usuarios.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 22
Figura 5
Nota. Adaptada de Data Vault based zone architecture de Hlupić, T., Oreščanin, D., Ružak, D., &
Baranović, M. (2022).
controles que aseguran la calidad, integridad, disponibilidad y seguridad de los datos en una
La gobernanza de datos es esencial en el contexto de Big Data y Data Lakes, ya que estos
almacenan grandes cantidades de datos sin procesar. La gestión adecuada de estos datos es
fundamental para el éxito de un sistema analítico, ya que la falta de gestión puede convertir el lago
de datos en un depósito de datos inútiles. Los autores también compararon los Data Lakes con
precisa y oportuna de los datos heterogéneos almacenados. Esta necesidad de gobernanza de datos
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 23
se identificó previamente en Data Warehouses, y se espera que siga siendo igualmente importante
para los Data Lakes. Un ejemplo concreto de gobernanza de datos se refiere al modelado
arquitectónico, donde es crucial rastrear y almacenar las transformaciones entre capas y zonas en
los modelos arquitectónicos a través del linaje de datos y el repositorio de metadatos. Esto
proporciona la capacidad de almacenar modelos de datos para los mismos datos en todo el lago de
Los sistemas de ingestión de datos están diseñados para trasladar datos desde diferentes
Isah y Zulkerine (2018) mencionan que un sistema de ingesta de datos debería poder
soportar un alto rendimiento y baja latencia y que hay varias características importantes al
ingestión de datos.
fuentes como API HTTP/Web Sockets, API REST, IoT Hubs y colas de mensajes.
un formato común.
datos. Los sistemas deben verificar y filtrar fuentes, idiomas y formatos para
deben ser altamente disponibles para operar de manera continua a pesar de fallas,
• Extensibilidad: Los sistemas de ingesta deben ser flexibles para trabajar con
3.6. Tecnologías
Apache Kafka
real de un sistema a otro. Isah y Zulkerine (2018) implementaron Kafka en la capa de distribución
de flujo de datos. Por otro lado, Rooney et al. (2019) de IBM Research, Zurich Laboratory, en el
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 25
estructurados.
Apache NiFi
Plataforma de código abierto diseñada para automatizar y gestionar el flujo de datos entre
diferentes sistemas y aplicaciones en una arquitectura de datos distribuida. Isah y Zulkerine (2018)
Apache Sqoop
Herramienta de código abierto que permite transferir datos entre sistemas relacionales y
Hadoop. Sqoop es capaz de importar datos de bases de datos relacionales como MySQL, Oracle,
Postgres y SQL Server a HDFS o Hive, o exportar datos desde HDFS o Hive a bases de datos
relacionales.
para lograr la ingesta de datos de MSSQL, MySQL y Postgres a una base de datos Hive.
Apache Flume
Es una herramienta de ingesta de datos de código abierto diseñada para recolectar, agregar
Logstash
recolectar, limpiar, analizar y enviar datos desde diferentes fuentes a diferentes destinos.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 26
Existen dos formas principales de almacenamiento para manejar los datos, tales como bases
Mientras que las bases de datos relacionales son adecuadas para almacenar datos estructurados,
los sistemas de archivos distribuidos como HDFS son más eficientes para manejar datos no
es importante tener en cuenta que HDFS debe ser utilizado en conjunto con bases de datos
Hadoop
utiliza HDFS (Hadoop Distributed File System) como su sistema de almacenamiento central.
costo significativamente menor que los sistemas de almacenamiento tradicionales. El enfoque del
lago de datos de Hadoop se basa en almacenar todos los datos en su formato original y realizar el
ecosistema de Hadoop ofrece varias herramientas para importar y exportar datos a HDFS y
Apache HBase
Es un sistema de base de datos NoSQL para Hadoop que permite el acceso a los datos en
datos.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 27
Apache AsterixDB
Es un sistema de gestión de big data, paralelo de código abierto que proporciona una
gestión de datos distribuida completa para datos semiestructurados a gran escala. Utiliza el modelo
datos NoSQL basado en la extensión JSON. Además, con un lenguaje de consulta expresivo y
declarativo.
de grandes volúmenes de datos. S3 es escalable, fiable y de bajo costo, lo que lo convierte en una
Apache Spark
unificada para el procesamiento de datos en batch y en tiempo real. Spark es compatible con
volúmenes de datos en paralelo. MapReduce divide los datos en pequeños fragmentos y los procesa
Apache Flink
Elasticsearch
Herramienta que puede ser utilizada para procesar datos en un lago de datos al proporcionar
una interfaz de búsqueda y análisis de datos sobre los datos almacenados en HDFS o cualquier
Kibana) proporciona un conjunto integral de características que satisfacen los requisitos del caso
de estudio planteado. Este estudio se centra en la industria petrolera en Texas, donde la necesidad
de procesar diversas fuentes de información con tipos de datos heterogéneos, que abarcan desde
la Sección 8, Elastic demuestra ser una solución integral que cumple con los criterios
fundamentales necesarios para llevar a cabo este análisis de datos. Las razones específicas que
estado de Texas.
conjunto de datos.
proyecto.
En esta sección, se presenta una descripción general de las propuestas de investigación más
relevantes.
En su artículo Zagan & Danubianu, 2021, hablan sobre un caso de estudio en el que
demuestran cómo utilizaron CoreDB para almacenar más de 15 millones de datos de redes sociales
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 30
relacionados con el presupuesto de salud del gobierno de Australia. Posteriormente, crearon una
base de datos relacional para almacenar información detallada sobre el programa presupuestario
de atención médica.
En otro estudio relevante, se aborda la modernización del tráfico aéreo en EE. UU.
(NextGen) y Europa (SESAR), centrándose en el intercambio de datos como clave para mejorar la
eficiencia y seguridad (Raju, Mital y Finkelsztein, 2018). Para capitalizar el potencial de grandes
Sistemas de Transporte Volpe desarrollaron un prototipo de Data Lake basado en la nube. Este
sistema almacena y procesa información proveniente de diversas fuentes de la FAA, lo que permite
llevar a cabo análisis avanzados de datos, tanto estructurados como no estructurados. Además, se
emplean herramientas tanto de código abierto como comerciales, tales como PostgreSQL,
Data Lake para la Dirección General Impositiva (DGI) de una Universidad. La propuesta se
almacenamiento en Amazon Web Service (AWS) y siguiendo pautas de Sawadogo para la gestión
de metadatos. El proceso involucra la carga de documentos en la zona "Raw Data", seguida por un
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 31
proceso ETL para almacenar datos procesados en la zona "Data Processing". Finalmente, los
herramientas como AWS Glue, Redshift y Athena para un manejo eficaz de datos y metadatos
En otro contexto, se analiza una aplicación práctica de los grandes lagos de datos en el
ámbito de la atención médica personalizada. Este estudio destaca que la personalización de los
servicios de atención médica se basa en el uso de datos relacionales de pacientes y análisis de big
data para adaptar las recomendaciones de medicamentos. Sin embargo, se destaca que la mayoría
de los datos sanitarios están en formato no estructurado, lo que requiere un esfuerzo considerable
para convertirlos en una forma relacional. El artículo propone una nueva arquitectura de lago de
datos que tiene como objetivo reducir el tiempo de procesamiento de datos y mejorar la precisión
inteligentes emergentes. Estos avances permiten agregar y analizar grandes cantidades de datos
para diversas aplicaciones de redes inteligentes. Sin embargo, se destaca la necesidad de abordar
tradicionales de gestión de datos de redes inteligentes. Para ello, se presenta un ecosistema de big
data de red inteligente basado en la arquitectura Lambda de última generación (Cuzzocrea, 2021).
En su artículo, Hai, Geisler y Quix (2016) presentan Constance como una solución práctica
y flexible para los desafíos en la gestión de Data Lakes. Este sistema destaca por su enfoque
mecanismos básicos de seguridad y procedencia. Se destaca que, según los autores, un Data Lake
Hadoop, ya que este último no abarca todas las funcionalidades de metadatos necesarias para un
En su informe, Schoenenwald et al. (2021) proponen una solución completa que utiliza
planes de ejecución de PySpark y se basa en el componente de código abierto Spline. Esto permite
estructuras gráficas para el linaje de datos a niveles de granularidad tanto gruesos como finos. En
la etapa final, la solución no solo visualiza el linaje de datos extraído mediante una aplicación web
moderna, sino que también se integra con el Cloud Data Hub de código abierto
Otro enfoque se centra en Azure Data Lake Store (ADLS), un sistema de archivos
completamente administrado y escalable diseñado para respaldar una amplia gama de análisis de
big data en Azure. El artículo proporciona una descripción detallada de la arquitectura, puntos de
reconociendo que estos almacenan grandes cantidades de datos sin procesar de diversas fuentes.
A medida que se incorporan más conjuntos de datos en un lago de datos, surge la necesidad de
técnicas eficientes para perfilarlos y detectar relaciones entre sus esquemas, lo que se conoce como
coincidencia de esquemas holísticos. Los autores proponen un nuevo enfoque de poda temprana
para mejorar la eficiencia en este proceso, utilizando diferentes tipos de metadatos para filtrar
comparaciones de coincidencia de esquemas y así detectar conjuntos de datos similares con mayor
5. Metodología
1. Investigación:
5. Verificación y validación:
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 34
6. Evaluación de resultados:
que aborda específicamente tres arquitecturas seleccionadas. Estas arquitecturas se eligieron por
presentar una complejidad de implementación considerada media, lo que implica que ofrecen un
Tabla 2
comparativa, se ha tomado la decisión de optar por la arquitectura multicapa. Esta elección se base
multicapa ofrece ventajas, como el almacenamiento persistente tanto de datos procesados como
sin procesar. Además, destaca por contar con capas específicas diseñadas para el procesamiento y
proporcionan detalles sobre la configuración y el uso de estos sistemas, así como el lenguaje de
Figura 6
Nota. Ilustra el flujo general de los datos desde fuente hasta la visualización.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 37
y Kibana. Esto permitió un despliegue local eficiente y una configuración simplificada para el
proporciona una interfaz de usuario accesible para la visualización y exploración de los datos.
Sin embargo, se optó por Python debido a sus ventajas notables en manipulación de datos y su
diversa colección de bibliotecas, lo que facilita el procesamiento y análisis de datos a gran escala
Elasticsearch. Esto posibilitó establecer conexiones y realizar operaciones con los datos de
tiempo real y por lotes para mejorar los tiempos de carga de datos al sistema.
Ingestión con Python: Para la extracción de datos de diversas fuentes, se emplearon scripts
en Python. Se utilizan bibliotecas como ‘requests’ para obtener datos a través de una API, que es
6.5. Almacenamiento
de datos. En este contexto se utiliza Python y bibliotecas como Pandas para llevar a cabo
Kibana se utilizó como herramienta central para visualizar y analizar los datos almacenados
procesados.
arquitectura implementada.
medida que aumenta la carga de trabajo. Elasticsearch es conocido por su escalabilidad horizontal
procesamiento de datos. Pandas es potente y versátil para realizar diversas operaciones en datos
tabulares, y Python permite una programación flexible y fácil integración con otras herramientas.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 40
Elasticsearch provee una amplia variedad de tipos de datos (Texto, Formas, Números, Vectores,
Esta capacidad de Elasticsearch para adaptarse a diversos tipos de datos se traduce en una
en el sistema.
arquitectura de analizar datos en tiempo real o con latencias mínimas. Elasticsearch, junto con
Kibana, es conocido por su capacidad para admitir consultas y visualizaciones en tiempo real.
con Elasticsearch, también tiene la capacidad para crear tableros interactivos y visualizaciones de
Figura 7
modelo de arquitectura propuesto, sino que también se explora varios escenarios y el proceso de
como opciones viables para su implementación. Por ejemplo, Melchor-Uceda et al. (2021)
estudio presentaba desafíos significativos en cuanto a la protección de datos, dado que involucraba
información sensible.
Otro caso de estudio, desarrollado por Liu, R et al. (2020), se centró en la creación de un
lago de datos para almacenar grandes volúmenes de datos sin procesar. Aunque esta propuesta fue
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 42
interesante, la adquisición de grandes volúmenes de datos resultó ser poco práctico para el
A pesar de los esfuerzos por buscar información dentro de Colombia, no se logró encontrar datos
adecuados. Por lo tanto, se amplió la búsqueda a Estados Unidos, donde se identificaron entidades
que proporcionaban información relevante del sector con grandes volúmenes de datos. Estas
entidades, junto con sus amplias colecciones de datos, se presentaban como la elección indicada
semiestructurados.
Para llevar a cabo el caso de estudio en la industria petrolera en Texas, es esencial definir
algunos requisitos:
Disponibilidad de Datos:
disponibilidad de datos históricos relacionados con el precio del petróleo para un análisis.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 43
Formato de Datos:
Asegurarse de que los datos estén disponibles en formatos compatibles con las
herramientas utilizadas, tales como JSON, CSV u otros, para facilitar la integración y el
procesamiento.
Datos Geoespaciales:
incluyendo las coordenadas de los pozos petroleros en Texas, como los proporcionados por
Homeland Infrastructure Foundation (HIFLD), así como datos geológicos provenientes del
Escalabilidad:
tanto el volumen de datos actual como las demandas que puedan surgir debido a un potencial
Se utilizó EIA para extraer información sobre los precios del petróleo a lo largo del tiempo.
Estos datos proporcionaron una perspectiva histórica y actualizada sobre la fluctuación de precios
en la industria petrolera.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 44
([Link]
Figura 8
Para acceder a esta fuente de datos, se debe registrar y obtener una API key a través del
sitio oficial de la EIA. Una vez obtenida la clave, se utilizó para consultar la API y adquirir la
Figura 9
Para lograr indexar esta información en Elasticsearch, primero se debe definir la estructura
price_sett = {
"mappings": {
"properties": {
"period": {
"type": "date",
"format": "yyyyMM",
},
"product": {
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 46
"type": "text",
},
"product-name": {
"type": "text",
},
"units": {
"type": "text",
},
Una vez que la información ha sido indexada en Elasticsearch, el siguiente paso es crear
selecciona "Kibana Data Views". Esta es la herramienta que te permitirá crear vistas
Crear una nueva Data View: Se hace clic en "Create Data View" para iniciar el proceso de
que se está creando. Este nombre ayudará a identificar y organizar las diferentes visualizaciones
dentro de Kibana.
Figura 10
Figura 11
La Comisión de Ferrocarriles de Texas fue una fuente crucial para obtener datos sobre la
información proporcionó la base esencial para llevar a cabo un análisis detallado y cronológico de
la producción petrolera en la región. Es importante resaltar que los conjuntos de datos obtenidos
abarcan no sólo datos de producción, sino también información general de los campos de petróleo.
Adicionalmente hay que mencionar que los datos se presentaron en diversos formatos,
incluyendo ASCII Format, dBase Format y EBCDIC Format. Los conjuntos de datos están
center/research/data-sets-available-for-download/).
Se accedió al Servicio Geológico de Estados Unidos para obtener datos geológicos de todo
el estado de Texas. Esta información fue esencial para comprender la geología subyacente que
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 49
([Link]
Este conjunto de datos está compuesto por cuatro formatos distintos que se complementan
mutuamente:
DBF (Database File): Este formato almacena datos en una estructura de tabla. Contiene
información detallada sobre atributos específicos de las características geológicas, lo que permite
geoespaciales. Contiene información geométrica sobre puntos, líneas y polígonos que representan
SHX (Shape Index File): Este archivo de índice complementa el archivo SHP y acelera la
llamada GeoJSON. Esta integración requiere los cuatro archivos mencionados previamente para
Figura 12
Figura 13
Se utilizaron los datos proporcionados por HIFLD para extraer las coordenadas de los
pozos petroleros en Texas. Estos datos geoespaciales fueron cruciales para ubicar y analizar la
distribución de los pozos en relación con la geología subyacente en cada campo petrolero.
Para llevar a cabo la carga de estos datos, se aprovechó la misma integración que se utilizó
([Link]
de petróleo, adicionalmente se puede hacer una identificación del porcentaje de pozos que
contienen determinada geología y también se incluyeron datos generales del campo tales como si
Figura 14
producción y en la derecha está la producción de petróleo en BBL, con una categorización de los
y en la derecha está la producción de petróleo en BBL, con una categorización de los cinco campos
Figura 15
porcentaje de pozos petroleros con un determinado tipo de geología y en la parte inferior está
algunos datos adicionales del campo, como el número del campo, el nombre del campo, el condado
y distrito al que pertenece, fecha en que se descubre el primer pozo de petróleo, banderas para
Figura 16
Geología y Distribución
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 54
Conclusiones
Con la exploración de los conceptos clave, se logró la comprensión del concepto de lago
implementación del sistema de procesamiento de datos proporciono una visión detallada de las
opciones disponibles. Esta revisión permitió la elección de las herramientas proporcionadas por
Elastic, concretamente Elasticsearch y Kibana, como la infraestructura óptima para cumplir los
objetivos propuestos.
La aplicación del caso de estudio en el área Petrolera del estado de Texas arrojó resultados
variables de fuentes diversas, como el precio del petróleo y la producción, proporcionando una
visión detallada y precisa del valor asociado. Además, Kibana, al facilitar la visualización de estos
Trabajo Futuro
tales como definición de estrategias de ingesta de datos e implementar un sistema para la gestión
de metadatos. Además, se percibe la oportunidad para extender a otros sectores industriales. Esto
no se limita únicamente a la ingesta de datos en el lago, sino también tiene el potencial para el
con sistemas de inteligencia artificial para ampliar las capacidades analíticas del sistema,
Referencias
Hlupić, T., Oreščanin, D., Ružak, D., & Baranović, M. (2022). An Overview of Current
Munshi, A. A., & Mohamed, Y. A. R. I. (2018). Data Lake Lambda Architecture for Smart
Liu, R., Isah, H., & Zulkernine, F. (2020). A Big Data Lake for Multilevel Streaming
Analytics. IEEE
Ramchand, S., & Mahmood, T. (2022). Big Data Architectures for Data Lakes: A
Fang, H. (2015, June). Managing data lakes in big data era: What's a data lake and why has
Cyber Technology in Automation, Control, and Intelligent Systems (CYBER) (pp. 820-824).
IEEE.
Giebler, C., Gröger, C., Hoos, E., Schwarz, H., & Mitschang, B. (2019). Leveraging the
Cuzzocrea, A. (2021). Big Data Lakes: Models, Frameworks, and Techniques. IEEE
Zagan, E., & Danubianu, M. (2021). Cloud Data Lake: The new trend of data storage.
IEEE.
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 58
Raju, R., Mital, R., & Finkelsztein, D. (2018). Data Lake Architecture for Air Traffic
Management. IEEE.
Cravero, A., Lefiguala, I., Tralma, R., & González, S. (2020). Data Lake architecture
Mehmood, H., Gilman, E., Cortes, M., Kostakos, P., Byrne, A., Valta, K., Tekes, S., &
Riekki, J. (2019). Implementing big data lake for heterogeneous data sources. IEEE.
Wrembel, R. (2021). Still Open Problems in Data Warehouse and Data Lake Research.
IEEE.
Zhao, Y., Megdiche, I., & Ravat, F. (2021). Data Lake Ingestion Management.
Tunjić, A. (2019). The Automation of the Data Lake Ingestion Process from Various
Rooney, S., Bauer, D., Garces-Erice, L., Urbanetz, P., Froese, F., & Tomić, S. (2019).
Experiences with Managing Data Ingestion into a Corporate Datalake. In IEEE. IBM Research,
Zurich Laboratory.
Sinthong, P., & Carey, M. J. (2019). AFrame: Extending DataFrames for Large-Scale
Isah, H., & Zulkernine, F. (2018). A Scalable and Robust Framework for Data Stream
C., Reyes-Archundia, E., & Téllez-Anguiano, A. C. (2021). Data Ingestion System for
MODELO DE ARQUITECTURA PARA DATOS A GRAN ESCALA 59
Interoperability and Integration of Hospital Data Online and in Real Time. En 2021 Mexican
Sawadogo, P., & Darmont, J. (2021). On Data Lake Architectures and Metadata
Alrehamy, H., & Walker, C. (2018). SemLinker: Automating Big Data Integration for
R. Hai, S. Geisler, and C. Quix. (2016), "Constance: An intelligent data lake system," in
Yu, H., Cai, H., Liu, Z., Xu, B., & Jiang, L. (2022). An Automated Metadata Generation
Method for Data Lake of Industrial WoT Applications. IEEE Transactions on Systems, Man, and
Schoenenwald, A., Kern, S., Viehhauser, J., & Schildgen, J. (2021). Collecting and
Halevy, A., Korn, F., Noy, N. F., Olston, C., Polyzotis, N., Roy, S., & Whang, S. E. (2016).
Managing Google’s data lake: an overview of the GOODS system. IEEE Engineering Bulletin,
39(3), 5.
Sawadogo, P. N., Kibata, T., & Darmont, J. (May 2019). Metadata Management for
Nogueira, I. D., Romdhane, M., & Darmont, J. (June 2018). Modeling Data Lake Metadata
with a Data Vault. Proceedings of the 22nd International Database Engineering & Applications
Symposium, 253–261.