aula 01 revisão

Post on 30-Jun-2015

722 Views

Category:

Education

7 Downloads

Preview:

Click to see full reader

DESCRIPTION

Aula 01 da disciplina de Laaboratório de Banco de dados, trazendo uma pequena revisão sobre os conceitos básicos, e a modelagem Entidade - Relacioamento

TRANSCRIPT

LABORATÓRIO DE BANCO DE DADOSProf. Franklin M. Correia

E-mail:

franklin.correia@bonfim.ifbaiano.edu.br

franklinmatos@gmail.com

Apresentação

• Franklin Matos Correia• Bacharel em Ciência da Computação

Faculdade Ruy Barbosa – 2009

• Especialista em Engenharia de SoftwareFaculdade Ruy Barbosa 2013

Apresentação

• Analista de Sistemas• Vivo ( Analista de Sistemas )• Ufba ( Analista de Sistemas )• Altis – IBM (Programador web)

• Linguagens• Java - Intermediário• Php - Básico• Asp (clássico) - Básico

O que temos para hoje

• Banco de Dados (BD’s)• O que é?• Como era feito o armazenamento antes de surgirem os BD’s?• Funções básicas

• Projeto de Banco de Dados• Conceitos Básicos de MER• Exemplo• Atividade prática

Sistema de Banco de Dados• O que é um banco de dados?

• Um conjunto de informações manipuláveis, de mesma natureza, inseridas em um mesmo local, obedecendo a um padrão de armazenamento.

• O que é um banco de dados?

• Uma coleção de dados inter-relacionados, representando informações sobre um domínio específico.• Agenda telefônica?• Lista de compras?• Livro de romance?• Dicionário?

Sistema de Banco de Dados

• Banco de Dados• Conjunto de dados organizados tecnicamente, de maneira a

permitir a geração da informação, sua atualização e extração de acordo com a demanda gerencial

Sistema de Banco de Dados

• Banco de Dados• Dados

• Matéria bruta que é feita de informação. Valores fisicamente registrados no banco de dados.

• Informação• Dado que significa alguma coisa para alguém e é utilizado em algum

contexto.

Sistema de Banco de Dados

• Como era feito o armazenamento dos dados antes?

• Uso de arquivos sequenciais e planilhas• Os dados eram inseridos de forma incremental, usando o conceito de

filas.

• Problema com armazenamento em arquivos sequenciais?• Para se ler um arquivo que foi inserido por ultimo era necessário

percorrer todo o arquivo linha a linha.• Queda de desempenho – arquivos grandes• Desorganização dos dados• Analista “dono” do sistema• Falta de padronização da informação (tamanho de campos....)• Redundância e inconsistência dos dados• Falta de segurança

Sistema de Banco de Dados

• Banco de dados informatizado

• Rapidez no acesso• Integração e compartilhamento• Integridade: regras para armazenamento• padronização

Sistema de Banco de Dados

Banco de dados informatizado

• Abordagem de banco de dados• Redução de redundância ou redundância controlada• Maior controle sobre a integridade dos dados• Maior controle sobre a segurança dos dados• Transparência dos dados quanto às aplicações• Desenvolvimento mais produtivo e flexível

Sistema de Banco de Dados

• Sistema Gerenciador de Banco de Dados (SGBD)

• Localiza-se entre o banco de dados físico e os usuários do sistema.

• O SGBD é composto por um conjunto de arquivos inter-relacionados e um conjunto de programas que permitem aos usuários acessar e modificar esses arquivos

Sistema de Banco de Dados

Sistema de Banco de Dados• Funções Básicas de um SGBG

• Integridade semântica• Segurança• Concorrência• Independência

• Integridade semântica

• Garantia de dados corretos com relação ao domínio da aplicação• Exemplo: estados válidos para os dados:

• Sexo não pode ser preenchido com A ou B e sim com Masculino ou Feminino• Relacionamento válidos entre dados de tabelas:

• Turma N : 1 Disciplina (apenas professores especialistas lecionam as disciplinas de TIC)

• Especificação de regras• Testes, ações

Funções básicas de um SGBD

• Segurança dos dados• Evitar violação de consistência dos dados• Segurança de acesso (usuários e aplicações)

• Matrizes de autorização• Visões

• Segurança contra falha (Recovery)• Monitoração de transações

• Transação é um conjunto de operações realizadas no BD• Princípio do “tudo ou nada”.

• Categoria de falhas• Transação, sistema e meio de armazenamento

• Manutenção de histórico de atualizações (log’s) e backup do BD

Funções básicas de um SGBD

Exemplo de registro de histórico

Funções básicas de um SGBD• Concorrência

• Evitar conflito de acesso simultâneo a dados por transações (scheduler)

• Principais técnicas• Bloqueio (lock) e timestamp

• Independência• Transparência da organização dos dados

• O usuário não sabe de que forma os dados estão sendo armazenados

• Níveis de independência• Independência Física

