Data integration is one of the most complex challenges for information systems in healthcare for several reasons. First off, data in this sector is growing at an alarming rate. Other reasons are technological in nature: the systems employed in this industry are largely incompatible, and maintenance and upgrades are prohibitively expensive. Data management becomes problematic in such a fragmented system since massive bureaucracy is required for privacy and regulatory purposes. The requirement turns into having a large amount of data flowing from systems and patient master data onto a platform that allows them to extract crucial insights and make data-driven choices. In comparison to the data warehouse system, which is already in use in many healthcare firms, the data lake is the most appropriate solution for this need: it allows for the combination of different types of data in their raw form, for in-depth data analysis, without overlooking data sources that could otherwise be decisive. The goal of this thesis is to study open-source technologies for implementing a data lake while keeping the demands of the healthcare industry in mind: understanding the needs and what derives from them is critical for designing the system in a consistent way. A distributed data lake was designed for coping with the thesis' pain points previously illustrated: the reason related to the choice of open-source technology is to ensure not to have lock-in by proprietary infrastructures, thus to let future functionality extensions be fully customizable and integrated with legacy systems. As a data lake includes several phases, the emphasis was narrowed down to two distinct ones: - data acquisition: the process that allows for the extraction, initial processing, and storage of data on the storage layer; - data storage: infrastructure and processes dedicated to data storage using Object storage technology. After the analysis of the available tools, in this work we have focused on two main tools, one for each of the aspects considered: as regards data acquisition, Apache NiFi was selected, an open-source tool for transferring, processing, and storing data, both batch and streaming, from a data source to a storage layer or another application; instead, MinIO was selected for data storage, an open-source, Kubernetes-native, and highly scalable object storage. The analysis is completed with the development of a proof of concept where the mentioned tools was proposed to meet the needs of the healthcare industry: - ingestion processes, both batch and real-time, with a particular emphasis on the main data formats used in healthcare; - data organization within the storage system, using an appropriate array of buckets and prefixes to efficiently categorize data.

L'integrazione dei dati è una delle sfide più complesse per i sistemi informativi nel settore sanitario per diversi motivi. Prima di tutto, i dati in questo settore stanno crescendo a un ritmo allarmante. Altri motivi sono di natura tecnologica: i sistemi utilizzati in questo settore sono in gran parte incompatibili e la manutenzione e gli aggiornamenti sono proibitivi. La gestione dei dati diventa problematica in un sistema così frammentato poiché è necessaria un'enorme burocrazia per motivi di privacy e normativi. Il requisito si trasforma in avere un grande quantità di dati che fluiscono dai sistemi e dai dati anagrafici dei pazienti su una piattaforma che consente loro di estrarre informazioni cruciali e fare scelte guidate dai dati. Rispetto al sistema di data warehouse, già in uso in molte aziende sanitarie, il data lake è la soluzione più adatta a questa esigenza: consente di combinare diverse tipologie di dati nella loro forma grezza, per dati approfonditi analisi, senza trascurare fonti di dati altrimenti determinanti. L'obiettivo di questa tesi è studiare le tecnologie open-source per l'implementazione di un data lake tenendo conto delle esigenze del settore sanitario: comprendere le esigenze e ciò che ne deriva è fondamentale per progettare il sistema in modo coerente. Un data lake distribuito è stato progettato per far fronte ai punti deboli della tesi precedentemente illustrati: il motivo legato alla scelta della tecnologia open-source è quello di garantire di non avere lock-in da infrastrutture proprietarie, in modo da lasciare che future estensioni di funzionalità siano completamente personalizzabili e integrato con i sistemi legacy. Poiché un data lake comprende diverse fasi, l'enfasi è stata ristretta a due fasi distinte: - acquisizione dei dati: il processo che consente l'estrazione, l'elaborazione iniziale e l'archiviazione dei dati sullo strato di archiviazione; - data storage: infrastruttura e processi dedicati al data storage tramite tecnologia Object storage. Dopo l'analisi degli strumenti disponibili, in questo lavoro ci siamo concentrati su due strumenti principali, uno per ciascuno degli aspetti considerati: per quanto riguarda l'acquisizione dei dati, è stato selezionato Apache NiFi, uno strumento open-source per il trasferimento, l'elaborazione e l'archiviazione dei dati , sia in batch che in streaming, da un'origine dati a un livello di archiviazione o un'altra applicazione; invece, MinIO è stato selezionato per l'archiviazione dei dati, uno storage di oggetti open source, nativo di Kubernetes e altamente scalabile. L'analisi è completata con lo sviluppo di una prova di concetto in cui sono stati proposti gli strumenti menzionati per soddisfare le esigenze del settore sanitario: - processi di ingestione, sia batch che real-time, con particolare attenzione ai principali formati di dati utilizzati in ambito sanitario; - organizzazione dei dati all'interno del sistema di archiviazione, utilizzando una matrice appropriata di bucket e prefissi per classificare in modo efficiente i dati.

An analysis of data lake open source solutions for ingestion and storage in healthcare domain

CASSETTA, FABRIZIO
2021/2022

Abstract

