SGBD – O QUE É ISSO ?
� SGBD = Sistema Gerenciador de Banco de
Dados (Database Management System)
� Um software sofisticado para:
� Armazenar dados de forma eficiente� Armazenar dados de forma eficiente
� Consultar dados obtendo respostas rápidas
� Modificar dados concorrentemente.
SGBDS – PARA QUE ?
� Quantidades gigantescas de dados são coletados e armazenados em empresas, corporações, etc� Dados de comércio eletrônico,
Ponto de Vista ComercialPonto de Vista Comercial
� 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 ?
� Dados coletados e armazenados
a velocidades enormes (GB/hora)
� Sensores remotos em satélites
Ponto de Vista Cientifico : Medicina, Biologia, Engenharia
� Telescópios
� Microarrays gerando dados de
expressões de genes
� Simulações científicas gerando
terabytes de dados.
SGBD: CONTEXTOS EM QUE SÃOUTILIZADOS
� SGBDs são utilizados para manipular grandes volumes de dados: � Dados sobre empregados – alunos – contas
bancárias – dados climatológicos, dados geológicos, etc.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 � 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
PROCESSADOR DE CONSULTAS
GERENCIADOR DE
consulta
GERENCIADOR DE ARMAZENAMENTO
Disco de Armazenagem
DADOS
METADADOS
GERENCIADOR DE TRANSAÇÕES
Usuário
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
NomeNomeNomeNome FabricanteFabricanteFabricanteFabricante
Atributos(Nomesdas colunas)
Winterbrew Pete’s
Bud Lite Anheuser-Busch
Cervejas
Tuplas(linhas)
Nome da Relação
ESQUEMAS
� EsquemaEsquemaEsquemaEsquema de de de de RelaçãoRelaçãoRelaçãoRelação = nome da relação + listade atributos.� Opcionalmente: tipos dos atributos.
� Exemplo: �CervejaCervejaCervejaCerveja((((nomenomenomenome, , , , fabrfabrfabrfabr)))) ou�CervejaCervejaCervejaCerveja((((nomenomenomenome, , , , fabrfabrfabrfabr)))) ou
�CervejaCervejaCervejaCerveja((((nomenomenomenome: string, : string, : string, : string, fabrfabrfabrfabr: string): string): string): string)
� Banco de Dados = coleção de relações.
� Esquema de Banco de Dados = conjunto de todos os esquemas de relação em um bancode 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 � 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 Teoria da Teoria da Teoria da
Lógica de Primeira OrdemLógica de Primeira OrdemLógica de Primeira OrdemLó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 Almadenquando trabalhava na IBM Almaden
� Ganhou a Medalha TuringMedalha TuringMedalha TuringMedalha Turing (o “Prêmio Nobel da Ciência da Computação”)
http://pt.wikipedia.org/wiki/Edgar_Frank_Coddhttp://pt.wikipedia.org/wiki/Edgar_Frank_Coddhttp://pt.wikipedia.org/wiki/Edgar_Frank_Coddhttp://pt.wikipedia.org/wiki/Edgar_Frank_Codd
EXEMPLO
Cervejas(nome, fabr)
Bares(nome, end, licença)
Consumidores(nome, end, tel)
Gosta(consumidor, cerveja)Gosta(consumidor, cerveja)
Vend(bar, cerveja, preço)
Frequenta(consumidor, bar)
� Sublinhado = chavechavechavechave (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 SGBDOS 3 NÍVEIS DE ABSTRAÇÃO DE UM SGBDOS 3 NÍVEIS DE ABSTRAÇÃO DE UM SGBDOS 3 NÍVEIS DE ABSTRAÇÃO DE UM SGBD
� Nível FísicoNível FísicoNível FísicoNível Físico: como os dados são armazenados
e estruturados em disco.
� Nível ConceitualNível ConceitualNível ConceitualNível Conceitual: como modelar uma situação
real através de um esquema de banco de real através de um esquema de banco de
dados relacional – criação dos esquemas
relacionais.
� Nível ExternoNível ExternoNível ExternoNí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 ?� ImplementadoresImplementadoresImplementadoresImplementadores de SGBDsde SGBDsde SGBDsde SGBDs
� Trabalham para companhias que fabricam os SGBDs – IBM, Oracle, etc
� ProgramadoresProgramadoresProgramadoresProgramadores de de de de AplicativosAplicativosAplicativosAplicativos
� 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.
� AdministradoresAdministradoresAdministradoresAdministradores de de de de BancoBancoBancoBanco de Dados (DBA)de Dados (DBA)de Dados (DBA)de Dados (DBA)� AdministradoresAdministradoresAdministradoresAdministradores de de de de BancoBancoBancoBanco de Dados (DBA)de Dados (DBA)de Dados (DBA)de Dados (DBA)
� Projetam os esquemas conceituais e fisicos dos dados
� Projetam grande parte do esquema externo.
� Segurança e autorização
� UsuUsuUsuUsuáriosáriosáriosários finaisfinaisfinaisfinais
� 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.