Pular para o conteúdo principal

Banco de Dados

O que é um Banco de Dados?

  • Coleção de dados relacionados, projetada para uma finalidade específica.
  • Pode ter qualquer tamanho ou complexidade.
  • Representa algum aspecto do mundo real.

Sistema Gerenciador de Banco de Dados (SGBD)

  • Coleção de programas que permite criar e manter um B.D.
  • Facilita processos como:
    • Definição
    • Construção
    • Manipulação
    • Compartilhamento
    • Proteção
    • Manutenção

Estrutura do Sistema de Banco de Dados

SBD = BD + SGBD + [APLICAÇÕES]

Características dos Bancos de Dados

1. Natureza Autodescritiva

  • Os bancos de dados contêm dados + estrutura + restrições.

2. Isolamento entre Programas e Dados

  • Os dados são representados de forma conceitual no SGBD.
  • Permite independência lógica e independência física.

3. Suporte a Múltiplas Visões

  • Diferentes usuários podem ter visões personalizadas do banco.

4. Compartilhamento e Controle de Concorrência

  • O SGBD gerencia acessos simultâneos, evitando inconsistências.

Transações e Propriedades ACID

  1. Atomicidade: A transação é realizada completamente ou não ocorre.
  2. Consistência: Mantém o banco em um estado válido.
  3. Isolamento: As transações ocorrem de forma independente.
  4. Durabilidade: As mudanças são permanentes.

Funções na Administração de Dados

  • Administrador de Banco de Dados (DBA): Gerencia BD, SGBD e aplicações.
  • Administrador de Dados (DA): Modela e projeta os dados.

Arquitetura ANSI/SPARC (Três Níveis)

  1. Nível Externo: Visão dos usuários.
  2. Nível Conceitual: Estrutura lógica do BD.
  3. Nível Interno: Como os dados são armazenados fisicamente.

Modelos de Dados

1. Modelo Conceitual

  • Independente de hardware/software.
  • Exemplo: Modelo Entidade-Relacionamento (MER).

2. Modelo Lógico

  • Define como os dados serão organizados.
  • Exemplo: Modelo Relacional.

3. Modelo Físico

  • Especifica como os dados são armazenados.

Modelagem de Dados

  • Entidade: Objeto do mundo real.
  • Relacionamento: Associação entre entidades.
  • Atributos: Características das entidades.

Modelo Relacional e Álgebra Relacional

Operações principais:

  • Seleção (σ): Filtra linhas.
  • Projeção (π): Seleciona colunas.
  • União (U): Une tabelas eliminando duplicatas.
  • Interseção (∩): Retorna dados comuns entre tabelas.
  • Diferença (-): Retorna dados exclusivos da primeira tabela.
  • Junção (⨝): Combina tabelas com base em condições.

Chaves no Modelo Relacional

  • Superchave: Identifica unicamente uma linha.
  • Chave Candidata: Superchave mínima.
  • Chave Primária: Escolhida para identificar a linha.
  • Chave Estrangeira: Referencia chave primária de outra tabela.

Visões e Índices

  • Visões: Mostram apenas os dados necessários aos usuários.
  • Índices: Melhoram o desempenho das consultas.

IMPORTANTE: Conceitos de Banco de Dados caem com frequência em provas!