Especialização em Engenharia e Administração de Banco

Propaganda
Especialização em Engenharia e Administração de
Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE
DADOS I
José Alberto F. Rodrigues Filho
[email protected]
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird
É a primeira geração, descendente do código da Open Edition do Interbase 6.0 da
Borland, lançada em julho de 2000 sob a Interbase Public License (IPL).
“É um sistema gerenciador de banco de dados relacional (SGBDR) SQL
cliente/servidor compacto e poderoso que pode ser executado em uma diversidade
de plataformas de sistemas operacionais servidores e clientes, incluindo Windows,
Linux e diversas outras plataformas UNIX, tais como FreeBSD e Mac Os X. É um
SGBDR de capacidade industrial que possui um alto nível de compatibilidade com
os padrões SQL, ao mesmo tempo em que implementa alguns recursos poderosos
de linguagem de programação.”
Helen Borrie, 2006.
http://www.dbfreemagazine.com.br – A escolha certa.
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Visão Geral dos Recursos
http://www.firebase.com.br
•SGBD Completo (Triggers, Stored Procedures, Integridade Referencial, etc.)
•Cliente/Servidor
•Gratuíto para qualquer uso
•Código aberto
•Multi-plataforma (Darwin, FreeBSD, HPUX, Linux, Sinixz, Sparc, Solaris,
Win32, MacOS, AIX, WinCE 3.0(beta))
•Tecnologia amplamente testada
•Diversos drivers de acesso (Nativo/API, Java, OLEDB, ODBC, dbExpress,
.Net, etc.)
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Visão Geral dos Recursos
http://www.firebase.com.br
•Arquitetura Multigeracional (versioning)
•Crash Recovery praticamente instantâneo
•Suporte a domínios
•Alocação de espaço dinâmica
•Stored Procedures selecionáveis
•UDFs (Funções Definidas pelo Usuário)
•Múltiplos triggers para o mesmo evento
•Commit em 2 fases (transações em mais de um bd)
•Character Sets e collates (internacionalização)
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Limites
http://www.firebirdsql.org – atualizado em 16.Jul.2007
Item
Firebird 2.x
Maximum size of database
Practically unlimited using multiple database
files (largest known database is over 980
GB)
32 TB using multiple files
Maximum size of one database file
Multiple terabytes on most platforms; limited
by file systems (4 GB or 2 GB on some
platforms)
Same
Maximum number of database files
64,535
Same
Maximum number of tables
64,535
Same
Maximum size of one table
~32 TB
~36 GB
Piracicaba (SP)
Inverno, 2007
Firebird 1.5.x
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Limites
http://www.firebirdsql.org – atualizado em 16.Jul.2007
Item
Firebird 2.x
Firebird 1.5.x
Maximum size of external table file
2 GB
Same
Maximum number of rows per table
> 16 Billion (not been measured beyond this) ~4 Billion
NOTE :: 1 Billion is 1024³
Maximum row size
65,536 bytes (64 KB)
Maximum database page size
16 KB
Same
NOTE :: Page size (PAGE_SIZE) can be 1024, 2048, 4096, 8192 or 16384. Size 1024 is
not recommended.
Piracicaba (SP)
Inverno, 2007
Same
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Limites
http://www.firebirdsql.org – atualizado em 16.Jul.2007
Item
Maximum number of columns per table
Maximum number of indexes per table
Maximum size (total width) of index key
Maximum number of indexes per database
Firebird 2.x
Firebird 1.5.x
Depends on data types used. (Example: 16,384 INTEGER (4-byte) values per row.)
NOTE :: 8-byte ID is stored for each BLOB or ARRAY reference; size of BLOB or ARRAY
data is not counted in row size.
65,535
Same
4,096 bytes when page size is 16 KB (limited
to 1/4 of database page size)
252 bytes
IMPORTANT :: Limit decreases for character columns when character set is multi-byte;
non-binary collation further reduces limit.
4,398,046,511,104
Piracicaba (SP)
Inverno, 2007
Same
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Versões do Servidor
SuperServer: Um único processo do servidor
Firebird utiliza multiplas threads para gerenciar as
conexões. O cache das conexões é compartilhado
entre elas.
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Versões do Servidor
Classic: Cada conexão é tratada por um processo
independente do servidor. O cache de cada
conexão é independente. Exige maior quantidade
de memória RAM. Pode prover melhor
desempenho em servidores multi-processados.
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Versões do Servidor
Embedded: É o extremo mínimo dos requisitos de
escalabilidade.
Disponível
apenas
para
plataformas Windows, tem as funcionalidades de
um SuperServer compilado em conjunto com um
cliente, produzindo uma dll (fbembed.dll).
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Download e Instalação
http://www.firebirdsql.org/index.php?op=files&id=engine_201
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Configuração
Arquivo de configuração do FireBird =>> firebird.conf
Parâmetros importantes - DBFreeMagazine_012
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Tipos de Dados
CHAR / VARCHAR: Caracteres (limite 32.765 bytes) – VARCHAR não
considera os espaços à direita
DATE: Dialeto 1 = Data + Hora
Dialeto 3 = Somente data
TIMESTAMP = Data + Hora (só existe no dialeto 3)
TIME = Hora (só existe no dialeto 3)
INTEGER = Inteiros (32 bits) – faixa: -de 2.147.483.648 a
2.147.483.647
SMALLINT = Inteiro (16 bits) – faixa: 32.768 a 32.767
BIGINT = Inteiro (64 bits – Firebird 1.5)
FLOAT = Ponto flutuante (32 bits) – faixa: 1.175 x 10–38 a 3.402 x 1038
DOUBLE PRECISION = “Float duplo” (64 bits) – faixa: 2.225 x 10–308 a
1.797 x 10308
Piracicaba (SP)
Inverno, 2007
Especialização em Engenharia e Administração de Banco de Dados
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS I
Firebird – Tipos de Dados
NUMERIC/DECIMAL (p, s) = No dialeto 3, são
armazenados internamente como inteiros, podendo ocupar
de 16 até 64 bits. Exemplo: NUMERIC(10,3) ppppppp.sss
p = precision (tamanho máximo de dígitos)
s = scale (número de casas decimais)
ARRAY = Conjunto de dados do mesmo tipo – não é
possível criar arrays de blobs ou arrays
BLOB = Qualquer tipo de informação. Subtipos:
0 – Dados binários
1 – Informação textual
2 – BLR – Binary Language Representation
3 – Lista de controle de acesso
4 – Não utilizado (reservado para uso futuro)
5 – Descrição codificada dos metadados de uma tabela
6 – Descrição de uma transação entre múltiplos bancos de dados que
terminou de forma irregular
-n – Tipo definido pelo usuário
Piracicaba (SP)
Inverno, 2007
Download