Transcript
Page 1: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 1/15

Visualização de Dados em Sistemas de Bases de Dados Relacionais

Agma Juci Machado Traina, Caetano Traina Júnior,Elisângela Botelho, Maria Camila Nardini Barione, Renato Bueno Instituto de Ciências Matemáticas e de Computação - USP São Carlos

 Avenida Trabalhador Sãocarlense, 400

13.566-590 São Carlos - SP

[agma@ | caetano@ | elisangela@ | camila@ | renato@grad.]icmc.sc.usp.br

ResumoTécnicas automáticas para análise de dados frequentemente encontram problemas para aproveitar todo

o conhecimento inerente aos dados. Os seres humanos possuem uma capacidade inata para interpretar 

informações apresentadas em formato gráfico, conseguindo reconhecer mais facilmente o conhecimento associadoàs informações. Este artigo apresenta uma ferramenta para a visualização de dados que apresenta de forma

gráfica os dados armazenados em uma base relacional, a qual é independente de qualquer processo de

sumarização dos mesmos. Essa ferramenta permite aos usuários participar do processo de descoberta de

conhecimento sobre os dados em análise. O artigo desenvolve o arcabouço conceitual que suporta a

transformação sobre o conjunto de dados permitindo a visualização de relação de atributos de diversos tipos

(números, datas e textos). Tal transformação é efetuada através do mapeamento de dados multidimensionais para

um espaço tri-dimensional, utilizando uma função de distância definida pelo usuário. São apresentados resultados

dessa transformação sobre conjuntos clássicos da literatura da área. Através de experimentação, mostra-se que

a técnica é escalável a qualquer tamanho de base, considerando tanto o número de tuplas quanto o número de

atributos.

AbstractCompletely automated data analysis techniques often fail to fulfill their jobs, due to their inability to

exploit the peripheral knowledge associated with the data. Human beings have a very good ability to interpret data

represented in graphical format, and have the wisdom to recognize the associated knowledge. This paper address

this dichotomy through a data visualization tool which displays, in a graphical manner, data stored in database

relations, without relying on any kind of data summarization. Its objective is to include human beings in the main

stream of knowledge data discovery (KDD) processes. The paper develops the conceptual framework which

supports the data transformation that enables the visualization of relations composed by attributes of many data

types (numbers, dates and texts). This is achieved through the mapping of this multidimensional data into a 3-

dimensional space, applying a user-defined distance function. The paper shows some examples of utilizations with

well-known datasets. Through a set of experiments it also shows that it is scalable to any database size, regarding

both number of tuples and number of attributes.

1 . Introdução

Procurando por um melhor posicionamento no mercado, as empresas têm buscado obtermais benefícios dos dados que coletaram durante anos de processamento. O volume de dadosa ser analisado é imenso, e na maioria das vezes não se sabe por onde começar o processo deextração de informação. Ou seja, todo o esforço e custo de coletar e armazenar dados pode serinfrutífero se não se souber recuperar dados pertinentes que respondam às consultas desejadaspelos usuários, que nesse caso são os proprietários dessa informação.

Page 2: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 2/15

Muito trabalho tem sido efetuado recentemente para o desenvolvimento de técnicas e

algoritmos para descoberta de informação em bases de dados (“Knowledge Discovery in

Databases - KDD”) [24]. Segundo Fayyad [9], KDD é o processo de identificar estruturas que

representem informação válida, inédita, potencialmente útil e essencialmente compreensí vel, em

uma massa de dados. O termo estrutura aqui representa qualquer padrão, ou modelo que propicieuma representação parcimoniosa de um sub-conjunto interessante da coleção de dados.

Um problema importante do processo de descoberta de informações em dados

armazenados em bases de dados é que o tamanho da base pode ser muito grande. Técnicas e

algoritmos de busca de dados que se mostram adequados para conjuntos de dados pequenos

podem não o ser quando o volume de dados cresce ordens de grandeza, tanto para o número de

atributos (dimensões) envolvidos, quanto para o número de itens tratados [13]. Por exemplo,

algoritmos baseados em árvores de decisão, que procuram priorizar os atributos mais importantes

num processo de classificação, operam bem com dados que possuem um número pequeno de

atributos, em geral até 20. No entanto, quando o número de atributos sobe a mais de cem ou mil,

esses algoritmos deixam de ser apropriados, pois os tempos de resposta podem subir para

semanas de processamento. No entanto, muitas aplicações podem precisar desse número de

atributos, como por exemplo sistemas de armazenagem de imagens (ou outros dados complexos,

tais como estruturas genéticas, áudio, ou seqüências temporais) baseados em extração de

caracterí sticas.

Também é importante reconhecer que num processo de mineração de dados (data mining-

DM) o objetivo da procura nem sempre é claramente definido. Por exemplo, é frequente a busca

de algum padrão no relacionamento entre diversos atributos, ou a busca de agrupamentos

(clusters), mas quais atributos, ou que padrão seria esse não é conhecido à priori [12]. Isso

levanta também os problemas de identificar quão útil é na prática uma relação descoberta, e

como interpretar os resultados.

Segundo [9], o processo de descoberta de informação em bases de dados segue asseguintes etapas: desenvolvimento do Data Warehouse; seleção/amostragem de dados; pré-

processamento e limpeza de dados; transformação/redução de dados; data mining; criação de

modelos e definição de padrões; avaliação da usabilidade dos padrões definidos; visualização de

dados; e extração de “conhecimento.

O presente trabalho parte do pressuposto que seres humanos não são “eficientes” para

interpretar grandes volumes de dados em forma numérica ou textual, especialmente em espaços

de altas dimensões, mas têm uma percepção muito boa quando esses dados são apresentados de

forma gráfica. Por outro lado, técnicas completamente automáticas para detecção de

caracterí sticas, classificação, agrupamentos, regressão, etc. são freqüentemente distorcidas pela

incapacidade da técnica de aproveitar outros conhecimentos que para um ser humano é

facilmente reconhecido e interpretado [1] [22].Assim, este trabalho explora a visualização de dados armazenados em uma base de dados

como elemento de análise onde o usuário utiliza sua capacidade de percepção visual para

interpretar os dados. As técnicas existentes de visualização em geral representam informações

estatí sticas sobre os dados, tais como a representação de agregados (contagem, total, mí nimo,

máximo, média, etc.) através de gráficos de barras, tortas, xy, etc. Em algumas situações onde

os dados apresentam naturalmente uma distribuição espacial, existem também técnicas de

visualização espacial desses dados [19].

A visualização espacial é muito significativa para a interpretação dos dados,

principalmente quando informações estatí sticas podem mascarar a existência de distribuições

inesperadas nos dados, casos raros (outliers, exceções, etc.). Além disso, a maior parte dos dados

Page 3: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 3/15

armazenados em bases de dados não apresentam uma distribuição espacial intrí nseca, e não se

dispõe atualmente de técnicas para representá-los graficamente. Neste trabalho mostramos que

é possí vel criar representações espaciais a partir de qualquer tipo de dado, considerando que épossí vel identificar um grau de “similaridade” entre dois elementos de dados. Dados categóricos

podem ser usados no processo de visualização para classificar os demais dados, contribuindo parao processo de interpretação da classificação dos dados.

Resumidamente, a técnica adotada considera que os dados estejam representados em uma

relação de uma base de dados, e cada atributo representa um valor numérico (medidas, valores

monetários, etc.), uma data, ou um texto curto (nomes). Para cada um desses tipos de atributos

é definida uma medida de distância, que é o módulo da diferença entre dois valores numéricos,

o número de dias entre duas datas, ou a distância de edição entre dois textos (número de letras

que devem ser incluí dos, removidos ou substituí dos para transformar um texto no outro). As

distâncias individuais entre cada atributo são então combinadas para definir a distância entre cada

tupla da relação, permitindo que uma tupla de N atributos seja interpretada como um ponto em

um espaço N -dimensional. Aplica-se então um algoritmo de redução de dimensionalidade - não

uma projeção! - que mapeia esse espaço para o espaço 3-dimensional, onde a visualização das

tuplas é feita. Atributos categóricos podem então ser considerados para colorir ou de alguma

maneira modificar a representação de cada ponto visualizado. É importante destacar que essa

técnica não depende da existência de uma distribuição espacial dos dados (embora possa

considerá-la se existir), e todos os dados são visualizados, não apenas estatí sticas a seu respeito.

O restante deste trabalho está organizado da seguinte maneira. A seção 2 discute os

conceitos envolvidos, e os principais trabalhos correlatos existentes na literatura. A seção 3

descreve brevemente a técnica de FastMap, por ser ela fundamental para o entendimento deste

trabalho, e a seguir mostra como ela pode ser adaptada para gerar visualizações de dados, que

podem ser construí das sequencialmente. A seção 4 mostra como os dados sãoobtidos a partir de

relações de SGBDRs, e descreve como os dados das relações e a adaptação desenvolvida datécnica de FastMap são utilizados para criar a ferramenta FastMapDB. A seção 5 mostra

medidas de desempenho da ferramenta para grandes conjuntos de dados, bem como alguns

resultados de visualização para conjuntos de dados bem conhecidos da literatura. A seção 6

resume as conclusões deste trabalho.

2 . Trabalhos correlatos

Como o ser humano tem uma capacidade de absorver e entender informação representada

de forma gráfica muito mais rapidamente, sempre que é preciso sumarizar grande quantidades

de dados numéricos procura-se utilizar histogramas, gráficos ou algum mecanismo deapresentação de sí ntese visual. Porém, quando muitas das informações que devem ser

apresentadas encontram-se em espaços de altas dimensões, ou mesmo em espaços adimensionais

(por exemplo, conjuntos de palavras), as técnicas de visualização tradicionais não são adequadas.

As ferramentas de visualização existentes para mineração de dados permitem navegar

sobre estruturas de dados complexas, gerar vistas iniciais, bem como apresentar os resultados de

análises solicitadas pelos usuários. Em [14] é apresentado um apanhado geral das técnicas

utilizadas em ferramentas para Visual Data Mining (VDM), tais como técnicas de projeção

geométrica, onde a idéia básica é o mapeamento de um espaço k -dimensional sobre um

dispositivo de apresentação bidimensional utilizando k eixos paralelos eqüidistantes a um dos

eixos de apresentação dos dados [17]. Os eixos do gráfico correspondem às dimensões e são

Page 4: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 4/15

escalados linearmente pelos valores de mí nimo e máximo de cada dimensão correspondente. Os

objetos do conjunto de dados a serem visualizados são apresentados como poligonais que

interceptam os eixos nas alturas correspondentes aos valores considerados em cada dimensão.

Outras técnicas utilizadas em VDM são baseadas em í cones (ou técnicas de apresentação

icônicas). Nesse caso, mapeia-se cada item de dado multidimensional em um í cone. Em [25] tem-se um exemplo de utilização dessa técnica. É importante notar que esta técnica limita o número

de dimensões a serem apresentadas. Beddow em [4] propõe uma variação mais refinada de

apresentações icônicas, chamada de técnica baseada em codificação de forma. Essa técnica

permite visualizar um número arbitrário de dimensões dos dados em análise, já que ela mapeia

cada dimensão a um vetor de pixels. Esse vetor de pixels é então organizado em quadrados ou

retângulos e são apresentados utilizando padrão de cores ou escala em tons de cinza, onde as

cores são associadas às dimensões. A seguir os retângulos de pixels coloridos que indicam cada

item de dado são apresentados alinhados na tela.

Seguindo a idéia da codificação de forma, novas técnicas de VDM surgiram e entre as

mais representativas estão as técnicas orientadas a pixel. Nessa técnica cada atributo do item de

dado a ser apresentado é associado a uma cor. Cada atributo é então visualizado em janelas

especí ficas para todos os objetos da relação em análise. Como essa técnica utiliza apenas um

pixel da tela para cada valor de atributo da tupla, as técnicas orientadas a pixel permitem

visualizar conjuntos de dados bastante grandes (testes efetuados até 1 bilhão de valores de

atributos) [18]. Aqui a questão crucial é como organizar os pixels na tela de forma que a

informação desejada seja captada mais facilmente. Em [20] tem-se um apanhado geral das

propostas de organização de tela para apresentação dos pixels bem como uma explicação mais

detalhada dessas técnicas.

Uma outra abordagem utilizada é a chamada técnica hierárquica, a qual sub-divide um

espaço k -dimensional em sub-espaços que são apresentados hierarquicamente. Por exemplo, em

[21] é apresentada a técnica de ‘stacking’ que sub-divide o espaço de dados em sub-espaços bi-dimensionais e efetua a apresentação da informação graficamente. Outro exemplo dessa técnica

é a ‘Cone Tree’ [27]. A utilização de grafos suportando uma grande variação de algoritmos para

layouts, linguagens de consultas e técnicas de abstração são encontrados em [28] [3] [6]. Éimportante ressaltar a utilização de recursos tais como: transformações [2], projeções, filtros e

 zoom, para efetuar-se a interação com o usuário no processo de exploração visual do dados.

O processo de visualização de dados auxilia também na certificação e identificação de

agrupamentos (clusters) de objetos no conjunto de dados em análise [26]. Entre os trabalhos mais

representativos para a área, estão o sistema Clarans [23] que utiliza algoritmos de

particionamento e o sistema Birch [31]. Para domí nios de dados espaciais já existem diversos

estudos e várias técnicas foram desenvolvidas, como por exemplo [7] e [29]. Para o domí nio de

dados métricos, onde apenas objetos e distâncias entre eles são disponí veis, o trabalho de Gantie outros [10] é bastante interessante.

Por outro lado, o tratamento de dados em domí nios espaciais de altas dimensões écustoso, qualquer que seja o processamento em que se está interessado. Assim, técnicas de

redução de dimensionalidade têm sido desenvolvidas. Um dos marcos dentre essas técnicas éaquela conhecida como FastMap [8], a qual efetua o mapeamento de dados de espaços em altas

dimensões para espaços de dimensões menores preservando o máximo possí vel as distâncias

entre os objetos. A partir dessa técnica, diversas outras foram desenvolvidas [30], para domí nios

especí ficos de aplicação, como imagens [5] e sequências de DNA [15]. No entanto, a técnica

FastMap tem se mostrado robusta para aplicações em geral, e não foi desenvolvido nenhum

Page 5: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 5/15

1 Uma função de distância é considerada métrica se ela atende às propriedades de não-negatividade,

simetria e desigualdade triangular.

Sí mbolo Significado

relação de uma base de dados

$ $  ' conjuntos de atributos de uma relação 5  da base de dados

 Ai um atributo de uma relação 5  , isto é: $  ={ Ai | Ai  5  }

 R conjunto de tuplas de uma relação 5  , isto é:

 R /  dom( A1)Xdom( A2)X ...

d ( x, y) função distância métrica entre dois elementos x e y.

  i(v1, v2) diferença entre dois valores de atributos de um domí nio

dom( $  i)

P conjunto de pares de pivôs para um mapeamento

< pk1

, pk2

> um par de pivôs

r i um elemento de dado, ou uma tupla

aik  valor do atributo i da tupla k 

um domí nio de dados

0  um espaço métrico 0   <6  , d ()>

 Dt  dimensão do espaço destino do mapeamento

Tabela 1 - Sí mbolos utilizados neste trabalho.

método que apresente um desempenho significativamente melhor, mesmo em aplicações

especiais [16].

3 . O algoritmo FastMap

A ferramenta descrita neste trabalho baseia-se na aplicação da técnica FastMap,

inicialmente desenvolvida com o objetivo de redução de dimensionalidade em espaços de altas

dimensões. Dada a importância desta técnica para este trabalho, apresentamos aqui os principais

conceitos envolvidos, dos quais essas propriedades derivam. A descrição matemática dos

mesmos pode ser encontrada em [8]. A tabela 1 apresenta a lista dos sí mbolos utilizados neste

trabalho.

Essa técnica pode ser descrita de uma maneira intuitiva da seguinte maneira. São dados

de entrada uma coleção R de N  objetos r i  

6  , uma função distância métrica1

  d (r i, r  j) definidasobre todos os objetos de  R, e a dimensão Dt  do espaço destino onde se pretende mapear os

dados. Inicialmente procura-se em R o par de objetos mais distantes entre si, que passam a ser

referenciados como o par de pivôs p11 e p12, e calcula-se a distância entre esses pivôs. Considera-

se que um dois eixos do espaço destino é definido por esse par de pivôs. A seguir calculam-se

as distâncias de todos os objetos r i para cada objeto do par, e usa-se essas distâncias para projetar

o valor da primeira coordenada de cada objeto no espaço destino sobre esse eixo. O cálculo

Page 6: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 6/15

Figura 1 - Projeção de um ponto r isobre o eixo ( pk1, pk2).

dessa coordenada (e das subseqüentes) é efetuado utilizando-se a lei dos cossenos, considerando

cada triângulo gerado pelos pontos r i e o par de pivôs, como mostrado na figura 1. Isso resulta

