Data management systems over the years evolved in two diametrically opposite fields of application: data storage and stream processing. Nowadays both the technologies are widespread and they are often required to cooperate toward a common goal. However the integration of the two is still in an early stage of development and usually custom solutions are required for each specific deployment. The purpose of the thesis is to model and evaluate a native and general purpose integration of static data sources into the Complex Event Processing tool T-Rex. To do so we extended and re-designed the T-Rex engine to integrate a static data source (namely a SQLite database) with the event streams that flow into the engine. This required to go through the T-Rex rule language extension, followed by an elaboration of the key algorithms to efficiently process this new language, i.e., to combine static and streaming data, concluding with a careful analysis of the performance of the new engine. The project shows that events streams and data collections can be modeled with similar logical abstractions, simplifying the description of those problems that operate on the boundary of the two domains. At the same time the real-time performances of the original T-Rex implementation can be preserved, within reasonable limits.

I sistemi di data management nel corso degli anni si sono sviluppati in due campi di applicazione diametralmente opposti: immagazzinamento di dati e elaborazione in tempo reale di flussi di informazione. Al giorno d'oggi entrambe le tecnologie sono ampiamente diffuse e spesso è necessario che cooperino per il raggiungimento di comuni obiettivi. Tuttavia l'integrazione delle due è ancora in una fase iniziale di sviluppo e solitamente si rendono necessarie soluzioni personalizzate per specifico caso d'uso. Lo scopo della tesi è di modellare e validare gli effetti di un'integrazione di sorgenti di dati statici nel tool di Complex Event Processing T-Rex. Per raggiungere questo obiettivo presentiamo l'implementazione di un componente che permetta l'interazione con un database SQLite. In particolare descriviamo l'estensione del linguaggio di definizione di regole di T-Rex, spieghiamo i principali algoritmi e discutiamo le prestazioni ed i limiti analizzando i risultati di una serie di test. Il progetto mostra come stream di eventi e collezioni di dati possano in effetti essere descritti con astrazioni logiche del tutto simili, permettendo di affrontare più facilmente problemi che operano sul confine tra i due domini. Inoltre i risultati dei test evidenziano come le prestazioni real-time dell'implementazione originale di T-Rex possano essere preservate sotto ragionevoli condizioni.

Combining streaming events with static data in the complex event processing tool T-Rex

DI PILLA, ANGELO
2015/2016

Abstract

Data management systems over the years evolved in two diametrically opposite fields of application: data storage and stream processing. Nowadays both the technologies are widespread and they are often required to cooperate toward a common goal. However the integration of the two is still in an early stage of development and usually custom solutions are required for each specific deployment. The purpose of the thesis is to model and evaluate a native and general purpose integration of static data sources into the Complex Event Processing tool T-Rex. To do so we extended and re-designed the T-Rex engine to integrate a static data source (namely a SQLite database) with the event streams that flow into the engine. This required to go through the T-Rex rule language extension, followed by an elaboration of the key algorithms to efficiently process this new language, i.e., to combine static and streaming data, concluding with a careful analysis of the performance of the new engine. The project shows that events streams and data collections can be modeled with similar logical abstractions, simplifying the description of those problems that operate on the boundary of the two domains. At the same time the real-time performances of the original T-Rex implementation can be preserved, within reasonable limits.
MARGARA, ALESSANDRO
ING - Scuola di Ingegneria Industriale e dell'Informazione
21-dic-2016
2015/2016
I sistemi di data management nel corso degli anni si sono sviluppati in due campi di applicazione diametralmente opposti: immagazzinamento di dati e elaborazione in tempo reale di flussi di informazione. Al giorno d'oggi entrambe le tecnologie sono ampiamente diffuse e spesso è necessario che cooperino per il raggiungimento di comuni obiettivi. Tuttavia l'integrazione delle due è ancora in una fase iniziale di sviluppo e solitamente si rendono necessarie soluzioni personalizzate per specifico caso d'uso. Lo scopo della tesi è di modellare e validare gli effetti di un'integrazione di sorgenti di dati statici nel tool di Complex Event Processing T-Rex. Per raggiungere questo obiettivo presentiamo l'implementazione di un componente che permetta l'interazione con un database SQLite. In particolare descriviamo l'estensione del linguaggio di definizione di regole di T-Rex, spieghiamo i principali algoritmi e discutiamo le prestazioni ed i limiti analizzando i risultati di una serie di test. Il progetto mostra come stream di eventi e collezioni di dati possano in effetti essere descritti con astrazioni logiche del tutto simili, permettendo di affrontare più facilmente problemi che operano sul confine tra i due domini. Inoltre i risultati dei test evidenziano come le prestazioni real-time dell'implementazione originale di T-Rex possano essere preservate sotto ragionevoli condizioni.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2016_12_Di_Pilla.PDF

accessibile in internet per tutti

Descrizione: Thesis text
Dimensione 694.59 kB
Formato Adobe PDF
694.59 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/131952