Banco de Dados Introdução

Maria Salete Marcon Gomes Vaz

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

1

Sistema Gerenciador de Banco de Dados
Coleção de Dados Inter-relacionados Conjunto de Programas para acessar os dados SGBD contêm informações sobre um empresa em particular SGBD provê um ambiente tanto conveniente quanto eficiente para tratamento das informações do banco de dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 2

Visão Geral de SGBD
Mundo Real Mini-mundo Organiza idéias Define

Descreve Estado
Atualiza Valores

Descreve

Observa

Modelo Conceitual

BD
Modelo Lógico Cria Administrador de Banco de Dados Modelo Físico
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 3

Visão Geral de SGBD
Gerenciamento de Dados
Envolve definição de estruturas e mecanismos para manipulá-las

Um sistema Gerenciador de Banco de dados consiste de:
Coleção de programas que permite ao usuário criar e manter um Banco de Dados Aplicação de BD - programa que permite recuperar, ver e atualizar as informações armazenadas pelo SGBD

Consiste em uma coleção de dados inter­relacionados e de um conjunto de programas para acessá­los
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 4

Visão Geral de SGBD
Coleção de Dados Contém Informações sobre um empreendimento particular

Banco de Dados

Conjunto de Programas para:
Descrever Armazenar Manipular Interrogar e Tratar
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 5

Visão Geral de SGBD
Abstração de Dados
Simplifica a Interação do Usuário com o Sistema

Visão 1

Visão 2

...

Visão n

Visão Conceitual

Visão de Armazenamento
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 6

Visão Geral de SGBD
Arquitetura ANSI/SPARC
Esquema Externo 1 Esquema Externo 1

...

Esquema Externo 1

Nível
Externo

Esquema Conceitual

Nível
Conceitual

Esquema Físico

Nível
Interno

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

7

Visão Geral de SGBD
Níveis de Abstração
 

Nível Físico – descreve como um registro é armazenado Nível Lógico – descreve os dados armazenados no banco de dados e os relacionamento entre os dados

Nível de Visão – programas de aplicação que escondem detalhes dos tipos de dados

Visões podem esconder informação por questões de segurança

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

8

Visão Geral de SGBD
Objetivo dos SGBD
Prover um ambiente que seja conveniente e eficiente para recuperar e armazenar informações de Bancos de Dados Eliminar ou Reduzir Redundância e Inconsistência de Dados
Controle de redundância - garantindo consistência

Dificuldade no Acesso aos Dados Isolamento dos Dados
Permitir o compartilhamento dos dados

Anomalias de Acesso Concorrente Problemas de Segurança
Fornecer Backup e Recuperação

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

9

Visão Geral de SGBD
Funções desempenhadas
Integridade Recuperação, Concorrência, Segurança

Alguns Conceitos
Transação: execução de um programa que acessa ou modifica o conteúdo de um BD Propriedades Desejáveis das Transações: Atomicidade: ou a transação foi ou não foi executada Consistência: execução de uma transação deve tornar o BD em um estado consistente
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 10

Visão Geral de SGBD
Modelo de Dados
Uma Coleção de Ferramentas Conceituais para Descrição de Dados, Relacionamentos entre eles, a Semântica dos Dados e Restrições de Consistência Modelos Lógicos Baseados em Registros Hierárquico Em Rede Relacional
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 11

Baseados em Objetos EntidadeRelacionamento (E-R) Semânticos Orientados a Objetos

Visão Geral de SGBD
Instâncias
Coleção de Informações armazenadas no banco de dados em um determinado instante

Esquema
Projeto geral do BD

Independência de Dados
Habilidade de modificar a definição de um esquema em um nível sem afetar a definição do esquema em um nível mais alto
Independência Física de Dados Independência Lógica de Dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 12

Visão Geral de SGBD
Linguagens
Linguagem de Definição de Dados - DDL Especifica o Esquema do BD Linguagem de Manipulação de Dados - DML Manipula os dados organizados por um modelo de dados apropriado Linguagem de Consulta - QL Porção da linguagem de manipulação que envolve a recuperação de informações Linguagem de 4a Geração Combina estruturas de controle de Linguagens de Programação com estruturas para manipulação de elementos de um Banco de Dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 13

Evolução dos SGBDs
Com Consulta 2 4

Sem Consulta

1

3

Dados Simples

Dados Complexos
14

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

Evolução dos SGBDs
Gerenciador de Arquivos
Com Consulta

2

4

Bom desempenho Inconsistência Redundância e Replicação Sem Gerenciador Consulta 3 Segurança de arquivos Integridade Isolamento dos dados Dados Simples Dados Complexos Dificuldade de acesso aos dados Anomalias no acesso concorrente Utilização de linguagens de programação como COBOL e PL1
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 15

Evolução dos SGBDs
SGBD Relacionais
Com Consulta

SGBD Relacionais

4

Pobre semanticamente Linguagem de consulta Sem Gerenciador Consulta Segurança de arquivos Ferramentas de interfaces Aplicação Comercial Dados Simples Dados representados segundo tabelas Modelo formal apoiado na teoria dos conjuntos Tecnologia relacional Exemplos: DB2, INFORMIX, SYBASE, INGRES
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

3
Dados Complexos

16

Evolução dos SGBDs
SGBD Orientados a Objetos
Com Consulta

Rico semanticamente Abstração Novas aplicações Sem Gerenciador Consulta Multimídia de arquivos hipertexto Herança e reusabilidade Dados Simples Grande integração com uma linguagem de programação Melhor ligação analista x usuário Exemplos: ObjectStore, Orion, Ontos, O2 e Iris
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

SGBD Relacional

4

SGBD Orientado a Objetos
Dados Complexos

17

Evolução dos SGBDs
SGBD Objeto­Relacional Objetos Complexos
Otimizador de consultas Extensão de tipo básico em Com Contexto SQL Consulta Herança em Contexto SQL Linguagem de consulta estendida à objetos complexos (SQL3) Suporte para regras Sem Exemplos: DB2/6000 C/S, ILLUSTRA, ORACLE
Consulta

Linguagem de Consulta

SGBD Relacional

SGBD Objeto­ Relacional

Gerenciador de arquivos
Dados Simples

SGBD Orientado a Objetos
Dados Complexos
18

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

Evolução dos SGBDs
Classificação
Fim dos anos 60 Primeira Geração Hierárquico Rede Fim dos anos 70 Segunda Geração Relacional A partir do meio da década de 80 Terceira Geração Semânticos Relacionais Estendidos Orientados a Objetos Banco de Dados Convencionais Banco de Dados Não Convencionais
19

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

Modelo de Dados
Dados
Fatos registrados de fenômenos sobre os quais obtemos informações do mundo real

Informações
Conhecimento que pode ser inferido dos dados

Registro de dados
Um meio de comunicação
Figura, linguagem

Um meio de armazenamento
Pedra, papel, bits

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

20

Modelos de Dados
Uma coleção de ferramentas para descrever
Dados e Relacionamentos de dados  Semântica de dados  Restrições de consistência dos dados

Modelos lógicos baseados em objetos
Modelo Entidade/Relacionamento  Modelo Orientado a Objetos  Modelo Semântico  Modelo Funcional

Modelos Lógicos baseados em registros
Modelo Relacional  Modelo de Rede  Modelo Hierárquico

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

21

Modelo de Dados
Transformar aspectos do mundo real em um modelo de dados formal Principais modelos de dados
Genéricos: Entidade/Relacionamento (E/R) Específicos: Relacional, Orientados a Objetos

Componentes de um Modelo de dados
Uma coleção de tipos de objetos
Blocos básicos de construção de modelos (estruturas) Exemplos: relações, domínio (modelo relacional)

Uma coleção de operadores
Meio de manipular e atualizar os tipos de objetos Exemplo: Álgebra relacional

Uma coleção de regras de integridade
Restringem o conjunto de estados válidos dos tipos de objetos Exemplo: valores de chave primária devem ser únicos e não nulos
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 22

Modelo de Dados
Estruturas
Representam atributos cujos valores são interpretações de objetos do mundo real e suas propriedades

Inteiro

Domínio

Idade

Quantidade Atributos

Número de veículos

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

23

Modelo de Dados
Operações
Especificam uma ação - O que é para ser feito
acessar Inserir Remover Atualizar

Transformam um estado de Banco de dados em outro estado

Preservando Propriedades do Esquema do BD e do Modelo de Dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 24

Modelo de Dados
Restrições
Razões Semânticas
Permitem que os esquemas reflitam mais precisamente as situações do mundo real

De integridade
Permitem que o SGBD restrinjam os estados possíveis do BD àqueles que respondem às restrições

Tipos básicos
Inerentes
Parte integral das estruturas do modelo Exemplo: conjunto e relações (ausência de duplicidade e ordem)

Explícitas
Estática: expressam regras para determinar estados válidos do BD Dinâmicas: especificam que transições de estados são permitidos (dirigidas a operações)

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

25

Modelo de Dados
Ciclo de Desenvolvimento de Sistemas de Banco de Dados
Investigação dos Dados Modelagem dos Dados Projeto Implementação Monitoramento e Manutenção
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 26

Modelo Entidade/Relacionamento
Exemplo
CHEFIA TRABALH A

chefe subordinado 1 N 1 N

codd datai 1

fone nomd

N code

EMPREGADO 1
nome POSSU I nomedp

1
GERENCIA

DEPARTAMENTO 1

