O documento apresenta conceitos básicos sobre bancos de dados, incluindo sua definição como uma coleção de dados logicamente coerente armazenada em dispositivos secundários. Também define Sistemas Gerenciadores de Banco de Dados como softwares que facilitam a definição, construção e manipulação de bancos de dados. Por fim, discute modelos de dados e esquemas como formas de descrever a estrutura de um banco de dados.
2. '
&
$
%
Conceitos B´asicos
⇒ Banco de Dados
• ´E uma cole¸c˜ao de dados logicamente coerente que possui um
significado impl´ıcito cuja interpreta¸c˜ao ´e dada por uma
determinada aplica¸c˜ao;
• Representa abstratamente uma parte do mundo real, conhecida
como Mini-Mundo ou Universo de Discurso (UD), que ´e de
interesse de uma certa aplica¸c˜ao;
• Mantido em dispositivos de armazenamento secund´ario de um
sistema de computa¸c˜ao;
1
3. '
&
$
%
Conceitos B´asicos
⇒ Sistema Gerenciador de Bancos de Dados (SGBD):
Software constru´ıdo para facilitar as atividades de defini¸c˜ao,
constru¸c˜ao e manipula¸c˜ao de bancos de dados;
⇒ Sistema de Bancos de Dados: Banco de Dados + Software
que o manipula;
2
5. '
&
$
%
Abordagem de BD × Arquivos
1. Bancos de dados s˜ao autocontidos (cat´alogos);
2. Isolamento entre programas e dados;
3. Abstra¸c˜oes de Dados (modelos de dados)
4. Suporte a m´ultiplas vis˜oes
4
6. '
&
$
%
Abordagem de BD × Arquivos
Programa de
Aplicação
Programa de
Aplicação
Programa de
Aplicação
Programa de
Aplicação
???S G B D
A B C
Meta
Dados
A B
C
5
7. '
&
$
%
Caracter´ısticas Desej´aveis
1. Controle de Redundˆancia;
2. Compartilhamento de Dados;
3. Controle de Acesso aos Dados;
4. M´ultiplas Interfaces;
5. Representa¸c˜ao de associa¸c˜oes complexas;
6. Garantia de restri¸c˜oes de Integridade;
7. Recupera¸c˜ao de falhas
6
8. '
&
$
%
Modelos de Dados
⇒ Modelo de Dados : Conjunto de conceitos que podem ser
usados para descrever a estrutura de um banco de dado, tipos de
dados, relacionamentos e restri¸c˜oes. Pode tamb´em incluir opera¸c˜oes
que especificam consultas e atualiza¸c˜oes no banco de dados;
7
9. '
&
$
%
Modelos de Dados
⇒ Categorias:
• Modelos de alto n´ıvel ou conceituais;
– modelo ER;
– modelos OO;
– funcional;
• Modelos de implementa¸c˜ao;
– Relacional;
– Redes;
– Hier´arquico;
• Modelos F´ısicos;
8
10. '
&
$
%
Esquemas e Instˆancias
⇒ Esquema: Descri¸c˜ao da estrutura do banco de dados;
Especificado no momento do projeto do BD; N˜ao muda com
freq¨uˆencia;
⇒ Diagrama: Representa¸c˜ao gr´afica de um esquema;
⇒ Instˆancia ou Estado: Conjunto dos dados existente em um
BD num certo instante; Muda frequentemente; cada mudan¸ca
constitui um novo estado;
9
11. '
&
$
%
SGBD
Sistema Gerenciador de Bancos de Dados
Conjunto de programas que tratam da manipula¸c˜ao dos dados
armazenados em um BD
Exemplos: Oracle, DB2, SQL-Server, Informix.
10
12. '
&
$
%
Fun¸c˜oes dos SGBD
• Armazenamento dos dados e meta-dados
• Recupera¸c˜ao de dados armazenados de forma eficiente
• Tratamento correto e eficiente de acessos simultˆaneos aos dados
armazenados
• A garantia de satisfa¸c˜ao das restri¸c˜oes impostas sobre os dados
• Processamento e execu¸c˜ao de comandos da LDD e da LMD do
modelo de dados correspondente
• Garantia da recupera¸c˜ao contra falhas
• Suporte a gerˆencia de backups.
11
13. '
&
$
%
Arquitetura T´ıpica
• Gerente de Dados Armazenados
• Cat´alogo
• Compilador de LDD
• Processador de Execu¸c˜ao
• Processador de Consultas
• Pr´e-compilador
• Compilador de LMD
12
14. '
&
$
%
Arquitetura T´ıpica
Comandos
LDD
Comandos de
Manutenção
Consulta de
Alto Nível
Programas de
Aplicação
Pré-Compilador
Compilador de
LDD
Processador
de Consultas
Processador
de Execução
Comandos
LMD
Compilador de
LMD
Compilador da
Linguagem
Hospedeira
Consultas
Compiladas
Gerente de
Dados
Armazenados
Subsistema de Controle de
Concorrência/Segurança/Backup
Catálogo
A
B
C
E
D
Banco de
Dados
13
15. '
&
$
%
SGBDs Cliente-Servidor
???
???
?Serviço de Comunicação
Interface de Consulta
? Serviço de Comunicação
Processador de Execuçao
SGDB
BD
Rede
?
?Serviço de Comunicação
Programa de Aplicação
Serviço de Comunicação
Outras Interfaces
14