Buscar

Mapa Mental - Banco de Dados Distribuído

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

“Um processo de refinamento do esquema de 
banco de dados, que procura: 
Eliminar possíveis redundâncias (dados 
repetidos em entidades) 
Sanar problemas de dependências parciais entre 
atributos e 
Reduzir ao mínimo as anomalias de inclusão, 
alteração e exclusão.” (Alvez 2014, p. 109) 
SBGD
 1. Conceito
Um sistema de gerenciamento de 
banco de dados, ou SGBD, é um 
software projetado para auxiliar a 
manutenção e utilização de vastos 
conjuntos de dados.
4. 2FN
A entidade se encontra na segunda forma 
normal se, além de estar na primeira, todos os 
seus atributos forem totalmente dependentes 
da chave primária composta. 
Tendo como base o nosso exemplo, a entidade 
Item possui chave primária composta, que é 
constituída pelos atributos NumPedido e 
CodProduto 
Já os atributos Descricao e PrecoUnit não 
dependem totalmente dessa chave, ao 
contrário de Quantidade e ValorTotal
 2. Normalização
Dependência funcional é representada 
pela expressão X➔Y, em que X e Y são 
subconjuntos de atributos de uma 
relação qualquer 
Y é dependente funcionalmente de X 
Esquema de uma relação
Esquema de uma relação
1) MATRICULAALUNO ➔ {NOMEALUNO, 
DATAMATRICULA}: o valor do atributo 
MATRICULAALUNO determina o valor de outros dois 
atributos: NOMEALUNO e DATAMATRICULA; 
2) CODIGOCURSO ➔ NOMECURSO: o valor do atributo 
CODIGOCURSO determina o valor do atributo 
NOMECURSO; 
3) CODIGODISCIPLINA ➔ NOMEDISCIPLINA: o 
valor do atriburo CODIGODISCIPLINA determina o 
valor do atributo NOMEDISCIPLINA; 
4) {MATRICULAALUNO, CODIGOCURSO, 
CODIGODISCIPLINA} ➔ NOTAPROVA: a combinação 
de valores dos atributos MATRICULAALUNO, 
CODIGOCURSO E CODIGODISCIPLINA determina o 
valor do atributo NOTAPROVA. 
Conceito
Exemplo de pedido: 
Atributo
número pedido, nome do cliente, endereço cliente 
(rua, bairro, cidade e estado), código do produto, 
descrição do produto, quantidade a ser vendida, nome 
do vendedor, preço unitário produto, valor total do 
item, valor pedido 
Exemplo de tabela com dados não normalizados 
Base para o estudo das formas normais
 3. 1FN
Esquema da entidade pedido 
 
Os atributos que se repetem são removidos. 
Nesse caso, são: CodProduto, Descricao, 
Quantidade, PrecoUnit e ValorTotal 
Aplicação da 1FN
Fazendo essa decomposição, chega-se a duas 
entidades: uma para a ficha de pedido e outra 
para os produtos que constam nela 
 
 
Fazendo essa decomposição, chega-se a duas 
entidades: uma para a ficha de pedido e outra 
para os produtos que constam nela 
Uma vez que um pedido pode conter vários 
produtos, existe então uma relação 1:N (um-
para-muitos) 
A chave primária da entidade Pedido é o 
número do pedido, que é único para cada 
registro 
Já́ para a entidade Item, há uma chave 
primária formada pelo número do pedido e o 
código do produto 
Relacionamento pedido x item do pedido: 
Aplicação da 2FN
 
Relacionamentos pedido x item e item x produto 
5. 3FN
É preciso que ela já esteja na segunda e não 
possua nenhum atributo dependente de outro 
que não faça parte da chave primária 
No exemplo de pedido, existem atributos que 
identificam um cliente (nome do cliente e 
endereço completo) e um vendedor (nome do 
vendedor) 
Os dados dos atributos NomeCliente, 
EndCliente, CidCliente e UFCliente são 
dependentes de CodCliente 
É possível criar outra entidade, que pode ser 
denominada de Cliente 
Da mesma forma, NomeVendedor é 
dependente de CodVendedor
6. 4FN
As entidades se encontram normalizadas na 3FN 
Pode ocorrer de uma entidade conter um ou mais 
fatos multivalorados 
Tabela da relação de fornecedores, produtos e clientes 
 
Relações estabelecidas 4FN 
Aplicação da 3FN
 
Diagrama de entidade-relacionamento final 
após normalização 
7. 5FN
Uma entidade está na 5FN se, estando na 
4FN, não for possível reconstruir 
as informações originais a partir do conteúdo 
dos outros registros menores 
Exemplo: sistema de uma loja de materiais 
elétricos (como fios, fusíveis, lâmpadas etc.), 
e “padrões de entrada do consumidor”. Esses 
padrões são um tipo de produto, mas formado 
por um poste de concreto, uma caixa de 
medidor, “bengala” (conduíte com uma das 
extremidades curva) etc. Assim, quando 
houver uma venda 
de padrão, o sistema deve baixar o estoque 
de cada um dos seus componentes. Cada um 
desses componentes pode ser comprado pela 
loja individualmente, o que significa que eles 
podem constar em vários pedidos de compra 
Junção das entidades Fornecedor, Produto e 
Pedido com base no número do pedido 
Junção das entidades Fornecedor, Produto e 
Pedido com base no código do fornecedor 
ENTIDADES 
 
