Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/91357

TítuloFlexible tracing and analysis of applications’ I/O behavior
Outro(s) título(s)Rastreio e análise flexíveis do comportamento de E/S de aplicações
Autor(es)Esteves, Tânia Conceição Araújo
Orientador(es)Paulo, João Tiago Medeiros
Oliveira, Rui Carlos Mendes de
Palavras-chaveDiagnóstico de E/S
Rastreio
Análise
Visualização
Aplicações centradas em dados
Sistemas de armazenamento
I/O diagnosis
Tracing
Analysis
Visualization
Data-centric applications
Storage systems
Data8-Abr-2024
Resumo(s)A correção, confiabilidade e desempenho de aplicações centradas em dados e de sistemas distribuídos (por exemplo, sistemas de ficheiros, bases de dados, plataformas de análise de dados e de aprendizagem de máquina) são influenciados pela forma como estes acedem, trocam e persistem dados. Portanto, compreender o comportamento de Entrada/Saída (E/S) destas soluções é fundamental para as explorar, encontrar possíveis problemas e otimizar. Para tal, existem ferramentas de diagnóstico que dão suporte à coleção, análise e visualização de padrões de E/S (por exemplo, chamadas de sistema, funções de kernel). Nesta dissertação, argumentamos que estas ferramentas podem ser melhoradas para alcançar soluções de diagnóstico integradas e automatizadas que permitam capturar informações detalhadas sobre pedidos de E/S, suportar análises múltiplas e automatizadas dos dados colecionados, e fornecer representações visuais que facilitam a interpretação de padrões de comportamento de E/S. Estes objetivos são alcançados através de três novas plataformas de diagnóstico. Em primeiro lugar apresentamos o CaT, uma solução orientada ao conteúdo que permite uma análise mais abrangente de sistemas distribuídos, revelando como os dados fluem pelos distintos componentes até que sejam persistidos. Através de dois casos de estudo reais mostramos que esta informação é fundamental para identificar padrões de corrupção e adulteração de dados em soluções distribuídas. Em seguida propomos o DIO, uma solução genérica para o diagnóstico de aplicações centradas em dados que oferece funcionalidades de coleção, análise e visualização detalhadas, flexíveis, e personalizáveis. Através de uma avaliação experimental, com quatro aplicações utilizadas pela indústria, mostramos que a nossa solução facilita a análise da origem de problemas conhecidos, e permite observar e validar padrões de E/S ineficientes (e anteriormente desconhecidos). Por fim, apresentamos o CRIBA, uma plataforma que estende o DIO para fornecer uma solução especializada e automatizada que permite caracterizar o comportamento de E/S de ransomware criptográfico. O nosso estudo com cinco famílias de ransomware para Linux mostra como o CRIBA permite a análise e observação dos seus comportamentos intrínsecos e complexos. As contribuições anteriores facilitam e melhoram o diagnóstico de aplicações e de sistemas de armazenamento. Acreditamos que soluções de diagnóstico detalhadas, flexíveis e personalizáveis, como as propostas neste trabalho, são fundamentais para a construção de sistemas mais robustos e eficientes.
The correctness, dependability and performance of data-centric applications and distributed systems (e.g., file systems, databases, analytical engines, machine learning frameworks) are highly influenced by the way these access, exchange and persist data. Therefore, understanding the Input/Output (I/O) behavior of such solutions is key for efficiently exploring, debugging and optimizing them. This endeavor is possible through diagnosis tools that provide support for the collection, analysis and visualization of information (e.g., logs, system calls, kernel functions) from targeted applications and storage systems. In this thesis, we argue that these tools can be further enhanced to achieve fully automated and integrated diagnosis pipelines that allow capturing comprehensive information about I/O requests, supporting multipurpose and automated analysis of collected data, and providing informative and summarized visual representations that ease the interpretation of I/O behavior patterns for users. We accomplish these goals by proposing three novel diagnosis frameworks. First, we introduce CaT, a content-aware solution that enables a more comprehensive analysis of distributed systems by revealing how data requests flow across distinct components until these are persisted. We show that this information is key for identifying data corruption and adulteration patterns in complex distributed solutions. Then, we propose DIO, a general-purpose solution for diagnosing data-centric applications that offers flexible, comprehensive and customizable tracing, analysis and visualization in near real-time. Through an experimental evaluation including four production-level applications, we show that our solution eases the root cause analysis of known issues and allows observing and validating inefficient (and previously unknown) I/O patterns. Finally, we present CRIBA, a framework that extends DIO to provide a specialized and automated pipeline for characterizing the I/O behavior of cryptographic ransomware. Our study, including five Linux ransomware families, shows that CRIBA enables the analysis and observation of intrinsic and complex I/O behavior from malicious samples. The previous contributions ease and improve the process of diagnosing applications and storage systems for users. We believe that comprehensive, flexible and customizable diagnosis pipelines, such as the ones proposed in this work, are key for building systems that are more robust and efficient.
TipoTese de doutoramento
DescriçãoTese de doutoramento em Informática
URIhttps://hdl.handle.net/1822/91357
AcessoAcesso aberto
Aparece nas coleções:BUM - Teses de Doutoramento
HASLab - Teses de Doutoramento
DI - Teses de doutoramento

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
Tania Conceicao Araujo Esteves.pdfTese de doutoramento19,16 MBAdobe PDFVer/Abrir

Este trabalho está licenciado sob uma Licença Creative Commons Creative Commons

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID