A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas de Banco de Dados Extraído do Material do Profº Marcos André Gonçalves.

Apresentações semelhantes


Apresentação em tema: "Sistemas de Banco de Dados Extraído do Material do Profº Marcos André Gonçalves."— Transcrição da apresentação:

1 Sistemas de Banco de Dados Extraído do Material do Profº Marcos André Gonçalves

2 Introdução

3 O que é um banco de dados?

4 Definições Preliminares [Chu, 1985] – Um banco de dados é um conjunto de arquivos relacionados entre si [Date, 2000] – Um banco de dados é uma coleção de dados operacionais armazenados usados pelas aplicações de uma determinada organização

5 Outra Definição de Banco de Dados [Elmasri & Navathe, 2000] – Um banco de dados é uma coleção de dados relacionados Representando algum aspecto do mundo real (mini- mundo ou universo de discurso) Logicamente coerente, com algum significado Projetado, construído e gerado (povoado) para uma aplicação específica

6 Sistema de Gerência de Banco de Dados Um sistema de gerência de banco de dados (SGBD) é um conjunto de programas que permite a criar e manter um banco de dados Um banco de dados juntamente com o SGBD que o gerência constitui um sistema de banco de dados

7 Consultas/Programas SGBD Banco de Dados Usuários/Programadores Catálogo (Meta-Dados) Sistema de Banco de Dados

8 Exemplo de um Banco de Dados Mini-mundo: parte de uma universidade Algumas entidades: – Alunos – Disciplinas – Departamentos Alguns relacionamentos: – Disciplinas são oferecidas por Departamentos – Alunos estão matriculados em Disciplinas

9 Exemplo de um Banco de Dados

10

11 Características da Abordagem de BD Auto-descrição dos dados Isolamento entre programas e dados: abstração de dados Suporte a múltiplas visões dos dados Compartilhamento de dados e processa- mento de transações concorrentes

12 Usuários em um Ambiente de BD Administradores de banco de dados Projetistas de banco de dados Analistas de sistema e programadores Usuários finais: – Usuários casuais – Usuários leigos – Usuários especializados

13 Vantagens da Utilização de um SGBD Controle de redundância dos dados Controle de acesso (segurança) Armazenamento persistente dos dados Existência de múltiplas interfaces para os usuários Representação de relacionamentos complexos entre os dados Manutenção de restrições de integridade Recuperação de falhas

14 Implicações da Abordagem de BD Adoção/imposição de padrões Redução do tempo de desenvolvimento das aplicações Flexibilidade Atualidade da informação disponível Economia de escala

15 Quando não Utilizar um SGBD Aplicações simples e bem definidas onde não se espera mudanças Aplicações de tempo-real Aplicações onde não é necessário acesso multi-usuário Motivos: – Investimento inicial alto – Generalidade na definição e manipulação dos dados – Custo adicional para prover outras facilidades funcionais (manutenção de segurança, controle de concorrência, recuperação de falhas, etc.)

16 Modelo de Dados, Esquema e Instância Modelo de dados: Conjunto de conceitos usados para descrever a estrutura de um banco de dados – Abstração de dados – Estrutura = tipos de dados + relacionamentos + restrições (+operações ) Esquema: Descrição (textual ou gráfica) da estrutura de um banco de dados de acordo com um determinado modelo de dados Instância: Conjunto de dados armazenados em um banco de dados em um determinado instante de tempo

17 Modelo de Dados, Esquema e Instância Esquema do banco de dados de exemplo

18 Modelo de Dados, Esquema e Instância Instância do banco de dados de exemplo

19 Relação entre Modelo de Dados, Esquema e Instância Modelo de Dados Esquema Instância Regras para estruturação dos dados Regras para verificação das instâncias

20 Modelo de Dados, Esquema e Instância Estado do Banco – Dados do banco em qualquer ponto do tempo – Inicialmente vazio – Muda freqüentemente – Validade parcialmente guarantida pelo SGBD Esquema do Banco – Armazenado no catálogo – Mudanças muito menos freqüentes

21 Tipos de Modelo de Dados Modelos conceituais – Utilizados para se descrever a estrutura de um banco de dados de uma forma mais próxima da percepção dos usuários (independente de aspectos de implementação) – Ex. Conceitos: entidades, atributos, relacionamentos – Exemplos: Modelo entidade-relacionamento (ER) Modelo funcional Modelo orientado a objetos (OO)

22 Tipos de Modelo de Dados Modelos representacionais (lógicos) – Utilizados para se descrever a estrutura de um banco de dados da forma como será manipulado através de SGBD (mais dependente das estruturas físicas de armazenamento de dados) – Exemplos: Modelo relacional Modelo de rede (CODASYL) Modelo hierárquico

23 Tipos de Modelo de Dados Modelos físicos – Utilizados para descrever como os dados são fisicamente armazenados

24 Linguagens Linguagem de definição de dados (LDD) – Usada para definir esquemas Linguagem de manipulação de dados (LMD) – Recuperação, inserção, remoção, modificação do BD Linguagem de consulta – LMD de alto nivel usada em modo stand-alone Exemplo: SQL

25 Utilitários Carregamento Backup – E.g. dumps do banco de dados (Re-)Organização de arquivos Monitoramento da performance

26 Classificação dos SGBDs Quanto ao modelo de dados adotado: – Relacionais – De rede – Hierárquicos – Orientados a objetos – Objeto-relacionais Quanto ao número de usuários suportados: – Mono-usuários – Multi-usuários Quanto à localização dos dados: – Centralizados – Distribuídos

27 Exemplo de um BD Relacional NumEmpNomeEmpSalárioDept 032J Silva M Reis C Melo R Silva R Pinto V Simão J Neves64028 NumDeptNomeDeptRamal 21Pessoal142 25Financeiro143 28Técnico144 Empregado Departamento

28 Exemplo de um BD de Rede 21Pessoal142 25Financeiro143 28Técnico J Silva R Pinto V Simão J Neves R Silva C Melo M Reis400 Departamento Empregado

29 Exemplo de um BD Hierárquico 21Pessoal142 25Financeiro14328Técnico J Silva R Pinto V Simão J Neves R Silva C Melo M Reis400 Departamento Empregado

30 Modelo Entidade-Relacionamento

31 Processo de Projeto de Bancos de Dados Mini-Mundo Análise de Requisitos Requisitos do BD Projeto Conceitual Esquema Conceitual (em um modelo de dados de alto nível) Projeto Lógico Esquema Lógico (em um modelo de dados lógico) Projeto Físico Esquema Físico (para um SGBD específico) Requisitos Funcionais Análise Funcional Especificação das Transações (em alto nível) Projeto das Aplicações Implementação Programas Independente de SGBD Específico para um SGBD

32 Aplicação exemplo Banco de Dados de uma companhia – Organizada em departamentos que têm um nome e um número únicos e um empregado que gerencia o departamento. A data de quando o empregado começou a gerenciar o departamento deve ser registrada. Um departamento pode ter varias localizações – Um departamento controla um número de projetos, cada qual com um nome e número únicos e uma única localização

33 Aplicação exemplo Banco de Dados de uma companhia – Nós armazenamos para cada empregado seu nome, identidade, endereço, salário, sexo, e data de nascimento. Um empregado é assinalado a um departamento mas pode trabalhar em diversos projetos, os quais não são necessariamente controlados pelo mesmo departamento. Nos registramos o número de horas por semana que o empregado trabalha em cada projeto e o supervisor direto de cada empregado – Nós mantemos registro para cada empregado, do numero de dependentes (para seguro) e para cada dependente o primeiro nome, sexo, data de nascimento e relacionamento com o empregado.

34 Esquema conceitual M

35 Modelo ER - Conceitos Entidades: – Objetos do mundo real que são de interesse para alguma aplicação Atributos: – Propriedades utilizadas para descrever uma entidade Name = John Address = 2311 Kirby, Houston, TX Age = 55 Home Phone = e 1 (Employee)