8. Tipos de banco de dados e 
os principais SGBDs utilizados
Coleções de relações na prática assumem a 
forma de tabelas de registros 
Representa os dados e os relacionamentos 
existentes entre eles por meio de uma 
coleção de tabelas 
Suporta uma pequena coleção fixa de tipos de 
dados (por exemplo: inteiros, datas, strings), 
entretanto, em muitos domínios de aplicação, 
tipos muito mais complexos precisam ser 
manipulados 
Banco de dados relacional – SGBDR
Alternativa aos sistemas relacionais 
Destina-se aos domínios de aplicação em que 
os objetos complexos desempenham um papel 
fundamental 
Estratégia influenciada pelas linguagens de 
programação orientadas a objetos 
Pode ser entendida como uma tentativa de 
acrescentar funcionalidade de SGBD em um 
ambiente de linguagem de programação 
Banco de Dados Orientado a Objetos – 
SGBDOO Arquitetura básica de um SGBD 
e aspectos operacionais Banco de dados: 
Um conjunto de dados relacionados 
Sistema de Gerenciamento de Banco de 
Dados (SGBD): 
Uma coleção de ferramentas e programas 
que permite aos usuários a criação e 
manutenção do próprio banco de dados 
Arquitetura simplificada 
Funções de um SGBD
Definição: Especificação dos tipos de dados, 
das estruturas das tabelas e das restrições 
que devem ser importas aos dados que serão 
armazenados. 
Construção: Processo de acumular os dados 
num meio de armazenamento totalmente 
controlado pelo SGBD. 
Manipulação: Operações como atualização do 
banco de dados (inclusão, exclusão e 
alteração de registros) e extração de dados, 
como consultas e relatórios impressos.
Estrutura do BD
Definição: Especificação dos tipos de dados, das 
estruturas das tabelas e das restrições que devem ser 
importas aos dados que serão armazenados. 
Construção: Processo de acumular os dados num meio de 
armazenamento totalmente controlado pelo SGBD. 
Manipulação: Operações como atualização do banco de 
dados (inclusão, exclusão e alteração de registros) e 
extração de dados, como consultas e relatórios impressos. 
 
Conforme Silberschatz et al. (2006, p. 525) salienta, “a 
arquitetura de um BD é bastante influenciada pelo sistema 
de computador subjacente em que o sistema de dados é 
executado, principalmente por aspectos como operação 
em: rede, paralelismo e distribuição” 
Aspectos inerentes à execução dos sistemas 
Rede: As redes de computadores permitem 
que algumas tarefas sejam executadas em um 
sistema servidor e outras sejam executadas 
em sistemas cliente. Essa divisão de trabalho 
tem levado a um sistema de banco de dados 
cliente-servidor. 
Paralelismo: O processamento paralelo 
dentro de um sistema de computador permite 
que as atividades do sistema de banco de 
dados sejam agilizadas, permitindo resposta 
mais rápida às transações, além de mais 
transações por segundo. A necessidade de 
processamento de consulta em paralelo levou 
a sistemas de banco de dados paralelos. 
Distribuição: A distribuição de dados pelos 
sites em uma organização permite que esses 
dados residam onde são gerados ou onde são 
mais necessários, mas ainda precisem ser 
acessados a partir de outros sites e de 
outros departamentos. Os sistemas de 
bancos de dados distribuídos tratam de dados 
distribuídos geográfica e administrativamente, 
espalhados por diversos sistemas de bancos 
de dados.
Arquitetura de duas e três camadas 
Estrutura geral de um sistema baseado naplataforma cliente-servidor 
Um sistema de computador centralizado 
1. Visão geral de BD
O desempenho de um SGBD em consultas 
feitas comumente em operações de 
atualização típicas é a medida definitiva do 
projeto de um banco de dados 
Um administrador de banco de dados pode 
melhorar o desempenho medindo o tamanho 
do pool de buffers ou a frequência dos 
pontos de verificação ou adicionando 
hardware para eliminar tais gargalos 
Utiliza as terminologias: campos de 
registro, registros (linhas) e tabela de dados 
O campo de um registro é a menor unidade 
destinada ao armazenamento de valores 
existente em um arquivo ou tabela de um 
banco de dados e que pode ser referenciado 
por um programa aplicativo 
Os tipos de dados básicos: caractere, 
numérico (com ou sem casas decimais), data, 
hora e lógico (valores do tipo verdadeiro ou 
falso)
Adm de SGBD
2. Tarefas DBA
O DBA é responsável por autorizar o 
acesso ao banco de dados, coordenar e 
monitorar seu uso e adquirir recursos de 
software e hardware conforme a 
necessidade 
Questões de utilização do sistema: 
segurança e tempo de resposta, 
dependendo do tamanho do banco de 
dados e da organização. O DBA é 
auxiliado por uma equipe 
Projeto dos esquemas conceitual e físico: 
interagir com os usuários do sistema para 
compreender quais dados devem ser 
armazenados no SGBD e como eles serão 
mais provavelmente utilizados 
Segurança e autorização: assegurar que o 
acesso não autorizado aos dados não seja 
permitido 
Disponibilidade de dados e recuperação de 
falhas: deve tomar medidas para assegurar 
que, caso o sistema falhe, os usuários 
possam continuar a acessar o máximo 
possível dos dados não corrompidos 
O Administrador
O DBA tem conta de usuário especial, o 
usuário efetua o login para acessar 
O SGBD, então, grava em um arquivo, 
denominado log do sistema, qualquer 
operação efetuada pelo usuário, como 
consulta, edição de dados ou inclusão de 
registros 
Esse recurso facilita a auditoria do sistema, 
no caso de haver alguma suspeita de 
adulteração das informações de forma 
indevida 
Criação de usuários 
Todo usuário é criado baseado no princípio 
do privilégio mínimo, o que implica acesso 
restrito 
Uma conta de usuário tem uma série de 
atributos que pode ser definida no momento 
de sua criação ou alterada posteriormente 
Comando CREATE USER pelo administrador 
de banco de dados 
O banco de dados utiliza o conceito de 
conjunto de privilégios mínimos ao criar um 
usuário 
Parte do princípio de que o usuário é criado, 
mas não tem privilégio para executar 
nenhuma tarefa até receber os privilégios 
necessários para isso 
Criação de users e definições de papéis
3. Aspectos de adm. dos SGDBs 
A segurança diz respeito a muitos 
aspectos da proteção de um sistema 
contra o uso não autorizado, incluindo 
autenticação de usuários, criptografia de 
informação, controle de acesso, políticas 
de firewall e detecção de intrusão 
A segurança de um sistema de banco de 
dados está relacionada diretamente à sua 
integridade e proteção das informações 
armazenadas nele 
 
 
Um problema de segurança comum aos 
sistemas de computação é impedir que 
pessoas não autorizadas acessem o 
sistema, seja para obter informações, seja 
para fazer mudanças maliciosas em uma 
parte do BD 
Elmasri e Navathe (2011) destacam quatro 
medidas: controle de acesso, controle de 
inferência, controle de fluxo e criptografia 
de dados. O responsável por esses 
controles é o DBA 
Dados Sensíveis 
Sensibilidade dos dados: a medida da 
importância atribuída aos dados por seu 
proprietário, com a finalidade de indicar sua 
necessidade de proteção 
Alguns BD contêm apenas dados 
confidenciais, enquanto outros podem não 
conter qualquer dado confidencial 
O tratamento do BD está relacionado ao 
controle de acesso 
 
Gráfico da hierarquia de tabelas, 
registros e campos: 
 
Exemplo de definição de tabela de 
dados em SQL 
 
Um registro (ou linhas) é o conjunto de 
campos que possuem valores de uma tabela 
Cada linha da tabela representa um 
registro. Nesse sentido, a tabela como um 
todo se resume a um agrupamento de 
linhas (registros) que são divididas em 
colunas (campos) 
 
Tabelas de dados: conjunto ordenado de 
registros/linhas. Cada registro possui o 
mesmo número de colunas (campos) 
Um banco de dados pode ser formado por 
uma ou mais tabelas, e cada uma deve ser 
definida de tal forma que somente possa 
conter um tipo de informação 
As aplicações normalmente utilizam várias 
tabelas do banco de dados. Exemplo: na 
geração de um relatório de vendas no mês 
ou o boletim escolar dos alunos
O banco de dados relacionais permite o 
gerenciamento de privilégios dos usuários 
em dois níveis 
 
Privilégios 
Para atribuir privilégios de inclusão: 
comando GRANT 
Para atribuir privilégio ao usuário criado: 
comando USERWPA 
Para remover/revogar os privilégios 
atribuídos: comando REVOKE 
Para remover privilégio atribuído ao 
usuário: comando USERWPA 
Em sistemas padrão SQL, a segurança é 
baseada no conceito de direitos ou 
privilégios: os usuários têm ou não 
permissão para executar determinadas 
operações. Atualmente, os privilégios são 
assim definidos: 
Sintonização do BD: as necessidades dos 
usuários evoluem, o DBA é responsável 
por modificar o banco de dados para 
assegurar desempenho adequado 
conforme os requisitos sofrem alterações 
Módulos componentes de um SGBD e suas 
interações 
1. Conceito
Conforme Alves (2014, p. 148): “[...] [há 
uma] forma de preservação e de 
recuperação de informações ou do banco de 
dados inteiro. Isso significa que o 
administrador deve fazer uso de recursos 
oferecidos pelo próprio servidor de banco 
de dados ou utilizar outro meio que 
possibilite ter cópias do banco de dados” 
Não é possível deixar a critério de uma 
única pessoa a execução da cópia de 
segurança 
O gerenciador de recuperação é um dos 
componentes do SGBD mais difíceis de se 
projetar e implementar, pois é chamado 
durante as falhas do sistema e precisa 
tratar com uma variedade de estados do 
banco de dados (Ramakrishnan, 2008) 
É aconselhável que as operações de backup 
e restore sejam executadas quando não 
houver usuários acessando o banco de 
dados 
Utilizar o método de cópia automática 
quando for oferecido
Seg. e Recup. 
Base de dados
2. Recuperação de Banco de 
Dados e Segurança
O ARIES é um algoritmo de recuperação 
projetado para trabalhar com uma 
estratégia de roubo, sem imposição. Quando 
o gerenciador de recuperação é ativado, 
após uma falha, o reinício ocorre em três 
fases 
Algoritmo de recuperação ARIES
Discos rígidos espelhados - 
arquitetura RAID 
RAID é sigla de Redundant Array 
Inexpensive/Independent Disk (Conjunto 
Redundante de Discos Econômicos/
Independentes) 
Maneira um pouco mais dispendiosa, porém 
mais segura e que não depende de terceiros. 
Em ambientes cliente/servidor que rodam 
aplicações de missão crítica, é possível 
encontrar máquinas inteiras espelhadas 
Arquitetura (hardware e software) permite 
que, se uma delas falhar, a outra entre em 
substituição, automaticamente, sem que os 
usuários percebam qualquer anomalia 
Discos rígidos espelhados - 
arquitetura RAID 
Para Ramakrishnan (2008, p. 497), a 
recuperação de mídia é baseada em fazer 
periodicamente uma cópia do banco de 
dados 
“Como copiar um objeto de banco de 
dados grande, por exemplo, um arquivo, 
pode demorar bastante e o SGBD 
precisa continuar com suas operações 
nesse meio- tempo, a criação de uma 
cópia é tratada de maneira semelhante a 
usar um ponto de verificação fuzzy”
3. Controle de concorrência
Controle de concorrência é a aplicação de 
diversas técnicas que são usadas para 
garantir a propriedade de não interferência 
ou isolamento das transações executadas 
simultaneamente 
São utilizados o que o autor define como 
protocolos de controle de concorrência, ou 
seja, um conjunto de regras que garante a 
serialização
4. Performance: conhecer 
técnicas de otimização de 
consultas
Paraexplicitar os exemplos de consulta, 
Ramakrishnan (2008) utiliza o esquema a 
seguir: 
 
