REVISTA CONTEÚDO ARTIGO

Transcrição

REVISTA CONTEÚDO ARTIGO
REVISTA CONTEÚDO
ARTIGO
DIRTY DATA E SUAS CONSEQUÊNCIAS NEGATIVAS EM UM SISTEMA DE
BANCO DE DADOS
Luis Cyrilo Ganassim Verdi1
Fabiana Lorenzi2
RESUMO
O fato de um dado estar devidamente registrado em um sistema de banco de dados não
significa que seu valor denotativo seja correto. E o que mais importa é justamente isto: seu
valor denotativo; pois é devido ao fato de dados serem utilizados principalmente na
fomentação de atividades intelectuais envolvendo o fornecimento de informações. E se eles
estiverem incorretos, as consequências serão fatalmente inconvenientes para quem os
consome. Tais dados são conhecidos como dirty data. O presente artigo aborda este tema,
descrevendo suas principais características, e também discorre concisamente a questão de
data cleansing.
Palavras-chave: Dirty data, dados, banco de dados, data cleasing.
DIRTY DATA AND ITS NEGATIVE CONSEQUENCES IN A DATABASE SYSTEM
ABSTRACT
The fact of a data be stored appropriately in a database doesn't mean its denotative value is
right. And the most important thing is its denotative value; this is due to the fact that data
supply intellectual activities that provide information. And if data were wrong, the
consequences will be fatally improper for those that use them. Such data are known as dirty
data. This paper approaches them, describing their main characteristics, and also analyzes
briefly the data cleansing matter.
Keywords: Dirty data, data, database, data cleansing.
1
Especialista em Gestão de Banco de Dados pela Universidade Luterana do Brasil (ULBRA).
2
Doutora em Ciência da Computação pela Universidade Federal do Rio Grande do Sul (UFRGS).
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
100
REVISTA CONTEÚDO
ARTIGO
INTRODUÇÃO
O fato de um dado estar devidamente registrado em um sistema de banco de dados não
significa que seu valor denotativo seja correto; pois se ele tem uma estrutura morfológica
válida de acordo com um conjunto de regras permitidas, sua entrada e persistência no mesmo
são admitidas e rusticamente válidas. Mas para a organização que o utiliza, o mais importante
é a sua qualidade denotativa. Isto porque dados são utilizados principalmente na fomentação
de atividades intelectuais envolvendo o fornecimento de informações, e estando esses dados
incorretos, as consequências são fatalmente inconvenientes para quem os consome. Pode-se
citar, como exemplo, o uso de dados errados em cálculos estatísticos, ocasionando falsos e
distorcidos resultados (HERNÁNDEZ; STOLFO, 1997).
Tais dados são conhecidos como dirty data, e originam-se de erros na entrada de
dados, padrões de codificação frugais, esquemas diferentes, sistemas de legado, evolução de
aplicações, migração de dados em sistemas, o não uso de identificadores únicos em banco de
dados, erros de programação e falhas na transmissão de dados.
Para resolver este emergente problema, soluções corporativas e tecnológicas são
oferecidas, baseadas em aplicações que auxiliam e automatizam funções no processo de
saneamento de dados, conhecido como data cleansing.
Os efeitos prejudiciais pela persistência de dirty data afetam praticamente todos os
segmentos sociais e tecnológicos de uma organização, pois como os processos de negócios
são entrelaçados de maneira dinâmica, a possibilidade de alastramento de dados
inconsistentes por todas as atividades que a organização executa é robustamente viável.
Este artigo está organizado da seguinte forma: a seção 2 apresenta o conceito e as
configurações contextuais de dirty data. A seção 3 se refere ao processo de data cleansing e
suas principais etapas, que são análise, transformação e integração de dados. A seção 4
abrange as consequências causadas por dirty data, descrevendo as características qualitativas
de dados, os custos de dirty data e os impactos funcionais dos mesmos. E por último, a seção
5 conclui o artigo realçando a responsabilidade do usuário humano ao se interagir com um
sistema computacional.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
101
REVISTA CONTEÚDO
ARTIGO
CONCEITUAÇÃO DE DIRTY DATA
Dirty data3 é um dado com valor denotativo inválido aceitável em um sistema de
banco de dados, pelo motivo de sua estrutura e composição morfológica estarem de acordo
com um conjunto de caracteres e regras permitidos.
Pode assumir formas diferentes, por estar submetido à intervenção humana e também
a processos de manipulação, sendo estes de natureza interna (relacionados ao sistema
gerenciador de banco de dados) ou externa (relacionados aos demais componentes
computacionais), durante o ciclo de vida de um dado.
Segundo (KIM et al, 2003, p. 82), este ciclo é composto pela captura, armazenamento,
atualização, transmissão, acesso, arquivamento, restauração, deleção e, por fim, purgação do
dado em questão. Cada etapa pode ser um manancial de dirty data, revestido,
respectivamente, de erros humanos e computacionais.
CONTEXTUALIZAÇÃO DE DIRTY DATA
O contexto é o principal fator que ambienta as afigurações de dirty data. Estas, por sua
vez, ramificam-se em situações sob o ângulo técnico, social e mercantil (esculpido por regras
de negócio), contemporizadas num sentido cronológico atual (tecnologias sem imposições de
outras) ou preterido (tecnologias legadas). Advindo disto, dirty data manifesta-se em três
diferentes modelos: dado ausente, dado não ausente mas errado e dado não ausente e não
errado mas inútil (KIM et al, 2003).
Norteando-se a um rumo estrito a sistemas de banco de dados, as possíveis
configurações que um dirty data pode assumir são oriundas de uma fonte ou de múltiplas
fontes, e enquadram-se basicamente em nível de esquema ou em nível de instância (RAHM;
DO, 2000).
Certamente problemas inerentes ao nível de esquema refletem-se no nível de
instância; eles podem ser alocados no nível de esquema por um design de esquema
aperfeiçoado (evolução do esquema), esquema de tradução e esquema de integração.
Por outro lado, os problemas relacionados ao nível de instância referem-se a erros e
3
Data, em inglês, é o plural da palavra datum. Todavia, por esta ser raramente empregada, será
utilizado o termo data para se referir tanto ao singular quanto ao plural da palavra dado.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
102
REVISTA CONTEÚDO
ARTIGO
inconsistências nos conteúdos de dados vigentes que não são visíveis no nível de
esquema. (RAHM; DO, 2000, p. 3, tradução nossa).
No que diz respeito ao aspecto técnico, a circunstância ambiental das operações do
sistema de banco de dados pode ser transacional, em que transações ocorrem
simultaneamente, ou não, sendo que cada transação se sucede unitariamente. Caso ela seja
transacional, há a necessidade da implantação de um gerenciador de transações; pois sob a
concomitância incontrolável delas, a cessação de dirty data torna-se inexequível.
TIPOS DE DIRTY DATA PROVENIENTES DE UMA FONTE
As características dos dados provenientes de uma única fonte estão vinculadas à
maneira de como eles são tratados pelo design do esquema e pelo arranjo de coações de
integridade (constraints). Sendo assim, a ocorrência de dirty data neste nível é muito provável
quando o esquema é parcamente elaborado, no sentido de objetividade quanto à persistência
dos dados que serão armazenados, e quando o arranjo de coações de integridade é frouxo e
inexpressivo. É importante salientar que em “fontes que não utilizam esquemas, como
arquivos, há poucas restrições sobre os dados que serão armazenados, aumentando a
probabilidade de que ocorram inconsistências e haja erros.” (RAHM; DO, 2000, p. 3,
tradução nossa). No entanto, em sistemas de banco de dados, que possuem meios de forçar
restrições em contextos específicos, essa probabilidade é menor.
Sob a perspectiva de uma fonte no nível de esquema, dirty data tipifica-se em:
Ilegal – valor não contido num conjunto de valores aceitáveis.
Exemplo: uma data gregoriana possuir o dia 29 em um ano não bissexto; Data=
29/02/2014.
Dependente violado – valor relacionado diretamente a outros valores, sendo ele incoerente
com os mesmos.
Exemplo: a idade de uma pessoa não estar condizente com seu dia de nascimento;
Data de nascimento= 01/04/2000, Data de hoje= 30/03/2014, Idade= 20 anos (era para
a idade desta pessoa ser 13 anos).
Exclusivo violado – valor que não pode ser igual a outro valor.
Exemplo: duas pessoas com o R.G. iguais; Nome1= “João Ferreira”, R.G.1=
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
103
REVISTA CONTEÚDO
ARTIGO
30.500.700-1, Nome2= “Suzana de Almeida”, R.G.2= 30.500.700-1.
Mal referido – valor referente a outro valor que não existe.
Exemplo: aluno estudar numa escola inexistente. Nome= “Pedro Santos”, Escola=
“Idiomas Inc.” (esta escola não está cadastrada no banco de dados).
Mojibake – representação de um conjunto de caracteres por uma codificação que não o
suporta, cuja imagem abeira-se a hieróglifos. Este tipo de dirty data se sucede em arquivos4.
Exemplo: a palavra nipônica “文字化け” codificada no padrão UTF-8 (8-bit Unicode
Transformation Format) ser erroneamente apresentada como “æ–‡å—化ã”.
Dado que data cleansing é um processo custoso, prever dirty data de entrar em um
banco de dados é obviamente um importante passo para reduzir este processo. Isto
requer um design de esquema e coações de integridade apropriados, tanto na parte
do sistema de banco de dados quanto nas aplicações ligadas à entrada desses dados.
(RAHM; DO, 2000, p. 3, tradução nossa).
Todavia, (KIM et al., 2003, p. 86) ressalta que não há como sistemas de banco de
dados saberem qual coação de integridade deve ser aplicada, devido a eles desconhecerem a
semântica dos dados. Por exemplo, o fato do campo “idade” da tabela “funcionário” ser do
tipo de dado inteiro (integer), fará com que o sistema gerenciador de banco de dados impeça
que valores de cadeia de caracteres (string) sejam usados. Contudo, ele permitirá valores
incoerentes, tais como 0 ou 567, pois são conformes a esse tipo de dado.
Sendo assim, percebe-se que as coações de integridade reforçam apenas o fundamento
aspectual pelo qual dados devem se limitar. Para um controle mais sensível e acurado, outros
objetos do sistema de banco de dados em questão devem ter suas funcionalidades cinzeladas.
Sob a perspectiva de uma fonte no nível de instância, dirty data tipifica-se em:
Ausente – valor indisponível ou estúpido.
Exemplo: Telefone= - ; Nome= “auehaeuheu”.
Mal escrito – valor com caracteres incoerentes ao seu sentido morfológico, provenientes de
erros de digitação e de fonética.
4
Não confundir mojibake com dado criptografado.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
104
REVISTA CONTEÚDO
ARTIGO
Exemplo: Cidade= “Saum Paulu”, sendo que o correto é “São Paulo”.
Omisso – valor oculto, devido a abreviações ou siglas.
Exemplo: Bairro= “St. Agostinho”, sendo que o valor completo seria “Santo
Agostinho”.
Embutido – valor que é um conjunto de valores de outros campos.
Exemplo: Nome= “Carlos Alcunha 30/08/1980 Caxias/RS”.
Indevido – valor cadastrado em um campo incoerente.
Exemplo: País= “Rio Grande do Sul”.
Referido incoerentemente – valor referenciado por outro incorretamente.
Exemplo: Cidade= “São Paulo”, CEP= “13.390-000”.
Duplicado – valor que possui uma ou várias cópias cadastradas no sistema, sendo elas
exatamente iguais ou não.
Exemplo:
Funcionário1
(Nome=
“Gabriel
Oliveira”,
Data
de
nascimento=
12/03/1987), Funcionário2 (Nome= “Gabriel Oliveira”, Data de nascimento=
12/03/1987), Funcionário3 (Nome= “Gabriel O. 12/03/1987”).
Corrompido – valor distorcido por uma ação proveniente do sistema de banco de dados.
Exemplo: consequências causadas por fenômenos transacionais adulteradores, que são
lost update, dirty read, unrepeatable read e lost transaction.
Não padronizado – valor cuja composição de caracteres não é padronizada.
Exemplo: Nome1= “J. Gomes”, Nome2= “Heitor J.”.
Fantasma – valor aparentemente válido que na realidade não existe.
Exemplo: Cliente (Nome= “Antonio Silva”, Data de nascimento= 05/06/1990, ...), o
cadastro não possui nenhuma incoerência, contudo essa pessoa não existe no mundo
real.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
105
REVISTA CONTEÚDO
ARTIGO
Para a prevenção de valores prestigiosamente corrompidos, (KIM et al, 2003, p. 87)
releva que as funcionalidades oferecidas por um gerenciador de transações garantem que tais
tipos de dirty data não ocorram enquanto o sistema computacional continente do sistema de
banco de dados não seja destruído.
Também é importante ter-se um raciocínio precavido e holista no uso de objetos do
sistema de banco de dados em questão, e na formulação da lógica dos mesmos, para que
assim a manipulação dos registros seja adequada.
Vários tipos de dirty data podem ser controlados utilizando-se triggers. Mas há
situações que podem ser difíceis de serem controladas, especialmente quando a
condição que ativa a trigger lê dirty data (por exemplo, valores mal escritos, valores
com contexto incompleto). (KIM et al, 2003, p. 90, tradução nossa).
TIPOS DE DIRTY DATA PROVENIENTES DE MÚLTIPLAS FONTES
Os tipos de dirty data de múltiplas fontes são praticamente os mesmos que os de uma
fonte, contudo muito mais aguerridos. Isto porque as múltiplas fontes necessitam ser
integradas, sendo que cada uma delas pode ter problemas específicos já citados na seção
anterior. Com base nisto, a questão discutível tange no conceito de harmonização da
heterogeneidade, pois geralmente cada fonte é desenvolvida independentemente, de acordo
com as suas próprias necessidades, tendo distintos sistemas gerenciadores de banco de dados,
modelos de dados, design de esquema e entrada de dados.
Dessa maneira, as interpretações contextuais a respeito do padrão dos dados e de seu
devido valor divergem-se entre si, podendo, dependendo do ângulo pelo qual são tratadas,
estarem certas ou não.
Entretanto, se mais de um banco de dados independente for integrado, os dados
tornar-se-ão dirty data no contexto do banco de dados integrado, mesmo que cada
dado das duas fontes esteja correto. (KIM et al, 2003, p. 90, tradução nossa).
De acordo com (RAHM; DO, 2000), no nível de esquema as diferenças do modelo de
dados e do design de esquema das múltiplas fontes devem ser submetidas aos passos
procedentes de esquemas de tradução e de integração, respectivamente. Com relação ao
design de esquema, há dois principais problemas: conflitos de nominais e estruturais.
Sob a perspectiva de conflitos nominais, dirty data afigura-se em:
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
106
REVISTA CONTEÚDO
ARTIGO
Homônimo – quando o mesmo nome é usado por diferentes objetos.
Exemplo
–
Cliente/Consumidor,
Aluno/Estudante,
Funcionário/Empregado,
Sexo/Gênero
Sinônimo – quando diferentes nomes são usados pelo mesmo objeto.
Exemplo – um campo usa a representação DD/MM/AAAA para datas, outro utiliza a
representação MM/DD/AAAA; um campo usa caractere branco (“ ”) para o espaço,
outro utiliza o underline (“_”); um campo para o atributo “Endereço” é único em uma
fonte, e em outra fonte é fragmentado em “Cidade”, “Bairro”, “Rua”.
Na parte estrutural, o problema se sucede quando há diferentes representações de um
mesmo objeto intrínseco ao sistema de banco de dados. Por exemplo, tipos de dados
(metadados), componentes estruturais, gerenciadores de transações e coações de integridade.
Se alguém toma a visão de que diferentes representações do mesmo dado podem ser
prevenidas se um padrão representativo for especificado e forçado como uma forma
de coação de integridade, então estes tipos de dados podem ser considerados como
dirty data. Também, se alguém toma a visão de que mesmo se um padrão único
representativo é forçado, se mais de um banco de dados deve ser integrado, as
diferenças causarão um conflito que deve ser resolvido. Então estas diferentes
representações do mesmo dado não são realmente dirty data, mas simplesmente
inutilizáveis até que um padrão único seja adotado e as representações distintas se
convirjam. (KIM et al, 2003, p. 89, tradução nossa).
Quanto ao nível de instância, o obstáculo está no conflito dos dados, que se dissemina
em dados duplicados de diversas fontes e em representações diferentes para valores iguais.
Neste último, por exemplo, em uma fonte há o padrão para se colocar no atributo “Sexo” os
valores “Masculino” ou “Feminino”, e em outra fonte os valores “M” ou “F”.
Ademais, mesmo quando há nomes de atributos e tipos de dados iguais, pode haver
diferentes representações de valores (situação conjugal, por exemplo) ou diferentes
interpretações dos valores (mensuração de unidades monetárias em real e em dólar)
nas fontes. Além disso, informações nas fontes podem ser provenientes de diferentes
níveis de agregações (vendas por produto e vendas por grupo de produtos) ou se
referirem a momentos distintos (vendas correntes de ontem da fonte 1 e vendas da
semana passada da fonte 2). (RAHM; DO, 2000, p. 4, tradução nossa).
DATA CLEANSING
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
107
REVISTA CONTEÚDO
ARTIGO
Data cleansing5 é o processo pelo qual se remove dirty data. Pode ser feito através da
erradicação, que elimina a existência de dirty data no sistema de banco de dados, ou pela
depuração, que mundifica seu valor até deixá-lo de acordo com o que foi tencionado; sendo
tais procedimentos precedidos pela detecção de irregularidades (WANG et al., 2005). Há a
possibilidade de ele ser atado diretamente à entrada de dados no sistema de banco de dados ou
aplicado após esse fato, tendo em vista o aprimoramento da qualidade dos dados em questão.
Segundo (MALETIC; MARCUS, 2000, p. 2), o processo de data cleansing envolve
procedimentos de decomposição e recomposição de dados, sendo eles mais fulgentes em
bancos de dados relacionais. É computacionalmente dispendioso em extensos conjuntos de
dados, por isso é praticamente inconcebível executá-lo em hardware com características
escassas.
É inteligível que o processo de data cleansing feito manualmente é totalmente
laborioso, custoso e sujeito a erros (SALL, 2013). Por conta disso, softwares são utilizados
para a realização desta tarefa. Pode-se citar, como exemplo, o Quick Address (QAS), Trillium
(Trillium Software) e matchIT Data Cleansing Suite (Help IT Systems).
A necessidade de poderosas e eficientes ferramentas que automatizam ou auxiliam
intensamente no processo de data cleansing são de grande ajuda, e podem ser a
única maneira efetiva em se tratando de praticidade e custo para se alcançar um
nível de qualidade razoável no conjunto de dados em questão. (MALETIC;
MARCUS, 2000, p. 1, tradução nossa).
É também evidente que o contexto político territorial influencia nas características dos
softwares oferecidos, que periodicamente vão se elaborando de acordo com as necessidades
deste segmento para tornarem-se condizentes ao mesmo.
Ferramentas comerciais de data quality, como o Trillium, First Logic e Vality, foram
engenhadas com o passar dos anos e estão provando serem altamente capazes de
auxiliar na conversão de nomes e endereços de vários países em seus padrões e
representações, com a ajuda de vastas diretrizes nacionais para com nomes e
endereços. (Vality Technology Inc.; First Logic Inc.; Trillium, 1998 apud KIM et al,
2003, p. 92, tradução nossa).
5
Em inglês, os termos cleansing e cleaning significam a mesma coisa. Contudo, o primeiro conota
negatividade (o que está a ser limpo é penoso ou preocupante) e profundidade (limpeza intensa);
portanto, o mesmo será utilizado neste artigo.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
108
REVISTA CONTEÚDO
ARTIGO
As fases que constituem o processo de data cleansing são, comumente, padrões
passíveis de serem empregados por qualquer metodologia, divergindo-se na técnica
algorítmica de impô-los. Elas se embasam num sentido polar cíclico de procedimentos que se
iniciam na análise de dados, transformação dos mesmos, entremeiam-se os comparando, e
terminam na conceptível integração deles.
ANÁLISE DE DADOS
A análise de dados tem como objetivo averiguar todo conjunto de dados, ou apenas
parte dele, em um sistema de banco de dados, com o propósito de detectar dirty data. Para tal
atividade, ela se fundamenta na investigação de indícios de irregularidades e inconsistências
num determinado conjunto de dados, através de uma pluralidade de técnicas pertencentes a
diversificados campos da área de exatas (como estatística, estrutura de dados e aprendizado de
máquina). Pode ser feita diretamente por humanos, sendo dispendioso e não efetivo em
grandes coleções de dados, e por softwares, tais como o Migration Architect (Evoke
Software), WizRule (WizSoft) e Data Mining Suite (Viscovery), ou componentes integrados a
outras ferramentas.
Neste processo de examinação são utilizados como principais parâmetros os
metadados da coleção de dados a ser investigada, os padrões de qualidade de dados
estabelecidos pela própria instituição que faz a análise e técnicas de reengenharia que
auxiliam na elaboração de linhas de raciocínio para se concluir a melhor descrição que um
certo tipo de dirty data se enquadra. E na maior parte das vezes tais parâmetros são
empregados concomitantemente.
Metadado refletido em esquemas é tipicamente insuficiente para a avaliação da
qualidade de dados em uma determinada fonte, especialmente se poucas coações de
integridade são impostas. É, assim, importante analisar o nível de instância para
obter metadados (reengenhados) reais sobre as características dos dados ou
inabituais padrões de valores. (RAHM; DO, 2000, p. 6, tradução nossa).
Nota-se, além disso, que fatores como a dimensão de dirty data e sua ascendência num
sistema de banco de dados, assim como o paradigma da instituição para com o que considera
ser a projeção de um dado limpo, estão severamente relacionados à acurácia de dados.
É claro que se a proporção de dirty data que resulta em transformação errada de
dados ou a proporção de dados ausentes é alta, com relação ao conjunto de dados em
questão, os resultados de data mining tendem a ser inconfiáveis. No entanto, a
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
109
REVISTA CONTEÚDO
ARTIGO
magnitude de erro relacionada à transformação de dados também importa. Por
exemplo, um dado numérico que representa um salário, 75.500 em vez de 75.400,
quando convertido a uma categoria de dados em fragmentos de 10.000, não
impactará o resultado; mas 100.000 em vez de 10.000 sim. (KIM et al, 2003, p. 96,
tradução nossa).
Há duas abordagens que influenciam determinantemente a maioria das metodologias
de análise de dados, que são a perfilação de dados e a mineração de dados. Ambas se
manifestam e se sucedem em sentidos diferentes.
PERFILAÇÃO DE DADOS
A perfilação de dados se foca em analisar atributos individuais no nível de instância,
com o objetivo de derivar informações inerentes a dados, como dimensão, alcance de valor,
valores discretos e suas frequências, variação, exclusividade, ocorrência de valores ausentes e
padrões de caracteres; provendo uma visão detalhada de vários aspectos qualitativos do
atributo em questão (RAHM; DO, 2000, p. 6).
A maneira de como esta abordagem atua é pouco integrada a fatores externos que se
interagem com o sistema de banco de dados (regras de negócio abstrusas e demais
componentes de softwares), devido à vigorosa pesquisa por metadados. Sendo assim,
contextos levemente monólogos são mais apropriados a sua função.
Alguns exemplos adequados à heurística de perfilação de dados são:
Cardinalidade – atributos como gênero e estado civil devem ter valores limitados a uma
restrita gama de opções. Sendo assim, a perfilação faz uma varredura para constatar se o
conjunto de dados armazenados referentes a tais atributos está restrito a esse limite.
Alcance – atributos como idade e preço devem se restringir a um determinado alcance de
valores. Tendo isso como base, a perfilação verifica se o conjunto de dados relacionados a
estes atributos se delimita neste alcance.
Variação – examina, a partir de um conjunto correto de dados, se há dados com caracteres
alterados referentes a este conjunto.
Ausência – expressa a percentagem de ausência de valores de um determinado atributo.
Duplicata – busca por valores idênticos em um determinado atributo.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
110
REVISTA CONTEÚDO
ARTIGO
Mineração de dados
A mineração de dados concentra-se em descobrir, no nível de esquema, padrões
específicos de dados em grandes conjuntos e coleções, tais como associações de atributos e
vínculos entre dados. Para isso, conta principalmente com algoritmos voltados a estatísticas
interpolares, recuperação de dados e inteligência artificial.
Sua perspectiva de atuação é intensamente introspectiva, pelo fato de iniciar sua busca
numa estratificação do software direcionada ao lado do cliente (parte com a qual o humano
interage diretamente) até percorrer as porções mais herméticas, de acordo com a função pela
qual foi empregada.
Por ser de aplicabilidade estreitamente ligada às circunstâncias, são vários os
exemplos existentes, moldando-se ordinariamente em:
Identificação de padrões – busca, em um conjunto de dados, por padrões estabelecidos em
seus parâmetros de pesquisa.
Associação direta de dados – examina se há relação entre dados aparentemente desconexos
em contextos semelhantes.
Associação indireta de dados – procura sinais de supostos elos entre dados sem
relacionamento expressivo em circunstâncias desarticuladas.
TRANSFORMAÇÃO DE DADOS
A transformação de dados consiste num mapeamento de regras que transmudam dados
em níveis de esquema e instância. Para sua execução ser efetivamente viável, é necessário o
suporte de extensões de alguma linguagem de programação ou scripts que automatizam esta
tarefa.
Uma abordagem para a execução de transformação de dados mais arqueável e
intrínseca a banco de dados é servir-se de User-Defined Functions (UDF), que são funções
com mecanismos e características estendidas em relação às funções convencionais (RAHM;
DO, 2000). Desta maneira, estão aptas a abrigarem lógicas purgativas para lidarem com dirty
data. Elas podem ser implementadas diretamente em SQL ou imbuídas em linguagens de
programação como SQL statements.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
111
REVISTA CONTEÚDO
ARTIGO
As UDFs toleram a implantação de vários planos de transformação de dados e suporte
para reusabilidade em diferentes tarefas. Além disso, por sua execução ser interna no sistema
de banco de dados, o custo de acesso a dados é reduzido, tendo como consequência o aumento
de desempenho.
Geralmente as transformações no nível de esquema necessitam de apoio integral por
parte de extensões de linguagens de programação, o que é mais tênue no nível de instância.
Data cleansing no nível de instância pode também se beneficiar de extensões de
linguagem de programação especiais, como o operador de comparação que suporta
“joins adjacentes”. O suporte a esses poderosos operadores pode simplificar
enormemente os esforços despendidos em programação para transformação de dados
e aumentar o desempenho do sistema. (RAHM; DO, 2000, p. 7, tradução nossa).
INTEGRAÇÃO DE DADOS
A integração de dados é o procedimento responsável pela incorporação de dados
oriundos de diferentes fontes e coleções. É a última etapa do processo de data cleansing, pelo
motivo de diversificadas técnicas de transformação serem aplicadas às diferentes fontes e
coleções de dados.
O ato de integrar dados originários de fontes diferentes alude-se com dirty data
provenientes de múltiplas fontes, exigindo como solução a reestruturação, espargida por
lógica difusa, de esquemas, firmada na fragmentação, fusão, relação e desconjuntura de
atributos e tabelas. Segundo (RAHM; DO, 2000, p. 7), pode-se delinear todas essas ações
emoldurando-as em três etapas determinantes:
Extração de atributos livres – retalha nexos existentes entre supostos dirty data, acudindo
no extrato de valores para uma representação precisamente mais versátil.
Validação e correção – depura dados instanciados com o intuito de nivelá-los para sua
emergente padronização.
Padronização – converte os dados em questão num formato uniforme e consistente, através
de especificações de alteração.
CONSEQUÊNCIAS PELA PERSISTÊNCIA DE DIRTY DATA
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
112
REVISTA CONTEÚDO
ARTIGO
A ilação em conter dirty data num sistema de banco de dados é absolutamente
subjetiva à visão cultural da instituição em apreço; mas, seguramente é nociva e prejudicial
em todos os ângulos dos componentes funcionais tecnológicos e administrativos da mesma,
pois dados possuem a propriedade de prolificar seus valores conotativos exacerbadamente
(ver figura 1, que ilustra uma situação rotineira de como isso ocorre). Desta maneira, as
consequências perniciosas podem se alastrar em diversos segmentos do prisma sumptuoso
que reflete o que a instituição considera como prejuízo, sendo corroborada em algumas partes
e cifrada em outras.
Figura 1 – Diálogo entre Dilbert e seu chefe6.
Apesar de todo esse efeito ser obscuramente mensurável, por ser subjetivo, há técnicas
de análise e conceitos classificativos de dados que auxiliam na delimitação conveniente dos
mesmos, provenientes da gama das opções cognoscitivas da área de Data Quality
Management (DQM).
CARACTERÍSTICAS DIMENSIONAIS QUALITATIVAS DE DADOS
6
Dilbert © Scott Adams. Todos os direitos estão reservados.
Chefe: Use o banco de dados CRS para dimensionar o mercado.
Dilbert: Aqueles dados estão errados.
Chefe: Então use o banco de dados SIBS.
Dilbert: Aqueles dados também estão errados.
Chefe: Você pode mediá-los?
Dilbert: Claro. Posso multiplicá-los também.
Imagem disponível em: dilbert.com/strips/comic/2008-05-07/
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
113
REVISTA CONTEÚDO
ARTIGO
Sob a óptica da utilidade sócio tecnológica de dados, tratando-se de uma forma
relevantemente expressiva, pode-se conferir algumas propriedades importantes para a
averiguação da qualidade dos mesmos. No entanto, (BRACKSTONE, 1999) ressalta que
qualidade não é algo fácil de ser definido, e que primeiro se deve atentar ao contexto no qual
se quer impô-la, levando primeiramente em conta o quão abrangente a noção qualitativa
aplicada é, em relação à instituição em pauta.
Partindo disso, (BRACKSTONE, 1999) considera seis características dimensionais de
dados, cujas definições são:
Relevância – representa o valor da relação entre o dado e a real necessidade em usá-lo.
Acurácia – aponta o quão corretamente um dado descreve o fenômeno designado a ser
mensurado.
Temporariedade – reflete o período de tempo de um dado entre seu ponto de referência e sua
disponibilidade.
Acessibilidade – indica o grau de facilidade que um dado pode ser obtido.
Interpretação – expõe o grau quantitativo de recursos suplementares designados no auxílio
da determinação do significado do dado.
Coerência – menciona a racionalidade da relação representativa de um dado com outro.
Todas elas impingem-se entre si, sendo que o foco que se dá a uma sopesa no uso
vigoroso de outra.
É evidente que elas não são independentes umas das outras. Por exemplo, todas as
outras cinco impactam na relevância. Existe um custo de oportunidade entre
acurácia e temporariedade. Coerência e relevância podem, às vezes, estar em
conflito devido à competição entre a necessidade da relevância contemporânea e a
consistência histórica. A informação provida para garantir outra informação também
serve para definir a coerência. (BRACKSTONE, 1999, p. 4, tradução nossa)
CUSTOS ORIGINÁRIOS DE DIRTY DATA
Os custos provocados por dirty data são oriundos de diversas variáveis e fontes
(PIPINO; KOPCSO, 2004), sendo elas dissimuladas ou transparentes. Por conta disto, a
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
114
REVISTA CONTEÚDO
ARTIGO
mensuração dos mesmos é complicada e embaraçosa, sendo também influenciada pela
desponderada integração delas, que se repercute de maneira acerbada.
Calcular os custos vigentes causados pelo nível insuficiente da qualidade de dados é
particularmente difícil porque muitos destes custos são indiretos, ou seja, eles não
têm ligação imediata entre a inadequada qualidade dos dados e o efeito monetário
negativo. Consequentemente, é difícil identificar custos ocultos, indiretos e
desajudados. (EPPLER; HELFERT, 2004, p. 311, tradução nossa).
Para esta mensuração, a princípio é levado em consideração o que se entende por
qualidade. A partir disso, é possível mapear contabilmente pontos cruciais e traços
estratégicos por onde o desperdício de recursos flui. De acordo com (EPPLER; HELFERT,
2004), critérios genéricos são mais apropriados, pois oferecem opções mutáveis de medição,
em contraste com as definições restritas, que debilitam muitos fatores e são contra produtivas.
Partindo disso, pode-se esboçar o arquétipo classificativo de custos como:
- Baixo e alto – relacionado aos recursos sociais e monetários;
- Corretivo e preventivo – vinculado ao processo de entrada de dados (nível de esquema);
- Reprocessado e aperfeiçoado – inerente ao processamento direto de dados (nível de
instância);
- Direto e indireto – pertencente ao consumo dos valores de dados.
Os custos diretos têm incidência imediata na saúde financeira da instituição em
questão, enquanto que os custos indiretos recaem, no início, paulatinamente, tornando-se
graves estorvos na medida em que se desenrolam. Para lidar com eles, há duas abordagens
principais que são a reativa, que se embasa na reparação de dados, e a proativa, que se
baseia na prevenção dos mesmos. Ambas são aplicadas de acordo com o fluxo da receita
monetária da instituição em apreço, com o intuito de mantê-lo controlado e devidamente
abastecido.
IMPACTOS FUNCIONAIS
Os impactos causados por dirty data impelem diretamente às características funcionais
de uma instituição. De acordo com (MOORE, 2007), os mais contundentes estão assentados
na parte superficial administrativa, constituindo-se da alta rotatividade de consumidores,
despesas excessivas para se contatar um cliente e perdas de oportunidades de negócios.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
115
REVISTA CONTEÚDO
ARTIGO
Entretanto, também se acentuam nas partes corporativas mais intrínsecas, como na elaboração
de orçamentos, opções de manufatura, desenvolvimento e coordenação logística de produtos e
serviços.
No segmento tecnocrático, segundo (VALENTINE; CHASE, 2013) dirty data
atrapalha nas operações de marketing digital, sendo a captura de comportamentos universais,
projeção de perfil exclusivo para cada cliente, engines interativas e multicanais de interação
as mais atingidas. Quanto ao aspecto voltado ao hardware e ao sistema gerenciador de banco
de dados, dirty data utiliza recursos por simplesmente existir, pois para estar devidamente
registrado no sistema, configurações esconsas (mapeamento de dados para os objetos
estruturais do sistema gerenciador terem consciência de que eles existem) devem ser feitas, e
em virtude disto recursos de hardware consumidos.
Destaca-se também a colocação de (FIRME; HARRINGTON, 2013), que se refere ao
crescimento exponencial de dirty data durante períodos anuais de tempo, que torna o banco de
dados da instituição em questão um fornecedor de informações deteriorado para o setor de
marketing, ocasionando custos desnecessários que atinam a receita da mesma.
CONCLUSÃO
Este artigo abordou o tema de dirty data, mostrando suas principais características,
contextos e consequências, e descreveu genericamente o processo conceitual de data
cleansing. Como resultado desta elaboração, percebe-se que dirty data é um grave problema,
tendo como principal agente o ser humano.
A parte humana é um dos três núcleos que compõem um sistema computacional, ao
lado do hardware e do software. Sua função consiste em criar, configurar e utilizar, em um
nível abstrato interno e além do ambiente digital, o que as outras duas têm a oferecer.
Dessa maneira, o usuário humano possui grande responsabilidade ao se interagir com
um sistema computacional, e suas ações afetam dinamicamente os processos fundamentais de
entrada, processamento e saída. E a mais notável e democrática delas é a alimentação de
banco de dados.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
116
REVISTA CONTEÚDO
ARTIGO
Assim, sua capacidade intelectual deve estar devidamente calibrada com o seu
objetivo na interação com um sistema computacional, sendo ele de origem operacional,
gerenciadora ou criadora.
Fornido de tudo isso, o propósito deste artigo foi conscientizar a respeito da existência
de dirty data, que é um problema ambíguo, colossalmente desmedido e ainda pouco
explorado.
REFERÊNCIAS BIBLIOGRÁFICAS
BRACKSTONE, Gordon. Managing Data Quality in a Statistical Agency. Statistics
Canada, Survey Methodology, Catalogue No. 12-001-XPB, Vol. 25 No. 2, December 1999.
EPPLER, Martin J.; HELFERT, Markus. A Classification and Analysis of Data Quality
Costs. Proceedings of the Ninth International Conference on Information Quality, 311-325,
MIT, 2004.
FIRME, Mary; HARRINGTON, Lynn. Marketing Automation Webinar Series: The Cost
of Dirty Data – by ReachForce & Scribe Software. Youtube. 2013. Disponível em: <
www.youtube.com/watch?v=uLaDbXsXpbE>. Acessado em: 20 jun. 2014.
HERNÁNDEZ, Mauricio A.; STOLFO, Salvatore J. Real-world Data is Dirty: Data
Cleansing and the Merge/Purge Problem. Kluwer Academic Publishers, Data Mining and
Knowledge Discovery, 2, 9-37, 1998.
KIM, Won. CHOI, Byoung-Ju. HONG, Eui-Kyeong. KIM, Soo-Kyung. LEE, Doheon. A
Taxonomy of Dirty Data. Kluwer Academic Publishers, Data Mining and Knowledge
Discovery, 7, 81-99, 2003.
MOORE, Susan. ‘Dirty Data’ is a Business Problem, Not an IT Problem, Says Gartner.
Gartner. 2007. Disponível em: <www.gartner.com/newsroom/id/501733>. Acessado em: 21
jun 2014.
MALETIC, Jonathan I.; MARCUS, Andrian. Data Cleansing: Beyond Integrity Analysis.
The Department of Mathematical Sciences, Division of Computer Science, The University of
Memphis, Memphis, 2000.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
117
REVISTA CONTEÚDO
ARTIGO
PIPINO, Leo; KOPCSO, David. Data Mining, Dirty Data, and Costs. Proceedings of the
Ninth International Conference on Information Quality,164-169, MIT, 2004.
RAHM, Erhard; DO, Hong Hai. Data Cleaning: Problems and Current Approaches.
University of Leipzig, Germany, 2000.
SALL,
John.
Big
data
=
Dirty
data.
sas.
2013.
Disponível
em:
<blogs.sas.com/content/jmp/2013/09/17/big-data-dirty-data/>. Acessado em: 01 jun. 2014.
VALENTINE, Ellen; CHASE, Peter. Improving the Customer Experience by Capturing
and Using the Right Data – by Silverpop. Youtube. 2013. Disponível em: <
www.youtube.com/watch?v=PU8wj9HScbA>. Acessado em: 21 jun. 2014.
WANG, Xin; HAMILTON, Howard J.; BITHER, Yashu. An Ontology-Based Approach to
Data Cleaning. Department of Computer Science, University of Regina, Regina,
Saskatchewan, Canada, 2005.
© Revista Conteúdo, Capivari, v.7, n.1, set./dez. 2014 – ISSN 1807-9539
118

Documentos relacionados