Por que eu devo ler este artigo:

Dimensionar um sistema de I/O é uma das partes fundamentais para a implantação de um novo sistema, para o redimensionamento da infraestrutura e para identificar possíveis gargalos no desempenho das aplicações. Para atingir tais conceitos, é importante também conhecer as métricas e SLAs do ambiente. Neste artigo, veremos como o IOPS pode nos ajudar e como podemos mensurá-lo. Através de exemplos, conheceremos as sintaxes, configurações, pré-requisitos e analisaremos os resultados das ferramentas Oracle CALIBRATE_IO e Oracle Orion.

O conteúdo apresentado neste artigo auxiliará administradores de banco de dados a mensurar o throughput de dispositivos de armazenamento. Esse conhecimento será útil em situações que demandam a implantação de um novo sistema, atualização ou migração de plataforma e até mesmo contribuir na análise de problemas de desempenho.

Estimar um subsistema de I/O é parte essencial na construção da infraestrutura do desenvolvimento de uma aplicação. Segundo as boas práticas de mercado, recomenda-se que antes da implantação, desenvolvimento e liberação de uma funcionalidade ou até mesmo de um sistema para produção, todos os elementos da arquitetura sejam analisados para garantir que os acordos de SLAs sejam satisfatórios.

O SLA - Service Level Agreement, ou, ANS – Acordo de Nível de Serviço, é muito importante para os contratos de prestação de serviços em tecnologia. Trata-se de uma especificação dos serviços que o contratante pode esperar do contratado baseado nos resultados. Temos como exemplo os prazos contratuais, termos de compromisso, metas de nível e serviço, suporte técnico, entre outros. Através do SLM – Service Level Management – os SLAs são gerenciados, e para que tal atividade seja eficaz, é necessário obter indicadores que possibilitem a transparência entre as empresas e seus clientes. Alguns exemplos de indicadores são: de disponibilidade, de custos, de incidências de falhas, tempo de resposta, documentações, backlog, entre outros.

Nos ambientes, independente do grau de complexidade, faz-se necessário o entendimento da demanda por operações de leitura e escrita. De certo, essa nunca é estática e sofre constantes variações. Assistir a essas mudanças de maneira pró ativa, entendê-las e principalmente conhecer os picos de I/O (Input/Ouput), é garantir um bom desempenho como um todo.

Uma ação fundamental e até desafiadora para administradores de banco de dados é justamente mensurar a capacidade de throughput (taxa de transferência) do ambiente e confrontá-lo com comportamentos e reações dos sistemas, pois a performance de muitas aplicações restringem-se à IOPS (Input/Output per second) dos dispositivos de armazenamento.

No mercado existem várias ferramentas para tais tarefas, como Iometer, Iozone, SLOB, entre outras. Apesar de serem boas, a Oracle já disponibiliza algumas, até mais adequadas ao analisarmos o I/O em conjunto com o banco de dados, com a vantagem da facilidade/mobilidade. A partir da versão 11g, temos como opções o Oracle RAT (ver BOX 1) e uma outra novidade, a função CALIBRATE_IO, tema principal do artigo.

BOX 1. Oracle RAT – Real Application Testing

Trata-se de uma option, que permite simular testes de carga reais do banco de dados. É composto por dois elementos, o Database Replay e o SQL Performance Analyzer. Através da captura de cargas de trabalho e avaliação do impacto das alterações no sistema, o Oracle RAT auxilia na minimização de problemas de performance e instabilidades provenientes das mudanças.

Database Replay: fornece aos DBAs a capacidade de capturar e simular com precisão e de forma realista as cargas de trabalho de produção em ambientes de teste. Com o Database Replay, você pode testar upgrades das bases de dados, aplicação de patches, alterações de parâmetros, alterações em schemas, conversão de single instance para Oracle RAC (alta disponibilidade), discos, rede, alterações de hardware, entre várias outras, tudo isso com baixo custo e rápida construção dos testes.

SQL Performance Analyzer: pode prevenir e evitar problemas na execução de instruções SQL causados por mudanças no ambiente, fornecendo uma visão do impacto dessas alterações nos planos de execução e nas estatísticas. O SPA iden ...

Quer ler esse conteúdo completo? Tenha acesso completo