CONTROLA datan horas codp
DESENVO E

N DEPENDENTE
LV

nomp N

M

PROJETO

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

27

Modelo Relacional
Exemplo
EMPREGADO(code,nome,codd,codc) DEPARTAMENTO(codd,nomd,code,datai) FONE_DEPARTAMENTO(code,fone) PROJETO(codp,nomp,codd) DESENVOLVE(code,codp,horas) DEPENDENTE(code,nomedp,datan)

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

28

Linguagem de Definição de Dados – DDL
Especificação da Notação para definição do esquema de Banco de Dados Compilador DDL gera um conjunto de tabelas armazenadas em um dicionário de dados Dicionário de dados contém metadados – Dados que descrevem dados Armazenamento de dados e linguagem de definição – tipo especial da DDL no qual as estruturas de armazenamento e os métodos de acesso usados pelo SGBD são especificados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

29

Linguagem de Manipulação de Dados – DML
Linguagem para acesso e manipulação de dados organizados por um modelo de dados apropriado Duas classes de linguagem Procedural – usuário especifica quais dados são requeridos e como recuperar esses dados Não Procedural – usuário especifica quais dados são requeridos sem especificar como recuperar esses dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

30

Gerenciamento de Transações
Uma transação é uma coleção de operações que realiza uma função lógica em uma aplicação de banco de dados Componente de gerenciamento de transação – assegura que o banco de dados fica consistente, resolvendo falhas do sistema e falhas de transações Gerenciador de Controle de Concorrência – controla a interação entre transações concorrentes para assegurar a consistência do banco de dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

31

Gerenciamento de Armazenamento
O gerenciador de armazenamento é um módulo do programa que provê uma interface entre os dados de baixo nível armazenados no BD e os programas de aplicação e consultas submetidas para o sistema O gerenciador de armazenamento é responsável pelas seguintes tarefas: Interação com o gerenciador de arquivos Armazenamento, recuperação e atualização eficiente dos dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

32

Administrador de Banco de Dados - DBA
Coordena todas as atividades do SGBD Tem um entendimento ótimo das necessidades e recursos de informações da empresa Funções de um DBA Definir esquemas Definir estrutura de armazenamento e métodos de acesso Modificar esquemas e organização física Fornecer autorização de acesso ao sistema Especificar restrições de integridade Monitorar o desempenho e responder a trocas em requisitos
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 33

Usuários do Banco de Dados
Usuários são diferenciados de como eles interagem com o BD Programadores de Aplicação – interagem com o sistema através de chamadas da DML Usuários sofisticados – formam requisitos na linguagem de consulta do BD Usuários especializados – escrevem aplicações de banco de dados especializadas que não são tratadas em um ambiente de processamento de dados tradicional Usuários navegantes – invocam um dos programas de aplicação que tem sido escrito previamente
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 34

Visão Geral de SGBD
Usuários Interface dos Aplicativos Programas de Aplicações em Código Objeto Programador Programa de Aplicação Pré-Compilador DML Componente de Execução de Consulta Gerenciador de Buffer Índices Gerenciador de Arquivos Arquivos de Dados Especialistas Consultas

Administrador de BD Esquema de Banco de Dados Interpretador DDL

Compilador DML

Gerenciador de Transações

Dicionário de Dados Dados Estatísticos
35

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

Exercícios
1. Quais são as quatro principais diferenças entre um sistema de processamento de arquivos e um SGBD? 2. Quais as vantagens e desvantagens de um SGBD? 3. Explique a diferença entre independência de dados lógica e física? 4. Liste cinco responsabilidades de gerenciador de banco de dados. Para cada responsabilidade, explique os problemas que poderiam ser originados se esta responsabilidade fosse descartada. 5. Quais as principais funções do administrador de banco de dados (DBA)? 6. Relacione os seis principais passos quem você seguiria para definir os banco de dados de uma empresa em particular.

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

36

Bibliografia Básica
Livro Texto
Sistema de Banco de Dados. A. Silberschatz; H. F. Korth; S. Sudarschan. Makron Books, Terceira Edição, 2006.

Livros Auxiliares
Fundamentos de Bancos de Dados. W. P. Alves. Editora Érica, 2004. Projeto de Banco de Dados – Uma visão pratica. Felipe Machado e Maurício Abreu. Editora Érica, 9a. Edição, 1996. Implementação de Sistemas de Banco de Dados. H. Garcia-Molina, J. D. Ullman e J. Widom. Editora Campus, 2001. Fundamentos de Banco de dados – modelagem, projeto e linguagem SQL. C. C. Guimarães. Editora Unicamp, 2003. Introdução a Sistemas de Bancos de Dados. C. J. Date. Tradução da 8a. Edição Americana. Editora Campus, 2003.

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz

37

Sign up to vote on this title
UsefulNot useful