This study examines the performance of modern streaming data processing tools and technologies, centering the attention on the Kappa architecture, a data processing system design characterized by simplicity and operational flexibility. The real-world performance of the Kappa architecture can vary significantly depending on its implementation and deployment. Open-source solutions provide flexibility and customization options but may require extensive tuning and operational expertise. On the other hand, managed cloud services offer ease of deployment and scalability but often come with cost considerations and potential limitations in customization. The goal of the work is to provide a comprehensive evaluation of the Kappa architecture's ability to handle different kinds of streaming data sources in real-world scenarios, addressing the lack of a thorough analysis that evaluates the end-to-end performance of a streaming processing pipeline. This is achieved first by designing and implementing the architecture using selected state-of-the-art components, then by having the implemented architecture undergo a systematic benchmarking process to evaluate the response respectively to a high-throughput and a low-latency workload inspired from industry use cases. The collected data shows that the ingestion layer reveals to be a potential point of pain when dealing with high streaming data generation rates, causing significant slowdowns when it is required to stream changes from a relational database using Change Data Capture. With respect to latency, our analysis highlights the impact of the additional computational complexity in the speed layer, which results in maximum end-to-end latencies that consistently exceed the sub-second range.

Questo lavoro di ricerca esamina le prestazioni degli strumenti e delle tecnologie moderne per l'elaborazione di dati in streaming, ponendo l'attenzione sull'architettura Kappa, un design di sistema di elaborazione dei dati caratterizzato da semplicità e flessibilità operativa. Le prestazioni reali dell'architettura Kappa possono variare significativamente a seconda della sua implementazione. Le soluzioni open-source offrono flessibilità e possibilità di configurazione, ma potrebbero richiedere un processo estensivo di ottimizzazione e competenze tecniche specializzate. D'altra parte, i servizi cloud gestiti offrono facilità di implementazione e scalabilità, ma spesso comportano considerazioni di costo e potenziali limitazioni nella configurazione. L'obiettivo del lavoro è fornire una valutazione completa delle capacità dell'architettura Kappa di gestire diverse tipologie di dati in streaming in scenari reali, affrontando la mancanza di un'analisi approfondita che valuti le prestazioni end-to-end di un flusso di elaborazione in streaming. Ciò viene realizzato innanzitutto progettando ed implementando l'architettura utilizzando componenti che costituiscono lo stato dell'arte, quindi sottoponendo l'architettura implementata a un processo sistematico di benchmarking per valutare la risposta rispettivamente a un carico di lavoro ad alto volume di produzione e a bassa latenza, casi d'uso tratti dall'industria. I dati raccolti mostrano che l'ingestion layer si rivela essere un potenziale punto critico quando l'architettura è sottoposta ad elevate velocità di generazione di dati, causando significativi rallentamenti quando è necessario trasmettere cambiamenti da un database relazionale tramite Change Data Capture. Riguardo alla latenza, la nostra analisi evidenzia l'impatto della complessità computazionale aggiuntiva nello speed layer, traducendosi in latenze end-to-end che sistematicamente superano l'ordine dei millisecondi.

Optimizing Streaming Data Processing: Performance Analysis of the Kappa Architecture in Open Source and Managed Cloud Environments

TALARICO, GIULIO
2022/2023

Abstract

This study examines the performance of modern streaming data processing tools and technologies, centering the attention on the Kappa architecture, a data processing system design characterized by simplicity and operational flexibility. The real-world performance of the Kappa architecture can vary significantly depending on its implementation and deployment. Open-source solutions provide flexibility and customization options but may require extensive tuning and operational expertise. On the other hand, managed cloud services offer ease of deployment and scalability but often come with cost considerations and potential limitations in customization. The goal of the work is to provide a comprehensive evaluation of the Kappa architecture's ability to handle different kinds of streaming data sources in real-world scenarios, addressing the lack of a thorough analysis that evaluates the end-to-end performance of a streaming processing pipeline. This is achieved first by designing and implementing the architecture using selected state-of-the-art components, then by having the implemented architecture undergo a systematic benchmarking process to evaluate the response respectively to a high-throughput and a low-latency workload inspired from industry use cases. The collected data shows that the ingestion layer reveals to be a potential point of pain when dealing with high streaming data generation rates, causing significant slowdowns when it is required to stream changes from a relational database using Change Data Capture. With respect to latency, our analysis highlights the impact of the additional computational complexity in the speed layer, which results in maximum end-to-end latencies that consistently exceed the sub-second range.
RUSSO, VALERIO
ING - Scuola di Ingegneria Industriale e dell'Informazione
19-dic-2023
2022/2023
Questo lavoro di ricerca esamina le prestazioni degli strumenti e delle tecnologie moderne per l'elaborazione di dati in streaming, ponendo l'attenzione sull'architettura Kappa, un design di sistema di elaborazione dei dati caratterizzato da semplicità e flessibilità operativa. Le prestazioni reali dell'architettura Kappa possono variare significativamente a seconda della sua implementazione. Le soluzioni open-source offrono flessibilità e possibilità di configurazione, ma potrebbero richiedere un processo estensivo di ottimizzazione e competenze tecniche specializzate. D'altra parte, i servizi cloud gestiti offrono facilità di implementazione e scalabilità, ma spesso comportano considerazioni di costo e potenziali limitazioni nella configurazione. L'obiettivo del lavoro è fornire una valutazione completa delle capacità dell'architettura Kappa di gestire diverse tipologie di dati in streaming in scenari reali, affrontando la mancanza di un'analisi approfondita che valuti le prestazioni end-to-end di un flusso di elaborazione in streaming. Ciò viene realizzato innanzitutto progettando ed implementando l'architettura utilizzando componenti che costituiscono lo stato dell'arte, quindi sottoponendo l'architettura implementata a un processo sistematico di benchmarking per valutare la risposta rispettivamente a un carico di lavoro ad alto volume di produzione e a bassa latenza, casi d'uso tratti dall'industria. I dati raccolti mostrano che l'ingestion layer si rivela essere un potenziale punto critico quando l'architettura è sottoposta ad elevate velocità di generazione di dati, causando significativi rallentamenti quando è necessario trasmettere cambiamenti da un database relazionale tramite Change Data Capture. Riguardo alla latenza, la nostra analisi evidenzia l'impatto della complessità computazionale aggiuntiva nello speed layer, traducendosi in latenze end-to-end che sistematicamente superano l'ordine dei millisecondi.
File allegati
File Dimensione Formato  
2023_12_Talarico_01.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Tesi
Dimensione 3.22 MB
Formato Adobe PDF
3.22 MB Adobe PDF   Visualizza/Apri
2023_12_Talarico_02.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Executive summary
Dimensione 453.72 kB
Formato Adobe PDF
453.72 kB 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/215584