• Transparência de organização física dos dados• Exemplo: organização dos arquivos e indexação

• Independência lógica• Transparência do esquema lógico do BD• Exemplo: visões (vários esquemas externos)

Funções básicas de um SGBD

Projeto de Banco de Banco de DadosAnálise de Requisitos

Projeto Conceitual

Projeto lógico

Projeto Físico

Escopo

Requisitos BD

Esquema ER

Esquema relacional

Esquema relacional + índices

Conceitos Básicos de ER• Entidade (tabela):

• Objeto com existência de mundo real• Exemplos:

• Aluno, Professor, Disciplina, Turma, Sala,....

• Atributo ( coluna / campo)• Descreve uma propriedade de uma entidade ou relacionamento• Possui um conjunto de valores• Exemplo:

• Professor (nome, telefone, turno, curso, disciplina)

• Classificação dos atributos

• Simples ou compostos• Monovalorados ou multivalorados• Não nulos• Derivados

• Exemplos:• Matricula: atributo simples, monovalorado e não nulo de aluno• Horário: atributo composto, multivalorado e não nulo de turma• Semestre: atributo simples, monovalorado e não nulo de coordenação

Conceitos Básicos de ER

• Tabelas : • Telefones, compromissos

• Campos:• (Telefones) : nome, telefone, endereço• (Compromissos) : data, hora, compromisso

• Registo:• Cada telefone e cada compromisso anotado

Exemplo – Banco Agenda de Contatos

Id Nome Endereço Telefone

1 João Antônio Av. Presidente Vargas nº 350

(74)9980-5145

2 Maria Joaquina Rua João das botas nº 101

(74)9130-2221

Exemplo – Banco Agenda de Contatos

Id Nome Endereço Telefone

1 João Antônio Av. Presidente Vargas nº 350

(74)9980-5145

2 Maria Joaquina Rua João das botas nº 101

(74)9130-2221

Exemplo – Banco Agenda de Contatos

Tupla / Registro

Id Nome Endereço Telefone

1 João Antônio Av. Presidente Vargas nº 350

(74)9980-5145

2 Maria Joaquina Rua João das botas nº 101

(74)9130-2221

Exemplo – Banco Agenda de Contatos

Campo / Atributo / Coluna

Conceitos Básicos de ER

• Chave primária (PK)

• Campo que identifica o registro na tabela• Nunca deve ficar em branco• Geralmente é um campo que se auto- incrementa• Seu valor é único na tabela

Id Nome Endereço Telefone

1 João Antônio Av. Presidente Vargas nº 350

(74)9980-5145

2 Maria Joaquina Rua João das botas nº 101

(74)9130-2221

Id é a Pk da tabela de telefones

Conceitos Básicos de ER

Exemplo de Chave Primária

Conceitos Básicos de ER

• Tipos de Chave primária (PK)

• PK simples: apenas um único campo (o mais comum)• PK composta: 2 ou mais campos

• Exemplo: Agencia e Conta Bancária

• Chave única• Assim como a chave primária ela não pode se repetir porém pode

estar em branco

• Chave Estrangeira• Chave primária de outra tabela

em um relacionamento.

Conceitos Básicos de ER

• Esquema conceitual ER:

• Esquema de entidades

• Esquema de relacionamentos

• Definição do domínio

Conceitos Básicos de ER

• Esquema de Entidades

• Descrição de um conjunto de entidades do mesmo tipo, incluindo• O nome para o conjunto• A lista de atributos

Conceitos Básicos de ER

• Esquema de Relacionamentos

• Descrição de um conjunto de relacionamentos do mesmo tipo, incluindo• O nome para o conjunto• A lista de esquema de entidades e seus papeis (se não for definido

um papel assume-se o nome do conjunto)• A lista de atributos

Conceitos Básicos de ER

• Definição do domínio

• Definição do domínio a ser usada ao longo da definição do esquema ER

Conceitos Básicos de ER

Modelo Entidade - Relacionamento

Exemplo de Modelo Conceitual ER

• Estados do BD• Associa a cada esquema de entidades E um conjunto de

entidades s(E).

• Associa a cada conjunto de relacionamentos R entre E1,... En um subconjunto s(R) do produto cartesiano s(E1) x...x s(En)

• Associa cada atributo A de um esquema de entidades ou de relacionamentos S uma função S(A) de s(E) em D

Conceitos Básicos de ER

Modelo Entidade - Relacionamento

Exemplo de Estado de um Banco de Dados

• Notação• Seja

• E um esquema de entidades• K=(K1,...,Km) uma lista de atributos de E• Di o domínio de Ki• s um estado do BD• r uma entidade (ou relacionamento) em s(E)

• Então r[K] = (s(K1),...,s(Km)) denota a tupla de valores dos atributos em K

• (semelhantemente para um esquema de relacionamento)

Conceitos Básicos de ER

Conceitos Básicos de ER

Exemplo

Resolução

top related