Banco de Dados - Introdução
De Aulas
Afluentes:
O que é um Banco de Dados?
- "Banco de dados é uma coleção de unidades de dados físicos que são relacionados entre si de uma maneira específica" (GUIDE-SHARE, 1970)[1]
- "Uma banco de dados consiste de todas as ocorrências de registros controlados por um esquema específico" (CODASYL, 1971)[2]
- "Um banco de dados é uma coleção de dados, organizados e integrados, que constituem uma representação natural de dados, e que possa ser utilizada por todas as aplicações relevantes sem duplicação de dados" (PALMER, 1975)[3].
Banco de Dados vs. Sistema de Arquivos
- Antes da concepção dos BDs o registro das informações eram feitos através de arquivos.
- Desvantagens:
- Redundância e Inconsistência de dados;
- Dificuldade no acesso aos dados;
- Isolamento de dados;
- Anomalias de acesso concorrente;
- Problemas de segurança;
- Problemas de privacidade;
- Dificuldades de manutenção;
- Problemas de integridade.
Sistema Gerenciador de Banco de Dados (SGBD)
- Tem como objetivo prover um ambiente que seja adequado e eficiente para recuperar, armazenar e manter as informações pertencentes a um banco de dados;
- Justificativa: Necessidade de haver a separação entre os problemas específicos de aplicações e problemas de armazenamento de dados, ou seja, independência entre dados e programas;
- São projetados para gerenciar grandes grupos de informações;
- As primeiras implementações de SGBDs datam do final da década de 60.
= Características dos SGBDs
Eles devem:
- Definir as estruturas de armazenamento dos dados;
- Definir os mecanismos para manipulação dos dados;
- Garantir a segurança dos dados contra ações externas;
- Garantir a integridade dos dados armazenados;
- Controlar o acesso concorrente aos dados;
- Permitir a independência dos dados armazenados;
- Permitir e manter o relacionamento entre os dados;
- Controlar a redundância dos dados;
- Garantir um bom desempenho mesmo com uma grande massa de dados.
Abstração de Dados
- O grande objetivo de um sistema de banco de dados é prover aos usuários uma visão abstrata dos dados;
- O sistema omite certos detalhes de como os dados são armazenados e mantidos, uma vez que muitos dos seus usuários não são especialistas;
- A complexidade está escondida deles através de diversos níveis de abstração;
- As arquiteturas de bancos de dados podem possuir 1, 2 ou 3 níveis de abstração.
Níveis de Abstração
- Nível Físico: É o nível mais baixo de abstração e descreve como os dados estão realmente armazenados;
- Nível Conceitual: Descreve todos os dados que estão armazenados de fato no banco de dados e as relações existentes entre eles;
- Nível de Visões: É o mais alto nível de abstração e descreve o banco de dados em partes que são de interesse de cada usuário / aplicação.
- ↑ GUIDE-SHARE (1970), Requirements for a Database Management System. Em: GUIDE-SHARE Data Base Requirements Group Report, num.11, 1970.
- ↑ CODASYL (1971). Data base task group report to the CODASYL programming language committee, April 1971.
- ↑ Palmer, S. E. (1975). Visual perception and world knowledge: Notes on a model of sensory-cognitive interaction. In D. A. Norman, D. E. Rumelhart, & the LNR Resev.rch Group, Explorations in cognition. San Francisco: W. H. Freeman, in press.