O autor explica que as consultas SQL são 
otimizadas pela sua decomposição em um 
conjunto de unidades menores, chamadas 
blocos 
A otimização de um único bloco pode ser 
compreendida em termos de planos 
constituídos de operadores da álgebra 
relacional. A versão SQL dessa consulta 
aparece a seguir: 
 
A consulta tem dois blocos, e o bloco 
aninhado está representado a seguir. 
 
O otimizador examina os catálogos do 
sistema para recuperar informações sobre 
os tipos e comprimentos dos campos, as 
estatísticas acerca das relações 
referenciadas e os caminhos de acesso 
(índices) 
disponíveis para elas 
Depois, o otimizador considera cada bloco 
de consulta e escolhe um plano de avaliação 
de consulta para esse bloco 
5. Performance: conhecer 
técnicas de otimização de 
consultas (índices)
 
Ramakrishnan (2008) defende que os 
índices podem ser utilizados de várias 
maneiras e levarem a planos 
significativamente mais rápidos do que 
quaisquer outros que não os utilize 
 
Percorre a estrutura da árvore do índice 
para localizar os registros por comparação, 
extraindo somente aqueles registros 
necessários para satisfazerem os critérios 
passados pela consulta 
Antes de tomar qualquer decisão, o 
otimizador de consultas, componente 
responsável pela análise do melhor plano de 
execução da consulta, determina qual 
método será mais eficiente para recuperar 
os dados 
São apresentadas duas estratégias de 
recuperação: 
Primeira: se houver dano extensivo a uma 
grande parte do banco de dados devido à 
falha catastrófica, como uma falha de 
disco, o método de recuperação restaura 
uma cópia antiga do banco de dados que 
teve backup para o arquivamento e 
reconstrói um estado mais recente, 
reaplicando ou refazendo as operações 
das transações confirmadas do log em 
backup, até o momento da falha (Elmasri; 
Navathe, 2011) 
Segunda: quando o banco de dados no 
disco não está danificado fisicamente e há 
uma falha não catastrófica, a estratégia 
de recuperação é identificar quaisquer 
mudanças que possam causar uma 
inconsistência no banco de dados. Por 
exemplo: uma transação que atualizou 
alguns itens do banco de dados no disco, 
mas não confirmou as necessidades de ter 
suas mudanças revertidas ao desfazer 
suas operações de gravação (Elmasri; 
Navathe, 2011) 
Para Elmasri e Navathe (2011), o protocolo 
de bloqueio em duas fases “emprega a 
técnica de bloqueio de itens de dados para 
impedir que múltiplas transações acessem 
os itens ao mesmo tempo”. De acordo com 
os autores, os protocolos de bloqueio são 
utilizados na maioria dos SGBDs 
comerciais
Ramakrishnan (2008, p. 444) defende que 
“bloqueio é um pequeno objeto de controle 
associado a um objeto do banco de dados” 
Para ele, o protocolo de bloqueio “é um 
conjunto de regras a serem seguidas por 
transação (e impostas pelo SGBD) para 
garantir que, mesmo intercalando as ações 
de várias transações, o resultado seja 
idêntico à execução de todas as transações 
em alguma ordem serial” 
O autor especifica que diferentes 
protocolos de bloqueio usam diferentes 
tipos de bloqueios, como bloqueios 
compartilhados ou exclusivos 
(Ramakrishnan, 2008) 
Na visão de Ramakrishnan (2008), há 
outro fator que afeta o controle de 
concorrência, a granularidade dos itens de 
dados, ou seja, parte do banco de dados que 
um item de dados representa 
Um item de banco de dados é variável, pois 
pode ser pequeno ou grande, tal como um 
dos seguintes itens: 
“Um registro de banco de dados 
Um valor de campo de um registro de 
banco de dados 
Um bloco de disco Um arquivo inteiro 
Um banco de dados 
inteiro” (Ramakrishnan, 2008, p. 497) 
1. Conceito
O data warehouse oferece armazenamento, 
funcionalidades e responsividade para as 
consultas, além das capacidades dos bancos 
de dados orientados para a transação 
É projetado exatamente para dar suporte à 
extração, ao processamento e à 
apresentação eficiente para fins analíticos e 
de tomada de decisão 
Contém uma quantidade muito grande de 
dados de várias fontes 
Fontes que podem incluir bancos de dados 
de diferentes modelos de dados e às vezes 
arquivos adquiridos de sistemas e 
plataformas independentes 
Data Warehouse
Definições das aplicações p/ uso do DW
2.Modelagem de dados p/ DW
Para modelagem de dados, de acordo com 
Elsmari e Navathe (2011), deve ser levada 
em consideração a tipologia 
Em modelos multidimensionais, ocorre o 
relacionamento dos dados em matrizes 
multidimensionais. Essas matrizes são 
chamadas de cubo de dados e podem ter 
mais de três dimensões, sendo chamadas de 
hipercubo 
Utilizando como exemplo uma planilha de 
vendas regionais por produto, para 
determinado período, os produtos poderiam 
ser mostrados como linhas, e as receitas de 
venda para cada região compreenderiam as 
colunas 
A figura abaixo mostra essa organização, 
que é uma planilha-padrão de matriz 
bidimensional 
 
Ao acrescentar uma dimensão de tempo, 
como os trimestres fiscais de uma 
organização, produz-se uma matriz 
tridimensional, como na figura ao abaixo: 
 
 
 
3.Projeto de DW
Para a construção de um data warehouse, 
segundo Elsmari e Navathe (2011), os 
responsáveis devem ter uma visão ampla e 
antecipada de seu uso 
Não existe um meio de antecipar todas as 
consultas ou análises possíveis durante a 
fase do projeto 
O projeto deve aceitar especificamente a 
consulta ocasional, ou seja, acessar dados 
com qualquer combinação significativa de 
valores para os atributos nas tabelas de 
dimensão ou fatos 
Etapas de aquisição de dados de DW
Armazenamento de dados de acordo com o 
modelo de dados do armazém 
Criação e manutenção das estruturas de 
dados exigidas 
Criação e manutenção dos caminhos de 
acesso apropriados 
Fornecimento de dados variáveis no tempo 
à medida que novos dados são incluídos 
Suporte para atualização dos dados do data 
warehouse 
Atualização dos dados 
Eliminação dos dados 
Processos de armazenamento de dados
Projeção de uso 
O ajuste de modelo de dados 
Características das fontes disponíveis 
Projeto do componente de metadados 
Projeto de componente modular 
Projeto de facilidade de gerenciamento de mudança 
Considerações de arquitetura distribuída e paralela 
Elementos p/ o projeto do DW
 4.Ferramentas de DW
Visão conceitual multidimensional 
Dimensionalidade genérica 
Dimensões e níveis de agregação 
ilimitados 
Operações e restritas entre dimensões 
Tratamento dinâmico de matriz esparsa 
Arquitetura cliente-servidor 
Suporte para múltiplos usuários 
Arquitetura cliente-servidor 
Acessibilidade 
Transparência 
Manipulação intuitiva de dados 
Desempenho de relatório consistente 
Recurso de relatório flexível 
Data warehouse
Características diferenciadoras do DW
Data warehouses em nível 
empresarial
São imensos projetos que exigem 
investimento maciço de tempo e 
recursos.
Data warehouses 
virtuais
Oferecem visões de bancos de 
dados operacionais que são 
materializadas para acesso 
eficiente.
Data marts
Em geral, são voltados para um 
subconjunto da organização, como 
um departamento, e possuem um 
foco mais estreito.
 5.Servidores Olap 
De acordo com Ramakrishnan (2008, p. 
704), “as aplicações de Olap são dominadas 
por consultas ad hoc complexas. Em termos 
de SQL, essas consultas envolvem 
operadores de agrupamento e agregação” 
A maneira natural de pensar sobre 
consultas Olap típicas é em termos de um 
modelo de dados multidimensional. Nele, o 
foco é e uma coleção de medidas numéricas, 
em que cada medida depende de um 
conjunto de dimensões 
Exemplo baseado em dados de vendas: 
O atributo de medida do exemplo é vendas 
As dimensões são produto, local e tempo 
Identificamos um produto por um 
identificador único idp e, analogamente, 
identificamos o local por idloc e o tempo 
por idtempo 
Consideramos as informações de vendas 
como organizadas em um array 
tridimensional Vendas, como mostra a figuraa seguir 
Vendas: um conjunto de dados 
multidimensional: 
 
Os sistemas Olap realmente armazenam 
dados em um array multidimensional 
(implementado sem a suposição usual de 
linguagem de programação de que o array 
inteiro cabe na memória) 
Alguns dos atributos de uma dimensão 
descrevem a posição de um valor de 
dimensão com relação a essa hierarquia de 
valores de dimensão subjacente 
As hierarquias de produto, local e tempo de 
nosso exemplo aparecem no nível de 
atributo, na figura a seguir 
 