Data integration is one of the most complex challenges for information systems in healthcare for several reasons. First off, data in this sector is growing at an alarming rate. Other reasons are technological in nature: the systems employed in this industry are largely incompatible, and maintenance and upgrades are prohibitively expensive. Data management becomes problematic in such a fragmented system since massive bureaucracy is required for privacy and regulatory purposes. The requirement turns into having a large amount of data flowing from systems and patient master data onto a platform that allows them to extract crucial insights and make data-driven choices. In comparison to the data warehouse system, which is already in use in many healthcare firms, the data lake is the most appropriate solution for this need: it allows for the combination of different types of data in their raw form, for in-depth data analysis, without overlooking data sources that could otherwise be decisive. The goal of this thesis is to study open-source technologies for implementing a data lake while keeping the demands of the healthcare industry in mind: understanding the needs and what derives from them is critical for designing the system in a consistent way. A distributed data lake was designed for coping with the thesis' pain points previously illustrated: the reason related to the choice of open-source technology is to ensure not to have lock-in by proprietary infrastructures, thus to let future functionality extensions be fully customizable and integrated with legacy systems. As a data lake includes several phases, the emphasis was narrowed down to two distinct ones: - data acquisition: the process that allows for the extraction, initial processing, and storage of data on the storage layer; - data storage: infrastructure and processes dedicated to data storage using Object storage technology. After the analysis of the available tools, in this work we have focused on two main tools, one for each of the aspects considered: as regards data acquisition, Apache NiFi was selected, an open-source tool for transferring, processing, and storing data, both batch and streaming, from a data source to a storage layer or another application; instead, MinIO was selected for data storage, an open-source, Kubernetes-native, and highly scalable object storage. The analysis is completed with the development of a proof of concept where the mentioned tools was proposed to meet the needs of the healthcare industry: - ingestion processes, both batch and real-time, with a particular emphasis on the main data formats used in healthcare; - data organization within the storage system, using an appropriate array of buckets and prefixes to efficiently categorize data.
TANCA, LETIZIA
ING - Scuola di Ingegneria Industriale e dell'Informazione
20-dic-2022
2021/2022
L'integrazione dei dati è una delle sfide più complesse per i sistemi informativi nel settore sanitario per diversi motivi. Prima di tutto, i dati in questo settore stanno crescendo a un ritmo allarmante. Altri motivi sono di natura tecnologica: i sistemi utilizzati in questo settore sono in gran parte incompatibili e la manutenzione e gli aggiornamenti sono proibitivi. La gestione dei dati diventa problematica in un sistema così frammentato poiché è necessaria un'enorme burocrazia per motivi di privacy e normativi. Il requisito si trasforma in avere un grande quantità di dati che fluiscono dai sistemi e dai dati anagrafici dei pazienti su una piattaforma che consente loro di estrarre informazioni cruciali e fare scelte guidate dai dati. Rispetto al sistema di data warehouse, già in uso in molte aziende sanitarie, il data lake è la soluzione più adatta a questa esigenza: consente di combinare diverse tipologie di dati nella loro forma grezza, per dati approfonditi analisi, senza trascurare fonti di dati altrimenti determinanti. L'obiettivo di questa tesi è studiare le tecnologie open-source per l'implementazione di un data lake tenendo conto delle esigenze del settore sanitario: comprendere le esigenze e ciò che ne deriva è fondamentale per progettare il sistema in modo coerente. Un data lake distribuito è stato progettato per far fronte ai punti deboli della tesi precedentemente illustrati: il motivo legato alla scelta della tecnologia open-source è quello di garantire di non avere lock-in da infrastrutture proprietarie, in modo da lasciare che future estensioni di funzionalità siano completamente personalizzabili e integrato con i sistemi legacy. Poiché un data lake comprende diverse fasi, l'enfasi è stata ristretta a due fasi distinte: - acquisizione dei dati: il processo che consente l'estrazione, l'elaborazione iniziale e l'archiviazione dei dati sullo strato di archiviazione; - data storage: infrastruttura e processi dedicati al data storage tramite tecnologia Object storage. Dopo l'analisi degli strumenti disponibili, in questo lavoro ci siamo concentrati su due strumenti principali, uno per ciascuno degli aspetti considerati: per quanto riguarda l'acquisizione dei dati, è stato selezionato Apache NiFi, uno strumento open-source per il trasferimento, l'elaborazione e l'archiviazione dei dati , sia in batch che in streaming, da un'origine dati a un livello di archiviazione o un'altra applicazione; invece, MinIO è stato selezionato per l'archiviazione dei dati, uno storage di oggetti open source, nativo di Kubernetes e altamente scalabile. L'analisi è completata con lo sviluppo di una prova di concetto in cui sono stati proposti gli strumenti menzionati per soddisfare le esigenze del settore sanitario: - processi di ingestione, sia batch che real-time, con particolare attenzione ai principali formati di dati utilizzati in ambito sanitario; - organizzazione dei dati all'interno del sistema di archiviazione, utilizzando una matrice appropriata di bucket e prefissi per classificare in modo efficiente i dati.
File allegati
File Dimensione Formato  
2022_12_Cassetta.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: An analysis of data lake open source solutions for ingestion and storage in healthcare domain
Dimensione 3.18 MB
Formato Adobe PDF
3.18 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/201370