Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/92561
Título: | Analysis of I/O patterns for data management systems |
Autor(es): | Rodrigues, Pedro Miguel Borges |
Orientador(es): | Paulo, João Tiago Medeiros Vilaça, Ricardo Manuel Pereira Esteves, Tânia da Conceição Araújo |
Palavras-chave: | Analysis Data management I/O patterns LTTng Performance Tracing Análise Captura Desempenho Gestão de dados Padrões E/S |
Data: | 17-Out-2023 |
Resumo(s): | The exponential growth of digital information that has been witnessed in recent years requires a continuous
evolution and optimization of data management systems, such as databases and storage solutions.
In order to provide efficient processing and storage capabilities for large amounts of data, data man agement systems must adopt different optimizations (e.g., caching, replication, data reduction) that in crease their complexity. As a result, developing, configuring and maintaining a data management system
becomes increasingly difficult and costly.
Tracing and analyzing the interactions and exchanges between components of these systems is funda mental to uncover performance, correctness and dependability issues almost unavoidable in any complex
solution. On the other hand, this presents several challenges, such as minimizing the impact on applica tions’ performance and storage space, improving tracing accuracy and achieving real-time analysis, that
must be explored.
With this thesis, we present a tracing and analysis pipeline capable of capturing and analyzing the I/O
patterns of these data-centric systems in order to better understand their behavior, using LTTng as tracing
tool.
In particular, the proposed solution includes a tracing component that efficiently collects disk and
network I/O metrics originated by the target application. This component is the major focus of this thesis
and allows for the capture of system calls that the application executes, as well as their arguments, in a
non-intrusive and almost real-time way. The rest of the pipeline facilitates the analysis and visualization
of captured events through search queries and diagrams, allowing the user to find potential performance
and optimization problems.
In the end, we demonstrate that the proposed solution allows for the identification of inefficient and
redundant I/O patterns in production applications without causing significant impacts on the runtime
performance of the application and allowing for near real-time analysis. O crescimento exponencial de dados digitais a que se tem assistido nos últimos anos exige uma evolução e otimização dos sistemas de gestão de dados, como bases de dados e sistemas de armazenamento. De modo a fornecer processamento e armazenamento eficaz de grandes quantidades de dados, os sistemas de gestão de dados devem adotar diferentes otimizações (e.g., caching, replicação, redução de dados) que aumenta a sua complexidade. Desta forma, desenvolver, configurar e manter um sistema de gestão de dados tornam-se cada vez mais tarefas difíceis e dispendiosas. Analisar as interações entre componentes destes sistemas é fundamental para descobrir problemas de desempenho, correção e confiabilidade quase inevitáveis em qualquer solução complexa. Por outro lado, isto apresenta vários desafios, como minimizar o impacto no desempenho das aplicações e no espaço de armazenamento, melhorar a precisão do tracing e alcançar análise em tempo real, que devem ser explorados. Com esta tese, apresentamos uma pipeline de tracing e análise capaz de capturar e analisar padrões I/O destes sistemas com o objetivo de melhor compreender o seu comportamento, utilizando o LTTng como ferramenta de tracing. Em particular, a solução proposta contempla uma componente que coleciona de forma eficaz os pedidos de disco e métricas de E/S de rede originados pela aplicação alvo. Esta componente é o foco principal da tese e permite a captura de todas as chamadas ao sistema operativo que a aplicação execute, bem como os seus argumentos, de forma não intrusiva e quase em tempo real. O resto da pipeline facilita a análise e visualização dos eventos capturados através de interrogações de pesquisa e de diagramas, permitindo ao utilizar encontrar potenciais problemas de desempenho e otimização. No final, demonstramos que a solução proposta permite identificar padrões E/S ineficientes e redundantes em aplicações de produção sem causar impactos significativos na execução normal da aplicação e possibilitando análise quase em tempo real. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado integrado em Informatics Engineering |
URI: | https://hdl.handle.net/1822/92561 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Pedro Miguel Borges Rodrigues.pdf | Dissertação de mestrado | 1,97 MB | Adobe PDF | Ver/Abrir |
Este trabalho está licenciado sob uma Licença Creative Commons