Como abordado neste artigo, existem muitos autores, técnicos ou adeptos de determinadas ferramentas que acabam confundindo preferência pessoal (que é absolutamente saudável) com um infundado "bairrismo religioso". Isso é extremamente perigoso do ponto de vista profissional e completamente recusável do ponto de vista acadêmico/científico.
Como em quase tudo na área tecnológica, quando o assunto é o melhor, o mais consistente, o de melhor performance, o que tem melhor custo x benefícios dos SGBDs existentes, aconselha-se aquela velha máxima: "Cada caso, é um caso".
Para uma organização de grande porte, com vários sistemas de informações atrelados e convivendo sobre um mesmo cenário, com uma base de dados de grande porte, algumas vezes distribuída e replicada, fazendo uso extensivo das ferramentas OLAP, com vários módulos programados no próprio banco a nível de Data Warehouse, numa estrutura física previamente definida e confortável, migrar do seu SGBD Oracle para o PostgreSQL, por exemplo, pode representar muito mais custos (financeiro, estrutural, organizacional, mão-de-obra) que benefícios. Além disso, alguns dos recursos citados não estariam presentes compativelmente na nova ferramenta.
Contudo, numa organização de médio/grande porte, que possui a necessidade de se criar uma estrutura computacional lógica condizente com o que se espera de sistemas de informações modernos, que já possui uma estrutura deficitária pré-existente ou que não a tenha, que busca uma alternativa a nível de SGBD com baixo TCO e com requisitos de hardware modestos, o PostgreSQL pode se apresentar como uma alternativa altamente viável. Enquanto o Oracle, por exemplo, dependentemente da versão e recursos, torna-se-ia inviável.
Deve ficar claro que o cenário envolvido é extremamente importante na escolha do SGBD certo para o projeto em questão. A linguagem de programação a ser utilizada, a estrutura física (rede, servidores), imposições a nível de segurança ou financeiras da organização, plataformas operacionais envolvidas, suporte técnico; tudo isso é imensamente relevante quando da escolha por uma ou outra opção mercadológica.
A seguir, divulgamos uma pesquisa desenvolvida por Mark Kirkwood, divulgada e traduzida pelo portal br-linux.org. Na presente pesquisa de cunho técnico, o autor apresenta uma comparação entre quatro SGBDs presentes no mercado, dois Free-Sofwares (MySQL e PostgreSQL) e duas ferramentas comerciais (Oracle e Informix). Abaixo apresentamos as tabelas e resultados comparativos:
IMPORTANTE: Todos os testes foram realizados com os seguintes requisitos de hardware: Dois HP Vectra VE 7, cada um com 160MB de RAM, um HD de 3.2GB e um HD de 13GB, ambos Quantum IDE. O sistema operacional foi o Red Hat 6.0, sem alterações no kernel.
Comparativo de características
Banco |
*Custo |
Transações |
Lock de linha |
Constraints |
Program. |
Senhas |
Failsafe |
Hotback |
Mysql |
0/3000 |
Não |
Não |
Não |
Parcial |
Sim |
Não |
Não |
Postgresql |
0 |
Sim |
Sim |
Parcial |
Sim |
Sim |
Sim |
Não |
Oracle |
3200 |
Sim |
Sim |
Sim |
Sim |
Sim |
Sim |
Sim |
Informix |
2000 |
Sim |
Não |
Sim |
Sim |
Sim |
Não |
Não |
- O custo está expresso em dólares da Nova Zelândia, para
uma licença de 10 usuários. A existência de dois preços indica
que o produto é cobrado apenas se for redistribuído como parte
de outra aplicação. Custos de suporte não estão inclusos.
Comparativo de performance - Data warehouse
Banco |
Bulk load 1M |
Sumarizar 3% de 3M |
Sumarizar 0.3% de 3M - pesquisa simples |
Sumarizar 0.3% de 3M - pesquisa complexa |
MySQL |
20 |
14 |
90 |
57 |
Postgresql |
420 |
16 |
4 |
7 |
Oracle |
65 |
5 |
3 |
3 |
Informix |
170 |
8 |
5 |
6 |
|
- Os tempos estão expressos em segundos, e maiores detalhes
sobre os testes podem ser obtidos consultando o site do texto original.
Comparativo de performance - online
Tempos (em seg.)
Banco |
Criar
10K |
Criar
1M |
Query
1 de 10K |
Query
4 de 1M |
Query
Sumário de 4 de 1M |
MySQL |
7 |
891 |
0 |
0 |
1 |
Postgresql |
21 |
4430 |
0 |
0 |
2 |
Oracle |
31 |
3694 |
0 |
0 |
2 |
Informix |
|
- |
0 |
0 |
10 |
Transações por minuto