Requirement-driven design and optimization of data-intensive flows
Authors:   , Jovanovic Petar 
Published: November 2024

Data have become number one assets of today's business world. Thus, its exploitation and analysis attracted the attention of people from different fields and having different technical backgrounds. Data-intensive flows are central processes in today's business intelligence (BI) systems, deploying different technologies to deliver data, from a multitude of data sources, in user-preferred and analysis-ready formats. However, designing and optimizing such data flows, to satisfy both users' information needs and agreed quality standards, have been known as a burdensome task, typically left to the manual efforts of a BI system designer. These tasks have become even more challenging for next generation BI systems, where data flows typically need to combine data from in-house transactional storages, and data coming from external sources, in a variety of formats (e.g., social media, governmental data, news feeds). Moreover, for making an impact to business outcomes, data flows are expected to answer unanticipated analytical needs of a broader set of business users' and deliver valuable information in near real-time (i.e., at the right time). These challenges largely indicate a need for boosting the automation of the design and optimization of data-intensive flows.

This PhD thesis aims at providing automatable means for managing the lifecycle of data-intensive flows. The study primarily analyzes the remaining challenges to be solved in the field of data-intensive flows, by performing a survey of current literature, and envisioning an architecture for managing the lifecycle of data-intensive flows. Following the proposed architecture, we further focus on providing automatic techniques for covering different phases of the data-intensive flows' lifecycle. In particular, the thesis first proposes an approach (CoAl) for incremental design of data-intensive flows, by means of multi-flow consolidation. CoAl not only facilitates the maintenance of data flow designs in front of changing information needs, but also supports the multi-flow optimization of data-intensive flows, by maximizing their reuse. Next, in the data warehousing (DW) context, we propose a complementary method (ORE) for incremental design of the target DW schema, along with systematically tracing the evolution metadata, which can further facilitate the design of back-end data-intensive flows (i.e., ETL processes). The thesis then studies the problem of implementing data-intensive flows into deployable formats of different execution engines, and proposes the BabbleFlow system for translating logical data-intensive flows into executable formats, spanning single or multiple execution engines. Lastly, the thesis focuses on managing the execution of data-intensive flows on distributed data processing platforms, and to this end, proposes an algorithm (H-WorD) for supporting the scheduling of data-intensive flows by workload-driven redistribution of data in computing clusters.

The overall outcome of this thesis an end-to-end platform for managing the lifecycle of data-intensive flows, called Quarry. The techniques proposed in this thesis, plugged to the Quarry platform, largely facilitate the manual efforts, and assist users of different technical skills in their analytical tasks. Finally, the results of this thesis largely contribute to the field of data-intensive flows in today's BI systems, and advocate for further attention by both academia and industry to the problems of design and optimization of data-intensive flows.

Actualment, les dades han esdevingut el principal actiu del món empresarial. En conseqüència, la seva explotació i anàlisi ha atret l'atenció de gent provinent de diferents camps i experiència tècnica. Els fluxes de dades intensius són processos centrals en els actuals sistemes d'inteligència de negoci (BI), desplegant diferents tecnologies per a proporcionar dades, provinents de diferents fonts i centrant-se en formats orientats a l'usuari. Tantmateix, el disseny i l'optimització de tals fluxes, per tal de satisfer ambdós usuaris de la informació i els estàndars de qualitat, resulta una tasca tediosa, normalment dirigida als esforços manuals del dissenyador del sistema BI. Aquestes tasques han esdevingut encara més complexes en el context dels sistemes BI de nova generació, on els fluxes de dades típicament combinen dades internes de fonts transaccionals, amb dades externes representades amb diferents formats (xarxes socials, dades governamentals, notícies). A més a més, per tal de tenir un impacte en el negoci, s'espera que els fluxes de dades responguin a necessitats analítiques no anticipades en un marge de temps proper a temps real. Aquests reptes clarament indiquen la necessitat de millora en l'automatització del disseny i optimització dels fluxes de dades intensius. L'objectiu d'aquesta tesi doctoral és el de proporcionar mitjans automàtics per tal de manegar el cicle de vida de fluxes de dades intensius. L'estudi primerament analitza els reptes pendents de resoldre en l'àrea de fluxes intensius de dades, mitjançant l'anàlisi de la literatura recent, i concebent una arquitectura per a la gestió del cicle de vida dels fluxes de dades intensius. A partir de l'arquitectura proposada, ens centrem en la proposta de tècniques automàtiques per tal de cobrir cadascuna de les fases del cicle de vida dels fluxes intensius de dades. Particularment, aquesta tesi inicialment proposa una tècnica (CoAl) per el disseny incremental dels fluxes de dades intensius, mitjançant la consolidació de multiples fluxes. CoAl no només facilita el manteniment dels flux de dades davant de noves necessitats d'informació, sinó que també permet la optimització de múltiples fluxes mitjançant la maximització de la reusabilitat. Posteriorment, en un contexte de magatzems de dades (DW), proposem un mètode complementari (ORE) per el disseny incremental d'un esquema de DW objectiu, acompanyat per la traça sistemàtica de metadades d'evolució, les quals poden facilitar el disseny dels fluxes intensius de dades (processos ETL). A continuació, la tesi estudia el problema d'implementació de fluxes de dades intensius a diferents sistemes d'execució, i proposa el sistema BabbleFlow per la traducció de fluxes de dades intensius lògics a formats executables, a un o múltiples sistemes d'execució. Finalment, la tesi es centra en la gestió dels fluxes de dades intensius en plataformes distribuïdes de processament de dades, amb aquest objectiu es proposa un algorisme (H-WorD) per donar suport a la planificació de l'execució de fluxes intensius de dades mitjançant la redistribució de dades dirigides per la carga de treball. El resultat general d'aquesta tesi és una plataforma d'inici a fi per tal de gestionar el cicle de vida dels fluxes intensius de dades, anomenada Quarry. Les tècniques propostes en aquesta tesi, incorporades a la plataforma Quarry, en gran part simplifiquen els esforços manuals i assisteixen usuaris amb diferent experiència tècnica a les seves tasques analítiques. Finalment, els resultats d'aquesta tesi contribueixen a l'àrea de fluxes intensius de dades en els sistemes de BI actuals. A més a més, reflecteixen la necessitat de més atenció per part dels mons acadèmic i industrial als problemes de disseny i optimització de fluxes de dades intensius.