Você está na página 1de 39

DCC011:

Introduo a Banco de Dados

Rodrygo Santos
rodrygo@dcc.ufmg.br

Departamento de Cincia da Computao


Universidade Federal de Minas Gerais
Sumrio
DCC011
Conceitos Bsicos
O que um banco de dados
Como manipular um banco de dados
Projeto de Banco de Dados
Tpicos Importantes
Aplicaes
Banco de Dados no DCC/UFMG

2
DCC011
DCC011 Intro. Banco de Dados
Objetivo
Introduzir os fundamentos que permitam ao
aluno adquirir o domnio bsico da
tecnologia de banco de dados.
Ementa
Conceitos bsicos de banco de dados.
Modelos de dados e linguagens. Projeto de
bancos de dados. Novas tecnologias e
aplicaes de banco de dados.

4
Programa
Introduo
Conceitos bsicos: banco de dados, sistema de banco de dados, sistema de
gerncia de banco de dados. Caractersticas da abordagem de banco de
dados. Modelos de dados, esquemas e instncias. Arquitetura de um
sistema de banco de dados. Componentes de um sistema de gerncia de
banco de dados.
Modelos de Dados e Linguagens
Modelo entidade-relacionamento (ER): conceitos bsicos, restries de
integridade, notao grfica, conceitos adicionais. Modelagem usando UML.
Modelo relacional: conceitos bsicos, restries de integridade, lgebra
relacional, operaes de atualizao. A linguagem SQL.
Projeto de Bancos de Dados
Viso geral do processo de projeto de bancos de dados. Projeto lgico de
bancos de dados relacionais: mapeamentos ER/relacional, definio de
esquemas em SQL. Normalizao.
Novas Tecnologias e Aplicaes de Banco de Dados
Gerenciamento de dados massivos. Bancos de dados no-relacionais (aka
NoSQL)

5
Avaliao
Provas
70 pontos
Trabalhos Prticos
20 pontos
Exerccios e Participao
10 pontos

Mais info: MOODLE

6
Bibliografia
Texto Bsico
Elmasri, R.; Navathe, S. B. Sistemas de Banco
de Dados, 6a Ed. Pearson Education, 2010.

Textos Complementares
Garcia-Molina, H.; Ullman, J. D.; Widom, J. Database Systems:
The Complete Book, Prentice-Hall, Upper Saddle River, NJ. 2001.
Ramakrishnan, R.; Gehrke, J. Database Management Systems.
McGraw-Hill, Boston, MA, 2003.
Silberchatz, A.; Korth, H. F.; Sudarshan, S. Database Systems
Concepts, 5th Ed. McGraw-Hill, New York, NY, 2005.

7
Observaes
Pgina da disciplina:
http://www.dcc.ufmg.br/~rodrygo
Trs provas, individuais e sem consulta
A prova 3 abordar toda a matria
Dois trabalhos prticos
TP1 (individual) = uso da linguagem SQL
TP2 (em dupla) = projeto + implementao de uma
pequena aplicao de banco de dados
Exerccios e Participao
Listas de exerccios
Atividades complementares
8
Conceitos Bsicos

O que um banco de dados?


Como manipular um banco de dados?
11
Problemas com Fichrio?
Uma gaveta aberta por vez
Uma pessoa por vez acessando
Busca praticamente sequencial
Quem pode atualizar cada ficha?
Posso tirar duas fichas ao mesmo tempo?
Duas pessoas podem ter a mesma ficha?
E se enquanto uma pessoa est com a ficha,
uma outra acessa o fichrio,
no encontra a ficha,
ento cria uma nova ficha;
quando a uma devolver a ficha,
sero duas fichas diferentes
para o mesmo cliente!
E se perde a ficha?
E se pega fogo em tudo?
E SE EU PRECISAR DE FICHRIOS
DIFERENTES PARA DADOS DIFERENTES?

12
Universidade
Professores Cursos
Turmas Disciplinas
Alunos Curriculo Horrios

13
Dados

14
Dados

15
Questes
Dados necessrios?
Modelagem de dados?
Evitando redundncia, obviamente
Consulta a dados?
Atualizao de dados?
Controle de acesso?
Alunos no acessam os mesmos dados que
professores... Ou que funcionrios...
...
16
Banco de Dados
Fornece acesso
seguro e eficiente a
grandes quantidades
de dados
Resolve problemas
Armazenamento
Consulta eficiente
Acesso e atualizao
com segurana: por
mltiplos usurios
Melhor do que usar
fichrios e arquivos...
17
Definies Preliminares
[Chu, 1985]
Um banco de dados um conjunto de
arquivos relacionados entre si.
[Date, 1975]
Um banco de dados uma coleo de dados
operacionais usados pelas aplicaes de uma
determinada organizao.

18
Outra Definio
[Elmasri & Navathe, 2000]
Um banco de dados uma coleo de dados
relacionados
Entretanto, um BD possui as seguintes
propriedades implcitas:
1. Representa aspectos do mundo real (mini-mundo
ou universo de discurso)
2. uma coleo de dados logicamente coerentes
com algum significado inerente
3. projetado, construdo e instanciado (povoado)
para uma aplicao especfica

19
Banco de Dados por tudo
Informtica Banco de Dados
Economia, Engenharia, Medicina, Direito,
Educao,

Qualquer aplicao precisa de dados


Dados precisam ser armazenados,
gerenciados, consultados, recuperados
SGBD
20
Sist. de Gerncia de Banco de Dados

Um sistema de gerncia de banco de dados


(SGBD) um conjunto de programas que
permite criar e manter (manipular) um banco de
dados
BD + SGBD = sistema de banco de dados

21
Usurios/Programadores

Consultas/Programas

MS Access
Oracle
SGBD IBM DB2
My SQL
PostgreSQL

Catlogo Banco
de
(Meta-Dados) Dados

Sistema de Banco de Dados

22
Usurios / Programadores
Administrador (DBA)
Administra o BD e o SGBD
Autorizar acesso ao BD, coordenar e monitorar a utilizao,
adquirir hw e sw
Resolver problemas: violao de segurana, tempo de resposta
Projetista
Identificar os dados e escolher estruturas apropriadas para
representar e armazenar
Antes de implementar/instanciar o BD
Analista sistema e Programadores aplicaes (eng. sw)
Analistas: necessidades dos usurios + especificaes acesso
padro
Programadores: implementam as especificaes, testes,
documentos, manuteno
Usurio final
Acessar o BD: consultas, atualizaes, relatrios

23
Exemplo de um Banco de Dados
Empregado Departamento
NumEmp NomeEmp Salrio Dept NumDept NomeDept Ramal
032 J Silva 380 21 21 Pessoal 142
074 M Reis 400 25 25 Financeiro 143
089 C Melo 520 28 28 Tcnico 144
092 R Silva 480 25
112 R Pinto 390 21
121 V Simo 905 28
130 J Neves 640 28

Esquema do banco de dados


Empregado
NumEmp NomeEmp Salrio Dept

Departamento
NumDept NomeDept Ramal

24
Vantagens de usar um BD
Controle de redundncia dos dados
Controle de acesso (segurana)
Armazenamento persistente dos dados
Existncia de mltiplas interfaces para os
usurios
Representao de relacionamentos complexos
entre os dados
Manuteno de restries de integridade
Acesso multi-usurio (controle de concorrncia e
recuperao de falhas)

25
Projeto de Banco de Dados
Projeto de Banco de Dados
Viso Viso
Externa1 Externa2

requisitos requisitos

Projeto Conceitual
Esquema
Conceitual INDEPENDENTE
de SGBD
Projeto Lgico
Esquema
Lgico Esquema
Fsico
Projeto Fsica
DEPENDENTE
de SGBD

27
Projeto de Bancos de Dados
Mini-Mundo

Anlise de
Requisitos

Requisitos Funcionais Requisitos do BD

Anlise Funcional Projeto Conceitual

Especificao das Transaes Esquema Conceitual


Independente de SGBD (em alto nvel) (em um modelo de dados de alto nvel)

Projeto Lgico

Esquema Lgico
Especfico para um SGBD
(em um modelo de dados lgico)
Projeto das Aplicaes

Projeto Fsico

Esquema Fsico
Implementao
(para um SGBD especfico)

Programas
28
Tpicos Importantes
Tpicos Importantes
Estruturas de armazenamento de dados
Modelagem e projeto de bancos de dados
Modelos de dados
Linguagens
Processamento de consultas
Controle de concorrncia
Segurana e integridade
Recuperao de falhas

30
Aplicaes
Aplicaes
Bancos de dados multimdia figuras,
videos, sons, voz
GIS, Sistemas de informaes geogrficas
mapas, dados meteorolgicos, imagens
satlite
Web
Web?????

32
Aplicaes
Automao administrativa (ex., bancos,
hospitais, bibliotecas, empresas, etc.)
Gerncia de dados cientficos (ex., Genoma)
Projeto assistido por computador (ex., avies,
circuitos integrados)
Comrcio eletrnico
Bibliotecas digitais
Sistemas de apoio a deciso

33
Aplicaes, exemplos
Aplicao Dados
Aplicaes bancrias contas bancrias
agncias
Reservas de vos vos
passageiros
pilotos
Aplicaes hospitalares pacientes
mdicos
remdios
Universidades estudantes
turmas
professores
34
Banco de Dados no DCC/UFMG
Disciplinas no DCC
Graduao
Introduo a Bancos de Dados
Tpicos Avanados em Bancos de Dados
Ps-Graduao
Bancos de Dados
Tpicos em Bancos de Dados
Gerncia de Dados da Web
Bancos de Dados Geogrficos
Armazm de Dados

36
Grupo de Pesquisa no DCC
Alberto Laender Marcos A. Gonalves
Modelagem & Projeto BD Bibliotecas Digitais
Gerncia de Dados Web Recuperao de Informao
Modelagem, Extrao e Gerncia de Dados Web
Integrao de Dados Web

Clodoveu Davis Jr. Mirella M. Moro


Geoprocessamento Gerncia de Dados Web
Sist. Informao Geogrfica Gerncia de Dados XML
Bancos de Dados Geogrficos Processamento de Consultas
Dados Espaciais Disseminao de Contedo

37
Minhas linhas de pesquisa
Recuperao de informao
(busca+recomendao)
Na Web, mdias sociais (blogs, microblogs,
redes sociais online), redes corporativas,
dispositivos mveis (e.g., smartphones)
Diversos tpicos
Arquiteturas para dados massivos
Representao de conhecimento (usurios,
itens, e o contexto em torno de ambos)
Modelos de ranking (incl. machine learning)

38
Perguntas

Você também pode gostar