Flexible tracing and analysis of applications’ I/O behavior

dc.contributor.advisorPaulo, João Tiago Medeirospor
dc.contributor.advisorOliveira, Rui Carlos Mendes depor
dc.contributor.authorEsteves, Tânia Conceição Araújopor
dc.date.accessioned2024-05-15T10:39:22Z
dc.date.available2024-05-15T10:39:22Z
dc.date.issued2024-04-08
dc.date.submitted2023
dc.description.abstractA 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.por
dc.description.abstractThe 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.por
dc.description.sponsorshipA Fundação para a Ciência e Tecnologia (FCT) apoiou este trabalho através da bolsa de doutoramento DFA/BD/5881/2020.por
dc.identifier.tid101641303por
dc.identifier.urihttps://hdl.handle.net/1822/91357
dc.language.isoengpor
dc.relationDFA/BD/5881/2020por
dc.rightsopenAccesspor
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/por
dc.subjectDiagnóstico de E/Spor
dc.subjectRastreiopor
dc.subjectAnálisepor
dc.subjectVisualizaçãopor
dc.subjectAplicações centradas em dadospor
dc.subjectSistemas de armazenamentopor
dc.subjectI/O diagnosispor
dc.subjectTracingpor
dc.subjectAnalysispor
dc.subjectVisualizationpor
dc.subjectData-centric applicationspor
dc.subjectStorage systemspor
dc.subject.fosCiências Naturais::Ciências da Computação e da Informaçãopor
dc.titleFlexible tracing and analysis of applications’ I/O behaviorpor
dc.title.alternativeRastreio e análise flexíveis do comportamento de E/S de aplicaçõespor
dc.typedoctoralThesiseng
dspace.entity.typePublicationen
sdum.degree.gradeMuito bompor
sdum.uoeiEscola de Engenhariapor
thesis.degree.grantorUniversidade do Minhopor
thesis.degree.nameTese de doutoramento em Informáticapor

Ficheiros

Pacote original

A mostrar 1 - 1 de 1
A carregar...
Nome:
Tania Conceicao Araujo Esteves.pdf
Tamanho:
18.71 MB
Formato:
Adobe Portable Document Format
Descrição:
Tese de doutoramento