Gestión de Datos Masivos: Carga y Elasticidad

Azqueta Alzúaz, Ainhoa (2020). Gestión de Datos Masivos: Carga y Elasticidad. Thesis (Doctoral), E.T.S. de Ingenieros Informáticos (UPM). https://doi.org/10.20868/UPM.thesis.66210.

Description

Title: Gestión de Datos Masivos: Carga y Elasticidad
Author/s:
  • Azqueta Alzúaz, Ainhoa
Contributor/s:
  • Patiño Martínez, Marta
Item Type: Thesis (Doctoral)
Date: December 2020
Subjects:
Faculty: E.T.S. de Ingenieros Informáticos (UPM)
Department: Lenguajes y Sistemas Informáticos e Ingeniería del Software
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (5MB) | Preview

Abstract

Con el auge de Internet la cantidad de datos generados ha crecido exponencialmente, la necesidad de analizar esta información y la aparición de nuevas aplicaciones que explotan estos datos dio lugar al desarrollo de distintos sistemas para la gestión de grandes cantidades de datos. El modelo tradicional de gestión de datos (bases de datos relacionales) no resultaba adecuado para todas las aplicaciones, además de no escalar a grandes cantidades de datos. Por esta razón se diseñaron distintos tipos de gestores de datos siendo las bases de datos NoSQL el paradigma más conocido, aunque no el único. Dentro de este tipo de bases de datos se encuentran las bases de datos para grafos, orientadas a documentos, almacenes clave-valor y las orientadas a columnas. Otro modelo completamente diferente son los sistemas de streaming de datos; los cuales procesan los datos al vuelo, sin almacenarlos. Ambos tipos de gestores de datos ejecutan en sistemas distribuidos con el fin de procesar grandes cantidades de datos. El objetivo de la tesis es el diseño de protocolos para la mejora del rendimiento de dos tipos de sistemas para la gestión de grandes cantidades de datos: una base de datos NoSQL (HBase) y un sistema de streaming de datos (UPM-CEP). Concretamente, en el caso de HBase se proponen protocolos para la carga de datos y equilibrado de carga. La optimización del proceso de carga de datos es fundamental para mejorar la disponibilidad del sistema (tiempo que el sistema está operativo). La carga de datos se paraleliza y tiene en cuenta la distribución de los mismos con el fin de ubicarlos en distintas máquinas y mejorar el rendimiento de las consultas. El equilibrado de carga distribuye los datos de manera uniforme entre los distintos nodos con el fin de paralelizar las consultas y mejorar el rendimiento (tiempo de respuesta y productividad). Los protocolos tienen en cuenta la arquitectura NUMA del sistema subyacente. También se han propuesto protocolos para dotar de elasticidad a un sistema de streaming de datos. La elasticidad permite al sistema realizar scale-in, paralelizando consultas en una misma máquina, scale-out, distribuyendo consultas o paralelizándolas en distintas máquinas, sin parar el sistema. En ambos casos los resultados se han validado en dos clústers con distinta arquitectura con una decena de nodos, así como en un superordenador, empleando benchmarks industriales, TPC-C e Intel HiBench. ----------ABSTRACT---------- With the rise of the Internet, the amount of data generated has grown exponentially, the need to analyse this information and the appearance of new applications that exploit this data led to the development of different systems for managing large amounts of data. The traditional data management model (relational databases) was not suitable for all applications, in addition to not scaling to large amounts of data. For this reason, different types of data management systems were designed, with NoSQL databases being the best known paradigm, although not the only one. Databases for graphs, documentoriented, key-value stores and column-oriented are NoSQL data stores. Another completely different model is the data streaming model; which process the data on the fly, without storing it. Both types of data management systems run on distributed systems in order to process large amounts of data. The goal of this thesis is the design of protocols to improve the performance of two types of systems for managing large amounts of data: a NoSQL database (HBase) and a data streaming system (UPM-CEP). Specifically, in the case of HBase, protocols for data loading and load balancing are proposed. Optimizing the data loading process is essential to improve system availability (time that the system is operational). The data load is parallelized and takes into account their distribution in order to place them on different machines and improve query performance. Load balancing distributes data evenly across nodes in order to parallelize queries and improve performance (response time and throughput). The protocols take into account the NUMA architecture of the underlying system. Protocols have also been proposed for providing elasticity to a data streaming system. Elasticity allows the system to scale-in, by parallelizing queries on the same machine, scale-out, by distributing queries or parallelizing them on different nodes, without stopping the system. In both cases, the results have been validated in two clusters with different architecture with a dozen nodes, as well as in a supercomputer, using industrial benchmarks, TPC-C and Intel HiBench.

Funding Projects

TypeCodeAcronymLeaderTitle
FP7257993CumuloNimboUNIVERSIDAD POLITECNICA DE MADRIDA Highly Scalable Transactional Multi-Tier Platform as a Service
FP7611068CoherentPaaSUNIVERSIDAD POLITECNICA DE MADRIDA Coherent and Rich PaaS with a Common Programming Model
Madrid Regional GovernmentS2013/ice-2894CLOUD4BIGDA TAUnspecifiedEfficient Cloud and BigData Infrastructure
Horizon 2020732051CloudDBApplianceBULL SASEuropean Cloud In-Memory Database Appliance with Predictable Performance for Critical Applications
Government of Spain779747BigDataStackIBM ISRAEL - SCIENCE AND TECHNOLOGY LTDHigh-performance data-centric stack for big data applications and operations

More information

Item ID: 66210
DC Identifier: https://oa.upm.es/66210/
OAI Identifier: oai:oa.upm.es:66210
DOI: 10.20868/UPM.thesis.66210
Deposited by: Archivo Digital UPM 2
Deposited on: 28 Feb 2021 08:51
Last Modified: 26 Aug 2021 22:30
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM