Riassunto analitico
Ogni secondo produciamo un'enorme quantità di dati, per cui la capacità di trasformare questa mole di dati in informazioni utili è fondamentale per una migliore gestione della società in cui viviamo. I dati che produciamo possono essere in immagazzinati in forme molto diverse ed eterogenee. Per cui, l'operazione di integrazione di tali dati per la visualizzazione ed elaborazione successiva è vitale. In questo contesto anche le tecniche di Data Integration esistenti devono essere aggiornate per poter supportare la grande mole di dati che creiamo. In questo contesto si inserisce questa dissertazione. L'obbiettivo è quella migliore le prestazioni delle operazioni fondamentali nel Data Integration. L'operazione su cui si concentra questo lavoro è l'operatore Join nell'ambito del Big Data Integration.
Join è un operatore fondamentale nel contesto del Data Integration. Sono usati principalmente due tipi di join. Il primo è equi-join è usato nel Merge Join Step, ed usato per collegare di due o più dati di sorgenti. Il join usato per fondere i dati di sorgenti differenti, oltre ad essere un join con il predicato di uguaglianza, è solitamente è un outer join, in quando è possibile che i dati presenti su una sorgente non è presente nelle altre. Inoltre se si ha molte sorgenti, usare un solo join binario può essere svantaggioso. In questa ottica, viene presentato un nuovo algoritmo di join, SOPJ, creato appositamente per rendere il Merge Join Step più efficiente, parallelizzabile e scalabile, per poter gestire in maniera efficiente non solo grandi sorgenti dati, ma anche un enorme numero di sorgenti dati. Il secondo tipo di join è similarity join, questo operatore è usato per molti scopi, in Data Integration, soprattutto nelle operazioni di pulizia e di normalizzazione dei dati come duplication detection ed entity resolution. Il similarity join è stato ampiamente studiato in letteratura, con l'introduzione del paradigma Map Reduce, lo studio per rendere questa operazione efficiente e scalabile è diventato nuovamente un tema caldo. In questa dissertazione presentiamo uno dei più popolari algoritmo di similarity join, PPJoin. Inoltre abbiamo implementato questo algoritmo attraverso Apache Spark, e abbiamo introdotto dei miglioramenti per rendere questo algoritmo più performante. E dati sperimentali mostrano l'efficacia delle modifiche proposte. Infine, in questo lavoro, mostriamo un'alternativa al similarity join per l'operazione entity resolution, chiamato metablocking e il nostro contributo è quello di implementare questo metodo attraverso Apache Spark per rendere il metablocking scalabile e usabile per grandi moli di dati.
In sintesi, tutto il lavoro svolto ha come obiettivo quello di studiare e rendere scalabile un Data Integration System, come MOMIS, per poter gestire l’enorme quantità di dati che abbiamo a disposizione.
|
Abstract
Every second, we produce a large amount of data, as consequence, the ability to transform these data into useful information is crucial to manage efficiently the society we are living in. Such data can be stored into different and heterogeneous systems. Therefore, the integration is an important task for viewing and processing of these data. In this context, existing Data Integration techniques have to be upgraded to support the large and complex data. In this context, this dissertation has the goal to study and to improve the performance of critical operations in Data Integration. The main topic of this work is the Join operator in the Big Data Integration.
Join is a key operator in the Data Integration. There are two types of joins most used in this area.
The first is equi-join is used in the Merge Join Step, it is used to merge two or more data sources. The join used for this context is a join with equality predicate. In addition, it is usually an outer join, Since the data present in a data source may not be present in others. Another issue is the number of data sources. If you have many data sources with common attributes, using only one binary join can be inefficient. In this perspective, this dissertation propose a new join algorithm, ie. SOPJ. This join algorithm is created specifically to make the Merge Join Step more efficient, parallelizable and scalable. These features allows to manage efficiently not only large data sources but also a huge number of data sources.
The second type of join is similarity join, this operator is used for many purposes in Data Integration, especially in data cleansing and normalization operations such as duplication detection and entity resolution. Similarity join has been widely studied in literature. With the Map Reduce paradigm, the study to make this operation efficient and scalable has become a hot topic. In this dissertation, we studied one of the most famous similarity join algorithms, PPJoin. We implemented this algorithm through Apache Spark, and we introduced improvements to make this algorithm more efficient. The experiment data show the effectiveness of the proposed solutions.
Finally, we present an alternative to the similarity join for the entity resolution operation, called metablocking, and our contribution is to implement this method through Apache Spark to make scalable and usable metablocking for large data queues.
The goal of this work is to study and to improve the scalability and efficiency of operations in Data Integration Systems, like MOMIS, to able to manage the huge amount of available data.
|