DCC011: Introdução a Banco de Dados

Propaganda
Sumário
DCC011:
Introdução a Banco de Dados
 DCC011
 Conceitos Básicos
 O que é um banco de dados
O que é um banco de dados
 Como manipular um banco de dados
Mirella Moro
 Projeto de Banco de Dados Projeto de Banco de Dados
[email protected]
 Tópicos Importantes
 Aplicações
A li õ
 Banco de Dados no DCC/UFMG
UFMG DCC011 ‐ profa. Mirella Moro
DCC011 – Intro. Banco de Dados Programa
Introdução
 Conceitos básicos: banco de dados, sistema de banco de dados, sistema de gerência de banco de dados. Características da abordagem de banco de dados. Modelos de dados, esquemas e instâncias. Arquitetura de um sistema de banco de dados. Componentes de um sistema de gerência de banco de dados. Modelos de Dados e Linguagens  Modelo entidade‐relacionamento (ER): conceitos básicos, restrições de integridade, notação gráfica, conceitos adicionais. Modelagem usando UML. Modelo relacional: conceitos básicos, restrições de integridade, álgebra relacional, operações de atualização. A linguagem SQL. Projeto de Bancos de Dados
 Visão geral do processo de projeto de bancos de dados. Projeto lógico de bancos de dados relacionais: mapeamentos ER/relacional definição de esquemas em SQL
dados relacionais: mapeamentos ER/relacional, definição de esquemas em SQL. Normalização. Novas Tecnologias e Aplicações de Banco de Dados
 Gerenciamento de dados massivos. Bancos de dados não‐relacionais (aka NoSQL)
Objetivo
j
 Introduzir os fundamentos que permitam ao aluno adquirir o domínio básico da tecnologia de banco de dados. Ementa
 Conceitos básicos de banco de dados. Modelos de dados e linguagens. Projeto de bancos de dados. Novas
tecnologias e aplicações de banco de
Novas tecnologias e aplicações de banco de dados. UFMG DCC011 ‐ profa. Mirella Moro
2
UFMG DCC011 ‐ profa. Mirella Moro
3
Avaliação
ç
4
Bibliografia
Provas
70 pontos (20+20+30)
70 pontos
Trabalhos Práticos
20 pontos
20 pontos
Exercícios e Participação
10 pontos
TTexto Básico
t Bá i
Elmasri, R.; Navathe, S. B. Sistemas de Banco de Dados 6a Ed Pearson Education 2010
Dados, 6a Ed. Pearson Education, 2010. Textos Complementares
p
 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.
www.dcc.ufmg.br/~mirella/DCC011
UFMG DCC011 ‐ profa. Mirella Moro
5
UFMG DCC011 ‐ profa. Mirella Moro
6
Cronograma (teentativvo)
#
DATA
CONTEÚDO
1
3‐4
5‐6
7
8‐10
11
12
13‐15
16
17
04‐09.08
11,18.08
23,25.08
30.08
01,06,08.09
13.09
15.09
20,22,27.09
29.09
04.10
06.10
11.10
13.10
18 10
18.10
20,25,27.10
01,03.11
08.11
10.11
15.11
17.11
22.11
24.11
06.12
Apresentação/Introdução
SQL –
Aula e exercícios *TALVEZ online*
*
*
TP2: especificação e discussão
Álgebra Relacional
REVISÃO
PROVA 1
Modelo ER
Modelo Relacional
Modelo Relacional *TALVEZ
Modelo Relacional
TALVEZ online
online*
NÃO TEM AULA
Modelo relacional
PROVA 2
M
Mapeamentos ER/relacional
t ER/ l i
l
Normalização
Conceitos Avançados
REVISÃO
PROVA 3
FERIADO
Prova de reposição / Consulta sobre o TP2
p
ç
Apresentação TP2
Apresentações de TP2 + premiação
Última oportunidade para entregar relatório TP2
18
19
20
21‐23
24‐25
26
27
28
29
30
UFMG DCC011 ‐ profa. Mirella Moro
Observações
 Página da disciplina:
http://www dcc ufmg br/~mirella/
http://www.dcc.ufmg.br/
mirella/
 Três provas, individuais e sem consulta
 A prova
p
3 abordará toda a matéria
 Dois trabalhos práticos
 TP1 (individual) = uso da linguagem SQL
 TP2 (em dupla) = projeto + implementação de uma pequena
aplicação de banco de dados
 Exercícios e Participação
Exercícios e Participação
 Listas de exercícios
 Atividades complementares (pontos extra)
7
UFMG DCC011 ‐ profa. Mirella Moro
8
Exercício 1
(entrega via Moddle, até 09/08 @ 23:55)
 Responda individualmente a cada uma das perguntas abaixo. "Copy‐and‐paste" não será aceito! Seja criativo e objetivo em suas respostas!
1. Por que o sistema de matrículas da UFMG utiliza um SGBD para gerenciar seus dados em vez de utilizar um sistema de arquivos robusto?
2. Quais as opções de carreira em BD (quais tarefas do profiss. de BD)?
3. Quais são os temas de pesquisa em BD na UFMG e quem são seus pesquisadores?
Conceitos Básicos
á
O que é um banco de dados?
Como manipular um banco de dados?
 FONTES




SLIDES DCC011 AULA 1
SBC Horizontes Dezembro/2008: Qual o Papel de um DBA?, por Carina F. Dorneles e Ronaldo S. Mello.
Prof. João Eduardo Ferreira, Introdução a Banco de Dados, CAPÍTULO 2
Edilberto Magalhães Silva, Introdução a Banco de Dados, CAPÍTULO 2
UFMG DCC011 ‐ profa. Mirella Moro
9
http://www.kdnuggets.com/2016/03/data‐science‐puzzle‐explained.html
https://www.import.io/post/why‐data‐scientist‐is‐being‐called‐the‐sexiest‐job‐of‐the‐21st‐century/
UFMG DCC011 ‐ profa. Mirella Moro
12
Início
• SGBD
• Modelagem, estrutura, consulta
• Aplicações tradicionais
Agora
• NoSQL: texto, documentos, grafos
NoSQL: texto documentos grafos e afins
e afins
• Conexão: Web, streams, móveis, paralelo, workflow, …
• Contexto: nuvem, hardware, privacidade, proveniência … IR
• Coleta, extração, indexação, processamento, entrega
• E.g., sistemas de recomendação e classificadores
KDD
• Descoberta de Conhecimento
• Mineração de Dados
• E.g., aprendizado de máquina e big data analytics Bancos de Dados
UFMG DCC011 ‐ profa. Mirella Moro
13
Os salários, por áreas de atuação, também sobem na
medida da qualificação do profissional. Além da experiência,
ditada por anos de trabalho no setor, a formação acadêmica
também
bé pode
d significar
i ifi
um iincremento iimportante no
salário. Um profissional de Arquitetura da Informação com
mestrado ou doutorado pode ganhar até 74,7%
74 7% mais do
que um que possui apenas formação superior.
15 de agosto de 2014
UFMG DCC011 ‐ profa. Mirella Moro
14
Quanto Ganha Profissional de TI
http://exame.abril.com.br/revista‐exame/edicoes/1108/noticias/para‐os‐cientistas‐
p //
/
/
/
/
/p
de‐dados‐nao‐ha‐desemprego
Bancos de Dados
TI Geral
 Diretor: R$ 18.386
 Gerente: R$ 8.855
 Coordenador: R$ 4.992
 Consultor: R$ 4.483
 Analista Negócios: R$ 4.037
 Analista: A li t
R$ 2 432
R$ 2.432
 Técnico em TI: R$ 1.483
 Redes de Computadores, analista: Redes de Computadores analista:
 Processamento de dados, analista:  Programador, android:  Segurança da informação, pleno:  Gerente: R$ 11.940
 Coordenador: R$ 8.953
 Supervisor: R$ 8.154
 DBA Oracle: R$ 4.288
 DBA Pleno: R$ 4.283
 DBA SQL: DBA SQL
R$ 3 725
R$ 3.725
R$ 2 797
R$ 2.797
R$ 2.646
R$ 3.126
R$ 3.184
UFMG DCC011 ‐ profa. Mirella Moro
http://www.guiadacarreira.com.br/salarios/quanto‐ganha‐um‐profissional‐de‐ti/
1960
15
UFMG DCC011 ‐ profa. Mirella Moro
16
2015: Problemas com Fichário?
2015: Problemas com Fichário?
1990
Uma gaveta aberta por vez
pessoa p
por vez acessando
Uma p
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 fichário,
não encontra a ficha,
então cria uma nova ficha;
quando a uma devolver a ficha,
serão duas fichas diferentes
para o mesmo cliente!
E se perde
d a fi
ficha?
h ?
E se pega fogo em tudo?
E SE EU PRECISAR DE FICHÁRIOS
DIFERENTES PARA DADOS DIFERENTES?
UFMG DCC011 ‐ profa. Mirella Moro
17
UFMG DCC011 ‐ profa. Mirella Moro
18
Universidade
Dados de Professores do DCC
Dados de Professores do DCC
Professores
Cursos
Turmas Disciplinas
p
Alunos Curriculo Horários
UFMG DCC011 ‐ profa. Mirella Moro
UFMG DCC011 ‐ profa. Mirella Moro
19
Dados
20
Questões
Dados necessários?
D d
ái ?
Modelagem de dados?
 Evitando redundância, obviamente
Evitando redundância obviamente
Consulta a dados?
Atualização de dados?
Atualização de dados?
Controle de acesso?
 Alunos não acessam os mesmos dados que Alunos não acessam os mesmos dados que
professores... Ou que funcionários...
...
UFMG DCC011 ‐ profa. Mirella Moro
UFMG DCC011 ‐ profa. Mirella Moro
21
IBD: Dados  SGBD
IBD: Dados 
22
Definições Preliminares
Definições Preliminares
• Fornece acesso seguro e eficiente a grandes
eficiente a grandes quantidades de dados
• Resolve problemas
Resolve problemas
[Ch 1985]
[Chu, 1985]
Um banco de dados é um conjunto de arquivos relacionados entre si
relacionados entre si.
–Armazenamento
–Consulta eficiente
–Acesso e atualização com l
ã
segurança: por múltiplos usuários
[Date, 1975]
Um banco de dados é uma coleção de dados Um
banco de dados é uma coleção de dados
operacionais usados pelas aplicações de uma determinada organização.
• Melhor do que usar fichários e arquivos...
UFMG DCC011 ‐ profa. Mirella Moro
23
UFMG DCC011 ‐ profa. Mirella Moro
24
Outra Definição
Outra Definição
Banco de Dados por tudo
Banco de Dados por tudo
[Elmasri & Navathe 2000]
[Elmasri & Navathe, 2000]
 Informática 
I f
á i  Banco de Dados
B
d D d
 Economia, Engenharia, Medicina, Direito, Educação, …


Um banco de dados é uma coleção de dados relacionados (tabelas, relações)
Entretanto, um BD possui as seguintes propriedades implícitas:
1
1.
2.
3.
Qualquer aplicação precisa de dados
 Qualquer aplicação precisa de dados
 Dados precisam ser armazenados, gerenciados, consultados, recuperados
,
p
Representa aspectos do mundo real (mini mundo ou universo de
Representa aspectos do mundo real (mini‐mundo ou universo de discurso)
É uma coleção de dados logicamente coerentes com algum g
significado inerente
É projetado, construído e instanciado (“povoado”) para uma aplicação específica
UFMG DCC011 ‐ profa. Mirella Moro
SGBD
UFMG DCC011 ‐ profa. Mirella Moro
25
26
Usuários/Programadores
Sist. de Gerência de Banco de Dados
 Um sistema de gerência de banco de dados (SGBD) é g
(
)
um conjunto de programas que permite criar e manter (manipular) um banco de dados
Consultas/Programas
 SGBD + BD = sistema de banco de dados
MS Access
Oracle
IBM DB2
M SQL
My
PostgreSQL
Mongo DB
Neo4J
…
SGBD
Banco
de
Dados
Catálogo
(Meta-Dados)
Sistema de Banco de Dados
UFMG DCC011 ‐ profa. Mirella Moro
UFMG DCC011 ‐ profa. Mirella Moro
27
Usuários / Programadores
Exemplo de um Banco de Dados
p
 Administrador (DBA)
Empregado
 Administra o BD e o SGBD
 Autorizar acesso ao BD, coordenar e monitorar a utilização, adquirir hw e sw
 Resolver problemas: violação de segurança, tempo de resposta
 Projetista
 Identificar os dados e escolher estruturas apropriadas para representar e armazenar
p
/
 Antes de implementar/instanciar o BD
 Analista sistema e Programadores aplicações (eng. sw)
 Analistas: necessidades dos usuários + especificações acesso padrão
g
p
p
ç ,
,
,
 Programadores: implementam as especificações, testes, documentos, manutenção
Departamento
NumEmp
NomeEmp
Salário
Dept
NumDept
NomeDept
032
J Silva
380
21
21
Pessoal
142
074
M Reis
400
25
25
Financeiro
143
089
C Melo
520
28
28
Té i
Técnico
144
092
R Silva
480
25
112
R Pinto
390
21
121
V Simão
905
28
130
J Neves
640
28
Esquema do banco de dados
Empregado
NumEmp
 Usuário final
 Acessar o BD: consultas, atualizações, relatórios …
NomeEmp
Salário
Dept
Departamento
NumDept
UFMG DCC011 ‐ profa. Mirella Moro
28
29
NomeDept
Ramal
UFMG DCC011 ‐ profa. Mirella Moro
Ramal
Um banco de dados é
uma coleção de dados
relacionados
1. Dentro de uma
mesma tabela
2. Entre
t e tabelas
tabe as
diferentes
30
Vantagens de usar um BD
Vantagens de usar um BD  Controle de redundância dos dados
C t l d
d dâ i d d d
 Controle de acesso (segurança)
 Armazenamento persistente dos dados
A
t
it t d d d
 Existência de múltiplas interfaces para os usuários
 Representação de relacionamentos complexos R
t ã d
l i
t
l
entre os dados
 Manutenção de restrições de integridade Manutenção de restrições de integridade (cpf único)
(cpf único)
 Acesso multi‐usuário (controle de concorrência e recuperação de falhas)
p ç
)
UFMG DCC011 ‐ profa. Mirella Moro
Projeto de Banco de Dados
d
d
d
31
Projeto de Banco de Dados Projeto de Bancos de Dados
Mini-Mundo
Visão
E t
Externa1
1
IBD
Visão
E t
Externa2
2
Análise de
Requisitos
Requisitos Funcionais
Requisitos do BD
Análise Funcional
Projeto Conceitual
requisitos
requisitos
Projeto Conceitual
Independente de SGBD
Esquema
Conceitual
INDEPENDENTE
de SGBD
Projeto Lógico
DEPENDENTE
de SGBD
Projeto Física
Esquema Lógico
(em um modelo de dados lógico)
Projeto das Aplicações
Esquema
Físico
Projeto Físico
Implementação
UFMG DCC011 ‐ profa. Mirella Moro
IBD
Esquema Conceitual
(em um modelo de dados de alto nível)
Projeto Lógico
Específico para um SGBD
Esquema
Lógico
BDA
Especificação das Transações
(em alto nível)
33
Esquema Físico
(para um SGBD específico)
Programas
UFMG DCC011 ‐ profa. Mirella Moro
34
Tópicos Importantes
Tópicos Importantes
Tópicos Importantes
ó
Estruturas de armazenamento de dados
Modelagem e projeto de bancos de dados
Modelos
Modelos de dados
de dados
Linguagens
Processamento de consultas
de consultas
Processamento
Controle de concorrência
Segurança e integridade
S
i t id d
Recuperação de falhas
UFMG DCC011 ‐ profa. Mirella Moro
36
Aplicações
Bancos de dados multimídia –
d d d
l i ídi figuras, fi
videos, sons, voz
GIS, Sistemas de informações geográficas – mapas, dados meteorológicos, imagens satélite
Aplicações
l
UFMG DCC011 ‐ profa. Mirella Moro
Aplicações
p ç
38
Aplicações exemplos
Aplicações, exemplos
Automação administrativa (ex., bancos, hospitais, bibliotecas, empresas, etc.)
( ,
)
Gerência de dados científicos (ex., Genoma)
Projeto assistido por computador (ex., aviões, circuitos integrados)
circuitos integrados)
Comércio eletrônico
Bibliotecas digitais
bl
d
p
Sistemas de apoio a decisão
UFMG DCC011 ‐ profa. Mirella Moro
39
Aplicação
 Aplicações bancárias
A li õ b á i
 Reservas de voos
Reservas de voos
 Aplicações hospitalares
 Universidades
Dados
 contas bancárias
b ái
agências
 voos
passageiros
pilotos
 pacientes
médicos
remédios
 estudantes
turmas
professores
UFMG DCC011 ‐ profa. Mirella Moro
40
DCC/UFMG
Banco de Dados no DCC/UFMG
/
 Armazéns de Dados
 Bancos de Dados Avançados
 Bancos de Dados Geográficos
 Mineração de Dados
 Mineração de Dados Aplicada
 Processamento de Dados Massivos
 Visualização de Dados
 Sistemas de Recomendação
 Recuperação de Informação UFMG DCC011 ‐ profa. Mirella Moro
42
Linhas de pesquisa: Mirella
Linhas de pesquisa: Mirella
Clodoveu Davis Jr.
Modelagem
M
d l
&P
Projeto
j t BD
Gerência de Dados Web
Modelagem, Extração e
Integração de Dados Web
G
Geoprocessamento
t
Sistemas Informação Geográfica
Bancos de Dados Geográficos
Dados Espaciais
Marcos A. Gonçalves
Mirella M. Moro
Bibliotecas Digitais
Recuperação de Informação
Gerência de Dados Web
Gerência
Gerência de dados da Web
de dados da Web
 Processamento de Consultas
 Biblioteca Digital BDBComp
Redes Sociais
Outros tópicos
Berthier Ribeiro-Neto
(licenciado)
Gerência de Dados Web
Recuperação de Informação
UFMG DCC011 ‐ profa. Mirella Moro
Perguntas
www.dcc.ufmg.br/
mirella
www dcc ufmg br/~mirella
 NoSQL, BigData
 Modelagem de Dados d l
d
d
43
UFMG DCC011 ‐ profa. Mirella Moro
SIGMOD’12‐ PHX
 Redes Sociais Acadêmicas
 Índices de Produtividade
 Sistemas de Recomendação
Gerência de Dados Web
Processamento de Consultas
Redes Sociais
Sistemas de Recomendação
SIGMO
OD’13‐ NYC
C
Alberto Laender
SIGMOD
D’16 ‐ SFO
Grupo de Pesquisa LBD
Grupo de Pesquisa LBD
44
Download