36 Modelo ER - Conceitos Tipos (classes) de atributo: – Simples ou compostos Ex. Endereço (Endereço da Rua (número, nome da rua, número do apto), Cidade, Estado, CEP) – Monovalorados ou multivalorados Ex. Profissão – Armazenados ou derivados Data de Nascimento Idade, Empregados trabalhando no departamento NumeroDeEmpregados – Valores Null Não aplicável – Ex. Número do apartamento Desconhecido – Ex. Telefone de casa

37 Modelo ER - Conceitos Tipo de entidade: – Define um conjunto de entidades que têm os mesmos atributos (propriedades) – Descreve o esquema para um conjunto de entidades que compartilham a mesma estrutura – Exemplos: Employee, Company

38 Modelo ER - Conceitos Chave de um tipo de entidade: – Atributo que possui valor único para cada entidade (instância) Ex. Nome da companhia, identidade do empregado – Chave pode ser formada por vários atributos: chave composta Registro do Veiculo: Numero de Registro e Estado Domínio de um atributo: – Conjunto de valores que podem ser atribuídos a um atributo para cada entidade individualmente – Ex. Idade do Empregado: (16,70); Nome do Empregado:String

39 Figura 3.5 Tipos de entidade e suas instâncias

40 Esquema conceitual M

41 Modelo ER - Conceitos Relacionamentos: – Associações entre duas ou mais entidades distintas (instâncias) com um significado – Exemplo: Employee John Smith Works-for Department Research Employee Fred Brown Manages Department Research Departament Research Controls Project X

42 Modelo ER - Conceitos Tipo de Relacionamento: – Define um conjunto de associações entre n tipos de entidade E 1, E 2,...,E n – Exemplo: Works-for entre Employee e Department EmployeeWorks-forDepartment

43 Modelo ER - Conceitos Tipo de Relacionamento: – Matematicamente, um tipo de relacionamento R é um conjunto de (instâncias de) relacionamentos r i, onde cada r i associa n (instâncias de) entidades (e 1,...,e n ) e cada e j pertence a um tipo de entidade Ej – R E 1 x E 2 x... x E n – r i = (e 1,...,e n ) Grau de um Tipo de Relacionamento – Número de tipos de entidade participantes de um tipo de relacionamento

44 Instâncias de um tipo de relacionamento binário

45 Instâncias de um tipo de relacionamento ternário

46 Esquema conceitual M

47 Modelo ER - Conceitos Restrições sobre tipos de relacionamento: – Limitam as possiveis combinações de entidades que podem participar no conjunto de relacionamentos – Cardinalidade: Especifica o número de instâncias de um tipo de relacionamento do qual uma entidade pode participar – Participação: Especifica se a existência de uma entidade depende de seu relacionamento com outra entidade através de um tipo de relacionamento parcial ou total Ex. Todo empregado deve trabalhar para um departamento (total) Ex. Nem todo empregado gerencia um departamento (parcial) Cardinalidade + Participação Restrições Estruturais

48 Cardinalidade 1:1

49 Cardinalidade M:N

50 Esquema conceitual M

51 Modelo ER - Conceitos Papéis e relacionamentos recursivos – Entidades atuam com um determinado papel – Significado do papel é dado por um nome, atribuído a cada tipo de entidade – Nomes só são necessários em tipos de relacionamento que envolvam mais de uma vez o mesmo tipo de entidade relacionamentos recursivos – Exemplo: Supervision, onde Employee tem os papéis de Supervisor e Supervisee

52 Figure – Supervisor 2 - Supervisee

53 Esquema conceitual M

54 Modelo ER - Conceitos Tipos de Entidade Fraca – Tipos de entidade que não têm chave própria – As instâncias são identificadas através do relacionamento com entidades de outro tipo, chamado de dono ou identificador, juntamente com os valores de alguns atributos (chave parcial) – Exemplo: Dependent

55 Esquema conceitual M

56 Notação ER (Resumo)


Carregar ppt "Sistemas de Banco de Dados Extraído do Material do Profº Marcos André Gonçalves."

Apresentações semelhantes


Anúncios Google