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

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

Banco de Dados.

Apresentações semelhantes


Apresentação em tema: "Banco de Dados."— Transcrição da apresentação:

1 Banco de Dados

2 Bibliografia de Banco de Dados
Livros-texto (entre muitos outros): Banco de Dados, Uma Visão Prática,Felipe Machado e Mauricio Abreu, Ed Érica, 1999. Modelagem Coceitual e Projeto de Banco de Dados, Paulo Cougo, EdCampus, 1997.

3 Introdução Conceitos Básicos
Conjunto de dados sobre o qual uma comunidade de usuários realiza operações de recuperação e atualização. Um BD representa algum aspecto do mundo real, chamado “mini-mundo” ou “universo de discurso”. As mudanças no mini-mundo são refletidas no banco de dados. Usuários Mini-mundo Banco de Dados Aplicações

4 Conceitos Básicos Um banco de dados computadorizado pode ser criado e mantido por um grupo de programas de aplicação escritos especificamente para aquela tarefa ou por um SISTEMA DE GERÊNCIA DE BANCOS DE DADOS (SGBD). Um SGBD é uma coleção de programas de propósito geral que facilita o processo de definir, construir e manipular bancos de dados para várias aplicações. Definir um banco de dados significa especificar os tipos de dados a serem armazenados juntamente com uma descrição detalhada de cada tipo. Construir o banco de dados é o processo de armazenar os dados em algum meio de armazenamento controlado pelo SGBD. Manipular um banco de dados compreende certas funções como consultar o banco de dados para recuperar dados específicos, atualizar o banco de dados para refletir mudanças percebidas no mini-mundo e produzir relatórios a partir dos dados. O banco de dados e o SGBD juntos são chamados genericamente de SISTEMA DE BANCOS DE DADOS.

5 Bancos de Dados Conceitos Básicos
SGBD Coleção de programas de propósito geral que facilita o processo de definir, construir e manipular banco de dados para várias aplicações Sistema de Banco de Dados

6 Sistema de Banco de Dados
Usuários / Programadores Sistema de BD Consultas / Programas de Aplicação SGBD Software para processar consultas / programas Software para acessar dados armazenados Definição do BD (Meta-dados) BD armazenado

7 Um exemplo de banco de dados
Aluno Nome Número Área José Antonio 17 8 INF Disciplina Nome Número Créditos Dept I.C.C. Estruturas de Dados Matemática Discreta Bancos de Dados INF1310 INF3320 MAT2410 INF3380 4 3 INF MAT Pré-Requisito No_Curso INF3380 INF3320 No_Pre-Req MAT2410 INF1310 Histórico-Escolar No_Aluno No_Curso Grau 17 8 MAT2410 INF1310 INF3320 INF3380 B C A

8 Sistemas de Informação
SISTEMA DE INFORMAÇÃO dados; SGBD; o hardware e o sistema operacional; as pessoas que usam e administram os dados; os programas de aplicação que acessam e atualizam os dados; os programadores que desenvolvem essas aplicações.

9 Mundo Real Desenvolver um projeto de sistema de informação consiste em traduzir um “problema” do mundo real numa “solução” que envolve a organização, pessoas e tecnologia (hardware e software). ?! SISTEMA DE INFORMAÇÃO SGBD Programa de aplicação de BD Programa de aplicação de BD Programa de aplicação dados e regras

10 Coleta/Especificação
Mundo Real Coleta/Especificação de Requisitos Requisitos de Dados Requisitos Funcionais Projeto Conceitual Análise Funcional Projeto Lógico Projeto Funcional Projeto Físico Programação Programa de aplicação de BD SGBD aplicação dados e regras

11 Evolução dos Sistemas de Informação
Programa com dados armazenados Programa com dados armazenados Programa com dados armazenados Programa com gerência de arquivos Programa com gerência de arquivos Programa com gerência de arquivos dados SGBD Programa de aplicação de BD Programa de aplicação de BD Programa de aplicação de BD dados

12 Evolução dos Bancos de Dados (Khoshafian 1995)
Sistemas de arquivos BD em rede BD hierárquico BD relacional Linguagens OO Modelos semânticos Objetos complexos Inteligência artificial Information retrieval BD OO Hipermídia BD “inteligente”

