OptImatch: System with Knowledge Base for Query Performance Problem Determination of Query Execution Plans

DSpace Repository

A- A A+

OptImatch: System with Knowledge Base for Query Performance Problem Determination of Query Execution Plans

Show simple item record

dc.contributor Universidade Federal de Santa Catarina pt_BR
dc.contributor.advisor Becker, Leandro Buss
dc.contributor.author Damasio, Guilherme Fetter
dc.date.accessioned 2019-08-21T14:47:15Z
dc.date.available 2019-08-21T14:47:15Z
dc.date.issued 2017-03
dc.identifier.uri https://repositorio.ufsc.br/handle/123456789/199985
dc.description TCC(graduação) - Universidade Federal de Santa Catarina. Centro Tecnológico. Engenharia de Controle e Automação. pt_BR
dc.description.abstract A determinação de problemas de performance de queries de banco de dados é normalmente feita analisando os planos de execução de queries, ou em inglês, query execution plan (QEP), além de outras propriedades de performance. Algumas ferramentas de diagnose de performance no mercado tem a capacidade de analisar queries problemáticas, porém elas estão limitadas a comparar as queries com um número limitado de padrões prédefinidos. Ainda mais, ferramentas como IBM(R) Optim Query Tuner(R) e IBM Optim Workload Tuner(R)¹ já fazem recomendações de aperfeiçoamento de queries para problemas já conhecidos. Mesmo sendo efetivas, tais ferramentas não proporcionam a habilidade de criar problemas padrões customizáveis devido ao fato delas não entenderem completamente a complexa estrutura dos QEPs. Conforme os dados guardados para análise aumentam, para poder analisá-los, a complexidade da query também aumenta. Fazer a análise manual de QEPs tão complexas pode ser uma tarefa demorada e que requer um grande conhecimento dos especialistas no assunto. O presente trabalho foi desenvolvido em parceria com a IBM Centre for Advanced Studies Toronto. IBM é uma multinacional americana, tendo como sua principal atuação o mercado de hardware, middleware e software. A ferramenta proposta está relacionada com o sistema de banco de dados DB2 da IBM. O DB2 é um sistema de banco de dados relacionais utilizado principalmente por empresas. Devido ao grande volume de dados, o DB2 provê funcionalidades como o aperfeiçoamento de queries através da reescrita da mesma. Ao rodar uma query no DB2, o sistema produz um plano de acesso que especifica como os dados são obtidos das tabelas. Para a escolha do plano de acesso, o otimizador produz vários planos de acesso alternativos e seleciona aquele que tem o menor custo estimado de plano de execução. Quando o otimizador falha, devido à experiência e tempo necessário, os usuários procuram as empresas para sanar o problema. Na IBM, os problemas reportados por clientes são analisados por profissionais com experiência em linguagem SQL e análise de otimizador de QEPs. Para analisar os problemas de otimização, esses profissionais utilizam de uma ferramenta do DB2 que produz um arquivo QEP. Esses arquivos são escritos em formato de texto legível para humanos, explicando o plano de acesso. Tais arquivos podem conter milhares de linhas e a análise manual do mesmo pode consumir muito tempo. Visando sanar tais problemas, foi desenvolvida neste trabalho uma ferramenta chamada OptImatch, que tem a funcionalidade de procurar por diferentes problemas padrões dentro de um QEP e prover recomendações criadas por especialistas e salvas na base de conhecimento, abreviada por KB (knowledge base). Um grande problema das ferramentas existentes no mercado é a falta de uma interface que provê ao usuário uma maneira de criar seu problema padrão, pois as mesmas não conseguem impor uma estrutura para os QEPs. OptImatch, através de um sistema web, provê uma interface fácil e intuitiva para usuários criarem problemas padrões customizáveis e pesquisarem recomendações automaticamente dentro de seus QEPs. A solução proposta é dada pela transformação do QEP para um grafo RDF e pela pesquisa dos problemas padrões utilizando o SPARQL como linguagem de query estruturada. Ao fazer upload dos QEPs, a ferramenta analisa os arquivos procurando, através de expressões regulares, as propriedades e conexões, salvando as mesmas em um arquivo RDF. Depois, através da interface do sistema, o usuário monta seu problema padrão customizado, onde o mesmo é enviado ao servidor e automaticamente transformado em uma query através da linguagem SPARQL. Tal query posteriormente será utilizada para procurar o problema customizado dentro dos arquivos RDF. Juntamente com essa pesquisa, o OptImatch também procura pelos problemas padrões pré-definidos e guardados dentro do KB. Para a criação das recomendações uma sintaxe própria foi criada. Através dessa sintaxe o usuário pode utilizar tags para indicar uma porção da query, apontando para propriedades específicas da mesma. Através dos manipuladores de tags, a ferramenta proposta substitui as tags pelos resultados obtidos, criando assim uma recomendação mais específica para cada usuário. Mesmo que a ferramenta descrita nesse trabalho seja focada em determinação de problemas de performance de queries, a mesma pode ser aplicada para qualquer tipo de software de determinação de problemas genéricos. OptImatch necessita somente que tais softwares produzam um arquivo de diagnóstico estruturado que necessita analise futura. Por fim, cinco experimentos são apresentados neste trabalho. O principal foco desses experimentos é analisar a efetividade da pesquisa da ferramenta em 1000 QEPs de usuários reais da IBM, avaliando a performance e escalabilidade da ferramenta em termos de quantidade de QEP, número de low level plan operators (LOLEPOPs) e número de recomendações. Também foi feito uma analise do novo método de pesquisa da ferramenta, comparando a mesma com o método anterior. Por último, foi realizado um estudo comparativo entre a velocidade e precisão da ferramenta proposta e os métodos de pesquisa hoje utilizados na IBM, mostrando os benefícios que o OptImatch poderá trazer a empresa. ¹IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml pt_BR
dc.description.abstract Query performance problem determination in databases is often done by analyzing query execution plans (QEPs) in addition to other properties. The majority of performance diagnostic tools help identify problematic queries. Unfortunately, most query tuning tools provide recommendations to only few known problems. Furthermore, manual analysis of QEPs requires deep knowledge in both SQL and analyzing optimizers as the complexity of the query workloads in companies increase. A tool called OptImatch was created to provide a simple way to search different problem patterns created by users in QEPs. Moreover, OptImatch matches and provides recommendations, created by experts and users, stored in a knowledge base. The proposed tool transforms the QEP into a RDF graph and automatically generate a SPARQL query from a user-based problem pattern described in the GUI by the use of handlers. The SPARQL query is then run against the RDF graph and any matching portion is returned to the user. OptImatch also searches for predefined problem patterns by scanning the knowledge base against the RDF graph, returning a recommendation for any match. In the running time, the system adapts the recommendation to the user through the handler tagging interface. An analysis of the performance and scalability of the system was performed using a real-world query workload. Also, a comparative user study was performed to evaluate the advantages of this tool in contrast to manual search as used inside IBM. pt_BR
dc.language.iso en pt_BR
dc.publisher Florianópolis, SC. pt_BR
dc.rights Open Access
dc.subject Problema de Determinação de Performance de Queries pt_BR
dc.subject Web Semântica pt_BR
dc.subject Base de Conhecimento pt_BR
dc.subject Inteligência de Negócios pt_BR
dc.title OptImatch: System with Knowledge Base for Query Performance Problem Determination of Query Execution Plans pt_BR
dc.type TCCgrad pt_BR


Files in this item

Files Size Format View
PFC Guilherme Fetter Damasio_2016-2.pdf 2.036Mb PDF View/Open

This item appears in the following Collection(s)

Show simple item record

Search DSpace


Browse

My Account

Statistics

Compartilhar