Pular para o conteúdo

Benchmark de performance em Bancos de Dados Oracle com o Swingbench

Benchmark de performance em Bancos de Dados Oracle com o Swingbench

Bancos de Dados Oracle com o Swingbench

Introdução

Vou apresentar rapidamente neste artigo, uma ferramenta muito interessante que estou utilizando para executar benchmark de performance em Bancos de Dados Oracle, o Swingbench. Swingbench é um software livre que foi desenvolvido em Java por Dominic Giles (especialista em Banco de dados da Oracle UK), projetado para executar e monitorar cargas de dados em Bancos de Dados Oracle 10G e 11G, instâncias standalone ou RAC. Ele pode ser instalado em Windows, Linux e vários outros sistemas operacionais e possui funcionalidades para simulação de 4 tipos de aplicações, entre elas a de Entrada de Pedidos, que funciona bem no Oracle 11G e que será apresentada neste artigo.

Para baixar o Swingbench, entre em http://www.dominicgiles.com/downloads.html. Após baixá-lo, se o SO da máquina for Linux, faça a instalação conforme as instruções do link http://www.dominicgiles.com/installation.html. Se o SO for Windows, substitua no roteiro do link anterior, os processos necessários para efetuar a instalação do Java (se não houver instalação prévia)  e configure as variáveis de ambiente JAVAHOME e SWINGHOME apontando para os diretórios indicados no link.

Para usar a ferramenta é necessário criar antes da primeira utilização, os objetos de BD que serão utilizados para efetuar os testes. Para executar a instalação e iniciar os testes, leia e execute o que está descrito no link http://www.dominicgiles.com/simplebenchmark.html. O script oewizard deverá ser executado uma única vez para criar os objetos de BD. Após a criação destes objetos, execute o script swingbench  para inicializar a aplicação e permitir o início dos testes de performance. 

Eu estou utilizando este software para comparar performance de servidores de desenvolvimento, homologação e produção que eu administro e também utilizarei futuramente para medir performance quando houver upgrade de hardware de servidor de BD ou quando for efetuada uma migração de versão de BD.

Os principais indicadores de peformance que o Swingbench fornece e que eu acho que são os mais interessantes para efetuar as comparações de peformance, são: Average TPM (média de transações por minuto) e Average TPS (média de transações por segundo). Segue abaixo o valor do indicador Average TPM dos BDs em que eu fiz os testes por um tempo de 2 minutos(configurável na ferramenta) simulando 15 sessões de usuários concorrentes, seguidos por imagens contendo todos os indicadores que a ferramenta disponibiliza em um gráfico de visão geral:

          1- Produção (Oracle 10g): 657 (ver imagem 1);

          2- Homologação (Oracle 10g): 618 (ver imagem 2);

          3- Desenvolvimento (Oracle 11g): 684 (ver imagem 3).

1

Imagem 1 – Teste de performance do servidor de Produção

2

Imagem 2 – Teste de performance do servidor de Homologação

3

Imagem 3 – Teste de performance do servidor de Desenvolvimento

Conclusão

A ferramenta Swingbench  é uma ótima opção para fazer benchmark de performance entre BDs distintos e até mesmo para comparar a performance de um BD, contemplando o estado “antes” e “depois” de alguma alteração ou atualização.

Nos testes que eu fiz, o servidor de desenvolvimento foi o que apresentou melhor performance, porém, ressalto que ele é o único que na data em que eu escrevi este artigo (14/11/2011), havia sido atualizado para a versão 11g do Oracle Database (ainda não sei se isso influenciou na performance) e que os BDs de desenvolvimento e homologação estavam ociosos no momento da realização dos testes. Os testes no BD de produção foram realizados em um período que concorreu com atividades de sessões de usuários de outras aplicações.

Referências

 

Fábio Prado

Fábio Prado

Atua na área de tecnologia há 13 anos, possui experiência e profundos conhecimentos em Análise de Sistemas, programação com Dot Net e Administração de Bancos de Dados Oracle.

É Oracle ACE, DBA Oracle, instrutor de treinamentos em Bancos de Dados Oracle na FABIOPRADO.NET, articulista da revista SQL Magazine e diversos blogs e sites de TI e autor do blog www.fabioprado.net . É Bacharel em Ciências da Computação, com MBA e Pós-graduação em Gestão de Projetos.

Possui as seguintes certificações: Microsoft: MCP, MCSD, MCAD, MCSD.NET, MCDBA, MCTS, MCT e MCPD; Oracle: OCP Database 10G e 11G, OCA PL/SQL e Oracle Database 11g Performance Tuning Certified Expert.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

plugins premium WordPress