Introdução - Sandra de Amo

Propaganda
SGBD – Introdução
Bacharelado em Ciência da Computação
Disciplina GBD 1
Profa. Sandra de Amo
AULA 1
Roteiro



O que é um SGBD ? Para que ?
Arquitetura Básica
Modelo de Dados
SGBD – o que é isso ?


SGBD = Sistema Gerenciador de Banco de
Dados (Database Management System)
Um software sofisticado para:



Armazenar dados de forma eficiente
Consultar dados obtendo respostas rápidas
Modificar dados concorrentemente.
SGBDs – Para que ?

Ponto de Vista Comercial
Quantidades gigantescas de dados são
coletados e armazenados em
empresas, corporações, etc




Dados de comércio eletrônico,
Dados de navegação na internet
Dados de compras de clientes em
grandes lojas de departamentos,
supermercados,
Dados de transações bancárias, ou de
cartão de crédito
SGBDs – Para que ?
Ponto de Vista Cientifico : Medicina, Biologia, Engenharia

Dados coletados e armazenados
a velocidades enormes (GB/hora)

Sensores remotos em satélites

Telescópios

Microarrays gerando dados de
expressões de genes

Simulações científicas gerando
terabytes de dados.
SGBD: Contextos em que são utilizados

SGBDs são utilizados para manipular grandes
volumes de dados:


Dados sobre empregados – alunos – contas bancárias –
dados climatológicos, dados geológicos, etc.
Atualmente, a área de Banco de Dados abrange
todas os diversos tipos de dados em larga escala,
envolvendo tecnologia sofisticada:




Busca na internet
Mineração de Dados (Data Mining).
Banco de Dados Científicos e Medicais.
Integração de Informação.
Ainda mais …

Você pode não notar, mas Bancos de Dados
estão por trás de tudo o que você faz na
Internet:
Buscas no Google
 Compras nos sites da Amazon, do Mercado Livre,
etc


Um SGBD permite que consultas aos dados
sejam respondidas de forma correta e
rapidamente.
Mais ainda…
Os SGBDs permitem a realização no banco de
dados de diversas atividades (transações) por
diferentes usuários “simultaneamente”
 Possuem mecanismos que permitem não
confundir as diferentes ações: por exemplo,
duas reservas simultâneas para o mesmo
assento num determinado vôo.

Mais ainda...

Um SGBD tem mecanismos para “esconder”
certas partes do banco de dados de certos
usuários.
Arquitetura Básica
consulta
PROCESSADOR DE
CONSULTAS
GERENCIADOR DE
TRANSAÇÕES
Usuário
GERENCIADOR DE
ARMAZENAMENTO
DADOS
METADADOS
Disco de
Armazenagem
O que é um Modelo de Dados
1. Uma representação matemática dos dados.

Exemplos de Modelos


Modelo Relacional: dados são reprentados por
Relações (ou Tabelas)
Modelo Semi-estruturado (XML) = dados são
representados por árvores/grafos.
2. Operações permitindo manipular dados.
3. Restrições nos dados.
Modelo Relacional
Atributos
(Nomes
das colunas)
Tuplas
(linhas)
Nome
Winterbrew
Bud Lite
Nome
da Relação
Fabricante
Pete’s
Anheuser-Busch
Cervejas
Esquemas

Esquema de Relação = nome da relação +
lista de atributos.
Opcionalmente: tipos dos atributos.
 Exemplo:

 Cerveja(nome,
fabr) ou
 Cerveja(nome: string, fabr: string)
Banco de Dados = coleção de relações.
 Esquema de Banco de Dados = conjunto de
todos os esquemas de relação em um banco de
dados.

Por que utilizar relações ?




Modelo muito simples.
Frequentemente corresponde à maneira como
pensamos sobre os dados.
Modelo abstrato por trás da linguagem SQL
(Structured Query Language), a linguagem de
consultas de dados mais importante atualmente.
Permite ver um Banco de Dados como uma Teoria
da Lógica de Primeira Ordem
(E.F.Codd)
Histórico do Modelo Relacional




Criado em 1970 por Edgar Frank Codd
Matemático de Oxford (Inglaterra)
Desenvolveu o Modelo Relacional de dados
quando trabalhava na IBM Almaden
Ganhou a Medalha Turing (o “Prêmio Nobel
da Ciência da Computação”)
http://pt.wikipedia.org/wiki/Edgar_Frank_Codd
Exemplo

Cervejas(nome, fabr)
Bares(nome, end, licença)
Consumidores(nome, end, tel)
Gosta(consumidor, cerveja)
Vend(bar, cerveja, preço)
Frequenta(consumidor, bar)
Sublinhado = chave (tuplas não podem ter o
mesmo valor em todos os atributos-chave).
 Um ótimo exemplo de Restrição de Dados
Os 3 níveis de abstração de um SGBD



Nível Físico: como os dados são armazenados
e estruturados em disco.
Nível Conceitual: como modelar uma
situação real através de um esquema de banco
de dados relacional – criação dos esquemas
relacionais.
Nível Externo: quais partes do modelo serão
acessíveis por cada grupo de usuários.
Quem são as pessoas que lidam com
SGBDs ?




Implementadores de SGBDs

Trabalham para companhias que fabricam os SGBDs – IBM, Oracle,
etc
Programadores de Aplicativos

Escrevem pacores de programas que facilitam a vida dos usuários
finais. Não interferem com a parte física dos dados. Utilizam apenas o
esquema externo.
Administradores de Banco de Dados (DBA)

Projetam os esquemas conceituais e fisicos dos dados

Projetam grande parte do esquema externo.

Segurança e autorização
Usuários finais

Vem de diversas áreas- na maioria são leigos em tecnologia de BD

Utilizam aplicativos escritos por programadores de aplicativos de BD

Existem usuários mais sofisticados que escrevem suas próprias
consultas em SQL.
Download