TAZ-PFC-2017-059


Evaluación del rendimiento de aplicaciones intensivas en datos con Apache Spark

Malo Ascaso, Andrés
Requeno Jarabo, José Ignacio (dir.) ; Merseguer Hernáiz, José Javier (dir.)

Universidad de Zaragoza, EINA, 2017
Informática e Ingeniería de Sistemas department, Lenguajes y Sistemas Informáticos area

Ingeniero en Informática

Abstract: Durante los últimos años, el Big Data ha sufrido un gran auge en un rango muy variado de sectores del mercado. Analizar todos los datos disponibles para conocer la demanda de productos por adelantado, o incluso para crear dichas demandas, se ha vuelto una práctica común para muchas empresas. El procesamiento de estas grandes cantidades de datos no es algo trivial y ha de realizarse con tecnologı́as especı́ficamente diseñadas para ese propósito. Es por ello que cada vez surgen más propuestas en esa área de la informática, cada una con sus ventajas e inconvenientes. En todas ellas, no obstante, hay una caracterı́stica de vital importancia: el rendimiento. El trabajo que aquı́ se presenta se enmarca dentro del proyecto DICE, situado en el marco del plan Horizon2020 de la Comisión Europea, y en el cual participa el Grupo de I+D en Computación Distribuida (DiSCo) de la Universidad de Zaragoza. El objetivo final de DICE consiste en ofrecer un perfil UML original, un conjunto de herramientas software y una metodologı́a que ayudarán a los diseñadores de aplicaciones intensivas en datos a plantear la seguridad, eficiencia y fiabilidad de dichas aplicaciones. Entre dichas herramientas software se encuentra un simulador capaz de evaluar el rendimiento de aplicaciones basadas en diferentes tecnologı́as (DICE-Simulator), y es a este simulador al cual se le va a aportar una nueva tecnologı́a mediante la realización de este trabajo. Para poder realizar dicha aportación, integrando la tecnologı́a de Apache Spark en el simulador, se han realizado una serie procesos para analizar y modelar la tecnologı́a. En primer lugar, se ha investigado a fondo el funcionamiento de Spark, comprobando su rendimiento en aplicaciones reales y extrayendo tantos los conceptos básicos de la tecnologı́a como aquellos relativos al rendimiento de la misma, vitales para poder simular de forma fiel su comportamiento. A continuación, habiendo extraı́do toda la información necesaria resultante de la investiación, se ha creado un perfil para UML que captura de forma precisa todos los conceptos relativos al funcionamiento de Spark y a su rendimiento en aplicaciones reales. Una vez completado el modelo UML, ha sido necesario transformar dicho modelo a otro distinto que permitiese analizar y evaluar el rendimiento, basado en los conceptos recogido por el primero. Para ello, se ha propuesto un conjunto de patrones de transformación del modelo UML a un modelo de redes de Petri, concretamente a redes de Petri estocásticas, las cuales permiten analizar el rendimiento en aplicaciones informáticas. Por último, se han realizado una serie de experimentos para verificar que las transformaciones propuestas son correctas y reflejan de forma precisa el funcionamiento de una aplicación Spark real en términos de rendimiento.

Tipo de Trabajo Académico: Proyecto Fin de Carrera

Creative Commons License

El registro pertenece a las siguientes colecciones:
Academic Works > Trabajos Académicos por Centro > escuela-de-ingeniería-y-arquitectura
Academic Works > Final Degree Projects



Back to search

Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)