na seguinte f órmula:

d p r d p r d p p x d p pk i k i k k k i k k  ( , ) ( , ) ( , ) * ( , )2

2

1

2

1 2

2

1 22= + −

ou

(1) xd p r d p p d p r  

d p pki

k i k k k i

k k 

=+ −( , ) ( , ) ( , )

( , )

12

1 22

22

1 22

onde:

 xki é o valor da coordenada do objeto r i sobre esse eixo, e

k corresponde ao í ndice da coordenada sendo calculada, sendo que 1   k    Dt .

Pontos em um espaço de dimensão elevada não

podem ser colocados em um espaço de dimensão menor

mantendo as mesmas distâncias relativas entre os objetos.A técnica FastMap procura minimizar a distorção

causada, reduzindo a diferença média das distâncias entre

todos os objetos. A maneira intuitiva de entender isso, éconsiderar que todos os pontos estão ligados por “molas”,

que estão completamente distendidas no espaço original.

Quando esses pontos são mapeados para um espaço de

dimensões menores, as molas são comprimidas, e essa

compressão deve ser distribuí da uniformemente em todo

o novo universo. A compressão para o primeiro eixo élevada em conta diretamente pela lei dos cossenos,

portanto os valores obtidos para o primeiro eixo não precisam ser corrigidos. No entanto, paraos eixos subsequentes, a função distância deve ser modificada, para levar em conta as distorções

 já introduzidas pelos eixos anteriores. Assim, sendo, a função d' k (r 'i, r ' j), que calcula a distância

Euclidiana entre os objetos r 'i e r ' j projetados a partir dos objetos r i e r  j no espaço destino jácontendo k -1 dimensões é dada por:

(2)d r r d r r x xk i j i j ki kj' ( ' , ' ) ( , ) ( )= − −2 22

sendo que x1i= x1j=0. Essa equação permite construir as coordenadas de cada objeto r 'iseqüencialmente, pois cada função é construí da incrementalmente sobre os valores já calculados

para as coordenadas anteriores. Note-se que a escolha do primeiro par de objetos para

constituirem-se no par de objetos mais distantes pode usar a função d () diretamente, porém a

escolha dos demais pares de pivôs, que definirão os eixos das demais coordenadas, deve ser

efetuada utilizando as respectivas funções d' k (). Como cada par de pivôs não precisa ser

projetado para se encontrar o respectivo xki, a distorção resultante para os pivôs é sempre nula,

o que evita que um objeto já escolhido para pivô seja escolhido novamente em uma dimensão

subseqüente.

Observe que, após a definição dos pivôs, o mapeamento de um objeto independe dos

demais, pois as distâncias envolvidas são apenas aquelas entre os pivôs e entre cada objeto e um

pivô. Assim podemos apresentar a seguinte definição:

Page 7: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 7/15

Definição 1 - Mapeamento definido por uma lista de Pivôs ( MP): Dado um espaço métrico

0   <6  , d ()> , constituí do pelo domí nio de objetos 6  e por uma função distância métrica

d (r i, r  j) definida sobre elementos r i, r  j 6  , e uma lista ordenada de  Dt  pares de pivôs

P=(< pk1, pk2>), 1   k    Dt , onde cada pivô  pk1, pk2 6  , chamamos de Mapeamento definido

por uma lista de Pivôs  MP( 0  , P) ao processo que gera um espaço de dimensão Dt pelatécnica de FastMap, a partir de um conjunto R={r i | r i  6  } de N pontos pertencentes a 6  .

Note-se que essa definição pressupõe o desmembramento da técnica de FastMap em duas

etapas: a primeira consiste na definição do conjunto de pivôs, e deve ser executada uma única

vez para cada mapeamento; a segunda consiste no mapeamento efetivo dos objetos. Ao contrário

da técnica FastMap original, um mapeamento não pressupõe que os pivôs sejam mapeados. Isso

permite que a segunda etapa possa ser repetida tantas vezes quanto necessário.

Por construção, um processo de mapeamento MP pode ser implementado de maneira a

apresentar as seguintes propriedades:

- complexidade computacional linear sobre o número de atributos Dt 

 e sobre o número

 N de elementos de dados a serem mapeados;

- rapidez e eficiência do mapeamento;

- dinâmico em relação a operações de inserção e remoção de elementos no conjunto R;

- repetitividade do resultado do mapeamento de um mesmo objeto, independentemente

dos demais objetos mapeados.

Além disso, embora não seja uma propriedade fundamental num processo de visualização,

um processo MP procura preservar o mais possí vel as distâncias do espaço original no espaço

mapeado. Como apenas as distâncias entre os objetos são utilizadas, este processo apresenta

ainda a vantagem de poder mapear para um espaço dimensional os dados em espaço métricos

adimensionais.

4 . Obtendo dados em relações

Na seção anterior foi apresentado um algoritmo que permite efetuar o mapeamento de um

conjunto de dados multi-dimensional para uma representação em um espaço de dimensão menor.

Esta seção apresenta a utilização daquele algoritmo para mapear dados armazenados em uma

base relacional, com o objetivo de visualizar o mapeamento numa representação tri-dimensional

dos dados de uma relação.

Uma relação 5  de uma base de dados relacional pode ser definida como sendo um

subconjunto do produto cartesiano dos domí nios dos atributos $  ={ Ai | Ai 5  } que compõem a

relação. Seja U( $  )= A1X A2X... Ac esse cartesiano, onde c é a cardinalidade de $  . Então podemser definidos mapeamentos definidos por uma lista de pivôs sobre uma relação, em que os

espaços 0  desses mapeamentos sempre serão U($  ), e a lista de pivôs será composta de tuplas

 pk1 U($  ) e pk2 

U( $  ). Note-se que não há a necessidade dos pivôs serem tuplas da relação,

