Publicação: Combinação de sucessivas funções de similaridade para otimização de ambiente para identificação de tuplas duplicadas com recursos de paralelização
Carregando...
Data
2023-01-20
Autores
Orientador
Valêncio, Carlos Roberto 

Coorientador
Pós-graduação
Curso de graduação
Ciência da Computação - IBILCE
Título da Revista
ISSN da Revista
Título de Volume
Editor
Universidade Estadual Paulista (Unesp)
Tipo
Trabalho de conclusão de curso
Direito de acesso
Acesso aberto

Resumo
Resumo (português)
Nos últimos anos o problema de identificação de tuplas duplicadas tem se tornado cada vez
mais expressivo com o crescimento do cenário Big Data. Empresas, governos, meio acadêmico
e indústria geram cada vez mais informações, e tem-se como consequência a dificuldade de
extrair conhecimentos valiosos dessas bases, nas quais muitas das vezes são desorganizadas e
heterogêneas. Quando usuários, independente da organização, inserem dados em uma base de
dados, é comum que eles contenham erros ou inconsistências, onde tais cenários impedem que
a etapa de análise de dados gere resultados satisfatórios. Sendo assim, é imprescindível que
estes dados sejam limpos, normalizados, e posteriormente tratados. Desta forma, pretendeu-se
implementar um ambiente de identificação de tuplas duplicadas com recursos de paralelização
e processamento em memória com Apache Spark. Para isso, inicialmente foi realizada uma
etapa de limpeza de dados e, posteriormente, foram executados 3 algoritmos de similaridade,
Damerau-Levenshtein, Jaro-Winkler e Needleman-Wunsch, com auxílio da paralelização. O
intuito foi identificar tuplas duplicadas, aumentar o desempenho dessas técnicas e torná-las
funcionais, uma vez que elas possuíam um alto nível de custo computacional. Ao mesmo tempo,
foram testadas diversas combinações dessas funções para otimizar os cálculos de similaridade.
A análise dos resultados obtidos após a execução do ambiente proposto mostrou que é possível
aumentar a precisão dos resultados ao utilizar mais de uma função de similaridade. Além disso,
as técnicas de paralelização e processamento em memória melhoraram o desempenho do
algoritmo, e o tornam mais eficiente e rápido. A análise de qualidade dos dados também
mostrou resultados positivos, sendo possível identificar uma quantidade significativa de tuplas
duplicadas e as funções de similaridade utilizadas foram capazes de tratar contextos diferentes
e detectar duplicações. Deste modo, propôs-se como contribuição científica a aplicação de
diversas funções de similaridade a fim de otimizar os ambientes de identificação de tuplas
duplicadas, com recursos de paralelização.
Resumo (inglês)
In recent years, the problem of identifying duplicate tuples has become increasingly
expressive with the growth of the Big Data scenario. Companies, governments, the academic
community, and industry generate more and more information, leading to difficulties in
extracting valuable knowledge from these databases, which are often disorganized and
heterogeneous. When users, regardless of the organization, insert data into a database, it is
common for them to contain errors or inconsistencies, which prevent the data analysis stage
from generating satisfactory results. Therefore, it is essential that these data be cleaned,
normalized, and subsequently treated. With this in mind, we aimed to implement an
environment for identifying duplicate tuples with parallelization and in-memory processing
capabilities using Apache Spark. To this end, a data cleaning step was initially performed, and
then three similarity algorithms, Damerau-Levenshtein, Jaro-Winkler, and NeedlemanWunsch, were executed with the help of parallelization. The goal was to identify duplicate
tuples, increase the performance of these techniques, and make them functional, since they
had a high level of computational cost. At the same time, various combinations of these
functions were tested to optimize the similarity calculations. The analysis of the results
obtained after the execution of the proposed environment showed that it is possible to increase
the accuracy of the results by using more than one similarity function. In addition, the
parallelization and in-memory processing techniques improved the performance of the
algorithm, making it more efficient and faster. The data quality analysis also showed positive
results, it was possible to identify a significant amount of duplicate tuples, and the similarity
functions used were able to handle different contexts and detect duplicates. Thus, it was
proposed as a scientific contribution the application of various similarity functions in order to
optimize the environments for identifying duplicate tuples with parallelization capabilities.
Descrição
Idioma
Português