Introdução a Bancos de Dados, SGBD e Modelagem

Classificado em Computação

Escrito em em português com um tamanho de 6,01 KB.

O que é um Banco de Dados?

É uma coleção de dados operacionais armazenados e usados pelas aplicações de uma determinada organização.

Origem

Foi concebido pelo Departamento de Defesa dos EUA em 1957 e divulgado através da conferência chamada CODASYL. Nessa mesma conferência foi apresentada a linguagem de programação COBOL.

Conceito de Database

"Um conjunto de arquivos (tabelas), onde um arquivo é uma coleção ordenada de registros (linhas), e um registro consiste em uma ou mais chaves de dados."

O que é um SGBD?

Sistema de Gerenciamento de Banco de Dados (SGBD) é um conjunto de sistemas que permite criar e manter um banco de dados.

Banco de Dados + SGBD = Sistema de Banco de Dados

Vantagens de Utilizar um SGBD

  • Controle de redundância dos dados
  • Controle de acesso (segurança)
  • Recuperações de Falhas
  • Armazenamento persistente dos dados

Quando Não Utilizar um SGBD

Situações desaconselhadas:

  • Aplicações em tempo real
  • Aplicações simples e bem definidas que não se espera mudanças
  • Aplicações onde não é necessário acesso multiusuário

Motivos:

  • Investimento Inicial Alto
  • Generalidade na definição e manipulação dos dados

Características da Abordagem de BD

  • Autodescrição dos dados
  • Isolamento entre programas e dados: abstração de dados
  • Suporte a múltiplas visões de dados
  • Compartilhamento de dados e processamento de transações coerentes

Implicações da Abordagem de BD

  • Economia de escala
  • Flexibilidade
  • Redução do tempo de desenvolvimento das aplicações

Usuários Envolvidos no SGBD

Database Administrator (DBA)

Responsável por autorizar acessos, monitorar o uso do SGBD, corrigir falhas, melhorar o tempo de resposta, efetuar backups.

Projetista de Banco de Dados

Responsável por se comunicar com os usuários finais a fim de entender suas necessidades e projetar um banco de dados que atenda suas expectativas.

Usuários Finais

Pessoas que têm acesso e interagem com o banco de dados concebido para que atenda suas necessidades. São eles:

  • Usuários Casuais: Interagem esporadicamente. Conhecem SQL.
  • Usuários Iniciantes: Sem experiência, são a maioria dos usuários.
  • Usuário Sofisticado: Possui nível técnico avançado, conhecem SQL.
  • Usuário Isolado: Interagem através de menus gráficos.

Analistas de Sistemas/Programadores

Responsáveis por projetar e desenvolver sistemas que terão interação com um banco de dados.

Modelos de Dados

Quanto ao modelo de dados adotado, existem:

  • Relacionais
  • De Rede
  • Hierárquicos
  • Orientados a Objeto
  • Objetos-relacionais

Modelos de Dados: Conjunto de conceitos básicos usados para descrever a estrutura de um banco de dados.

Esquema: Descrição 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.

Divisão do Projeto de BD

  • Modelo Conceitual
  • Modelo Lógico / Projeto Lógico
  • Modelo Físico

Modelo Conceitual

Utilizado para descrever a estrutura do banco de dados de uma forma mais próxima da percepção dos usuários.

Ex. Conceitos: Entidades, atributos, relacionamentos.

Exemplos:

  • Modelo de entidade-relacionamento (ER)
  • Modelo funcional
  • Modelo orientado a objeto (OO)

Modelos Lógicos

Utilizado para descrever a estrutura do banco de dados da forma como será manipulado pelo SGBD.

Exemplos:

  • Modelo Relacional
  • Modelo de Rede (CODASYL)
  • Modelo Hierárquico

Definição de SQL

Linguagem padrão para manipular todos os objetos dentro do banco de dados. Divide-se em 3 grupos:

  • DDL (Data Definition Language): Usada para definir esquemas, estruturas, tabelas/atributos.
  • DML (Data Manipulation Language): Seleção, inserção, remoção, modificação de registro.
  • DCL (Data Control Language): Controle de acesso a um banco de dados.

Modelagem Entidade-Relacionamento e Lógica

Modelo Entidade-Relacionamento (MER)

Deve ser considerado um Modelo Formal. Características importantes:

  • Não deve ser subutilizado
  • Ter poder de expressão limitado
  • O Modelo deve ser correto
  • O Modelo deve ser completo
  • Modelo livre de redundância
  • Modelo deve ter aspecto temporal

Tipos de Erros no MER

Se houver erros, podem ser:

  • Sintáticos: Quando não respeita regras de construção de um modelo entidade-relacionamento.
  • Semânticos: Mesmo respeitando todas as regras, reflete uma realidade de forma inconsistente.

Modelagem Lógica

Representa o Banco de dados como um conjunto de Relações.

Uma RELAÇÃO é uma tabela de valores, onde cada linha representa uma coleção de dados relacionados.

Cada linha de uma tabela representa um "fato" que tipicamente corresponde a uma entidade ou relacionamento do mundo real.

Conceitos Básicos da Modelagem Lógica

  • As linhas de uma tabela são chamadas de TUPLAS.
  • Ao cabeçalho de cada coluna se dá o nome de ATRIBUTO.
  • O conjunto de valores que pode aparecer em cada coluna se dá o nome de DOMÍNIO.
  • As TUPLAS de uma relação não são ordenadas.

Entradas relacionadas: