26
Brasília-DF, 2011. Tópicos Avançados em Banco de Dados

Mod Topicos Avancados Em Banco de Dados v1

Embed Size (px)

Citation preview

Page 1: Mod Topicos Avancados Em Banco de Dados v1

Brasília-DF, 2011.

Tópicos Avançados em Banco de Dados

Page 2: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

2

Elaboração e compilação de textos:

Ibsen Gebrim Reis

Produção:

Equipe Técnica de Avaliação, Revisão Linguística e Editoração

Page 3: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

3

Sumário

Apresentação............................................................................................................................................. 4

Organização do Caderno de Estudos e Pesquisa ..................................................................................... 5

Organização da Disciplina ........................................................................................................................ 6

Introdução ................................................................................................................................................. 7

Unidade I – Banco de Dados Avançados .................................................................................................. 9

Capítulo 1 – Segurança, Autorização e Extensões .............................................................................. 9 Capítulo 2 – Extensões de Modelos de Dados para Aplicações Avançadas ......................................... 13

Unidade II – Data Mining .......................................................................................................................... 15

Capítulo 3 – Visão Geral: Regras, Classificação, Agrupamento e Aplicação ........................................ 15

Unidade III – Data Warehousing .............................................................................................................. 21

Capítulo 4 – Definição, Características, Funcionalidade e Comparação .............................................. 21

Para (não) Finalizar ................................................................................................................................... 25

Referências ............................................................................................................................................... 26

Page 4: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

4

Apresentação

Caro aluno,

Bem-vindo ao estudo da disciplina Tópicos Avançados em Banco de Dados.

Este é o nosso Caderno de Estudos e Pesquisa, material elaborado com o objetivo de contribuir para a realização e o desenvolvimento de seus estudos, assim como para a ampliação de seus conhecimentos.

Para que você se informe sobre o conteúdo a ser estudado nas próximas semanas, conheça os objetivos da disciplina, a organização dos temas e o número aproximado de horas de estudo que devem ser dedicadas a cada unidade.

A carga horária desta disciplina é de 40 (quarenta) horas, cabendo a você administrar o tempo conforme a sua disponibilidade. Mas, lembre-se, há uma data-limite para a conclusão do curso, incluindo a apresentação ao seu tutor das atividades avaliativas indicadas.

Os conteúdos foram organizados em unidades de estudo, subdivididas em capítulos de forma didática, objetiva e coerente. Eles serão abordados por meio de textos básicos, com questões para reflexão, que farão parte das atividades avaliativas do curso; serão indicadas, também, fontes de consulta para aprofundar os estudos com leituras e pesquisas complementares.

Desejamos a você um trabalho proveitoso sobre os temas abordados nesta disciplina. Lembre-se de que, apesar de distantes, podemos estar muito próximos.

A Coordenação

Page 5: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

5

Organização do Caderno de Estudos e Pesquisa

Apresentação: Mensagem da Coordenação.

Organização da Disciplina: Apresentação dos objetivos e da carga horária das unidades.

Introdução: Contextualização do estudo a ser desenvolvido por você na disciplina, indicando a importância desta para sua formação acadêmica.

Ícones utilizados no material didático

Provocação: Pensamentos inseridos no material didático para provocar a reflexão sobre sua prática e seus sentimentos ao desenvolver os estudos em cada disciplina.

Para refletir: Questões inseridas durante o estudo da disciplina para estimulá-lo a pensar a respeito do assunto proposto. Registre sua visão sem se preocupar com o conteúdo do texto. O importante é verificar seus conhecimentos, suas experiências e seus sentimentos. É fundamental que você reflita sobre as questões propostas. Elas são o ponto de partida de nosso trabalho.

Textos para leitura complementar: Novos textos, trechos de textos referenciais, conceitos de dicionários, exemplos e sugestões, para lhe apresentar novas visões sobre o tema abordado no texto básico.

Sintetizando e enriquecendo nossas informações: Espaço para você fazer uma síntese dos textos e enriquecê-los com sua contribuição pessoal.

Sugestão de leituras, filmes, sites e pesquisas: Aprofundamento das discussões.

Praticando: Atividades sugeridas, no decorrer das leituras, com o objetivo pedagógico de fortalecer o processo de aprendizagem.

Para (não) finalizar: Texto, ao final do Caderno, com a intenção de instigá-lo a prosseguir com a reflexão.

Referências: Bibliografia consultada na elaboração da disciplina.

Page 6: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

6

Organização do Caderno de Estudos e Pesquisa

Ementa:

Sistemas de apoio à decisão. Fundamentação do ciclo de construção de Data Warehouse. Modelagem multidimensional. Aspectos que descrevem o ciclo de planejamento e alinhamento estratégico de uma solução de DW para a organização e os componentes da arquitetura da solução. Tipos de ferramentas que compõe a solução de acesso e apresentação dos dados de um DW e formato de construção de análises nesses ambientes.

Objetivo:

• Aprofundar os conhecimentos sobre segurança e autorização em Banco de Dados.

• Discutir Segurança em Banco de Dados.

• Conceituar Banco de Dados Ativos.

• Definir Bancos de Dados Temporais e multimídias.

• Definir Data Mining.

• Conceituar Data Warehousing.

Unidade I – Banco de Dados Avançados

Carga horária: 20 horas

Conteúdo CapítuloSegurança e Autorização 1Extensões de Modelos de Dados para Aplicações Avançadas 2

Unidade II – Data Mining

Carga horária: 10 horas

Conteúdo CapítuloVisão Geral: Regras, Classificação, Agrupamento e Aplicação 3

Unidade III – Data Warehousing

Carga horária: 10 horas

Conteúdo CapítuloDefinição, Características, Funcionalidade e Comparação 4

Page 7: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

7

Introdução/Provocação

Quando falamos em armazenar, tratar e conservar informações, obrigatoriamente falamos em Banco de Dados, por isso o tema ora abordado toma proporções tais, que podemos pensar que tratar-se de uma questão difícil de assimilar.

Mas temos que levar em conta sempre que, os dados ou informações, dos quais somos responsáveis, podem significar o sucesso ou o fracasso de uma empresa.

Por isso, a segurança seja talvez a questão mais importante depois dos próprios dados.

Óbvio que existem questões legais e éticas que devemos abordar e o trabalho que desenvolveremos abordará esse tema também, além de tentar mostrar e conduzir o aluno no perfeito entendimento do que se chama Segurança em Banco de Dados.

Outros assuntos que abordaremos são a mineração de dados (Data Mining) e Data Warehousing, que vem a ser a utilização do conceito de gerenciamento de banco de dados no mais alto grau.

Esse estudo pretende despertar no cursista a capacidade de divisar novas alternativas sobre o tema, apesar de tratar-se de um estudo em que veremos caminhos já traçados.

Page 8: Mod Topicos Avancados Em Banco de Dados v1
Page 9: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

9

Unidade I

Banco de Dados Avançados

Capítulo 1 – Segurança e Autorização

“O fator que sempre me ajuda a vencer um obstáculo tem sido o obstáculo anterior.”

Henry Ford

Não devemos confundir segurança de dados com integridade de dados.

Segurança vem a ser a capacidade de preservar os dados contra eventuais adulterações, divulgações indevidas ou perdas.

Integridade é a capacidade de manter o dado com a precisão e validade exigidas.

Segundo, C. J. Date (1990, p. 457):

“A Segurança garante que os usuários tenham permissão para fazer o que estiverem tentando fazer.”

“A Integridade garante que as coisas que estão tentando fazer são corretas.”

Tipos de Segurança

Os perfis de segurança de acesso aos dados devem ser traçados levando-se em conta os seguintes tipos de segurança existentes.

• Legais, sociais e éticos:

Informações podem ser consideradas privadas, tanto legalmente quanto por questões sociais ou éticas.

Exemplo: quem faz uma solicitação referente a um crédito tem direito a acessar essa informação?

• Políticas:

As informações podem sofrer restrições conforme a política da empresa.

Exemplo: quem acessa o quê em um Banco de Dados?

Page 10: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

10

Banco de Dados Avançados Unidade I

• Pertinentes ao sistema:

O sistema determina qual o nível de acesso.

Exemplo: qual o critério de acesso do sistema de arquivos do sistema?

• Necessidades da organização:

Confunde-se com o tipo político, mas difere-se por se tratar de necessidade e não de estratégia política.

Exemplo: quem tem que acessar a informação?

Quando ocorre um uso indevido do Banco de Dados, podemos considerar como intencional ou acidental.

A perda acidental pode resultar de:

• quedas durante o processamento de transações;

• defeitos causados por acesso simultâneo (concorrência) aos dados;

• anormalidades na distribuição do Banco de Dados.

Em se tratando de perdas acidentais, o controle é mais fácil do que contra acessos indevidos ou maldosos ao Banco de Dados.

Como exemplos de formas maldosas, podemos citar:

• leitura não autorizada de dados (roubo de informações);

• modificação não autorizada de dados;

• destruição não autorizada de dados;

• inserção não autorizada de dados.

As empresas costumam encarecer o custo da invasão, para tentar desmotivar qualquer acesso insidioso.

Com a finalidade de proteger o BD, medidas de segurança devem ser tomadas em diversos níveis.

• Físico – torna o sistema fisicamente seguro contra entradas de intrusos.

• Humano – os controles dos acessos dos usuários são cuidadosamente estudados.

• Sistema operacional – a fragilidade na segurança do SO pode ser uma porta de acesso não-autorizado ao banco de dados.

• Sistema de BD – os usuários de sistemas de BD devem ter autorização de acesso somente a porções limitadas; outros usuários deverão ser habilitados a emitir consultas, com proibição de modificação de dados.

Visões

As visões podem ser um excelente meio de limitar o acesso aos dados, fazendo com que os usuários só acessem aquilo que realmente podem acessar. Uma visão pode esconder dados que o usuário não necessita ver. Elas tanto servem para facilitar o uso do Banco de Dados como para ajudar na proteção das informações.

Page 11: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

11

Banco de Dados Avançados Unidade I

Autorizações de acesso ao Banco de Dados

• De Leitura – (read) permite somente a leitura dos dados.

• De Inserção – (insert) permite a inserção de novos dados, mas não a alteração de dados já existentes.

• De Atualização – (update) permite a alteração dos dados, mas não a exclusão (delete).

• De Exclusão – (delete) permite a exclusão.

Existem outras formas de autorizações que podem permitir ou proibir a estrutura das relações.

• De Índice – (index) concede ao usuário a permissão para criação e/ou remoção de índices.

• De Recursos – (resource) permite a criação de novas relações, gatilhos, procedures.

• De Alteração – (alteration) permite a adição ou remoção de atributos na relação.

• De Remoção – (drop) permite a remoção das relações.

Segurança do Banco e o DBA

O Administrador de Banco de Dados (DBA) é o responsável pelo gerenciamento de um sistema de Banco de Dados.Ele é o responsável pela concessão de privilégios de acesso e classificação dos usuários do sistema de acordo com as determinações das políticas de segurança.

O DBA possui uma conta própria com direitos de acesso a toda e qualquer instância do Banco de Dados. Seu papel é manter a integridade do Banco, tanto com relação às contas de acesso quanto à consistência dos dados, além de se encarregar do tunning do Banco, no que se refere a performance do mesmo, cópia de segurança dos dados, criação de índices, triggers, stored procedures etc.

Proteção, contas e auditoria

Todas as vezes que for necessário o acesso de um novo usuário ou a modificação do perfil de acesso de um já existente, o DBA criará uma nova conta com as permissões ou modificará as configurações de um já existente.

Especificação de segurança em SQL

Usamos o comando grant cuja sintaxe-padrão é a seguinte.

Grant <lista de autorizações> on <nome da relação> to <lista de usuários>.

Exemplos:

– Permissão de seleção (select) sobre uma relação de clientes, para os usuários [USR0, USR1].

Grant select on [clientes] to [USR0], [USR1].

– Conferindo a permissão de alteração (update):

Grant update [nome] on [clientes] to [USR0], [USR1].

Page 12: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

12

Banco de Dados Avançados Unidade I

Podemos especificar somente os campos em que o usuário pode realizar a alteração.

– A permissão de inserção (insert) tem a mesma estrutura do update.

Grant insert [nome] on [clientes] to [USR0], [USR1].

– Podemos eventualmente utilizar a instrução all privileges, que concede todos direitos ao usuário.

Grant all privileges on cliente to [USR0].

Normalmente, um usuário não pode transmitir seus direitos a outro, mas o DBA pode, de acordo as políticas de segurança adotadas no sistema de Banco de Dados, conceder essa permissão:

Grant select on [financiamento] to [USR0] with grant option.

– Para a revogação de privilégios, o DBA pode utilizar os seguintes comandos:

Revoke all privileges on [clientes] from [USR0].

Revoke select on [financiamento] from [USR0], [USR1], [USR2] cascade.

A título de fixação, elabore um plano de concessão de permissões que podem ser concedidas a um usuário, tendo como parâmetro um sistema de conta corrente.

Page 13: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

13

Banco de Dados Avançados Unidade I

Capítulo 2 – Extensões de Modelos de Dadospara Aplicações Avançadas

Com o crescente uso de sistemas de gerenciamento de Banco de Dados, o usuário passa a ficar mais exigente em relação ao que deseja obter de retorno dos sistemas Bancos de Dados e, com isso, a tecnologia tende a acompanhar as necessidades do mercado.

Surgem, então, diversas correntes tecnológicas que possibilitam a implementação de aplicações mais avançadas e complexas.

Vamos discutir neste capítulo, esses avanços em Banco de Dados: ativos, multimídia, temporais e dedutivos.

Conceitos de Banco de Dados Ativos

Esse conceito passa a existir quando os Bancos, até então, passivos, precisam tomar decisões, serem ativos com base em eventos.

Modelo generalizado para Banco de Dados Ativos

Gatilhos em Banco de Dados Ativos seguem o modelo ECA (evento-condição-ação).

• Evento é o agente que ativa a regra, normalmente operações explícitas em um Banco de Dados, mas podendo ser disparado por eventos temporais e/ou eventos externos.

• Condição é uma condição de opcionalidade que determina (quando verdadeira) se a regra será disparada, quando da ocasião do evento.

• Ação é o que ocorre quando o evento satisfaz a condição, podendo ser um sequência de comandos SQL, uma transação ou mesmo um programa externo.

Conceitos de Banco de Dados Temporais

Em geral, todo sistema de Banco de Dados trata de informações relativas a tempo. Um exemplo clássico é um controle acadêmico onde se deve armazenado o histórico de cada aluno, como ano e semestre cursado.

Mas os desenvolvedores normalmente não se preocupam especificamente com esse conceito. Devido, talvez, a sua complexidade, tratam essa informação como algo que não mereça atenção especial.

Tempo, calendários e dimensões temporais

O tempo é considerado como “uma sucessão ordenada de pontos, com alguma granulidade que é determinada pela aplicação”. (ELMASRI, 2006, p. 553).

Não havendo um limite para o que vem a ser tempo, temos que adotar um ponto de referência. Em Banco de Dados Temporais, a ideia é termos um a sequência cronológica com o que se passa com o dado, e só conseguimos isso associando dados temporais ao mesmo.

Page 14: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

14

Banco de Dados Avançados Unidade I

Bancos de Dados Multimídias

As imagens (fotografias, desenhos, filmes etc.) também precisam ser guardadas e recuperadas, com isso surge o conceito de Banco de Dados Multimídia, que vem a ser a capacidade do Banco em tratar imagens.

A grande dificuldade é o reconhecimento e para isso existem dois métodos conhecidos.

• Análise automática – Consiste em uma análise da imagem por meio da identificação de características matemáticas de seus conteúdos.

• Identificação manual – Identifica objetos e atividades em cada imagem, onde se faz necessário um préprocessamento manual, em que o usuário cria “marcas” que, posteriormente, servirão para a recuperação da imagem.

Introdução aos Bancos de Dados Dedutivos

Vem a ser a capacidade de um sistema de Banco de Dados poder deduzir a informação a ser recuperada, a partir de uma análise da base já existente.

Suas regras são especificadas por meio de alguma linguagem declarativa, em que especificamos o que queremos ao invés de como queremos.

O Banco interpreta essas regras usando o que se chama máquina de inferência ou mecanismo de dedução, que deduz os fatos novos.

Page 15: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

15

Unidade II

Data Mining

Capítulo 3 – Visão geral: Regras, Classificação,Agrupamento e Aplicação

A mineração de dados ou Data Mining é uma tecnologia emergente e uma das mais promissoras, segundo relatório do Gartner Group.

O Knowledge Discovery in Databases (KDD) – Processo de Descoberta de Conhecimento em Banco de Dados – é composto de seis outras fases: seleção de dados, limpeza, enriquecimento, transformação ou codificação, data mining, construção de relatórios e apresentação da informação descoberta.

Data

Seleção

Pré-Processamento

Transformação

Data Mining

Avaliação

Dados alvo

Dados Pré-processados

DadosTransformados

Padrões

Conhecimento

Figura 1 – Visão geral das etapas que constituem o processo KDD (Fayyad et al., 1996b).

O Data Mining é uma das aplicações da tecnologia de Data Warehousing. Alguns tipos de informação podem ser descobertas pela aplicação dessa tecnologia.

• Regras de associação – Analisa por associação o comportamento de um consumidor. Por exemplo, se um cliente compra cerveja ele pode comprar refrigerante também.

• Padrões sequenciais – Analisa o comportamento de consumidores que compram em uma sequência predeterminada. Se um cliente compra um rádio e depois de dois meses compra uma televisão, ele provavelmente comprará algum eletroeletrônico nos próximos 6 meses.

• Árvore de classificação – Os consumidores podem ser classificados pela frequência com que visitam lojas, por tipo de financiamento utilizado, por quantidade comprada ou simplesmente por afinidade com determinados tipos de itens.

As empresas estão utilizando Data Mining para tentar antecipar o comportamento do consumidor, principalmente para enfrentar uma forte concorrência.

Page 16: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

16

Data Mining Unidade II

Podemos citar como metas do Data Mining:

• Predição – Prever o comportamento de consumidores em relação a políticas de desconto, como o volume de vendas gerado em um determinado período, e se um linha de produto for descontinuada irá gerar lucro.

• Identificação – Utilizar padrões de dados para identificar a existência de um item, um evento ou uma atividade.

• Classificação – Classificar diferentes categorias de consumidores motivados por descontos fiéis, aficionados em uma marca e até eventuais, combinando parâmetros, a partir da segmentação de dados.

• Otimização – Otimizar o uso de recursos limitados como tempo, espaço, dinheiro ou materiais, bem como, as variáveis de saída, como vendas ou o lucro sobre determinado número de restrições, com o uso da tecnologia de Data Mining.

Usar Data Mining é induzir descobertas e não deduzi-las. Descobrem-se novas regras e/ou padrões e projetam-se comportamentos por meio da análise do comportamento de dados existentes.

• Regras de Associação – Ocorre a correlação de um item com outros de outra faixa de valores, de outro leque de variáveis. Exemplo: associa-se a compra de uma calça a compra de um cinto, um sapato, uma gravata.

• Hierarquia de Classificação – Cria-se uma hierarquia de classes a partir de um conjunto de eventos ou transações. Exemplo: dividir uma população em faixas de risco de créditos, utilizando-se histórico de transações anteriores.

• Padrões Sequenciais – Investiga-se uma sequência de eventos ou ações, que induzirá a ações a serem tomadas.

• Padrões com Séries Temporais – Exemplo: análise, em intervalos regulares, de uma sequência de vendas diárias ou preço diário de fechamento de ações.

• Clustering (agrupando) – Ocorre segmentação de dados similares a partir de eventos ou novos itens. Exemplo: o acesso pela internet de um conjunto de documentos feito por um grupo de usuários pode ser analisado em termos de palavras-chave dos documentos, permitindo identificar grupos ou categorias de usuários.

Regras de Associação

Para que possamos utilizar as regras de associação, algumas perguntas têm que ser respondidas a priori.

• O que caracteriza a ação de comprar um produto específico?

• Por que um produto é sempre comprado junto com outro?

• Quais produtos são adquiridos aos pares?

• O determinou a sequência de aquisição?

Um exemplo clássico é o citado em Hammer (1995), que relata a experiência de um supermercado que descobre, depois de uma análise por associação, que vendia mais cervejas quando estas estavam próximas à seção de fraldas.

Page 17: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

17

Data Mining Unidade II

Se o cliente comprou o produto A e o produto B, então ele também compra o produto C. Isso ocorre em cerca de 20% (vinte por cento) dos casos.

Assim podemos definir as regras de associação:

A => B, onde A e B são conjuntos que contém um ou mais elementos e o total damos o nome de T. Surgindo, então, dois parâmetros para analisar.

O primeiro é a frequência com que o A aparece. Na regra apresentada acima, o valor 20% indica o suporte, pois é dito que a regra é aplicada em 20% dos casos estudados.

O segundo é a credibilidade fornecida pelo percentual de 20%. No exemplo acima, indica que na maioria dos casos quem comprou A e B também, comprou C.

Classificação

Consiste na análise preditiva com o intuito de estabelecer padrões que podem determinar tendências futuras.

Também chamado de aprendizado supervisionado (ELMASRI, 2006, p. 634), pois, após montado, pode ser utilizado para classificação de novos dados.

Esse processo procura encontrar um modelo que descreva classes diferentes de dados. Por exemplo, em uma empresa, clientes podem ser classificados como de “risco baixo” ou “risco justo”.

Utiliza-se primeiramente um treinamento com um conjunto de dados que já foram classificados. Cada registro nos dados de treinamento, chamado rótulo de classe, indica a classe a qual o registro pertence O modelo criado, normalmente, ficará na forma de uma árvore de decisão ou um conjunto de regras.

Existe uma preocupação em relação ao modelo e o algoritmo que vem a ser a habilidade do modelo prever a classe correta dos novos dados, o custo computacional associado ao algoritmo e a sua escalabilidade.

Uma árvore de decisão é uma representação gráfica da descrição de cada classe ou, em outras palavras, uma representação das regras de classificação.

Analise o exemplo abaixo:

Algoritmo para indução de árvore de decisão

Input: conjunto de dados de treinamento Registros: R1, R2,.........., Rm e conjunto de atributos; A1, A2,..........An.

Output: árvore de decisão.

Procedure Constrói_árvore (Registros, Atributos)

Início

Criar um nó N;

Se todos os registros pertencem à mesma classe, C, então

Retorna N como um nó-folha com rótulo de classe C;

Se Atributos está vazio então

Page 18: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

18

Data Mining Unidade II

Retorna N como um nó-folha com rótula de classe C, com a maioria dos registros pertencentes a ela;

Seleciona o Atributo A1 (com o maior ganho de informação) de atributos;

Rotula nó N com A;

Para cada valor conhecido, Vj, de A1 faça

Início

Some um marca do nó N para a condição A1 = Vj;

Sj = subconjunto de Registros onde A1 = Vj;

Se Sj está vazio então

Adicione uma folha, L, com rótulo de classe C, como a maioria dos registros pertencentes a ela e retorna L

Senão some o nó retornado por Constói_árvore (Sj, Atributos - A);

fim.

simcasado

salário renda

idade

não

risco alto

risco baixo

risco justo

risco justo risco baixo

risco alto

< 20.000

> = 20.000

< = 50.000

> = 50.000 <20.000< = 5.000

< = 25 > = 25

Figura 2 – Exemplo de árvore de decisão para aplicações de cartão de crédito. (ELMASRI, 2006, p. 553).

Agrupamento (Clustering)

Este processo procura colocar em grupos os dados similares, mas não havendo classes preexistentes

Na sua definição mais comum Cluster – É uma coleção de objetos de dados, similares, mas não similares aos objetos externos.

Algoritmos:

K-means – Inicia com uma escolha randômica de k registros para representar a centroide, (média) m1,.....mk, dos grupamentos, C1,.....Ck. Todos os registros são colocados em um dado grupamento, baseados na distância entre os registros e a média do grupamento. Se a distância entre m1 e o registro RJ é a menor entre todas as médias do grupamento, então o registro RJ é colocado no grupamento Ci. Uma vez que todos os registros tenham sido colocados inicialmente em um grupamento, a média para cada grupamento é recalculada e assim sucessivamente.

Page 19: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

19

Data Mining Unidade II

Aplicação de Data Mining

O Data Mining, enquanto tecnologia aplicada no contexto da tomada de decisão, tem ganhando crescente espaço no meio empresarial, particularmente nas áreas a seguir.

Marketing – Aplicações como análises de comportamento do consumidor baseadas em padrões de consumos e definição de estratégias de marketing incluem propaganda, localização de lojas e mala direta direcionada, segmentação de clientes, lojas ou produtos, projetos de catálogos, layouts de lojas e campanhas de publicidade.

Finanças – Análise de crédito de clientes, segmentação de contas a receber, análise de performance de investimentos financeiros como ações e fundos mútuos, avaliação de opções de financiamentos e detecção de fraudes.

Produção – Aplicações que envolvem otimização de recursos como máquinas, força de trabalho e materiais; projetos ótimos de processos de fabricação, layouts de chão de fábrica, e projeto de produto, como de automóveis baseados nos requisitos de clientes.

Saúde – Aplicações que incluem descobertas de padrões em imagens radiológicas, análise de dados experimentais em microarray (gene chip) para relação com doenças, análise de efeitos colaterais de remédios e efetividade de certos tratamentos, otimização de processos dentro de um hospital, relação de saúde do paciente com qualificações do médico.

Page 20: Mod Topicos Avancados Em Banco de Dados v1
Page 21: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

21

Unidade III

Data Warehousing

Capítulo 4 – Visão Geral: Definição, Características,Funcionalidade e Comparação

Data warehouse é uma coleção de informações, um sistema de apoio focado na média e alta gerência das empresas, na recuperação de informações e não no processamento das mesmas.

Embora a mídia tenha “pegado carona” na popularidade do nome e colocado diversos produtos sob a bandeira da tecnologia de Data WareHouse, devemos ter em mente que ele não é um Banco de Dados como os tradicionais.

Elmasri (2006) apud W.H. INMON (1992) caracterizou um Data Warehouse como “uma coleção de dados orientada por assunto, integrada, não volátil, variante no tempo, que dá apoio às decisões da administração”.

Esse sistema dá suporte a demanda de alto desempenho por dados e informações, proporcionando acesso aos dados para análise complexa, descoberta de conhecimento e tomada de decisão.

Conhecimento

Avaliação Visualização

Data Mining

Seleção

Detabases

Limpeza

DWh As Bases de Dados são:

– Dinâmicas– Incompletas– Redundantes– Ruidosas– Esparasas

Figura 3

Existem vários tipos de aplicações.

OLAP (On-line Analytical Processing – Processamento Analítico), termo utilizado para descrever a análise de dados complexos em um sistema de Data Warehouse. Ferramentas OLAP empregam as capacidades de computação distribuídas para análises que requerem mais armazenamento e poder de processamento.

Page 22: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

22

Data Warehousing Unidade III

DSS (Decision-Support Systems – Sistemas de Apoio à Decisão), também conhecido como EIS (Executive Information Systems – Sistemas de Informação Executiva).

Como o nome diz é uma ferramenta de apoio à decisão, e o Data Mining, como visto anteriormente, caracteriza esse tipo de aplicação.

Os bancos Data Warehouses são projetados para tratar grande quantidade de informação e oferecer fontes múltiplas, podendo extrair dados de Bancos distintos e/ou até de sistemas e plataformas diferentes.

Características de Data Warehouse

É característica primordial de Data Warehouse o modelo de dados multidimensional, o que faz com que se encaixe bem com o OLAP e com as demais aplicações voltadas para o apoio à decisão.

Trabalhando com mais informações de temporalidade, o Data Warehouse, ao contrário dos Bancos de Dados Relacionais, dão apoio às análises de série temporal e de tendências, que requerem mais dados históricos do que os que são mantidos em Banco de Dados Transacionais.

Eles não são voláteis, isto é, a informação em um Data Warehouse muda com pouca ou nenhuma frequência e têm que ser atualizadas, periodicamente. Em um Data Warehouse, a informação tem uma granulidade muito espessa e é atualizada de acordo com a escolha da política de atualização.

Funcionalidade Típica de um Data Warehouse

O Data Warehouse proporciona maior suporte às consultas e de maneira mais eficiente do que um Banco Transacional.

Existem funcionalidades aperfeiçoadas de planilha eletrônica, de processamento eficiente de consultas (estruturadas, ad hoc), data mining e de visões materializadas.

Há funcionalidades pré-programadas, tais como as citadas a seguir.

– Roll-up: resumo de dados com generalização crescente (semanal para trimestral e depois para anual), visão do detalhe para o nível mais alto.

Fabricação

2008

Carros Caminhões

GM FIAT GM FIAT

São PauloSão Bernardo do Campo 2300 1600 300 550

São Caetano do Sul 1500 1650 400 640

Fabricação

2008

Carros Caminhões

GM FIAT GM FIAT

Região SudesteSão Paulo 3800 3250 700 1190

Rio de Janeiro 2500 3000 500 800

Page 23: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

23

Data Warehousing Unidade III

– Drill-down: níveis mais detalhados (complementando o roll-up), um item de resumo é dividido em componentes, possibilitando a exploração em níveis de detalhes da informação, visão do nível mais alto para o detalhe.

FabricaçãoCarros e Caminhões

1º TRIM 2º TRIM 3º TRIM

Região SudesteSão Paulo 9000 11000 8500

Rio de Janeiro 11280 5500 8600

FabricaçãoCarros e Caminhões

Jan Fev Mar

Região SudesteSão Paulo 2600 4500 3000

Rio de Janeiro 3600 1850 3200

– Slice and dice (fatiar/cortar o cubo): execução de operações de projeção nas dimensões, possibilitando a troca de linhas por colunas (como se estivéssemos girando um cubo).

Exemplo:

Slice: Divide-se o cubo, mas mantém se a perspectiva de visualização dos dados.

FabricaçãoCarros e Caminhões

Jan Fev Mar

Região SudesteSão Paulo 4500 1900 4200

Rio de Janeiro 1280 3250 3200

FabricaçãoCarros

Jan Fev Mar

Região SudesteSão Paulo 3300 1000 3205

Rio de Janeiro 600 1980 2300

Dice: Visualização por outra perspectiva.

Fabricação

2008

Carros Caminhões

GM FIAT GM FIAT

Região SudesteSão Paulo 2300 1600 300 550

Rio de Janeiro 1500 1650 400 640

Fabricação

2008

Região Sudeste

São Paulo Rio de Janeiro

CarrosGM 2300 1500

FIAT 1600 1650

CaminhõesGM 300 400

FIAT 400 640

Page 24: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

24

Data Warehousing Unidade III

Comparação entre Data Warehouse e Visões

Embora as visões melhorem o desempenho, sejam somente para leituras e sejam orientadas por assunto, elas diferem da tecnologia de Data Warehouse, das seguintes maneiras.

• O Data WareHouse existe como armazenamento permanente em vez de ser criado sobre demanda.

• Os Data Warehouses são multidimensionais e não relacionais.

• A indexação no Data Warehouse é explicita e proprietária, para otimização de desempenho.

• Data Warehouse, em princípio, é uma visão de vários Bancos de Dados que trabalham integrados e frequentemente com dados temporais, enquanto views vêm a ser somente um extrato de um Banco de Dados.

Page 25: Mod Topicos Avancados Em Banco de Dados v1

Pós-

Grad

uaçã

o a

Dist

ânci

a

25

Para (não) Finalizar

Devemos aqui dar um pausa para pensar no que temos pela frente em se tratando do estudo de um tópico dito avançado. As possibilidades são imensas e não devemos nos ater somente ao que vimos no programa da disciplina.

– Será que se esgotou o assunto Tópicos Avançados em Banco de Dados?

– Quais sãos as janelas e/ou portas que abrimos com o conhecimento adquirido?

Sim, devemos sempre pensar e agir com o intuito de querermos mais. Este é o verdadeiro aprendizado: sempre querer subir o próximo degrau, depois de vencermos o último. Desejar que a escada nunca termine, pois significaria o fim do estudo e consequentemente do nosso crescimento.

Prof. Ibsen.

Page 26: Mod Topicos Avancados Em Banco de Dados v1

Tópi

cos

Avan

çado

s em

Ban

co d

e Da

dos

26

Referências

HAMMER, Michael; CHAMPY, James, Reengenharia. 1o ed. Editora Campus, 1995.

ELMASRI, Rames; NAVATHE, Shamkant B. Sistemas de Banco de Dados. 4o ed. Editora Pearson, 2006.

INMON, W. H. Building the data warehouse. Editora Wiley. 1992.

CASTANO, Silvana; FUGINI, Mariagrazia; MARTELLA, Giancarlo; SAMARATI, Pierangela. Database Security. New York: ACM Press/Reading, Mass.: Addilson-Wesley, 1995.

CERT COORDINATION CENTER. CERT Annual Reports. Software Engineering Institute, Carnegie Mellon University, s.d. Pittsburgh. U.S.A Disponível em: <http://www.cert.org> Acesso em: 16 jan. 2009.

CHUNG. DataBase Security. Department of Computer Science and Engineering, Wright State University, s.d. Disponível em: <http://www.cs.wright.edu/> Acesso em 16 jan. 2009.

DATE, C. J. Introdução a sistemas de banco de dados. Rio de Janeiro: Campus, 1990.