Firebird 3: Testando o desempenho e conhecendo novos recursos
Este artigo demonstra algumas novidades e analisa o desempenho do SGBD Firebird 3 (RC1), comparado à última versão 2.5.4.
Este artigo apresenta um conjunto de testes cujo objetivo é descrever um comparativo de desempenho entre as versões do SGBD Firebird 2.5.4 e a versão 3 (RC 1). Tal abordagem se justifica para saber quais as otimizações quanto ao desempenho temos nesta nova versão do banco de dados. Previamente são mostradas também algumas novas funcionalidades e um guia para personalização do arquivo de configuração do Firebird para obter um melhor desempenho na nova versão.
É importante salientar também a contribuição do trabalho para desenvolvedores e administradores de banco de dados que utilizam Firebird no tipo de instalação SuperServer e SuperClassic (discutidos mais à frente neste artigo).
O objetivo é atingir tanto os que usam SuperServer quanto os que usam o SuperClassic na versão atual, já que o primeiro é o responsável pela maioria das instalações do Firebird, e o segundo por ser usado em grandes corporações com grandes bases de dados. A partir de agora conheceremos algumas das novidades presentes na nova versão do Firebird.
Colunas Identity
O uso de generators e triggers para se ter um “autoincremento” no Firebird não é mais necessário. A coluna identity é associada a um gerador interno, fazendo com que em um insert, se o valor de um campo identity não for informado, seja assumido automaticamente o próximo valor da sequência.
Na Listagem 1 é criada uma tabela cliente com um campo sendo do tipo integer com valor gerado por identity. Logo em seguida são inseridos alguns registros sem informar valor para esse campo, logo, na Figura 1, nota-se que o campo ID foi incrementado automaticamente pelo gerador.
Listagem 1. Criação e manipulação de coluna identity.
create table cliente(
id integer generated by default as identity primary key,
nome varchar(100));
commit work;
insert into cliente (nome) values('Maria');
insert into cliente (nome) values('José');
insert into cliente (nome) values('João');
insert into cliente (nome) values('Pedro');
insert into cliente (nome) values('Mario');
insert into cliente (nome) values('Paulo');
insert into cliente (nome) values('Luciana');
insert into cliente (nome) values('Lucas');
insert into cliente (nome) values('Pamela');
insert into cliente (nome) values('Marina');
insert into cliente (nome) values('Miller');
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo