31
Sistema de Banco de Dados UNIDADE 1 Introdução aos Sistemas de Bancos de Dados Professor: Armando Hage

Sistema de Banco de Dados - Armando Hage · Características fundamentais de SGBD ... Requisitos do usuário Projeto Lógico Esquema conceitual Projeto físico Esquema lógico Esquema

Embed Size (px)

Citation preview

Sistema de Banco de Dados

UNIDADE 1Introdução aos Sistemas de Bancos de

DadosProfessor: Armando Hage

Resumo da Unidade Banco de dados

BD SGBD

Objetivo Visão Geral Abstração Modelo de Dados

Entidade Relaciomento(ER) Orientado a Objetos Relacional Banco de Dados hierárquico Físicos

Conclusão

Banco de dados

Banco de dados(BD) Coleção de dados Coleção logicamente coerente de dados com

algum significado inerente. Um BD está sempre associado aplicações e

usuários que possuem interesse nele. Sistema de Gerência de Banco de Dados(SGBD)

Conjunto de programas que permite a criação e a manutenção do BD.

Sistema de banco de dados = BD + SBGD

Objetivo de um Banco de Dados

Um banco de dados é qualquer arquivo que pode ser acessado por uma Um banco de dados é qualquer arquivo que pode ser acessado por uma chave, podendo ser acessado de diferentes maneiras.chave, podendo ser acessado de diferentes maneiras.

Sistema de Repositório

GestorGestor

Sistema de Sistema de Gerencia de Gerencia de

Banco de DadosBanco de Dados

Sistema de Sistema de Gerencia de Gerencia de

Banco de DadosBanco de Dados

Sistemas que utilizamSistemas que utilizamas tabelasas tabelas

Sistema de AplicaçãoSistema de Aplicação

Visão GeralVisão GeralPlanejamento de um Banco de DadosPlanejamento de um Banco de Dados

Primeiro passo é identificar para que vai servir o banco de dados, e quais informações devem ser monitoradas.

Perguntas relevantes ao se criar um banco de dados: Quais informações eu quero obter com

meu banco de dados? Sobre quais áreas de assunto distintas

eu tenho que armazenar informações? Como essas áreas de assunto

relacionam-se mutuamente? Quais informações eu preciso

armazenar sobre cada assunto?

Abstração de Dados Recuperação de dados e informações é pré-

requisito básico para fazer um de um sistema. Eficiência x Bom Projeto Níveis de Abstração

Interno(Físico) - Preocupa-se como os dados serão fisicamente armazenados.(Date,2000,p.28)

Conceitual(Lógico) – Descreve quais os dados estão armazenados no banco de dados os relacionamentos entre eles. Linguagem de definição dos dados(DDL)- Define os

arquivos a campos que irão compor o banco de dados. Linguagem de manipulação dos dados(DML) – Define

comandos de manipulação e operação dos dados.

Abordagem SGBD vs Processamento de Arquivos Tradicional

Processamento de arquivos tradicional é suportado por um sistema operacional convencional.

Registros são guardados em vários arquivos, que são acessados por programas que compreendem estes arquivos. Exemplo: Código Pascal para definir registros:

type cliente = record nome_cliente:String ; seguro_social:string; cidade_cliente:string;end;

.....var c:array[1..100] of cliente;

.... Desvantagem do processamento de arquivos tradicional

Redundância, Isolamento de dados é dificultado, Anomalias de acesso, concorrente, Problemas de segurança

Sistema isolados de Dados

Problema:redundância de dados Tipos de redundâncias

Controlada: realizada automaticamente por um programa Não controlada: o usuário gerencia a redundância

Como evitar erros no armazenamento de informações

Banco de Dados

Conjunto de arquivos integrados que atendem um conjunto

de sistemas

Conseqüências do uso de Banco de dados

Compartilhamento de dados tem reflexo na estrutura do

software

Estrutura interna passa a ser mais complexa

Devem atender as necessidades de diferentes sistemas

Solução

Usar um sistema de gerencia de banco de dados(SGBD)

Abordagem SGBD vs Processamento de Arquivos Tradicional

Características fundamentais de SGBD Contem um BD com sua definição completa. Estas definições estão armazenadas no catálogocatálogo que

contém informações sobre cada arquivo. Estas informações são chamadas de Meta-Dados. No processamento tradicional, a definição dos

dados faz parte do programa de aplicação de BD. O SGBD provê uma representação conceitual dos

dados sem detalhes de armazenamento.

Modelo de dados Modelo de(banco de) dados

Descrição formal dos tipos de dados que estão

armazenados em um banco de dados.

Exemplo: indústria

São armazenadas informações sobre produtos

Cada produto deve ter código, preço e descrição

O modelo de dados não informa quais os produtos que

estão armazenados no banco de dados.

Esquema de Banco de dados Um modelo de dados é construído utilizando uma linguagem

de modelagem de dados:

Textual

Gráfica

Cada apresentação do modelo de dados recebe a

denominação de esquema de banco de dados.

Modelos de dadosNíveis de abstração

Modelo conceitual

Registra

Estruturas de dados

Não registra

Como os dados serão

armazenados no SGBD

Modelo Conceitual Técnica mais conhecida de modelo conceitual é a

abordagem entidade relacionamento(ER)

O modelo conceitual é representado por diagrama de

entidade relacionamento(DER)

Nível lógico Nível de abstração

visto pelo SGBD

Depende do tipo em

particular de SGBD que

está sendo usado.

Modelo Físico

Contém detalhes de armazenamento interno

de informações.

Não tem influencia sobre a programação de

aplicações sobre o SGBD

Projeto ConceitualProjeto Conceitual

Requisitos do usuárioRequisitos do usuário

Projeto LógicoProjeto Lógico

Esquema conceitualEsquema conceitual

Projeto físicoProjeto físico

Esquema lógicoEsquema lógico

Esquema físicoEsquema físico

Estrutura de um sistema de Banco de Dados

Sistema de BDSistema de BD

Programa de Aplicação/Consultas

Software para processar consultas

Software para acessar dados armazenados

Meta-Dados Banco de Dados

SGBDSGBD

UsuáriosUsuários

Modelo de Dados Conjunto de conceitos que podem ser usados

para descrever o BD. Modelos Conceituais - São conceitos próximos aos

percebidos por muitos usuários. Ex.: Entidade-Relacionamento(ER), modelo OO, redes

semânticas Modelos de Implementação - Podem ser entendidos

pelos usuários e não estão muito distantes da maneira como os dados são organizados fisicamente. Ex.:Modelo relacional, modelo rede

Modelos Físicos(baixo nível) – Descreve como os dados são armazenados representando informação como formato de registros, ordenação de registros, métodos de acesso.

Classificação de SGBDsClassificação de SGBDs

• Modelo Relacional– Representa o banco de dados como uma Representa o banco de dados como uma

coleção de tabelas.coleção de tabelas.

Nome MunicípioSanta Casa 123Hospital das Clínicas 345

Código Município123 Rio de Janeiro345 São Paulo 647647POAPOABBJoãoJoão

647647POAPOAAAMariaMaria

556556POAPOABBJoãoJoão900900POAPOAAAMariaMariaContaContaCidadeCidadeRuaRuaNomeNome

1000010000566566

500500647647

5555900900saldosaldoNúmeroNúmero

Classificação de SGBDsClassificação de SGBDs

Exemplo de relação entre bancos de dadosExemplo de relação entre bancos de dados

Classificação de SGBDsClassificação de SGBDs Modelo Hierárquico

Representa o BD como um conjunto de árvores .

RaizRaiz

MariaMaria AA POAPOA

647647 500500 900900 5555

JoãoJoão BB POAPOA

556556 1000010000 900900 5555

Classificação de SGBDsClassificação de SGBDs Modelo de Redes

Forma ampliada da estrutura hierárquica. Representa o BD como um grafo.

Raiz

MariaMaria AA POAPOA

JoãoJoão BB POAPOA

900900 5555

556556 1000010000

647647 500500

Modelo Entidade Relacionamento(ER) Descreve dados como

entidades,relacionamentos e atributos Usado como modelo conceitual Não modela dados Exemplo de Diagrama E/R Quanto mais organizado estiverem as

informações no BD, mas fácil será a “conversa” com o Gerenciador de Banco de Dados

Modelo Entidade Relacionamento(ER)

Objeto do mundo real: um ser, um fato, coisa, organismo social, etc.

Entidade

Número de ocorrências possíveis de cada entidade envolvida em um relacionamento.

Cardinalidade1-1, 1-N, N-N

Associação existente entre elementos de entidades.

Relacionamento

Informação que se deseja guardar sobre um objeto.

Atributo

DetalhamentoElementosImagens

Tipos de Relacionamentos entre tabelas

1:1 : Um registro na Tabela A não pode ter mais de um único correspondente na Tabela B, e vice-versa.

1:N: Um registro na Tabela A pode ter vários correspondentes na Tabela B.

N:N :Neste tipo de relação é criada uma nova tabela que expresse a intersecção de AB, contendo as chaves primárias de ambas as tabelas.Usada para manter histórico de operações.

Tipos de Relacionamentos entre tabelas

Exemplo de tabelas com chaves primárias e estrangeiras

Criando um Banco de Dados

Conclusão Pode-se implementar um sistema completo

contendo todas as regras estabelecidas para criação de tabelas com Access e o OpenOffice

É possível integrar os dados armazenados a outros sistemas de aplicações por diferentes formas de conexão

As regras de criação de tabelas são gerais e podem ser adaptadas para todos os SGBDs relacionais.