cesep belém profº paulo barros sgbd sgbd ... · roteiro o que é um sgbd ? para que ? arquitetura...

18
SGBD SGBD SGBD SGBD – – INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO CESEP Belém Profº Paulo Barros

Upload: trinhtu

Post on 11-Nov-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

SGBD SGBD SGBD SGBD –––– INTRODUÇÃOINTRODUÇÃOINTRODUÇÃOINTRODUÇÃO

CESEP Belém

Profº Paulo Barros

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� 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.