SGBD – Introdução Bacharelado em Ciência da Computação Disciplina GBD 1 Profa. Sandra de Amo...
Transcript of SGBD – Introdução Bacharelado em Ciência da Computação Disciplina GBD 1 Profa. Sandra de Amo...
SGBD – IntroduçãoBacharelado 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 ?
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
Ponto de Vista ComercialPonto de Vista Comercial
SGBDs – Para que ?
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.
Ponto de Vista Cientifico : Medicina, Biologia, Engenharia
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
PROCESSADOR DE CONSULTAS
GERENCIADOR DE ARMAZENAMENTO
Disco de Armazenagem
DADOS
METADADOS
GERENCIADOR DE TRANSAÇÕES
Usuário
consulta
modificação
O que é um Modelo de Dados1. 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
Nome Fabricante
Winterbrew Pete’s
Bud Lite Anheuser-Busch
Cervejas
Atributos(Nomesdas colunas)
Tuplas(linhas)
Nome da Relação
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.