Pessoal, gostaria de compartilhar com todos alguns testes que fiz de desempenho.
Para o teste foram realizados 1000 inserções em cada banco de dados 5 vezes consecutivas em uma tabela com 3 campos (1 - autoincremental, 2 - NOME(40 posições), 3 - ABREVIACAO (10 posições).
Tudo isto num mesmo programa, utilizando JAVA+JDBC. Então vamos aos assustadores resultados que obtive: A explicação disto…eu deixo para os mais experts…como eu disse…apenas relacionarei os valores obtidos.
Todos os testes foram feitas na mesma máquina e localmente, um notebook P4 2.4GHz com 512MB DDR SDRAM e HD 60GB 7.200rpm.
OBS: devido ao tempo…apenas testei INSERÇÕES (comando insert).
Os bancos testados foram: Mysql(3.23), Oracle(9.2.0.1), Firebird(1.5), Postgres (Versão Beta for Windows)
Mysql - Inserindo apenas um registro:
320ms
293ms
301ms
290ms
300ms
300,8ms para inserir apenas um registro
Mysql - Inserindo 1000 registros:
681ms
691ms
701ms
731ms
701ms
701ms para inserir 1000 registros
Oracle - Inserindo apenas um registro:
801ms
831ms
841ms
812ms
811ms
819,2ms
Oracle - Inserindo 1000 registros:
5307ms
5598ms
5828ms
5408ms
5378ms
5503,8ms
Firebird - Inserindo apenas um registro:
611ms
440ms
460ms
451ms
460ms
484,4ms
Firebird - Inserindo 1000 registros:
14541ms
13069ms
13790ms
13018ms
13669ms
13671,4ms
Postgres - Inserindo apenas um registro:
300ms
241ms
250ms
301ms
311ms
280,6ms
Postgres - Inserindo 1000 registros:
31425ms
30914ms
30414ms
30614ms
30074ms
30688,2ms
Bem pessoal, em resumo…as diferenças são assustadoras:
Mysql - 1o. lugar…leva menos que um segundo para 1 ou 1000 registros.
Oracle - 2o. lugar…leva menos que 6 segundos para 1000 registros…porém quase 1 segundo para 1 registro
Firebird - 3o. lugar…leva menos que 0.5 segundo para 1 registro e quase 14 segundos para 1000 registros
Postgres - 4o. lugar…leva menos que 0.3 segundo para 1 registro e quase 31 segundos para 1000 registros
Um abraço, a todos.
Arlei