As informações sobre dimensões também 
podem ser representadas como uma 
coleção de relações 
OLAP - 
processamento 
analítico on-line
É um termo usado para descrever a análise de dados 
complexos do data warehouse. Nas mão de ferramentas Olap 
utilizam capacidades de computação distribuída para a 
análises que exigem mais armazenamento e poder de 
processamento do que pode estar localizada econômica e 
eficientemente em um desktop individual.
DSS - sistemas de 
apoio à decisão
Também conhecidos como sistemas de informações executivas. 
Não confunda com sistemas de integração empresarial. Ajudam 
os principais tomadores de decisões de uma organização com 
dados de nível mais alto em decisões complexas e importantes.
Mineração de dados
É usada para descoberta do conhecimento, o processo de 
procurar novo conhecimento imprevisto nos dados. 
Estudaremos sobre este assinto na próxima aula.
1
Os dados precisam ser extraídos de várias fontes heterogêneas, por 
exemplo, bando de dados ou outras entradas de dados, como aquelas que 
contêm dados do mercado financeiro ou dados ambientais.
2
Os dados precisam ser formatados por coerência dentro do data warehouse. 
Nomes, significados e domínios de dados de fontes não relacionadas 
precisam ser reconciliados.
3
Os dados precisam ser limpos para garantir a validade. A limpeza de dados 
é um processo complicado e complexo, que tem sido identificada como 
componente que mais exige trabalho na construção do data warehouse.
4
Os dados precisam ser ajustados ao modelo de dados do armazém. Baixar 
os dados de variáveis fontes. Devem ser instalados no modelo de dados no 
data warehouse.
5
Os dados precisam ser carregados uma tarefa significativa. São necessárias 
ferramentas de monitoramento para cargas, bem como métodos para 
recuperação de cargas incompletas ou incorretas.
Fases de reinício da ARIES
1. Analizar Identifica as páginas sujas no pool de buffers (isto é, 
alterações que não foram gravadas no disco)
2. Refazer
Repete todas as ações, partindo de um ponto apropriado no 
log, e restaura o bano de dados para o estado em que ele 
estava no momento da falha
3. Desfazer
Desfaz as ações das transações que não foram efetivadas 
para que o banco de dados reflita a penas as ações das 
transações efetivadas
Ações do DBA
Criação de conta
Essa ação cria conta e senha para um usuário 
ou grupo de usuários para permitir acesso ao 
SGBD
Concessão de privilégio Essa ação permite que o DBA conceda certos privilégios a determinas contas
Revogação de privilégio
Essa ação permite que o DBA conceda certos 
privilégios a determinas contas revogue 
(cancele) alguns privilégios que foram dados 
anteriormente a certas contas
Atribuição de nível de 
segurança
Essa ação consiste em atribuir contas do 
usuário ao nível de liberação de segurança 
apropriado
1. Conceito
De acordo com Ramakrishnan (2008, p. 
737), data mining, ou mineração de dados, 
consiste em encontrar tendências ou 
padrões interessantes em grandes 
conjuntos de dados para orientar decisões 
sobre atividades futuras 
Os padrões identificados por essa 
ferramenta podem fornecer ao analista de 
dados ideias úteis e inesperadas 
Essas ideias podem ser mais bem 
investigadas e podem ser aliadas a outras 
ferramentas de apoio à decisão 
Segundo Elmasri e Navathe (2011, p. 700), 
os objetivos da mineração de dados estão 
diretamente relacionados à descoberta do 
conhecimento 
A mineração de dados costuma ser 
executada com objetivos finais ou aplicações 
De uma perspectiva geral, esses objetivos 
se encontram nas seguintes classes 
Previsão 
Identificação 
Classificação 
Otimização 
Para Elmasri e Navathe (2011, p. 698), a 
mineração de dados está diretamente 
relacionada ao data warehousing. 
O objetivo de um data warehouse é dar 
suporte à tomada de decisão com dados 
Para ajudar em certos tipos de decisões, a 
mineração de dados pode ser usada com 
data warehouse
Data Mining
2. Aplicações de mineração de dados 
Marketing 
As aplicações incluem análise de 
comportamento do consumidor com base 
nos padrões de compra 
Finanças 
As aplicações incluem análise de crédito 
de clientes 
Manufatura 
As aplicações envolvem otimização de 
recursos como máquinas 
Saúde 
Algumas aplicações são para descoberta 
de padrões 
3. Relações do processo de 
mineração de dados 
Relação do processo de mineração de 
dados com descoberta de conhecimento, 
estatística e inteligência computacional 
Ramakrishnan (2008, p. 738) defende que 
a mineração de dados “está relacionada à 
subárea da estatística chamada análise de 
dados exploratória, que tem objetivos 
semelhantes e conta com medidas 
estatísticas” 
Relação com demais áreas de estudo, está 
intimamente relacionada às subáreas da 
inteligência artificial, chamadas descoberta 
de conhecimento e aprendizado de máquina 
As consultas podem ser realizadas em SQL, 
usando-se álgebra relacional, com algumas 
extensões 
OLAP fornece idiomas de consulta de nível 
mais alto, baseados no modelo de dados 
multidimensional 
Mineração de dados fornece as operações 
de análise mais abstratas 
4. Problemas
Os dados contêm ruído ou estão 
incompletos 
Se não forem entendidos e corrigidos, é 
provável que muitos padrões interessantes 
sejam perdidos e a confiabilidade dos 
padrões detectados será́ baixa 
O analista precisa decidir quais tipos de 
algoritmos de mineração são necessários 
Aplicá-los em um conjunto bem escolhido 
de amostras de dados e variáveis, sintetizar 
os resultados, aplicar outras ferramentas 
de apoio à decisão e mineração e iterar o 
processo 
Fases de um processo de 
descoberta de conhecimento 
A mineração de dados como parte do processo 
de descoberta do conhecimento é abordada por 
Elmasri e Navathe (2011) e Ramakrishnan 
(2008) como “a descoberta de conhecimento 
nos bancos de dados, que recebe a abreviação 
KDD (knowledge discovery in database); esse 
processo é composto de algumas etapas”. 
Data Mining Process
Deployment
Business Understanding
Data Understanding
Evaluation
Data Preparation 
Modeling
Arka38/shutterstock
1. Obtenção e normalização de dados 
Realizada a seleção dos dados, sobre itens 
específicos ou categorias de itens 
2. Limpeza de dados 
O ruído e as exceções são removidos e são 
realizadas correções ou eliminações de 
registros incorretos 
3. Seleção e transformação 
A seleção e a transformação de dados podem 
ser feitas para melhorar os dados com 
informações adicionais e reduzir a quantidade 
de dados 
4. Mineração 
Aplicados algoritmos de mineração de dados 
para extrair padrões interessantes 
5. Avaliação do conhecimento 
Os padrões são apresentados para os 
usuários finais. O resultado de qualquer etapa 
no processo KDD pode nos levar de volta a 
uma etapa anterior para refazermos o 
processo com o novo conhecimento obtido 
5.Tipos de conhecimentos 
A palavra “conhecimento” pode assumir 
diferentes aplicações. É interpretado de 
forma livre como algo que envolve algum 
grau de inteligência. 
Para que chegue nesse patamar, é 
necessário passar pela transformação de 
dados brutos da informação para o 
conhecimento. 
Conhecimento dedutivo e indutivo 
Conhecimento dedutivo deduz novas 
informações sobre o dado indicado, com 
base na aplicação de regras lógicas de 
dedução previamente especificadas 
Conhecimento indutivo descobre novas 
regras e padrões com base nos dados 
fornecidos 
Conhecimentos descobertos na 
mineração de dados 
Regras de associação 
Quando umacompradora adquire uma bolsa, 
ela provavelmente compra sapatos 
Hierarquia de classificação 
Uma população pode ser dividida em cinco 
faixas de possibilidade de crédito com base em 
um histórico de transações de créditos 
anteriores 
Padrões dentro da série temporal 
Dois produtos mostraram o mesmo padrão de 
vendas no verão, mas um padrão diferente no 
inverno 
Padrões sequenciais 
Se um paciente passou por uma cirurgia de 
ponte de safena para artérias bloqueadas e um 
aneurisma e, depois, desenvolveu ureia 
sanguínea alta um ano após a cirurgia, ele 
provavelmente sofrerá insuficiência renal nos 
próximos 18 meses 
Agrupamento 
Uma população inteira de dados de transação 
sobre uma doença pode ser dividida em grupos 
com base na similaridade dos efeitos colaterais 
produzidos 
6.Fases do processo de 
descoberta 
Uma das principais tecnologias em 
mineração de dados envolve a descoberta 
de regras de associação. Muitos algoritmos 
foram propostos para descobrir várias 
formas de regras 
O banco de dados é considerado uma 
coleção de transações, cada uma 
envolvendo um itemset (conjunto de itens) 
Ramakrishnan (2008) indica que essa regra 
deve ser lida como se segue: “Se uma 
caneta é comprada em uma transação, é 
provável que tinta também seja comprada 
nessa transação” 
Regra de associação: 
Regras de associação
O processo de aprender um modelo que 
descreve diferentes classes de dados 
também é chamado de aprendizado 
supervisionado. Utilizando o exemplo da 
aplicação bancária, os clientes que solicitam 
cartão de crédito podem ser classificados 
com risco fraco, risco médio ou risco bom 
Árvore de decisão da amostra para aplicações de cartão de 
crédito 
Classificação 
Exemplo citado: se um paciente passou por 
uma cirurgia de ponte de safena para 
artérias bloqueadas e um aneurisma e, 
depois, desenvolveu ureia sanguínea alta um 
ano após a cirurgia, ele provavelmente 
sofrerá insuficiência renal nos próximos 18 
meses 
A descoberta de padrões sequenciais é 
baseada no conceito de uma sequência de 
conjunto de itens 
A detecção de padrões sequenciais é 
equivalente à detecção de associações 
entre eventos com certos relacionamentos 
temporais 
Uma sequência de ações ou eventos é 
buscada 
Padrões sequenciais 
Exemplo citado: dois produtos mostraram o 
mesmo padrão de vendas no verão, mas um 
padrão diferente no inverno 
Sequências de eventos: cada evento pode 
ser certo tipo fixo de uma transação 
A sequência desses eventos constitui uma 
série temporal 
A série temporal pode ser comparada 
estabelecendo medidas de similaridade para 
identificar as vendas que se comportam de 
modo semelhante 
Padrões dentro da série temporal 
Exemplo citado: uma população inteira de 
dados de transação sobre uma doença pode 
ser dividida em grupos com base na 
similaridade dos efeitos colaterais 
produzidos 
O objetivo do agrupamento é particionar um 
conjunto de registros em grupos tais que os 
registros dentro de um grupo sejam 
similares entre si, e os registros 
pertencentes a dois grupos diferentes 
sejam diferentes 
Cada grupo é chamado de agrupamento, e 
cada registro pertence a exatamente um 
agrupamento 
Agrupamento 
1. Conceito
De acordo com Alves (2014, p. 133), “como 
uma coleção de diversos outros bancos de 
dados que se encontram espalhados por 
uma rede de computadores e são 
logicamente inter-relacionados” 
O autor destaca que, mesmo com as 
diversas localizações físicas, um 
gerenciamento centralizado permite um 
acesso a partir 
de qualquer estação cliente que esteja 
conectada à rede 
Elsmari e Navathe (2011, p. 590) definem 
um BDD “como uma coleção de múltiplos 
bancos de dados logicamente inter-
relacionados, distribuídos por uma rede de 
computadores, e um sistema de 
gerenciamento de banco de dados 
distribuído – SGBDD” 
O SGBDD é um sistema de software que 
gerencia um BDD e torna a distribuição 
transparente ao usuário 
Para Ramakrishnan (2008, p. 605), em um 
sistema de BDD, os dados são fisicamente 
armazenados em vários sites, e cada site 
normalmente é gerenciado por um sistema 
de gerenciamento de banco de dados 
(SGBD) capaz de executar 
independentemente dos outros sites 
A localização dos itens de dados e o grau de 
autonomia dos sites individuais têm um 
impacto significativo sobre todos os 
aspectos do sistema, incluindo a otimização 
e o processamento de consultas, o controle 
de concorrência e a recuperação 
BD Distribuído
2. Requisitos de BDD
Existem vários computadores, chamados 
sites ou nós. Esses sites devem ser 
conectados por uma rede 
de computadores básica para transmitir 
dados e comandos entre sites. 
É essencial que as informações nos bancos 
de dados sejam logicamente relacionadas 
Não é necessário que todos os nós sejam 
idênticos em relação aos dados, hardware e 
software 
Os sites podem estar localizados nas 
proximidades físicas ou podem estar 
distribuídos geograficamente por grandes 
distâncias 
Quanto ao Funcionamento 
Transparência
A ideia geral de ocultar detalhes da 
implementação dos usuários finais 
Um sistema altamente transparente oferece 
muita flexibilidade ao usuário final/
desenvolvedor, pois requer pouco ou 
nenhum conhecimento dos detalhes básicos 
de sua parte 
Autonomia 
Determina a extensão da qual os 
nós individuais ou BDs em um BDD 
conectado pode operar independentemente 
Flexibilidade e manutenção personalizada 
Relacionada à independência do 
uso do modelo de dados e técnicas de 
gerenciamento de transação entre os nós 
Projeto de comunicação 
Determina a extensão a qual cada nó pode 
decidir sobre o compartilhamento de 
informações com outros nós 
Projeto de execução 
Refere-se à independência dos usuários 
para atuarem conforme desejarem 
Confiabilidade e disponibilidade 
Confiabilidade é a probabilidade de um 
sistema estar funcionando (não parado) em 
certo ponto no tempo 
Disponibilidade é a probabilidade de que 
o sistema esteja continuamente disponível 
durante um intervalo de tempo 
A confiabilidade e a disponibilidade do banco 
de dados estão relacionadas aos defeitos, 
aos erros e às falhas associadas a ele 
Replicação dos dados 
Duplicação total ou parcial do banco de 
dados em mais de uma localização ou ponto 
da rede 
Útil para melhorar a disponibilidade dos 
dados, uma vez que agiliza as consultas 
globais na recuperação de dados 
Controle de concorrência 
Controle baseado em cópia distinta de item 
de dado 
Controle baseado em votação 
Diferenças nos modelos de dados 
Os BDs, em uma organização, vêm de 
uma série de modelos de dados e até 
mesmo 
de arquivos. Isso exige um mecanismo 
inteligente de processamento de 
consultas, que possa relacionar 
informações com base nos metadados 
Diferenças nas linguagens de consulta 
Até com o mesmo modelo de dados, as 
linguagens e suas versões variam, e cada 
sistema tem o próprio conjunto de tipos 
de dados, operadores de comparação, 
recursos de manipulação de strings etc. 
Diferenças nas restrições 
As facilidades de restrição para a 
especificação e a implementação variam 
de um sistema para outro. Existem 
recursos que devem ser reconciliados 
na construção de um esquema global 
Heterogeneidade semântica 
Ocorre quando existem diferenças no 
significado, na interpretação e no uso 
intencionado dos mesmos dados ou 
dados relacionados. Obstáculo para 
projeto de esquemas globais 
Autonomia de projeto do sistema de 
bancos de dados 
Refere-se à liberdade de escolher 
os parâmetros de projeto que 
repercutem na complexidade do BDD 
3. Vantagens x Desvantagens
Maior facilidade e flexibilidade de 
desenvolvimento da aplicação 
O desenvolvimento e a manutenção de 
aplicações em sites geograficamente 
distribuídos de uma organização são 
facilitados devido à transparência da 
distribuição e ao controle dos dados 
Maior confiabilidade e disponibilidade 
Isso é obtido pelo isolamento de falhas ao 
seu site de origem, sem afetar os outros 
bancos de dados conectados à rede 
Maiordesempenho 
Um SGBDD fragmenta o banco de 
dados ao manter os dados mais próximos 
de onde eles são mais necessários 
Expansão mais fácil 
Em um ambiente distribuído, a expansão 
do sistema em matéria de inclusão de mais 
dados, o aumento do tamanho do banco de 
dados ou a inclusão de mais 
processadores são muito mais fáceis 
Vantagens de um BDD Desvantagens de um BDD
4. Arquitetura de um BDD 
O modelo de BDD é fortemente baseado 
na arquitetura cliente/servidor e utiliza 
muito dos conceitos empregados nela 
É comum falar em sistemas 
multiprocessados quando se trata de BDDs 
 
Arquitetura em rede de banco de dados 
centralizado em um dos sites com acesso 
distribuído 
 
Arquitetura de BDD 
 
Dois tipos de arquiteturas de sistemas multiprocessador
Arquitetura de memória 
compartilhada (altamente acoplada)
Arquitetura de disco compartilhado 
(livremente acoplada)
Múltiplos processadores 
compartilham armazenamento 
secundário (disco) e também 
memória principal
Múltiplos processadores 
compartilham armazenamento 
(disco), mas cada um tem a própria 
memória principal

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes