SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
Banco de Dados
Introdução
DCC-UFLA
Prof. Denilson Alves Pereira
denilsonpereira@ufla.br
https://sites.google.com/ufla.br/denilsonpereira/
http://lattes.cnpq.br/4120230814124499
versão dos slides: mai/2020
DCC-UFLA Prof. Denilson Alves Pereira 2
Conteúdo
Conceitos básicos
Exemplo de um banco de dados
Aplicações de bancos de dados
Áreas relacionadas
Características da abordagem de banco de dados
Usuários e trabalhadores envolvidos
Vantagens do uso de um SGBD
DCC-UFLA Prof. Denilson Alves Pereira 3
Conceitos Básicos
DCC-UFLA Prof. Denilson Alves Pereira 4
Conceitos Básicos
Dados
Fatos conhecidos que podem ser armazenados e que têm
algum significado implícito
Exemplo: Uma coleção de nomes, endereços e telefones
das pessoas que você conhece
Banco de Dados
Coleção de dados relacionados com as seguintes
propriedades implícitas:
Representa algum aspecto do mundo real
É uma coleção coerente de dados com algum significado inerente
É projetado, construído e ‘povoado’ com dados para um propósito
específico
DCC-UFLA Prof. Denilson Alves Pereira 5
Conceitos Básicos
Sistema Gerenciador de Bancos de Dados (SGBD)
Coleção de programas que permite ao usuário criar e
manter um banco de dados
Software de propósito geral que facilita os processos de
definição, construção, manipulação e compartilhamento de
bancos de dados entre várias aplicações e usuários
Sistema de Banco de Dados
Conjunto de software para manipular um banco de dados
juntamente com o banco de dados
DCC-UFLA Prof. Denilson Alves Pereira 6
Sistemas Gerenciadores de Bancos de Dados
DCC-UFLA Prof. Denilson Alves Pereira 7
Sistema de Banco de Dados
DCC-UFLA Prof. Denilson Alves Pereira 8
Exemplo de um Banco de
Dados
DCC-UFLA Prof. Denilson Alves Pereira 9
Exemplo de um Banco de Dados Relacional
Estudante Nome CódigoEstudante TipoAluno DepartamentoPrincipal
João 17 1 DCC
José 8 2 DCC
Disciplina Nome CódigoDisciplina Créditos Departamento
Introducão à Ciência da Computação DCC1310 4 DCC
Estrutura de Dados DCC3320 4 DCC
Matemática Discreta MAT2410 3 MAT
Banco de Dados DCC3380 3 DCC
Turma CódigoTurma CódigoDisciplina Semestre Ano Professor
85 MAT2410 II 2018 Carlos
92 DCC1310 II 2018 Anderson
102 DCC3320 I 2019 Ana Cristina
112 MAT2410 II 2019 Samira
119 DCC1310 II 2019 Anderson
135 DCC3380 II 2019 Mateus
Histórico CódigoEstudante CódigoTurma Nota
17 112 B
17 119 C
8 85 A
8 92 A
8 102 B
8 135 A
PréRequisito CódigoDisciplina CódigoPréRequisito
DCC3380 DCC3320
DCC3380 MAT2410
DCC3320 DCC1310
DCC-UFLA Prof. Denilson Alves Pereira 10
Diagrama ER de um Banco de Dados
DCC-UFLA Prof. Denilson Alves Pereira 11
Diagrama Relacional de um Banco de Dados
DCC-UFLA Prof. Denilson Alves Pereira 12
Aplicações de Bancos de
Dados
DCC-UFLA Prof. Denilson Alves Pereira 13
Aplicações de Bancos de Dados
Aplicações comerciais tradicionais
Armazenam dados textuais ou numéricos
Aplicações multimídia
Armazenam imagens, audio e vídeo
Incrementam as aplicações tradicionais
Sistemas de Informações Geográficas (GIS)
Armazenam mapas, dados sobre o clima e imagens de
satélite
DCC-UFLA Prof. Denilson Alves Pereira 14
Aplicações de Bancos de Dados
Sistemas de data warehousing e de processamento
analítico online (OLAP)
Extraem e analisam informações comerciais em grandes
bancos de dados
Auxiliam em tomadas de decisão
Tecnologias de tempo real
Controlam processos industriais e de manufatura
Bancos de dados NoSQL
Manipulam grandes volumes de dados (Big Data)
Operam normalmente em clusters de computadores
DCC-UFLA Prof. Denilson Alves Pereira 15
Bancos de Dados NoSQL
DCC-UFLA Prof. Denilson Alves Pereira 16
SGBDs NoSQL
DCC-UFLA Prof. Denilson Alves Pereira 17
Áreas Relacionadas
DCC-UFLA Prof. Denilson Alves Pereira 18
Áreas Relacionadas a Banco de Dados
Mineração de Dados (Data Mining)
Processo de encontrar anomalias, padrões e correlações
em grandes conjuntos de dados para auxiliar na tomada de
decisões
Recuperação de Informação (Information Retrieval)
Trata da representação, armazenamento, organização e
acesso a itens de informação
Documentos, páginas Web, catálogos online, registros estruturados
e objetos multimídia
DCC-UFLA Prof. Denilson Alves Pereira 19
Mineração de Dados
DCC-UFLA Prof. Denilson Alves Pereira 20
Recuperação de Informação
DCC-UFLA Prof. Denilson Alves Pereira 21
Recuperação de Informação
DCC-UFLA Prof. Denilson Alves Pereira 22
Máquina de Busca na Web
Recuperação e Ranking
Indexação
Coleta
Coleta de Páginas da Web
Coleção
de
Documentos
Pré-processamento
Consulta
Parse
Sistema
de
Consulta
Recuperação
e
Ranking
Web
Crawler
Índice
Resultado:
1. doc. d20
2. doc. d12
3. doc. d23
. . .
Recuperação e Ranking
Indexação
Coleta
Indexação de Dados
Coleção
de
Documentos
Pré-processamento
Consulta
Parse
Sistema
de
Consulta
Recuperação
e
Ranking
Web
Crawler
Índice
Resultado:
1. doc. d20
2. doc. d12
3. doc. d23
. . .
Recuperação e Ranking
Indexação
Coleta
Processamento de Consultas
Coleção
de
Documentos
Pré-processamento
Consulta
Parse
Sistema
de
Consulta
Recuperação
e
Ranking
Web
Crawler
Índice
Resultado:
1. doc. d20
2. doc. d12
3. doc. d23
. . .
DCC-UFLA Prof. Denilson Alves Pereira 26
Desambiguação de Dados
DCC-UFLA Prof. Denilson Alves Pereira 27
Desambiguação de Dados
DCC-UFLA Prof. Denilson Alves Pereira 28
Desambiguação de Dados
1 iPhone 7 32GB
2 Apple iPhone 7 32GB
3 Smartphone Apple iPhone 7 32GB
4 Smartphone Apple iPhone 6 32GB
5 Capa iPhone 7
DCC-UFLA Prof. Denilson Alves Pereira 29
Análise de Sentimentos
Revisão de Produtos/Serviços
DCC-UFLA Prof. Denilson Alves Pereira 30
Análise de Sentimentos
(1) Eu comprei um iPhone dois dias atrás. (2) Ele era muito
chique. (3) A tela de toque (touch screen) era realmente
muito legal. (4) A qualidade de voz era muita clara. (5)
Entretanto, minha mãe foi muito má comigo porque eu não
falei pra ela antes de comprá-lo. (6) Ela também achou que
o telefone era muito caro, e queria devolvê-lo para a loja…
Entidades: iPhone, Mãe
Aspectos: tela de toque, qualidade de voz, preço
Sentimentos: positivos, exceto para o aspecto preço e a
entidade Mãe
DCC-UFLA Prof. Denilson Alves Pereira 31
Ciência de Dados
DCC-UFLA Prof. Denilson Alves Pereira 32
Características da Abordagem
de Banco de Dados
DCC-UFLA Prof. Denilson Alves Pereira 33
Abordagens: Arquivos X Banco de Dados
Abordagem de processamento de arquivo tradicional
Técnica mais antiga
Cada usuário define e implementa os arquivos necessários
para uma aplicação específica
A definição de dados faz parte do programa da aplicação
Abordagem de banco de dados
Uma única base de dados é definida e mantida para ser
usada por vários usuários
Usa-se um SGBD
DCC-UFLA Prof. Denilson Alves Pereira 34
Abordagem de Banco de Dados
As informações descrevendo a estrutura do banco de
dados são armazenadas no Catálogo, e são chamadas de
metadados
Exceto nos sistemas NoSQL
O Catálogo é usado pelo SGBD e pode vir a ser
consultado pelo usuário do banco de dados
DCC-UFLA Prof. Denilson Alves Pereira 35
Exemplo de Metadados
Estudante
Nome CódigoEstudante TipoAluno DepartamentoPrincipal
Disciplina
Nome CódigoDisciplina Créditos Departamento
Nome das tabelas
Nome dos atributos
Tipo de dados dos atributos:
CodigoEstudante: número inteiro
TipoAluno: número inteiro
DepartamentoPrincipal: cadeia de 3 caracteres
. . .
DCC-UFLA Prof. Denilson Alves Pereira 36
Independência entre Programas e Dados
Abordagem de processamento de arquivos:
A estrutura do arquivo de dados está embutida nos
programas que realizam o acesso aos dados
Abordagem de banco de dados:
Os programas de acesso aos dados são independentes da
estrutura de armazenamento dos dados
Com o uso da orientação por objetos, as operações sobre
os dados são definidas como parte do banco de dados,
permitindo a independência entre programas e operações
Abstração de dados é a característica que permite a
independência entre programas e dados e a
independência entre programas e operações
DCC-UFLA Prof. Denilson Alves Pereira 37
Suporte a Múltiplas Visões dos Dados
Cada usuário pode “exergar” uma parte do banco de
dados, de acordo com a sua perspectiva
Uma visão (view) pode ser um subconjunto do banco de
dados
Uma visão pode ser composta por dados virtuais que são
derivados dos arquivos do banco de dados, mas não
estão explicitamente armazenados
DCC-UFLA Prof. Denilson Alves Pereira 38
Processamento de Transação Multiusuário
Um SGBD multiusuário deve permitir que vários usuários
acessem o banco de dados ao mesmo tempo
O acesso simultâneo é essencial se os dados de várias
aplicações são integrados e mantidos em um único banco
de dados
Uma transação é um programa em execução, ou
processo, o qual faz leituras e atualizações no banco de
dados
Um SGBD deve possuir software de controle de
concorrência
Várias transações podem estar sendo executadas ao
mesmo tempo
Uma transação não pode “interfererir” no resultado de outra,
gerando inconsistências nos dados
DCC-UFLA Prof. Denilson Alves Pereira 39
Usuários e Trabalhadores
Envolvidos
DCC-UFLA Prof. Denilson Alves Pereira 40
Usuários de um SGBD
Administradores do Banco de Dados (DBA) - são os
responsáveis pela administração do banco de dados, do
SGBD e de seu software. Autorizam o acesso, coordenam
e monitoram o uso e adquirem recursos de software e
hardware quando necessário. Cuidam também da
segurança e desempenho.
Projetistas do Banco de Dados - são os responsáveis pela
identificação dos dados a serem armazenados no banco
de dados e pela escolha da estrutura apropriada para
representar e armazenar esses dados
DCC-UFLA Prof. Denilson Alves Pereira 41
Usuários de um SGBD
Usuários Finais - são as pessoas cujos trabalhos
requerem acessar o banco de dados para fazer consultas,
modificações e gerar relatórios. Tipos de usuário final:
Casuais - raramente acessam o banco de dados, mas
podem precisar de diferentes informações em cada acesso
Iniciantes ou parametrizados - seu trabalho envolve a
realização de consultas e modificação do banco de dados
constantemente. Eles usam consultas e modificações
programadas e testadas
Especializados - usuários completamente familiarizados
com as facilidades do SGBD e que realizam requisitos
complexos
Isolados - mantém um banco de dados pessoal usando
pacotes prontos e fáceis de usar
DCC-UFLA Prof. Denilson Alves Pereira 42
Usuários de um SGBD
Analistas de Sistemas - determinam os requisitos dos
usuários finais e especificam o desenvolvimento de
transações de acordo com os requisitos
Programadores de Aplicações - implementam as
especificações como programas
DCC-UFLA Prof. Denilson Alves Pereira 43
Trabalhadores dos Bastidores
Projetistas e Implementadores de SGBDs - são aqueles
que projetam e implementam módulos e interfaces do
SGBD
Desenvolvedores de Ferramentas - são aqueles que
desenvolvem pacotes de software que facilitam o projeto e
o uso do sistema de banco de dados e que auxiliam no
aumento do desempenho
Operadores e responsáveis pela manutenção - são
aqueles responsáveis pela execução e manutenção de
software e hardware para o sistema de banco de dados
DCC-UFLA Prof. Denilson Alves Pereira 44
Vantagens do Uso de um
SGBD
DCC-UFLA Prof. Denilson Alves Pereira 45
Recursos oferecidos por um SGBD
Controle de Redundância - problemas com dados
redundantes: uma única alteração lógica deverá ser feita
diversas vezes, espaço em disco desperdiçado e
inconsistência de dados
Restrição de acesso - em um banco de dados utilizado por
vários usuários, nem todos podem acessar todas as
informações e nem todos podem realizar todas as
operações sobre o banco de dados
Armazenamento persistente para objetos e estruturas de
dados de programas - um objeto é persistente se ele
continua existindo após o término da execução de um
programa e pode ser acessado diretamente por um outro
programa
DCC-UFLA Prof. Denilson Alves Pereira 46
Recursos oferecidos por um SGBD
Estruturas de armazenamento e processamento eficiente
de consulta – uso de índices como estruturas de dados
eficientes para consultas e uso de um módulo de buffering
(ou caching) para manter partes do banco de dados em
memória principal
Backup e Recuperação - um SGBD deve fornecer
facilidades para recuperar os dados se ocorrer uma falha
de hardware ou de software
Múltiplas interfaces de usuários - os usuários do banco de
dados possuem um variado nível de conhecimento
técnico, e assim necessitam de interfaces diferentes
DCC-UFLA Prof. Denilson Alves Pereira 47
Recursos oferecidos por um SGBD
Representação de relacionamentos complexos entre os
dados - um SGBD deve representar os relacionamentos
entre os dados e também recuperar e modificar dados
relacionados de forma fácil e eficiente
Garantia das restrições de integridade - as restrições
podem ser simples como as relacionadas ao tipo de dado,
ou complexas como as que verificam se um registro em um
arquivo está relacionado a registros em outros arquivos
Dedução e açoes usando regras e gatilhos - os sistemas de
banco de dados que possuem a capacidade de regras de
dedução são chamados Sistemas de Bancos de Dados
Dedutivos. Gatilhos (ou triggers) permitem a criação de
regras ativadas por atualizações em tabelas. Stored
Procedures podem ser usados para impor regras
DCC-UFLA Prof. Denilson Alves Pereira 48
Quando não usar um SGBD?
DCC-UFLA Prof. Denilson Alves Pereira 49
Quando não usar um SGBD
Para se usar um SGBD existe um aumento de custo em
relação ao tradicional sistema de arquivos que se deve a:
Investimento inicial em software, hardware e treinamento
Generalidade que um SGBD fornece para definir e processar os
dados
Fornecimento de segurança, controle de concorrência,
recuperação e funções de integridade
Isso torna desejável o uso do sistema de arquivos nas
seguintes situações:
O banco de dados e as aplicações são simples, bem definidas e a
expectativa de mudança é pequena
Requisitos de tempo-real de alguns programas
Sistemas embarcados com capacidade de armazenamento
limitada
Acesso de vários usuários aos dados não é requerido
DCC-UFLA Prof. Denilson Alves Pereira 50
Quando não usar um SGBD
Certos setores e aplicações decidiram não usar um
SGBD:
Ferramentas de CAD usadas por engenheiros
Sistemas de comunicação e comutação de empresas de
telefonia
Implementações de Sistemas de Informações Geográficas
DCC-UFLA Prof. Denilson Alves Pereira 51
Bibliografia Básica
Elmasri, Ramez; Navathe, Shamkant B. Sistemas de
Bancos de Dados. Editora Pearson, 7a edição, 2018
Sadalage, Pramod J.; Fowler, Martin. NoSQL Essencial:
Um Guia Conciso para o Mundo Emergente da
Persistência Poliglota. Novatec Editora, São Paulo, 2013.

Mais conteúdo relacionado

Semelhante a Introdução ao Banco de Dados (20)

Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
 
Bdii aula01 apresentacao
Bdii aula01 apresentacaoBdii aula01 apresentacao
Bdii aula01 apresentacao
 
Aulas TSI33A - Banco de Dados I (TSI UTFPR-Toledo)
Aulas TSI33A - Banco de Dados I (TSI UTFPR-Toledo)Aulas TSI33A - Banco de Dados I (TSI UTFPR-Toledo)
Aulas TSI33A - Banco de Dados I (TSI UTFPR-Toledo)
 
eduardo teste ubc
eduardo teste ubceduardo teste ubc
eduardo teste ubc
 
Banco de Dados - Conceitos
Banco de Dados - ConceitosBanco de Dados - Conceitos
Banco de Dados - Conceitos
 
Bancodedados
BancodedadosBancodedados
Bancodedados
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
 
Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1
 
Sql
SqlSql
Sql
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1
 
Ara7129 unidade-1-v1
Ara7129 unidade-1-v1Ara7129 unidade-1-v1
Ara7129 unidade-1-v1
 
aula01_Fundamentos de Banco de Dados.pptx.pdf
aula01_Fundamentos de Banco de Dados.pptx.pdfaula01_Fundamentos de Banco de Dados.pptx.pdf
aula01_Fundamentos de Banco de Dados.pptx.pdf
 