13 Evolução dos Bancos de Dados
SGBD Programa de aplicação de BD Programa de aplicação de BD Programa de aplicação de BD dados regras Regras permitem disvincular certos procedimentos dos programas de aplicação

14 Bancos de Dados Centralizados
(Década de 70) hardware + sistema operacional Programa de aplicação de BD terminais locais SGBD Programa de aplicação de BD dados modem Programa de aplicação de BD terminais remotos

15 Redes de Microcomputadores
(Década de 80) cabo da rede microcomputadores (estações de trabalho) cada vez mais poderosos

16 Arquitetura Cliente/Servidor com Servidor de Arquivos
cabo da rede Servidor de Impressão Programa + SGBD Programa + SGBD

17 Arquitetura Cliente/Servidor com Servidor de Bancos de Dados
SGBD Servidor de Banco de Dados Servidor de Arquivos cabo da rede Servidor de Impressão Programa Programa

18 Arquitetura Cliente/Servidor com Múltiplos Servidores de Bancos de Dados Cooperativos
(Década de 90) gateway modem mainframe

19 Comunicação BDs via Web

20 Pessoal envolvido em grandes sistemas de bancos de dados
Usuários (“atores em cena”) projetistas do BD administradores do BD (ABD) : usuários finais ocasionais paramétricos sofisticados analistas de sistemas programadores de aplicação

21 Pessoal envolvido em grandes sistemas de bancos de dados
Usuários (“atores em cena”) projetistas do BD : responsáveis por identificar os dados a serem armazenados no BD e por escolher as estruturas apropriadas para representar e armazenar esses dados. Comunicação c/ usuários p/ identificação de visões. administradores do BD (ABD) : responsáveis pela autorização do acesso ao BD e pela coordenação e monitoração do seu uso.

22 Pessoal envolvido em grandes sistemas de bancos de dados
Usuários (“atores em cena”) usuários finais ocasionais : tipicamente gerentes e tomadores de decisão.Utilizam-se de ling. consultas sofisticadas. paramétricos : usuários de transações “enlatadas”, por exemplo, caixas de bancos, funcionários de reservas em companhias aéreas. sofisticados : engenheiros, cientistas, analistas de negócios.Utilizam-se das facilidades do SGBD.

23 Pessoal envolvido em grandes sistemas de bancos de dados
Usuários (“atores em cena”) analistas de sistemas : determinam os requisitos dos usuários finais, especialmente dos ocasionais e paramétricos, e desenvolvem especificações de transações que satisfaçam esses requisitos. programadores de aplicação : implementam as especificações das transações como programas, testando-os, corrigindo-os e documentando-os.

24 Pessoal envolvido em grandes sistemas de bancos de dados
Pessoal de suporte (“trabalhadores atrás da cena”) projetistas e implementadores de SGBD : projetam e implementam o SGBD como um software produto. projetistas e implementadores de ferramentas : projetam e implementam pacotes de software que facilitam o projeto e o uso do BD e ajudam a melhorar o desempenho do SGBD. operadores e pessoal de manutenção e suporte : responsáveis pelo funcionamento do ambiente de hardware e software do sistema de BD.

25 Funcionalidades de um SGBD
Controle de redundância Compartilhamento de dados Controle de Acesso Persistência p/ Objetos e Estrut. de Dados Inferência através de Regras de Dedução Múltiplas interfaces Representação de relacionamentos Cumprimento das restrições de integridade Capacidade de “backup” e restauração

26 Controle de Redundância
Problemas: duplicação de esforço para manter os dados atualizados; desperdício de espaço de armazenamento; possibilidade de inconsistência dos dados Quando a redundância é necessária: SGBD deve ser capaz de controlar a redundância para evitar inconsistências.

27 Compartilhamento de Dados
Sistemas multiusuários Controle de Concorrência

28 Controle de Acesso Subsistema de segurança e autorização
Mecanismos usuais de controle de acesso: senhas para usuários e para grupos de usuários; restrição de acesso a parte do banco de dados; proibição de executar certas operações, por exemplo atualização; acesso de usuários paramétricos restrito apenas a transações “enlatadas”; proibição de uso de software privilegiado, a ex. do software de criação de contas.