embora nada impeça isso. Como nem todos os atributos de uma relação podem ser interessantes

para um processo de mapeamento, apresentamos a seguinte definição, que considera que apenas

um sub-conjunto dos atributos de uma relação podem ser utilizados para um processo de

mapeamento.

Page 8: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 8/15

Definição 2 - Mapeamento de atributos de uma Relação definido por uma lista de pivôs

( MR): Dado um subconjunto $  dos atributos de uma relação 5      $  ={ Ai | Ai  5  `   uma

função distância métrica d (r i, r  j) definida sobre o produto cartesiano U( $  ), e uma lista

ordenada de  Dt  pares de pivôs P=(< pk1,  pk2>), 1  k    Dt , onde cada pivô  pki  U($  ),

chamamos de Mapeamento de um sub-conjunto de atributos de uma Relação definido poruma lista de pivôs  MR( 5  , $  , d (), P) ao processo que gera um espaço de dimensão Dt 

pela técnica de FastMap, a partir dos atributos $  das tuplas da relação 5  , as quais

encontram-se separadas por distâncias que podem ser medidas por d ().

Um processo  MR( 5  , $  , d (), P) pode ser aplicado a qualquer sub-conjunto $  de

cardinalidade c'>0 de qualquer relação 5  de uma base de dados, desde que sejam definidos:

1 - uma função métrica d () sobre $  , e

2 - um conjunto P de pivôs em U( $  ).

Seja Dom( Ai) o domí nio de cada atributo Ai  5  da relação. Para a definição da função

métrica, consideramos que seja possí vel calcular a distância entre qualquer par de elementos deum domí nio desses atributos Ai  $  . Para evitar confusão com a terminologia, chamaremos de

diferença à distância entre pares de elementos do domí nio de um atributo, e usaremos a notação

  i(aij, aik ) Ü  | aij, aik      Dom( Ai). Essa diferença, embora seja também uma função de distância,

não necessariamente precisa ser métrica. Existindo as funções diferenças   i() de todos os

atributos Ai $  , pode-se usar qualquer métrica L p ponderada para definir a função d (), isto é,

, (3)d L b a a pW 

i i ij ik  

 p

i

c

 p() ( , )

'

= = ⋅

=

∑ ∂ 

1

onde c' é a cardinalidade de$ 

e bi é o peso do atributo Ai.

Uma vez definida a função d (), o conjunto de pivôs pode ser indicado diretamente pelo

usuário, ou escolhido pela primeira fase do processo de mapeamento dentre as tuplas da relação.É importante destacar que embora essa escolha seja flexí vel, os pivôs não podem mais ser

alterados depois que o processo de mapeamento estiver definido. No entanto, tuplas inseridas

ou removidas podem ser imediatamente mapeadas no espaço destino do mapeamento, permitindo

que o processo seja completamente dinâmico. Note-se que embora o algoritmo apresentado

escolha os pivôs dentre os objetos originalmente presentes na relação, não é necessário que um

pivô seja parte do conjunto de objetos mapeados. Isso permite que uma tupla que tenha sido

escolhida para constituir um pivô possa ser removida, sem que os pivôs tenham que ser re-

escolhidos.

4.1 - A Ferramenta FastMapDB

Utilizando os conceitos e técnicas apresentados, foi desenvolvida uma ferramenta de

visualização de dados armazenados em relações de bases relacionais, denominada FastMapDB.

Essa ferramenta destina-se a auxiliar com recursos visuais, a análise de dados em processo de

descoberta de conhecimento a partir de dados armazenados em bases de dados. O objetivo da

ferramenta é permitir ao usuário “ver” a distribuição de objetos. Ela permite por exemplo

verificar a existência de outliers, auxiliar nas tarefas de limpeza e preparação de dados, e auxiliar

o usuário a escolher conjuntos mais reduzidos de atributos a serem submetidos a operações de

Page 9: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 9/15

data mining, bem como verificar a adequação ou não de uma resposta recebida de algum

processo automático efetuado.

Descrita sucintamente, a ferramenta FastMapDB deve ser utilizada numa sequência de

quatro passos:

1 - escolha da relação 5  a ser visualizada;2 - escolha dos atributos $  ' de 5  que irão compor a visualização;

3 - definição da função distância d () e dos pivôs P;

4 - definição dos parâmetros da visualização.

É possí vel voltar qualquer passo anterior, porém sempre que um determinado passo é executado,

os dados dos passos subseqüentes, porventura já executados, são descartados.

A ferramenta apresenta uma interface gráfica, procurando tornar a interação com o

usuário agradável. As opções de escolha sempre estão presentes para o usuário. Por exemplo,

para a escolha da relação a ser visualizada, o usuário deve selecionar dentre a lista de todas as

relações da base que lhe é mostrada. Da mesma maneira, uma vez escolhida a relação 5  , seus

atributos são mostrados. O usuário deve então escolher aqueles de seu interesse para compor o

conjunto $  '. Os domí nios dos atributos que a ferramenta permite escolher, bem como a função

diferença   i() associada são os seguintes:

Domí nio numérico (integer, float, double precision, decimal, numeric,

currency) - nesse caso, a função diferença  i() é diretamente a diferença entre os

valores dos atributos;

Domí nio tempo (date, time, datetime) - nesse caso, a função diferença   i() é o

número de dias entre as datas, mais a fração da diferença de tempo, em segundos,

em relação a 86400 segundos (24 horas) - por exemplo   i('05/01/2001 9:00',

'07/01/2001 15:00')  2,25 (dois dias e seis horas: 2¼ de dia);

Domí nio texto (char, varchar, decimal, numeric) - nesse caso, a função diferença

  i() é a distância L Edit  entre os dois textos, isto é, o número de caracteres quedevem ser inseridos, removidos ou substituí dos para transformar um texto no

outro. Os tipos decimale numeric são tomados pelos dí gitos que os representam.

Definido o conjunto $  ', o usuário deve proceder à definição da função distância d ().

As opções aqui incluem o expoente  p a ser usado na equação (3) (por default p=2), e os

respectivos pesos bi de cada atributo (por default bi=1). Além disso, o usuário pode escolher se

cada diferença   i() será usada diretamente, ou será antes tomado seu logaritmo. Essa última

opção é interessante quando existem dois ou mais atributos com faixas de variação muito

diferentes entre eles. Finalmente, o usuário pode escolher se o resultado da equação (3) seráusado diretamente no processo de mapeamento, ou se será utilizado seu logaritmo.

Com a função distância definida, o programa escolhe os pivôs P, dentre os pares de tuplas

mais distantes entre si, conforme preconizado pela primeira etapa do desmembramento da técnicade FastMap. O usuário pode então proceder à etapa de visualização, quando deve então escolher

quais tuplas mapear. Isso é feito por um critério de seleção, que nada mais é do que a conjunção

de uma ou mais condições de seleção. Nesse passo, pode-se escolher também um atributo

categórico, que será utilizado como atributo de classificação das tuplas e correspondentes pontos

visualizados, o que será mostrado através de diferentes formatos e cores com que os pontos são

apresentados. Cada vez que um conjunto de tuplas é submetido para mapeamento, pode-se

escolher se cada tupla será visualizada segundo o formato/cor definidos pelo valor do atributo

classificador escolhido, ou por um formato/cor especificados separadamente para esse conjunto.

Page 10: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 10/15

Figura 2 - Tela principal da ferramenta FastMapDB.

Essa última opção é  útil por exemplo para verificar onde estão mapeadas as tuplas que

correspondem a uma consulta de seleção em particular.

A versão atual da ferramenta mapeia os atributos escolhidos para um espaço bi- ou tri-

dimensional. A ferramenta consta basicamente de 3 telas: a tela principal, a tela de configuração

da função distância, e a tela de visualização. A figura 2 mostra a tela principal, quando o usuárioestá escolhendo atributos de uma relação. Na próxima seção as figuras 4 e 5 mostram telas de

visualização.

A atual versão da ferramentaFastMapDBfoi desenvolvida em linguagem C++ utilizando

o ambiente C++Builder  da  Borland , para ambiente  NT , utilizando o protocolo ODBC para

conecção com os gerenciadores de banco de dados. A ferramenta atualmente pode acessar

relações em gerenciadores Oracle, Sybase, MS-SQLServer e Borland Interbase.

5 . Medidas de Desempenho e Exemplos de Utilização

Nesta seção apresentam-se resultados da aplicação da ferramenta FastMapDB sobre

alguns conjuntos de dados. Os resultados mostram dois aspectos: a escalabilidade da ferramenta,

quanto ao número de atributos e quanto ao número de tuplas de uma relação da base de dados;

e como recursos de visualização auxiliam no entendimento de conjuntos de dados. Note que esta

ferramenta permite a manipulação interativa da visualização sobre o conjunto de dados,

utilizando operações de escala, rotação e translação da janela de visão sobre os mesmos.

5.1 - Escalabilidade

Para estes testes foram geradas 5 tabelas com 10, 20, 40, 80 e 100 mil tuplas. Cada tabela

possui dez atributos numéricos do tipo float, gerados aleatoriamente, mais um atributo

categórico classificador, com 3 possí veis valores, também aleatórios. A Figura 3a) mostra o

tempo de processamento da ferramenta utilizando essas relações, executando o mapeamento

sobre os dez atributos numéricos. Já o gráfico mostrado na Figura 3b) apresenta o tempo de

Page 11: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 11/15

Figura 3 - Grafico de escalabilidade da ferramenta FastMapDB. a) quanto ao número de tuplas;

b) quanto ao número de atributos.

processamento da aplicação da ferramenta considerando-se apenas a tabela com 20 mil tuplas, mas

agora, variando-se o número de atributos selecionados para o mapeamento de 5 a 10.

Os tempos mostrados referem-se ao tempo total desde que o usuário solicita o

mapeamento, incluindo a leitura de todos os dados na base, o processo de mapeamento, at é a

finalização do processo de desenho na tela. Para evitar a influência de fatores externos na medida,tais como o estado do cache do gerenciador da base de dados, cada medida foi efetuada re-

inicializando-se tanto o programa FastMapDB quanto o gerenciador. Pode-se constatar pelos

gráficos da Figura 3 a linearidade da ferramenta variando-se tanto o número de atributos quanto

o número de tuplas da relação. Todos os testes foram efetuados em um computador Pentium III

operando a 350MHz, com 128 MBytes de memória, acessando um banco de dados Interbase

local, e sistema operacional MS Windows98.

5.2 - Visualização de dados

Nesta segunda etapa foram realizados experimentos com o objetivo de ilustrar a habilidade

da ferramenta na visualização de dados. Mostramos aqui sua utilização com dois conjuntos bem

conhecidos de pesquisadores da área, mas que, acreditamos, nunca antes haviam sido “vistos”: o

conjunto “ Iris Plant ”, conhecido desde 1938, e o conjunto “Congressional Voting Records” de

1984. Ambos os conjuntos estão disponí veis no web site do Machine Learning Repository da

Universidade da California em Irvine (http://www.ics.uci.edu/~mlearn/MLSummary.html). Para avisualização destes conjuntos de dados o mapeamento sempre foi realizado sobre todos os

atributos.

O conjunto “Iris” contém dados sobre flores do gênero Iris divididas em três classes de 50

tuplas cada ( Iris setosa,   Iris versicolor e   Iris virginica). O conjunto possui quatro atributos

numéricos contí nuos: comprimento da sépala, largura da sépala, comprimento da pétala, e largura

da pétala. É bem conhecido que a classe Iris setosa é completamente separável das demais, e as

demais não. Na Figura 4 pode-se “ver” o porque! A figura 4(a) mostra uma “visão panorâmica”de todo o conjunto de dados, e a Figura 4(b) detalha o conjunto separável da classe Iris setosa.

No conjunto “Votos”, constituí do do registro de votos do congresso americano em 1984,

cada tupla corresponde ao voto de um congressista em 16 assuntos (por exemplo, gastos com

Page 12: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 12/15

Figura 4 - Visualização do conjunto “Iris”. a) Visão de todo o conjunto.

b) detalhe do sub-conjunto da espécie setosa.

Figura 5 - Dois ângulos de visualização do conjunto “Votos”.

educação, crime, etc.). Todos os atributos têm o valor 1 (aprova), -1 (não aprova) ou zero (nulo

ou abstenção). Cada tupla tem também um atributo categórico, indicando a que partido,

Republicano (168 tuplas) ou Democrata (267 tuplas), o congressista correspondente pertence.

Este exemplo ilustra a visualização de dados não contí nuos. É bem conhecido que este conjunto

apresenta boa separabilidade entre democratas e republicanos (95% de acerto segundo [11]), ea Figura 5 demonstra isso sob dois ângulos, que mostram como as duas classes ficam polarizadas

com pouca sobreposição.

6 . Conclusões

Existem muitas ferramentas para a visualização de informações extraí das de bases de

dados, mas a maioria delas permite a visualização de informações estatí sticas sobre os dados, tal

como totalizadores, médias, etc., em formatos tais como: gráfico de tortas, histogramas, gráficos

x-y, etc. As poucas ferramentas que permitem a visualização espacial de como os dados estão

Page 13: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 13/15

distribuí dos recaem no uso de uma distribuição intrí nseca, ou seja, os dados precisam ter

naturalmente uma distribuição espacial em alguns de seus atributos. A ferramenta FastMapDB,

ao contrário, cria uma distribuição para os dados armazenados numa relação de uma base de

dados relacional, qualquer que sejam os tipos de dados dos atributos que constituem a relação.

Essa possibilidade de visualização dos dados permite utilizar a reconhecidamente elevadacapacidade humana de interpretação de dados mostrados graficamente, e permite efetivamente

incluir o usuário humano como um elo importante na cadeia de processos de análise de dados

para descoberta de conhecimento em grandes bancos de dados. Um benef í cio adicional é a

possibilidade de utilizar a ferramenta para validação, tanto de dados quanto de processos e

algoritmos de análise de dados. Com ela, é possí vel por exemplo verificar se um processo de

mineração de dados tal como classificação, agrupamento, etc., obteve um bom resultado, e se

não, pode fornecer pistas de como corrigir, ou o motivo do problema.

Assim, as principais contribuições deste trabalho são:

- desenvolvimento de uma técnica para visualização incremental de dados a partir de

relações compostas por atributos de qualquer tipo de dado;

- desenvolvimento de um algoritmo para visualização, que é rápido e escalável para

conjuntos de dados muito grandes, apresentando complexidade computacional

linear para o número de tuplas e para o número de atributos na relação.

- implementação de uma ferramenta prática para utilização em bases de dados reais,

armazenados em gerenciadores comerciais.

O desenvolvimento futuro deste trabalho envolve tanto atividades acadêmicas quanto

extensões de ordem prática. Dentre as atividades acadêmicas em andamento, incluem-se a

possibilidade de utilização dos conceitos para a classificação e descoberta de agrupamentos

visuais, dentro da linha de pesquisa de Visual data mining - VDM , e a possibilidade de incluir-se

na visualização mais de uma relação simultaneamente, orientando a ferramenta para a área de

data warehouse e On Line Analitical Processing - OLAP. Dentre as extensões de ordem prática,estão a inclusão de diferentes formas de manipulação dos dados, e outras formas de comparação

entre atributos, como por exemplo, a possibilidade de o usuário definir uma matriz de distâncias

para dados de baixa cardinalidade.

7 . Bibliografia

[1] M. Ankerst, C. Elsen, M. Ester, H.-P. Kriegel, “Visual Classification: An Interactive

  Approach to Decision Tree Construction,” in ACM SIGKDD Intl. Conf. on Knowledge

Discovery and Data Mining, San Diego, CA, USA, 1999, pp. 392-396.

[2] M. Ankerst, M. Ester, H.-P. Kriegel, “Towards an Effective Cooperation of the User and theComputer for Classification,” in ACM SIGKDD Int. Conf. on Knowledge Discovery & Data

Mining (KDD'2000), Boston, MA, 2000, pp. 179-188.

[3] R. A. Becker, S. G. Eick, G. J. Wills, “Visualizing Network Data,”  IEEE Transactions on

Visualization and Computer Graphics, vol. 1, pp. 16-28, 1995.

[4] J. Beddow, “Shape Coding of Multidimensional Data on a Microcomputer Display,” in IEEE

Proc. Visualization, Los Alamitos, CA, 1990, pp. 238-246.

[5] A. Berman and L. G. Shapiro, “Selecting Good Keys for Triangle-Inequality-Based Pruning

 Algorithms,” in Intrl. Workshop on Content-Based Access of Image and Video Databases

(CAIVD '98), Bombay, India, 1998, pp. 12-19.

Page 14: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 14/15

[6] S. G. Eick and G. J. Wills, “ Navigating Large Networks with Hierarchies,” in IEEE Proc.

Visualization, IEEE Proc. Visualization, 1993, pp. 201-210.

[7] M. Ester, A. Frommelt, H.-P. Kriegel, J. Sander, “ Algorithms for Characterization and Trend 

 Detection in Spatial Databases,” in Fourth Intl. Conf. on Knowledge Discovery and Data

Mining, New York City, NY, 1998, pp. 44-50.[8] C. Faloutsos and K. Lin, “FastMap: A Fast Algorithm for Indexing, Data-Mining and 

Visualization of Traditional and Multimedia Datasets,” in ACM SIGMOD, Zurich,

Switzerland, 1995, pp. 163-174.

[9] U. Fayyad, “ Mining Databases: Towards Algorithms for Knowledge Discovery,”  Bullettin

of Tech. Committee on Data Engineering, vol. 21, pp. 29-48, 1998.

[10] V. Ganti, J. Gehrke, R. Ramakrishnan, “ Mining Very Large Databases,”  IEEE Computer ,

vol. 32, pp. 38-45, 1999.

[11] S. Guha, R. Rastogi, K. Shim, “ ROCK: A Robust Clustering Algorithm for Categorical

 Attributes,” in IEEE ICDE, 1999, pp. 512 – 521.

[12] A. Hinneburg and D. A. Keim, “Clustering Methods for Large Databases: From the Past 

to the Future,” in ACM SIGMOD, Philadelphia, PA, 1999, pp. 509.

[13] A. Hinneburg and D. A. Keim, “Optimal Grid-Clustering: Towards Breaking the Curse of 

 Dimensionality in High-Dimensional Clustering,” in VLDB, 1999, pp. 506-517.

[14] A. Hinneburg, D. A. Keim, M. Wawryniuk, “ HD-Eye: Visual Mining of High-Dimensional

 Data,”  IEEE Computer Graphics and Applications, vol. 19, pp. 22-31, 1999.

[15] G. Hristescu and M. Farach-Colton, “Cluster-preserving embedding of proteins,” DIMACS,

Technical report 99-50, 1999 1999.

[16] G. Hristescu and M. Farach-Colton, “Cofe: A Scalable Method for Feature Extraction from

Complex Objects,” in 2nd International Conference on Data Warehousing and Knowledge

Discovery (DaWaK 2000), Greenwich, U.K., 2000.

[17] A. Inselberg and B. Dimsdale, “Parallel Coordinates: A Tool for Visualizing Multidimensional Geometry,” in IEEE Visualization, 1990, pp. 361-370.

[18] D. A. Keim, “Visual Techniques for Exploring Databases,” in ACM KDD, 1997, pp.

tutorial.

[19] D. A. Keim, “  Designing Pixel-Oriented Visualization Techniques: Theory and 

 Applications,” in   IEEE Trans. on Visualisation and Computer Graphics, vol. 6: IEEE

Computer Society, 2000, pp. 59-78.

[20] D. A. Keim and H.-P. Kriegel, “VisDB: Database Exploration Using Multidimensional

Visualization,”  IEEE CG&A, vol. 14, pp. 16-19, 1994.

[21] J. LeBlanc, M. O. Ward, N. Wittels, “ Exploring N-dimensional Databases,” in Visualization

Conf., 1990, pp. 231-237.

[22] J. Q. Louie and T. Kraay, “Origami: A New Data Visualization Tool,” in Fifth ACMSIGKDD Intl. Conf. on Knowledge Discovery and Data Mining, San Diego - CA USA, 1999,

pp. 405-408.

[23] R. T. Ng and J. Han, “ Efficient and Effective Clustering Methods for Spatial Data Mining,”in VLDB, 1994, pp. 144-155.

[24] G. Piatetsky-Shapiro and W. J. Frawley, Knowledge Discovery in Databases. Cambridge,

MA: MIT Press, 1991.

[25] R. M. Pickett and G. G. Grinstein, “ Iconographic Displays for Visualizing Multidimensional

 Data,” in IEEE Conf. on Systems, Man and Cybernetics, Piscataway, NJ, 1988, pp. 514-519.

[26] W. Ribarsky, J. Katz, F. Jiang, A. Holland, “  Discovery Visualization Using Fast 

Clustering,”  IEEE CG&A, vol. 19, pp. 32-39, 1999.

Page 15: Visualização de Dados em Sistemas de Bases de Dados Relacionais

8/2/2019 Visualização de Dados em Sistemas de Bases de Dados Relacionais

http://slidepdf.com/reader/full/visualizacao-de-dados-em-sistemas-de-bases-de-dados-relacionais 15/15

[27] G. Robertson, S. Card, J. Mackinlay, “Cone-Trees: Animated 3D Visualization of 

 Hierarquical Information,” in ACM SIGCHI Intl. Conf. on Human Factors in Computing,

New York - NY, 1991, pp. 189-194.

[28] M. A. Shah, M. Kornacker, J. M. Hellerstein, “amdb: A Visual Access Method Development 

Tool,” in Int'l Wksp. on User Interfaces to Data Intensive System, Edinburgh, Scotland, U.K.,1999, pp. 130-140.

[29] N. A. Syed, H. Liu, K. K. Sung, “ A study of support vectors on model independent example

selection,” in Fifth ACM SIGKDD Intl. Conf. on Knowledge Discovery and Data Mining,

San Diego, CA USA, 1999, pp. 272-276.

[30] J. T.-L. Wang, X. Wang, K.-I. Lin, D. Shasha, B. A. Shapiro, K. Zhang, “ Evaluating a class

of distance-mapping algorithms for data mining and clustering,” in ACM KDD, San Diego,

CA, 1999, pp. 307-311.

[31] T. Zhang, R. Ramakrishnan, M. Livny, “ BIRCH: An Efficient Data Clustering Method for 

Very Large Databases,” in ACM SIGMOD Intl. Conf. on Management of Data - SIGMOD,

Montreal, Quebec, Canada, 1996, pp. 103-114.


Top Related