Bd02 banco de dados
Bd02 banco de dadosBd02 banco de dados
Bd02 banco de dados
 
Introdução a Banco de Dados (Parte 1)
Introdução a Banco de Dados (Parte 1)Introdução a Banco de Dados (Parte 1)
Introdução a Banco de Dados (Parte 1)
 
O que é um Banco de Dados?
O que é um Banco de Dados?O que é um Banco de Dados?
O que é um Banco de Dados?
 
josecws
josecwsjosecws
josecws
 
Aula1-Conceitos de SGBD
Aula1-Conceitos de SGBDAula1-Conceitos de SGBD
Aula1-Conceitos de SGBD
 
Sad01 elvis
Sad01 elvisSad01 elvis
Sad01 elvis
 

Introdução ao Banco de Dados

  • 1. Banco de Dados Introdução DCC-UFLA Prof. Denilson Alves Pereira denilsonpereira@ufla.br https://sites.google.com/ufla.br/denilsonpereira/ http://lattes.cnpq.br/4120230814124499 versão dos slides: mai/2020
  • 2. DCC-UFLA Prof. Denilson Alves Pereira 2 Conteúdo Conceitos básicos Exemplo de um banco de dados Aplicações de bancos de dados Áreas relacionadas Características da abordagem de banco de dados Usuários e trabalhadores envolvidos Vantagens do uso de um SGBD
  • 3. DCC-UFLA Prof. Denilson Alves Pereira 3 Conceitos Básicos
  • 4. DCC-UFLA Prof. Denilson Alves Pereira 4 Conceitos Básicos Dados Fatos conhecidos que podem ser armazenados e que têm algum significado implícito Exemplo: Uma coleção de nomes, endereços e telefones das pessoas que você conhece Banco de Dados Coleção de dados relacionados com as seguintes propriedades implícitas: Representa algum aspecto do mundo real É uma coleção coerente de dados com algum significado inerente É projetado, construído e ‘povoado’ com dados para um propósito específico
  • 5. DCC-UFLA Prof. Denilson Alves Pereira 5 Conceitos Básicos Sistema Gerenciador de Bancos de Dados (SGBD) Coleção de programas que permite ao usuário criar e manter um banco de dados Software de propósito geral que facilita os processos de definição, construção, manipulação e compartilhamento de bancos de dados entre várias aplicações e usuários Sistema de Banco de Dados Conjunto de software para manipular um banco de dados juntamente com o banco de dados
  • 6. DCC-UFLA Prof. Denilson Alves Pereira 6 Sistemas Gerenciadores de Bancos de Dados
  • 7. DCC-UFLA Prof. Denilson Alves Pereira 7 Sistema de Banco de Dados
  • 8. DCC-UFLA Prof. Denilson Alves Pereira 8 Exemplo de um Banco de Dados
  • 9. DCC-UFLA Prof. Denilson Alves Pereira 9 Exemplo de um Banco de Dados Relacional Estudante Nome CódigoEstudante TipoAluno DepartamentoPrincipal João 17 1 DCC José 8 2 DCC Disciplina Nome CódigoDisciplina Créditos Departamento Introducão à Ciência da Computação DCC1310 4 DCC Estrutura de Dados DCC3320 4 DCC Matemática Discreta MAT2410 3 MAT Banco de Dados DCC3380 3 DCC Turma CódigoTurma CódigoDisciplina Semestre Ano Professor 85 MAT2410 II 2018 Carlos 92 DCC1310 II 2018 Anderson 102 DCC3320 I 2019 Ana Cristina 112 MAT2410 II 2019 Samira 119 DCC1310 II 2019 Anderson 135 DCC3380 II 2019 Mateus Histórico CódigoEstudante CódigoTurma Nota 17 112 B 17 119 C 8 85 A 8 92 A 8 102 B 8 135 A PréRequisito CódigoDisciplina CódigoPréRequisito DCC3380 DCC3320 DCC3380 MAT2410 DCC3320 DCC1310
  • 10. DCC-UFLA Prof. Denilson Alves Pereira 10 Diagrama ER de um Banco de Dados
  • 11. DCC-UFLA Prof. Denilson Alves Pereira 11 Diagrama Relacional de um Banco de Dados
  • 12. DCC-UFLA Prof. Denilson Alves Pereira 12 Aplicações de Bancos de Dados
  • 13. DCC-UFLA Prof. Denilson Alves Pereira 13 Aplicações de Bancos de Dados Aplicações comerciais tradicionais Armazenam dados textuais ou numéricos Aplicações multimídia Armazenam imagens, audio e vídeo Incrementam as aplicações tradicionais Sistemas de Informações Geográficas (GIS) Armazenam mapas, dados sobre o clima e imagens de satélite
  • 14. DCC-UFLA Prof. Denilson Alves Pereira 14 Aplicações de Bancos de Dados Sistemas de data warehousing e de processamento analítico online (OLAP) Extraem e analisam informações comerciais em grandes bancos de dados Auxiliam em tomadas de decisão Tecnologias de tempo real Controlam processos industriais e de manufatura Bancos de dados NoSQL Manipulam grandes volumes de dados (Big Data) Operam normalmente em clusters de computadores
  • 15. DCC-UFLA Prof. Denilson Alves Pereira 15 Bancos de Dados NoSQL
  • 16. DCC-UFLA Prof. Denilson Alves Pereira 16 SGBDs NoSQL
  • 17. DCC-UFLA Prof. Denilson Alves Pereira 17 Áreas Relacionadas
  • 18. DCC-UFLA Prof. Denilson Alves Pereira 18 Áreas Relacionadas a Banco de Dados Mineração de Dados (Data Mining) Processo de encontrar anomalias, padrões e correlações em grandes conjuntos de dados para auxiliar na tomada de decisões Recuperação de Informação (Information Retrieval) Trata da representação, armazenamento, organização e acesso a itens de informação Documentos, páginas Web, catálogos online, registros estruturados e objetos multimídia
  • 19. DCC-UFLA Prof. Denilson Alves Pereira 19 Mineração de Dados
  • 20. DCC-UFLA Prof. Denilson Alves Pereira 20 Recuperação de Informação
  • 21. DCC-UFLA Prof. Denilson Alves Pereira 21 Recuperação de Informação
  • 22. DCC-UFLA Prof. Denilson Alves Pereira 22 Máquina de Busca na Web
  • 23. Recuperação e Ranking Indexação Coleta Coleta de Páginas da Web Coleção de Documentos Pré-processamento Consulta Parse Sistema de Consulta Recuperação e Ranking Web Crawler Índice Resultado: 1. doc. d20 2. doc. d12 3. doc. d23 . . .
  • 24. Recuperação e Ranking Indexação Coleta Indexação de Dados Coleção de Documentos Pré-processamento Consulta Parse Sistema de Consulta Recuperação e Ranking Web Crawler Índice Resultado: 1. doc. d20 2. doc. d12 3. doc. d23 . . .
  • 25. Recuperação e Ranking Indexação Coleta Processamento de Consultas Coleção de Documentos Pré-processamento Consulta Parse Sistema de Consulta Recuperação e Ranking Web Crawler Índice Resultado: 1. doc. d20 2. doc. d12 3. doc. d23 . . .
  • 26. DCC-UFLA Prof. Denilson Alves Pereira 26 Desambiguação de Dados
  • 27. DCC-UFLA Prof. Denilson Alves Pereira 27 Desambiguação de Dados
  • 28. DCC-UFLA Prof. Denilson Alves Pereira 28 Desambiguação de Dados 1 iPhone 7 32GB 2 Apple iPhone 7 32GB 3 Smartphone Apple iPhone 7 32GB 4 Smartphone Apple iPhone 6 32GB 5 Capa iPhone 7
  • 29. DCC-UFLA Prof. Denilson Alves Pereira 29 Análise de Sentimentos Revisão de Produtos/Serviços
  • 30. DCC-UFLA Prof. Denilson Alves Pereira 30 Análise de Sentimentos (1) Eu comprei um iPhone dois dias atrás. (2) Ele era muito chique. (3) A tela de toque (touch screen) era realmente muito legal. (4) A qualidade de voz era muita clara. (5) Entretanto, minha mãe foi muito má comigo porque eu não falei pra ela antes de comprá-lo. (6) Ela também achou que o telefone era muito caro, e queria devolvê-lo para a loja… Entidades: iPhone, Mãe Aspectos: tela de toque, qualidade de voz, preço Sentimentos: positivos, exceto para o aspecto preço e a entidade Mãe
  • 31. DCC-UFLA Prof. Denilson Alves Pereira 31 Ciência de Dados
  • 32. DCC-UFLA Prof. Denilson Alves Pereira 32 Características da Abordagem de Banco de Dados
  • 33. DCC-UFLA Prof. Denilson Alves Pereira 33 Abordagens: Arquivos X Banco de Dados Abordagem de processamento de arquivo tradicional Técnica mais antiga Cada usuário define e implementa os arquivos necessários para uma aplicação específica A definição de dados faz parte do programa da aplicação Abordagem de banco de dados Uma única base de dados é definida e mantida para ser usada por vários usuários Usa-se um SGBD
  • 34. DCC-UFLA Prof. Denilson Alves Pereira 34 Abordagem de Banco de Dados As informações descrevendo a estrutura do banco de dados são armazenadas no Catálogo, e são chamadas de metadados Exceto nos sistemas NoSQL O Catálogo é usado pelo SGBD e pode vir a ser consultado pelo usuário do banco de dados
  • 35. DCC-UFLA Prof. Denilson Alves Pereira 35 Exemplo de Metadados Estudante Nome CódigoEstudante TipoAluno DepartamentoPrincipal Disciplina Nome CódigoDisciplina Créditos Departamento Nome das tabelas Nome dos atributos Tipo de dados dos atributos: CodigoEstudante: número inteiro TipoAluno: número inteiro DepartamentoPrincipal: cadeia de 3 caracteres . . .
  • 36. DCC-UFLA Prof. Denilson Alves Pereira 36 Independência entre Programas e Dados Abordagem de processamento de arquivos: A estrutura do arquivo de dados está embutida nos programas que realizam o acesso aos dados Abordagem de banco de dados: Os programas de acesso aos dados são independentes da estrutura de armazenamento dos dados Com o uso da orientação por objetos, as operações sobre os dados são definidas como parte do banco de dados, permitindo a independência entre programas e operações Abstração de dados é a característica que permite a independência entre programas e dados e a independência entre programas e operações
  • 37. DCC-UFLA Prof. Denilson Alves Pereira 37 Suporte a Múltiplas Visões dos Dados Cada usuário pode “exergar” uma parte do banco de dados, de acordo com a sua perspectiva Uma visão (view) pode ser um subconjunto do banco de dados Uma visão pode ser composta por dados virtuais que são derivados dos arquivos do banco de dados, mas não estão explicitamente armazenados
  • 38. DCC-UFLA Prof. Denilson Alves Pereira 38 Processamento de Transação Multiusuário Um SGBD multiusuário deve permitir que vários usuários acessem o banco de dados ao mesmo tempo O acesso simultâneo é essencial se os dados de várias aplicações são integrados e mantidos em um único banco de dados Uma transação é um programa em execução, ou processo, o qual faz leituras e atualizações no banco de dados Um SGBD deve possuir software de controle de concorrência Várias transações podem estar sendo executadas ao mesmo tempo Uma transação não pode “interfererir” no resultado de outra, gerando inconsistências nos dados
  • 39. DCC-UFLA Prof. Denilson Alves Pereira 39 Usuários e Trabalhadores Envolvidos
  • 40. DCC-UFLA Prof. Denilson Alves Pereira 40 Usuários de um SGBD Administradores do Banco de Dados (DBA) - são os responsáveis pela administração do banco de dados, do SGBD e de seu software. Autorizam o acesso, coordenam e monitoram o uso e adquirem recursos de software e hardware quando necessário. Cuidam também da segurança e desempenho. Projetistas do Banco de Dados - são os responsáveis pela identificação dos dados a serem armazenados no banco de dados e pela escolha da estrutura apropriada para representar e armazenar esses dados
  • 41. DCC-UFLA Prof. Denilson Alves Pereira 41 Usuários de um SGBD Usuários Finais - são as pessoas cujos trabalhos requerem acessar o banco de dados para fazer consultas, modificações e gerar relatórios. Tipos de usuário final: Casuais - raramente acessam o banco de dados, mas podem precisar de diferentes informações em cada acesso Iniciantes ou parametrizados - seu trabalho envolve a realização de consultas e modificação do banco de dados constantemente. Eles usam consultas e modificações programadas e testadas Especializados - usuários completamente familiarizados com as facilidades do SGBD e que realizam requisitos complexos Isolados - mantém um banco de dados pessoal usando pacotes prontos e fáceis de usar
  • 42. DCC-UFLA Prof. Denilson Alves Pereira 42 Usuários de um SGBD Analistas de Sistemas - determinam os requisitos dos usuários finais e especificam o desenvolvimento de transações de acordo com os requisitos Programadores de Aplicações - implementam as especificações como programas
  • 43. DCC-UFLA Prof. Denilson Alves Pereira 43 Trabalhadores dos Bastidores Projetistas e Implementadores de SGBDs - são aqueles que projetam e implementam módulos e interfaces do SGBD Desenvolvedores de Ferramentas - são aqueles que desenvolvem pacotes de software que facilitam o projeto e o uso do sistema de banco de dados e que auxiliam no aumento do desempenho Operadores e responsáveis pela manutenção - são aqueles responsáveis pela execução e manutenção de software e hardware para o sistema de banco de dados
  • 44. DCC-UFLA Prof. Denilson Alves Pereira 44 Vantagens do Uso de um SGBD
  • 45. DCC-UFLA Prof. Denilson Alves Pereira 45 Recursos oferecidos por um SGBD Controle de Redundância - problemas com dados redundantes: uma única alteração lógica deverá ser feita diversas vezes, espaço em disco desperdiçado e inconsistência de dados Restrição de acesso - em um banco de dados utilizado por vários usuários, nem todos podem acessar todas as informações e nem todos podem realizar todas as operações sobre o banco de dados Armazenamento persistente para objetos e estruturas de dados de programas - um objeto é persistente se ele continua existindo após o término da execução de um programa e pode ser acessado diretamente por um outro programa
  • 46. DCC-UFLA Prof. Denilson Alves Pereira 46 Recursos oferecidos por um SGBD Estruturas de armazenamento e processamento eficiente de consulta – uso de índices como estruturas de dados eficientes para consultas e uso de um módulo de buffering (ou caching) para manter partes do banco de dados em memória principal Backup e Recuperação - um SGBD deve fornecer facilidades para recuperar os dados se ocorrer uma falha de hardware ou de software Múltiplas interfaces de usuários - os usuários do banco de dados possuem um variado nível de conhecimento técnico, e assim necessitam de interfaces diferentes
  • 47. DCC-UFLA Prof. Denilson Alves Pereira 47 Recursos oferecidos por um SGBD Representação de relacionamentos complexos entre os dados - um SGBD deve representar os relacionamentos entre os dados e também recuperar e modificar dados relacionados de forma fácil e eficiente Garantia das restrições de integridade - as restrições podem ser simples como as relacionadas ao tipo de dado, ou complexas como as que verificam se um registro em um arquivo está relacionado a registros em outros arquivos Dedução e açoes usando regras e gatilhos - os sistemas de banco de dados que possuem a capacidade de regras de dedução são chamados Sistemas de Bancos de Dados Dedutivos. Gatilhos (ou triggers) permitem a criação de regras ativadas por atualizações em tabelas. Stored Procedures podem ser usados para impor regras
  • 48. DCC-UFLA Prof. Denilson Alves Pereira 48 Quando não usar um SGBD?
  • 49. DCC-UFLA Prof. Denilson Alves Pereira 49 Quando não usar um SGBD Para se usar um SGBD existe um aumento de custo em relação ao tradicional sistema de arquivos que se deve a: Investimento inicial em software, hardware e treinamento Generalidade que um SGBD fornece para definir e processar os dados Fornecimento de segurança, controle de concorrência, recuperação e funções de integridade Isso torna desejável o uso do sistema de arquivos nas seguintes situações: O banco de dados e as aplicações são simples, bem definidas e a expectativa de mudança é pequena Requisitos de tempo-real de alguns programas Sistemas embarcados com capacidade de armazenamento limitada Acesso de vários usuários aos dados não é requerido
  • 50. DCC-UFLA Prof. Denilson Alves Pereira 50 Quando não usar um SGBD Certos setores e aplicações decidiram não usar um SGBD: Ferramentas de CAD usadas por engenheiros Sistemas de comunicação e comutação de empresas de telefonia Implementações de Sistemas de Informações Geográficas
  • 51. DCC-UFLA Prof. Denilson Alves Pereira 51 Bibliografia Básica Elmasri, Ramez; Navathe, Shamkant B. Sistemas de Bancos de Dados. Editora Pearson, 7a edição, 2018 Sadalage, Pramod J.; Fowler, Martin. NoSQL Essencial: Um Guia Conciso para o Mundo Emergente da Persistência Poliglota. Novatec Editora, São Paulo, 2013.