On the convergence of big data analytics and high-performance computing: a novel approach for runtime interoperability
Mención Internacional en el tÃtulo de doctorConvergence between high-performance computing (HPC) and Big Data
analytics (BDA) is currently an established research area that spawned new
opportunities for unifying the platformlayer and data abstractions in these
ecosystems. This thesis builds on the hypothesis that HPC-BDA convergence
at platform level can be attained by enabling runtime interoperability in a
way that preserves BDA platform usability and productivity, exploits HPC
scalability and performance, and expands both BDA and HPC capabilities
to cope with prospect hybrid application models. The goal is to architect an
abstract system that enables the interoperability of established BDA and HPC
runtimes.
In order to exploit the benefits of BDA data-centric paradigms, this thesis
presents a data-centric transformation methodology to allow process-centric
workloads the interaction with BDA platforms and storage infrastructures.
Furthermore, an architecture to achieve full runtime interoperability is proposed.
It reflects the key design features that interest both the HPC and BDA
communities, and includes an abstract data collection and operational model
that generates a unified interface for hybrid applications. It also incorporates a mechanism to transfer each stage of the application to the appropriate
runtime.
This architecture can be implemented in different ways depending on the
process- and data-centric runtimes of choice, and the mechanisms put in
place to effectively meet the requirements of the architecture. The Spark-DIY
platformis introduced as a possible implementation. It preserves the interfaces
and execution environment of the popular BDA platformApache Spark
–thus making it compatible with any Spark-based application and tool– while
providing efficient communication and kernel execution via DIY, a powerful
communication pattern library built on top of MPI.
Finally, these solutions are analysed in terms of performance by applying
them to a representative use case, EnKF-HGS. This application is a clear example
of how current HPC simulations are evolving towards hybrid HPC-BDA
applications, integrating HPC simulations within a BDA environment. Other
auxiliary use cases –like an application from the railway domain and a BDA
benchmark operator– are also introduced to support other specific contributions
of this thesis.La convergencia entre la computación de altas prestaciones (HPC) y el análisis
de macrodatos (BDA) es actualmente un área de investigación establecida
que ha generado nuevas oportunidades para la unificación de la capa de
plataforma y las abstracciones de datos en estos ecosistemas. Esta tesis desarrolla
la hipótesis de que la convergencia HPC-BDA a nivel de plataforma
puede ser obtenida con la habilitación de mecanismos de interoperabilidad
entre entornos de ejecución, de modo que se preserve la usabilidad y productividad
de las plataformas BDA, se explote la escalabilidad y rendimiento de
HPC, y se expandan las capacidades de HPC y BDA para tratar futuros modelos
hÃbridos de aplicación. El objetivo es desarrollar un sistema abstracto que
permita la interoperabilidad de entornos de ejecución ya establecidos en los
ecosistemas BDA y HPC.
Con el fin de explotar los beneficios de los paradigmas orientados a datos
en BDA, esta tesis presenta una metodologÃa de transformación también
orientada a datos que permite a las aplicaciones orientadas a proceso interactuar
con plataformas BDA y sus correspondientes infraestructuras de almacenamiento. Además, se propone una arquitectura para obtener interoperabilidad
total entre entornos de ejecución. Ésta refleja las caracterÃsticas
de diseño clave que interesan a las comunidades BDA y HPC, e incluye una
abstracción de colección de datos y modelo operacional que genera una interfaz
unificada para aplicaciones hÃbridas. Además, incorpora un mecanismo
para transferir cada etapa de la aplicación al entorno de ejecución adecuado.
Esta arquitectura puede ser implementada de distintas maneras dependiendo
de los entornos de ejecución orientados a datos y proceso seleccionados,
y las tcnicas utilizadas para cumplir de manera efectiva con los requisitos
de la arquitectura. La plataforma Spark-DIY se introduce como posible implementación.
Preserva las interfaces y entorno de ejecución de la popular
plataforma BDA Apache Spark –haciéndola compatible con cualquier aplicación
o herramienta basada en Spark–, mientras provee comunicación y
ejecución eficiente de núcleos de simulación y análisis a través de DIY, una
potente biblioteca de patrones de comunicación construida sobre MPI.
Finalmente, estas soluciones son analizadas en términos de rendimiento al
aplicarlas a un caso de uso representativo, EnKF-HGS. Esta aplicación es
un ejemplo claro de cómo las simulaciones HPC están evolucionando hacia
aplicaciones HPC-BDA hÃbridas, integrando simulaciones HPC dentro de un
entorno BDA. Otros casos de uso auxiliares –como una aplicación del ámbito
ferroviario y un operador referente de BDA– son introducidos para apoyar
otras contribuciones especÃficas de esta tesis.Programa de Doctorado en Ciencia y TecnologÃa Informática por la Universidad Carlos III de MadridPresidente: Laurent Lefevre.- Secretario: David Expósito Singh.- Vocal: Mª de los Santos Pérez Hernández
https://pdfs.semanticscholar.org/6abe/7355ba8d703eca70576b21adba4a64ba6516.pdf