29 Persistência p/ Objetos e Estruturas de Dados
Capacidade dos Banco de Dados de se integrarem a linguagens de programação de alto nível de forma a permitir que as estruturas criadas pelas LPs fiquem armazenadas definitivamente no BDs.

30 Inferência através de Regras de Dedução
Capacidade de permitir a definição de regras no SGBD que permitam deduzir novas informações a partir dos fatos armazenados. Regras: adolescentes são todos aqueles que têm entre 14 e 18 anos carioca: cidadão natural do RJ engenheiros: todo aquele que tem diploma de curso de Engenharia Consulta: “Quais os adolescentes cariocas que são engenheiros”?

31 Múltiplas Interfaces Um SGBD deve prover uma variedade de interfaces de usuário. Tipos de interfaces: linguagens de consulta para usuários casuais; linguagens de programação para programadores de aplicações; formulários (telas) para usuários paramétricos; menus; linguagem natural.

32 Representação de Relacionamentos
O SGBD deve ter a capacidade de representar uma variedade de relacionamentos complexos entre os dados, bem como recuperar e atualizar dados relacionados de uma maneira fácil e eficiente.

33 Cumprimento das Restrições de Integridade
forma de verificação da consistência dos dados no BDs Restrições de integridade mais complexas: Unicidade de itens de dados; Integridade referencial (um registro em uma tabela que referencia outra tabela deve referenciar um registro existente na outra tabela) Restrições derivadas da semântica dos dados (exemplo: um aluno não pode fazer a mesma disciplina mais de uma vez).

34 Capacidade de Backup e Restauração
O SGBD deve prover facilidades para restaurar o banco de dados em caso de falha de hardware ou de software. sub-sistema de backup e restauração: responsável por assegurar que o banco de dados é restaurado para seu estado anterior à execução do programa.

35 Benefícios adicionais dos Bancos de Dados
Potencial para o estabelecimento e o cumprimento de padrões Flexibilidade de mudanças Redução no tempo de desenvolvimento de novas aplicações Disponibilidade de informação atualizada Economia de escala

36 Bancos de dados não são sempre a solução
Sobrecustos Alto investimento inicial e possível necessidade de hardware adicional. Custo da generalidade do SGBD para definição e processamento dos dados. “Overhead” para garantir segurança, controle de concorrência, recuperação e integridade. Quando NÃO usar BDs O volume de dados é pequeno e as aplicações são simples, bem definidas. Mudanças não são esperadas. Existem requisitos estritos de tempo real que não podem ser satisfeitos por causa do “overhead” do SGBD. Acessos múltiplos e concorrentes não são necessários.

37 Modelo, Esquema, Instância
Percepção abstrata da realidade Modelo regras para estruturar dados Percepção da estrutura da realidade Esquema estático, invariante no tempo (Intensão) regras para verificar validade Descrição da realidade num dado momento Instância dinâmico, variante no tempo (Extensão)

38 Modelo, Esquema, Instância
modelo relacional (tabelas) Aluno Nome Número Área José Antonio 17 8 INF esquema Disciplina Nome Número Créditos Dept I.C.C. Estruturas de Dados Matemática Discreta Bancos de Dados INF1310 INF3320 MAT2410 INF3380 4 3 INF MAT Pré-Requisito No_Curso No_Pre-Req instância INF3380 INF3320 MAT2410 INF3320 INF1310 Histórico-Escolar No_Aluno No_Curso Grau 17 8 MAT2410 INF1310 INF3320 INF3380 C B A

39 A Arquitetura de Três Esquemas
Usuários finais . . . Visão Externa 1 Visão Externa n NÍVEL EXTERNO mapeamento externo/conceitual Esquema Conceitual NÍVEL CONCEITUAL mapeamento conceitual/interno Esquema Interno NÍVEL INTERNO

40 Arquitetura de Banco de Dados
Nível Interno: descreve as estruturas de acesso e armazenamento do BD; Nível Conceitual: decreve toda a estrutura do BD a nível de propriedades, relacionamentos, restrições etc, sem os detalhes de implementação física. Um modelo conceitual (por ex. ERE) é utilizado nessa etapa. Nível externo: corresponde às visões específicas dos usuários.

41 exemplo: companhia aérea
Visões exemplo: companhia aérea Aplicações: Folha pagamento (1,3) Equipe tripulação (1,2,3) Manutenção equip (1, 2) Reserva vôo (2,4) Escala manutenção 1- Empregados (nome, cpf, end, tel, filiação, dep) 2- Equipamentos (n0 avião,marca,tipo,capac, tripulação, revisão) 3- Funções (nomefunção,salário,qualificação, serviço, tipo_equipam) 4-Vôo (linha, tipo_equipam, n0horas, serviço_bordo, horário)

42 Independência de Dados
Capacidade de mudar o esquema num nível de um sistema de banco de dados sem ter que mudar o esquema no nível seguinte mais alto. Independência lógica de dados: Independência física de dados:

43 Linguagens de Bancos de Dados
Linguagem de definição dos dados (LDD) Linguagem de definição do armazenamento (LDA) Linguagem de definição das visões (LDV) (Usualmente a LDD incorpora a LDA e a LDV) Linguagem de manipulação dos dados (LMD) Alto nível ou não procedural : orientada a conjuntos Baixo nível ou procedural : orientada a registros (Às vezes, a LDD e a LMD confundem-se na mesma linguagem. Exemplo : SQL) Linguagem hospedeira Linguagem de programação na qual comandos da LMD são embutidos.

44 Interfaces de Bancos de Dados
Interfaces baseadas em menus (listas de opções) Interfaces gráficas Interfaces baseadas em formulários (telas) Interfaces de linguagem natural Interfaces para usuários paramétricos Interfaces para o ABD

45 Componentes de um SGBD Banco de dados armazenado programadores
de aplicações ABD e equipe usuários ocasionais usuários paramétricos Consulta de alto nível Programas de aplicação Comandos em LDD Comandos privilegiados Pré-compilador Compilador da linguagem hospedeira Processador de consultas Comandos em LMD Catálogo/ Dicionário de Dados Transações compiladas Compilador da LDD Compilador da LMD Processador do BD em tempo de execução Gerenciador dos dados armazenados Subsistema de controle de concorrência / backup / restauração Banco de dados armazenado

46 Classificação dos SGBDs
Critério principal de classificação: modelo de dados Relacional, Redes, Hierárquico, Relacional Objeto e Orientado a Objetos. Outros critérios: Número de usuários Monousuário, Multiusuário Número de locais (“sites”) Centralizado, Distribuído (homogêneo, heterogêneo) Preço (US$) 100 a (monousuários, PC), a (a maioria), a (alguns mais elaborados) Propósito Geral, Específico

47 PROJETO DE BANCOS DE DADOS
Mini-Mundo Foco : dados Coleta e Análise de Requisitos Requisitos de Dados Projeto Conceitual Independente de SGBD Esquema Conceitual Projeto Lógico Específico para um SGBD Esquema Lógico Projeto Físico Esquema Físico

48 Banco de Dados Hierárquicos
Segue o estilo de um organograma empresarial (Diretoria-Divisão-Seção-Setor) ou de biblioteca (Exata-Matemática-Algebra Linear-Vetores). Este modelo é capaz de representar este tipo de organização de forma direta, mas apresenta inconvenientes quando esta situação não aparece claramente com relações de hierarquia. Fábrica Financeiro Comercial Injeção Extrusão Pagar Receber Contábil Vendas Marketing Paulo Vinícius Vilma Sílvia Dagoberto Juracy Richard Pedro Carlos Ernesto Sandra Paula Pedrinho João Sabemos que Paulo é "filho" da Injeção que por sua vez é "filha" da Fábrica.

49 Banco de Dados em Rede Neste modelos os dados são dispostos em registros, previamente classificados em classes que descrevem a estrutura de determinado tipo de registro. Os registros são descritos em relações de conjuntos onde são estabelecidas as ligações lógicas entre eles. Informática André Paulo Carla


Carregar ppt "Banco de Dados."

Apresentações semelhantes


Anúncios Google