Home

Tese Final - Universidade do Minho

image

Contents

1. Cap tulo 8 Estudo de Caso de Limpeza de Dados 287 Na Tabela 8 19 apresentam se algumas das 175 viola es de dom nio identificadas no atributo TensaoMax a tens o m xima n o pode ser inferior a 70 nem superior a 240 Tabela 8 19 Resultados da OD de viola o de dom nio no atributo TensaoMax TensaoMax Na Tabela 8 20 apresentam se algumas das 250 viola es de dom nio detectadas no atributo TensaoMin a tens o m nima n o pode ser inferior a 40 nem superior a 120 Tabela 8 20 Resultados da OD de viola o de dom nio no atributo TensaoMin TensaoMin 288 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica No atributo Profissao da tabela Dadores executou se uma OD de viola o de sintaxe semelhante efectuada no atributo CodProfissao da tabela Profissoes O objectivo consistia em identificar viola es ao seguinte formato de c digo de profiss o un nn nn em que n representa um d gito num rico Da execu o da opera o resultou a identifica o de 11955 valores que violam esta sintaxe Na Tabela 8 21 apresentam se os tipos distintos de viola o de sintaxe detectados Tabela 8 21 Resultados da OD de viola o de sintaxe no atributo Profissao Profissao 00 00 06 07 07 2007 02 02 1999 01 01 2001 05 05 2005 Opera es de Co
2. novo valor substitui substring u atr t pal erro D fim se fim se u atr novo valor R RU ua Uam Uam Ulmin t lt de tuplo T fim repetir fim Notas O s mbolo n representa o caracter espa o O significado do atributo pal err e da fun o substitui substring str substr1 substr2 encontra se definido na formaliza o anterior correc o de erro ortogr fico 6 3 2 Contexto Multi Valor Nas subsec es seguintes apresentam se as formaliza es das OC dos PQD que ocorrem ao nivel dos v rios valores do atributo 178 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 6 3 2 1 Exist ncia de sin nimos Formaliza o Sint ctica TipoOpera o EXISTENCE OF SYNONYMS ColunasAlvo DasTabelas DasBasesDados Defini o TermosUniformiza o Formaliza o Sem ntica A rela o que armazena os sin nimos detectados no atributo Ze Z1 permite agrup los por clusters de sin nimos O utilizador indica entre os sin nimos que formam cada duster qual ser utilizado como termo de uniformiza o dos demais correc o autom tica deste PQD envolve a actualiza o dos valores do atributo que cont m os sin nimos com o termo de uniformiza o seleccionado em cada cluster De referir que a actualiza o do valor do atributo corresponde a um novo valor que apenas difere do anterior no termo de uniformiza o que su
3. no qual v o ser efectuadas as opera es de LD e os elementos dos esquemas de dados anteriores sobre os quais se armazenou informa o Com base nas semelhan as poss vel inferir automaticamente iguais mapeamentos aos que foram estabelecidos anteriormente por via manual forma de funcionamento deste mecanismo necessita de ser convenientemente especificada Naturalmente o passo seguinte passar pela implementa o deste mecanismo de forma integrada no prot tipo SmartClean a Aplica o do SmartClean a novos casos de LD Face s perspectivas de trabalho futuro apresentadas nos pontos anteriores o prot tipo SmartClean ficar substancialmente diferente do actual Assim sendo faz todo o sentido que seja aplicado em novos casos de melhoria da qualidade dos dados para validar as novas extens es e g a interoperabilidade das opera es de LD e o mecanismo de mapeamento autom tico ao modelo de LD proposto nesta disserta o Por outro lado como j se referiu neste cap tulo importante avaliar o desempenho do modelo de LD em BD de maiores dimens es do que a usada no estudo de caso realizado O objectivo consiste em continuar a testar e validar o modelo proposto de LD em novas e diferentes situa es que requerem a DC dos PQD FERRAMENTAS COMERCIAIS DE Sa MELHORIA DA QUALIDADE DOS DADOS Neste ap ndice apresenta se uma breve descri o de algumas ferramentas comerciais utilizadas no processo de melhoria d
4. DesignacaoConclusao ALT elevada ALT elevada Comportamento de risco Comportamento de risco Gen rico Gen rico Patologia hematol gica Patologia hematol gica Patologia infecciosa parasit ria Patologia infecciosa parasitaria Patologia neurol gica Patologia neurol gica Patologia respirat ria Patologia respirat ria Patologia reumatol gica Opera es de Correc o Patologia reumatol gica Na resolu o das viola es de unicidade detectadas no atributo DesignacaoConclusao executou se a opera o a seguir apresentada REMOVE UNIQUENESS VIOLATION ON DesignacaoConclusao FROM Conclusoes OF BDD De acordo com a sem ntica apresentada no Cap tulo 6 esta opera o elimina os tuplos redundantes de que resultam as viola es de unicidade e caso a tabela em quest o se encontre envolvida nalgum relacionamento efectua as necess rias altera es que asseguram a manuten o da integridade referencial Existe um relacionamento entre a tabela Conclus es atributo Cap tulo 8 Estudo de Caso de Limpeza de Dados 293 CodigoConclusao e a tabela Dadores atributos Trel Colb e Lab ainda que este n o se encontre definido na BDD A inexist ncia da defini o deste relacionamento impede que as necess rias altera es que asseguram a integridade referencial sejam efectuadas automaticamente pela opera o em quest o Assim antes
5. formaliza es das opera es de detec o e correc o 364 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica B 2 1 Selec o A opera o de selec o simbolicamente representada por o R constitui uma opera o un tria que actua sobre uma rela o R e produz uma nova rela o que cont m apenas os tuplos de R que satisfazem a condi o cond especificada Esta opera o funciona como um filtro sobre os tuplos de R B 2 2 Projec o A opera o de projec o simbolicamente representada por Tarr atr R constitui uma opera o un ria que actua sobre uma rela o R e produz uma nova rela o que cont m todos os valores dos atributos atr atr em que estes constituem um subconjunto dos atributos de R B 2 3 Produto Cartesiano opera o produto cartesiano simbolicamente representada por R x constitui uma opera o bin ria que produz uma nova rela o resultante da combina o de todos os tuplos da rela o R com todos os tuplos da rela o S B 2 4 Diferen a A opera o diferen a simbolicamente representada por R S constitui uma opera o bin ria que produz uma nova rela o composta pelos tuplos que se encontram na rela o R mas que n o se encontram na rela o S B 3 Opera es Complementares As opera es complementares de lgebra relacional s o aquelas que podem ser expressas em fun o das opera es
6. investiga o de LD Em rela o a esta tabela a Tabela 10 2 composta por uma coluna adicional que exibe a cobertura dada aos PQD pelo SmartClean Esta nova tabela permite comparar as potencialidades de DC do SmartClkan relativamente a esses prot tipos de investiga o Os significados dos acr nimos usados na tabela s o D Detec o C Correc o OBS Opera o Baseada em Structured Query Language SQL FDU Fun o Definida pelo Utilizador OP Opera o Predefinida e NS N o Suportado Cap tulo 10 Conclus o 341 Tabela 10 2 Cobertura dada aos PQD pelo S7zartClean por compara o aos prot tipos de investiga o de LD Tipo Arktos Intelli Potter s Smart Eai Ajax mm Clean Fell Wheel Clean D OBS OP NS OBS OP OP Valor em falta OP c CBS ru DU ops Ns FDU FDU OBS OP D FDU OP NS NS OP FDU Viola o de sintaxe C FDU OP FDU D OP oe FDU FDU D FDU FDU NS NS OP OP Erro ortogr fico C FDU FDU FDU NS NS OP D OBS OP NS NS FDU OP Viola o de dom nio OBS OP OP C FDU FDU FDU FDU NS EDU D OBS OP NS NS FDU OP Viola o de unicidade C Oey FDU NS NS NS OP FDU Exist ncia de D FDU FDU NS NS FDU OP sasani C FDU FDU FDU NS NS OP OP OP D a FDU NS FDU Viola o de restri o FDU FDU de integridade OP P5 rou ns Ns NS i FDU FDU Viol
7. o Saliente se que o ED pode obrigar a que sejam efectuadas mudan as ao n vel do esquema e a que novos atributos sejam acrescentados de modo a que os novos valores possam ser atmazenados Um aspecto de extraordin ria import ncia no ED o da elevada qualidade da FD de refer ncia Os dados est o a ser confrontados com uma FD que necessariamente tem de ter um n vel de qualidade superior Caso contr rio do processo n o resulta a esperada melhoria da QD O principal problema do ED reside na inexist ncia de um mecanismo de notifica o das altera es que ocorrem na pr pria FD de refer ncia Assim necess rio proceder n o s ao enriquecimento dos dados novos como tamb m de forma peri dica dos que j tinham sido anteriormente enriquecidos No mercado h diversas ferramentas comerciais que procedem ao ED eg dfPower Quality DataFlux 2007a TS Quality Trillium Software 2007a HIQuality Human Inference 2007h Estas ferramentas baseiam se nos seus pr prios dados que funcionam como uma esp cie de base 36 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica de conhecimento para efectuarem o ED Tamb m permitem o acesso a FD de refer ncia comercializadas por terceiros O prot tipo de investiga o Ajax Galhardas e a 2001 origin rio da comunidade acad mica o nico que suporta a realiza o de ED 2 8 Conclus o Neste cap tulo abordou se gener
8. o de integridade A de B ie DCB Este conjunto resulta da especifica o da OC seja fa cardinalidade de D seja k2 o n mero de atribui es existentes na sequ ncia de atribui es da OC referentes aos atributos da rela o S sejam x2 y2 e z2 n meros inteiros compreendidos no intervalo 1 f sejam 02 p2 e q2 n meros inteiros compreendidos no intervalo 1 k2 seja Z a rela o que armazena as viola es identificadas restri o de integridade in cio se existem atribs na rela o vec atribs chave prim R Z verdadeiro ou ou existem atribs na rela o vec atribs chave prim S Z verdadeiro ent o T Ocong RDAILDISDAIZ sen o T amp Cond RPA PIS fim se VE Tamar E AE 7 ue de tuplo U repetir enquanto u null Re R u v atrib Vz atrib 208 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Va atribg UC Va u Cy Va UC Va R RU ua UAU A cc Un ue de tuplo U fim repetir VE Th RR O baba T u lt de tuplo U repetir enquanto u null S S u v atrib V2 atrib Ve atriby udo Vo udp Vy uda vp S SU u b U6 0 6 415 5U b45 ue de tuplo U fim repetir fim 6 7 Conclus o Neste cap tulo apresentou se a formaliza o sint ctica e sem ntica das opera es que suportam a correc o dos PQD A nivel sint ctico formalizou se uma linguagem que permite a es
9. o de unicidade no atributo ae S sse dt t E r Y t A ta At t O Exist ncia de sin nimos Seja synonyms uma fun o que recebe dois Z0kens e um dicion rio de sin nimos d verifica se os tokens s o sin nimos com base no dicion rio e devolve um valor l gico 7 e verdadeiro ou falso Seja tokenize uma fun o que recebe um valor e devolve os tokens que o comp em Sejam e T conjuntos de fens assim definidos S tokenize v t ter nace RA e U tokenize u t a t Erna E R A sendo t t Diz se que se esta perante a exist ncia de sin nimos no atributo a RA sse seS ue U synonymss u d verdadeiro O Viola o de restri o de integridade Seja check uma fun o que recebe os valores do atributo verifica se uma determinada restri o de integridade respeitada e devolve um valor l gico Existe uma viola o de restri o de integridade no atributo a e MA sse check v T a falso Nota Tal como definido na Sec o 4 4 1 v Ta representa o conjunto de valores do atributo a considerando todos os tuplos existentes 4 4 3 Problemas ao N vel do Tuplo A defini o formal do PQD identificado ao n vel dos valores dos atributos de um tuplo a seguir apresentada 96 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O Viola o de restri o de integridade Seja check uma fun o que recebe um conjunto de valores dos
10. o deste processo de detec o que envolve reiniciar a execu o das sequ ncias de OD quando se encontram envolvidos diferentes NG em simult neo Para melhor o ilustrar considere se o exemplo que a seguir se apresenta Suponha se que o utilizador especificou OD ao n vel do atributo apenas no contexto do valor individual do tuplo da rela o e multi rela o de uma fonte de dados Ao n vel do atributo e do tuplo n o foi detectado qualquer PQD No momento da execu o da OD relativa ao NG da rela o detectado um PQD Este problema devidamente solucionado pelo utilizador H duas rela es auxiliares que armazenam informa o sobre os atributos e os tuplos que sofreram altera es com as correc es efectuadas A estrutura destas rela es ser detalhada na sec o seguinte Por agora suficiente saber da sua exist ncia e qual a sua finalidade Ao executar se novamente a OD respeitante ao NG da rela o confirma se que o problema anterior foi de facto solucionado Uma vez que j n o existem problemas ao 252 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica n vel da rela o o processo de execu o das sequ ncias de OD reinicia se no NG mais elementar no caso ao nivel do atributo O objectivo garantir que as correc es efectuadas n o introduziram inconscientemente outros problemas nos NG precedentes 2 e atributo e tuplo O mbito de execu o das seq
11. o dom nio atr verdadeiro ent o se existe opera o detec o valor incompleto atr verdadeiro ent o T lt Ta am atr o x gt lt Tisd Z1 Ra ud R Ta an z1 sen o 122 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica T lt Taam atr Scone x gt lt an Z1 fim se sen o se existe rela o T falso ent o se existe opera o detec o valor incompleto atr verdadeiro ent o P T Taam atr O cond R gt lt Tapsan RU ap sam Z1 gt lt Ta am R i 1 Ta pend 21 D sen o P T amp Ta a atn O cond RD AU Zaan Ah 1 1 fim se sen o se existe opera o detec o valor incompleto atr verdadeiro ent o T lt Ta sam atr Bas r DaT Da a R Taam 2 senao T lt Fay joosdon atr Gag R gt lt T fim se fim se t de tuplo T repetir enquanto t null se nr_tokens t atn Z 1 e existe opera o detec o viola o dom nio atr ou O dom t atr X ent o palavra extrai_primeiro_token t atn Ue T fom Eion like palavra length dom lt t atr 19 determina valores validos U t palavra extrai ultimo token t atr Ve T dom dom like palavra A length dom lt t atr x igth dom 1 determina valores validos U t US T fom length dom lt t atr x 1 determina valores validos U t fim se ue de tuplo U Cap tulo 5 Formaliza o das Opera es de
12. o que possuem maior divulga o 3 4 1 1 M todo do Produto Cartesiano O m todo baseado no produto Cartesiano envolve comparar cada registo da tabela com todos os outros registos Na detec o de todos os duplicados aproximados que possam existir numa tabela este o m todo que apresenta maior fiabilidade Lee e a 1999 O problema que se trata de um m todo lento e ineficiente pois obriga realiza o de um n mero quadr tico de compara es Sendo n o n mero de registos de uma tabela o n mero de compara es que resulta do produto Cartesiano de O n Numa tabela composta por um numero muito elevado de registos e g na ordem dos milh es muito dificilmente constitui uma op o vi vel Note se que al m do elevado n mero de compara es h que acrescer tamb m ao custo computacional o custo de cada opera o de compara o Normalmente a detec o de que um registo constitui um duplicado aproximado de outro tamb m uma opera o dispendiosa sob o ponto de vista computacional 3 4 1 2 M todo da Vizinhan a Ordenada O m todo da vizinhan a ordenada Hern ndez e Stolfo 1995 Hern ndez e Stolfo 1998 visa a detec o de registos duplicados exactos ou aproximados A ideia que se encontra subjacente a este m todo a seguinte ordenar os registos com base numa determinada chave de modo a colocar os potenciais duplicados pr ximos uns dos outros De seguida efectuar um conjunto de compara
13. poss vel encontrarem se in meros exemplos dos diversos factores que contribuem para a fraca QD Um dos principais factores para a exist ncia de PQD consiste na sua incorrecta introdu o Umar e al 1999 Essencialmente a introdu o incorrecta dos dados fica a dever se exist ncia de erro humano Kimball e al 1998 Os seguintes exemplos ilustram algumas situa es causadoras de PQ Lee e al 2000 uso indiscriminado de abreviaturas como forma de acelerar a velocidade de introdu o erros na digita o transcri o dos valores omiss es de valores em atributos supostamente obrigat rios introdu o deliberada de valores errados e g valores por defeito valores fict cios e introdu o involunt ria de valores errados causados por formul rios de recolha de dados confusos Outros factores n o dependentes de erro humano directo tamb m s o causadores de PQ como Lee et al 2000 Chaudhuri e Dayal 1997 Fayyad ez a 1996 erros de medi o causados por um sensor defeituoso erro na transmiss o dos dados erro de processamento bug do sistema inform tico e erro na transforma o ou integra o dos dados um outro n vel certos factores inerentes pr pria organiza o tamb m contribuem para a exist ncia de PQ como Koronios et al 2005 estruturas inadequadas que assegurem o reporte completo preciso e atempado dos dados inadequa o das regras do treino ou dos procedimentos que a r
14. 205723467 Na avalia o das diferen as n o s o considerados os atributos que integram as chaves prim rias das rela es caso estas existam e Duplicados inconsistentes Apesar dos tuplos serem duplicados um do outro um ou mais atributos que n o fazem parte das chaves prim rias caso estas existam das rela es cont m valores que s o contradit rios entre si e g o tuplo chentes1 10 Ant nio C Carvalho Rua do Sol 123 205723467 um duplicado inconsistente do tuplo chentes2 72 Ant nio C Carvalho Rua das Flores 987 205723467 O Viola o de restri o de integridade Uma restri o de integridade envolvendo valores provenientes de m ltiplas rela es n o respeitada e g o somat rio dos valores dos produtos que fazem parte de uma determinada factura armazenados na rela o detalhes facturas n o igual ao total da factura armazenado na rela o facturas o que viola uma restri o enunciando que t m de ser iguais Optou se por apresentar os PQD dos dois n veis conjuntamente numa s sec o uma vez que estes s o os mesmos Quando se consideram os valores de v rias rela es os problemas s o iguais independentemente destas pertencerem a uma ou mais FD H no entanto uma preponder ncia para que certos problemas ocorram mais frequentemente entre rela es de FD diferentes do que de uma s fonte Isto acontece com a heterogeneidade de sintaxes e unidades
15. Como resultado s o identificados os registos que violam as restri es de integridade Uma ferramenta robusta de DP suporta a constru o o armazenamento e a valida o das restri es de integridade espec ficas de cada organiza o Existem v rias ferramentas comerciais de DP e g Datiris Profiler Dataris 2007 ETI Data Profiler ETI 2007b Trium Discovery Trilltum Software 2007b dfPower Profile DataFlux 2007b HIQuality Inspect Human Inference 2007b No Ap ndice A Sec o A 1 apresenta se uma descri o da ferramenta Datiris Profiler A informa o t cnica dispon vel sobre as diversas ferramentas permite concluir que todas denotam sensivelmente as mesmas potencialidades As principais diferen as residem na interface com o utilizador e na capacidade de acederem a diferentes tipos de FD A revis o de literatura efectuada n o conduziu identifica o de qualquer prot tipo de investiga o de DP 2 7 2 An lise de Dados A AD baseia se nos dados para inferir padr es relacionamentos e regras subjacentes a estes Desta forma a AD permite detectar e solucionar automaticamente alguns PQ e g viola es de depend ncias funcionais viola es de restri es de integridade O recurso AD justifica se pela exist ncia de opera es de neg cio cada vez mais complexas e opacas Dasu e al 2003 De referir que os termos descoberta nos dados e minera o da OD em ingl s data quality mining Hip
16. Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela NomeTabela Alias Tabela NomeTabela identificador AliasTabela identificador Restantes Tabelas gt TabelaAdicional TabelaAdicional gt Tabela DasBasesDados OF BaseDados RestantesBasesDados BaseDados identificador RestantesBasesDados BaseDados Adicional BaseDadosAdicional BaseDados UsandoColunas Defini oColunas Defini oColunas USING Coluna RestantesColunas UsandoChavesOrdena o ChavesOrdena o ChavesOrdena o ChaveOrdena o TamanhoJanelaComparac es ChaveOrdena o SORT KEY Numerolnteiro CaracteresColuna RestantesCaracteresColuna CaracteresColuna CHARS NumeroInteiro RestantesPosCaracter OF ATRIBUTE NomeColuna RestantesPosCaracter Posi oCaracter Adicional Posi oCaracter Adicional Numerolnteiro RestantesCaracteresColuna CaracteresColuna Adicional CaracteresColuna Adicional CaracteresColuna TamanhoJanelaCompara es WINDOW SIZE NumeroInteiro UsandoLimiar gt e Defini oLimiar Defini oLimiar USING THRESHOLD ValorLimiar UsandoOpera es UsandoAtribui es UsandoFun o Void UsandoAtribui es e Defini o Atribui es Defini oAtribui es SET Atribui o RestantesAtribui es Atribui o Vari vel
17. LadoDireito Atribui o Vari vel identificador LadoDireito Atribui o Vari vel Constante Express oAritm tica NomeColuna Fun oDefUtilizador inqu rito sql Constante string valor num rico Express o Aritm tica Par ntesisEsq Operando Operador Operador Par ntesisDir Cap tulo 5 Formaliza o das Opera es de Detec o 113 Par ntesisEsq Operando valor num rico Vari vel Express o Aritm tica NomeColuna Operador opera o aritm tica Par ntesisDir gt e 9 Fun oDefUtilizador NomeFun o ArgumentoFun o Restantes ArgumentosFun o ArgumentoFun o NomeColuna Vari vel Constante RestantesArgumentosFun o Argumento AdicionalFun o Argumento AdicionalFun o ArgumentoFun o RestantesAtribui es Atribui oAdicional Atribui o Adicional Atribui o UsandoFun oVoid e USING FUNCTION Fun oDefUtilizador DependentesDe Defini oColunasDependentes Defini oColunasDependentes DEPENDENT ON Coluna RestantesColunas DasTabelasRefer ncia Defini o TabelasRefer ncia Defini o TabelasRefer ncia DasTabelas DasBasesDadosRefer ncia e Defini oBasesDadosRefer ncia Defini oBasesDadosRefer ncia DasBasesDados UsandoDominio gt Defini oDom nio Defini oDom nio USING DOMAIN NomeDominio NomeDom
18. es de uma FD 4 2 5 Resumo Na Tabela 4 1 apresenta se uma s ntese dos PQD que comp em a taxionomia a respectiva dimens o da QD em que cada problema se insere de acordo com as defini es apresentadas no Cap tulo 2 Sec o 2 2 2 2 e os respectivos NG onde ocorrem Tabela 4 1 PQD por NG NG da QD Valor Tuplo Rela o rela es AR N FD individual Valor em falta Completude Viola o de sintaxe Consist ncia Erro ortogr fico Correc o Viola o de dom nio Correc o Viola o de adia cu ie Consist ncia unicidade Exist ncia de ENTE Consist ncia sin nimos Viola o de restri o Consist ncia de integridade Viola o de depend Consist ncia Funcional Cap tulo 4 Problemas de Qualidade dos Dados 89 Tabela 4 1 PQD por NG continua o NG da QD tor Tuplo Rela o rela es Eita FD individual Tuplos duplicados Consist ncia Circularidade entre tuplos num auto Consist ncia relacionamento Exist ncia de eo ae Consist ncia hom nimos Viola o de integr ae ee S 5 8 Consist ncia referencial Dif granularidades Rs Consist ncia de representa o Heterogeneidade de fa whit Consist ncia sintaxes Heterogeneidade de PRA onan unidades de medida N o se poderia concluir esta apresenta o resumida dos PQD que fazem parte da taxionomia proposta sem efectuar os seguintes coment ri
19. fim se t de tuplo T repetir enquanto t null v lt fdu p PaPa v lt fdu PooP gt v lt fdu E E J bi J P js P jo P iw se avalia condi o p PePe verdadeiro ent o Z1 Z1 VU tad bdmstC1 5t C fim se t lt de tnplo T fim repetir fim Nota Os significados de Z1 Ce Zi utilizados nesta formaliza o encontram se enunciados nas defini es da formaliza o anterior 5 5 Problemas ao N vel da Rela o Nesta sec o apresenta se a formaliza o das OD dos PQD que ocorrem ao n vel da rela o 5 5 1 Viola o de depend ncia funcional Formaliza o Sint ctica DETECT FUNCTIONAL DEPENDENCY VIOLATION ColunasAlvo DasTabelas DasBasesDados Defini oColunasDependentes UsandoCondi o 132 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Formaliza o Sem ntica A detec o deste PQD envolve identificar os valores das chaves prim rias dos tuplos nos quais os valores dos atributos que formam o conjunto de que atr depende a n vel funcional s o iguais mas nos quais o valor de atr diferente Al m dos valores das chaves prim rias a rela o que resulta desta OD e Z1 armazena os valores dos atributos que representam a viola o de depend ncia funcional 2 e dos atributos independentes e do atributo dependente Algoritmo Detec o Viola o Depend ncia Funcional amp seja A d dm 4m iy 5
20. mbito do modelo de LD concebido para a especifica o das opera es de LD A abordagem prende as opera es ao esquema de uma determinada BD sendo perfeitamente adequada caso estas sejam apenas para executar nessa BD No entanto frequentemente isto n o corresponde realidade A generalidade das opera es de LD s o gen ricas o suficiente para poderem ser executadas em diferentes BD Estas opera es podem estar limitadas a BD que perten am ao mesmo dom nio ou podem ser de tal forma gen ricas que s o independentes deste eg uma dada organiza o pode ter v rias BD acerca das suas actividades organizadas em fun o da sua distribui o geogr fica pela v rias delega es comerciais uma empresa de consultoria na rea da Qualidade de Dados QD enfrenta os mesmos PQD in meras vezes em BD de diferentes clientes cujo ramo de actividade o mesmo Nestes casos a especifica o das opera es ao n vel do esquema dos dados n o constitui a abordagem apropriada As mesmas opera es ou pelo menos subconjuntos destas fazem sentido ser aplicadas em diferentes BD pertencentes ao mesmo dom nio Atendendo a que as opera es foram especificadas para uma BD em concreto efectuar a sua reutiliza o noutras BD n o f cil Diversas altera es s o necess rias para que seja poss vel reutilizar uma opera o de limpeza noutra BD uma vez que os nomes das tabelas e atributos normalmente n o s o os mesmos No caso de tabel
21. o fica a cargo do utilizador a defini o das depend ncias de execu o entre as opera es No caso das ferramentas comerciais ainda que n o seja necess rio definir a sequ ncia de execu o das opera es o leque de PQD coberto reduzido quando comparado com os problemas que o modelo proposto suporta Por outro lado a sequ ncia de manipula o dos PQD adoptada por estas n o parece adequada s diferentes situa es de LD que podem ocorrer ver Cap tulo 1 Sec o 1 2 O estabelecimento de uma ordem de execu o das opera es de LD permite a implementa o de um mecanismo de execu o incremental A detec o de um PQD n o implica a interrup o da execu o de certas OD para que este seja solucionado Todas as OD que n o dependam do PQD detectado continuam a sua execu o Numa itera o subsequente das OD o mbito de execu o destas fica restrito aos problemas anteriormente detectados Todos os outros atributos e tuplos em que se verificou n o existirem problemas aquando da itera o anterior de execu o das OD n o s o considerados na nova itera o Al m da potencialidade que acabou de ser referida o modelo proposto supre outros problemas e limita es identificados nas actuais solu es inform ticas vocacionadas para a LD novamente ver Cap tulo 1 Sec o 1 2 Assim o modelo foi concebido especificamente para a LD permitindo que as opera es sejam efectuadas directamente na pr pria
22. o das OD uses 250 Tabela 7 5 Rela o pata exemplitica o da execu o das OC una canas datas aan agga 256 Tabela 8 1 Informa o relativa a cada tabela da BDD suas ces tairieto meato nie vaadat batata quais 273 Tabela 8 2 OD executadas no contexto do valor individual dos atributos da tab Conclusoes 274 Tabela 8 3 Resultados da OD de erro ortogr fico no atributo DesignacaoConclusa0 usss 275 Tabela 8 4 OD executadas no contexto do valor individual dos atributos da tab Inutilizacoes 276 Tabela 8 5 OD executadas no contexto do valor individual dos atributos da tabela Hospitais 277 Tabela 8 6 Resultados da OD de erro ortogr fico no atributo DesHospital mesemeease 277 Tabela 8 7 OD executadas no contexto do valor individual dos atributos da tabela Brigadas 278 xxii Tabela 8 8 OD executadas no contexto do valor individual dos atrib da tab CodigosPostais 278 Tabela 8 9 Resultados da OD de viola o de dominio no atributo CodPostal wcities 279 Tabela 8 10 OD executadas no contexto do valor individual dos atributos da tab Profissoes 280 Tabela 8 11 Resultados da OD de viola o de sintaxe no atributo CodProfissao eee 281 Tabela 8 12 Resultados da OD de erro ortogr fico no atributo DesProfissao cscs 281 Tabela 8 13 OD executadas no contexto do valor individual dos atributos da tab Colhestas 282 Tabela 8 14 Resultados da OD de viola o de dom nio n
23. o de dados provenientes de m ltiplas fontes numa nova FD e g cria o de um armaz m de dados Neste caso as preocupa es com os PQD aumentam substancialmente necess rio n o s solucionar os problemas que possam existir individualmente em cada FD como tamb m os problemas que possam existir entre estas Frequentemente as fontes cont m dados redundantes e g m ltiplos registos relativos 8 A descoberta de conhecimento em bases de dados um processo anal tico concebido para explorar grandes volumes de dados na procura de padr es consistentes e relacionamentos sistem ticos entre os atributos Um armaz m de dados consiste num conjunto centralizado de dados normalmente recolhidos a partir de fontes diferentes e concebido com a finalidade de auxiliar na tomada de decis o Cap tulo 2 Qualidade de Dados 21 mesma entidade do mundo real em diferentes representa es e g unidades de medida diferentes Os PQD constituem uma barreira integra o de dados uma vez que dificultam a identifica o dos registos referentes mesma entidade do mundo real A reuni o de dados provenientes de diferentes s tios web constitui um outro exemplo de integra o de dados 2 4 A Fraca Qualidade dos Dados A fraca QD pode ficar a dever se a in meros factores repercutindo se negativamente em diversas situa es Cada um destes aspectos abordado numa das seguintes subsec es 2 4 1 Causas Na literatura
24. o de integridade Tal como exposto na Sec o 7 3 2 2 estas OD s o executadas precisamente segundo esta ordem Neste NG o processo de execu o das OD que fazem parte da sequ ncia envolve duas fases distintas A primeira fase envolve a execu o das duas primeiras OD da sequ ncia ze exist ncia de sin nimos e viola o de unicidade A segunda fase envolve a execu o da OD que resta 7 e viola o de restri o de integridade Enquanto todos os PQD resultantes da execu o das OD Cap tulo 7 Modelo Proposto para a Limpeza de Dados 239 pertencentes primeira fase n o estiverem solucionados n o se prossegue para a execu o das OD referentes segunda fase Por sua vez enquanto n o forem solucionados todos os PQD que resultam da execu o das OD de viola o de restri o de integridade o processo n o dado como conclu do A Figura 7 10 ilustra graficamente este processo de execu o das OD A linha a tracejado representa a separa o entre as duas fases de execu o As itera es que podem ocorrer em cada fase tamb m se encontram representadas na figura me Viola o de Unicidade Viola o de Restri o de Integridade A Figura 7 10 Processo de execu o das OD no contexto multi valor do atributo As OD de exist ncia de sin nimos e viola o de unicidade ainda que em sequ ncia 7 e primeiro a detec o de exist ncia de sin nimos e depois a detec o de viol
25. o de outras OD referentes a um qualquer NG que no entretanto tenham sido identificadas como necess rias A necessidade destas pode surgir como consequ ncia dos PQD que v o sendo reportados Actualmente a nica alternativa que permite a especifica o de novas OD implica a interrup o do processo de LD em curso As opera es pretendidas s o especificadas e todo o processo reinicia se novamente com as consequ ncias que da adv m de voltarem a ser executadas OD que j o tinham sido anteriormente No futuro esta limita o ser objecto de trabalho para que seja poss vel pelo menos especificar OD para o NG em quest o e para os que se encontram a jusante deste 10 4 Trabalho Futuro N o s neste cap tulo como tamb m ao longo dos cinco cap tulos anteriores foram referidos aspectos suscept veis de virem a ser alvo de desenvolvimentos futuros identificados no decurso do trabalho realizado Nos pontos seguintes recapitulam se os considerados mais relevantes e apresentam se outros desenvolvimentos futuros que ainda n o tinham sido referidos 350 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O Implementa o do modelo proposto de LD como um Web Service O modelo proposto de LD deu origem ao prot tipo SmartClean Este prot tipo foi concebido para funcionar isoladamente no computador que serve de suporte realiza o da LD cariz de stand alone application Esta
26. o de uma fun o definida pelo utilizador no caso LocalidadeMaisFrequente A sem ntica subjacente a esta opera o a seguir descrita Para cada viola o restri o de integridade que envolve os atributos CodPostal e LocPostal o valor deste ltimo atributo substitu do pela localidade que apresenta maior frequ ncia 7 e n mero de ocotr ncias relativamente ao valor do atributo CodPostal em quest o No caso de existir mais do que uma localidade nestas condi es a fun o aleatoriamente retorna uma destas Naturalmente as correc es efectuadas desta forma n o apresentam o mesmo grau de credibilidade do que as realizadas manualmente 8 8 Conclus o Neste cap tulo apresentou se um estudo de caso com o objectivo de evidenciar o interesse e validade da ferramenta SmartClean e do modelo proposto de LD de acordo com o qual esta foi desenvolvida Para o efeito executou se um conjunto alargado de OD ze 104 e respectivas OC ze 22 sempre que se identificaram PQD na BD que suportou a realiza o do estudo e a BDD De referir que ambos os tipos de opera es foram especificados pelo autor desta disserta o que n o possui conhecimentos espec ficos sobre o dom nio 7 e d divas de sangue em geral e em particular sobre a BD em quest o Um perito da rea teria certamente especificado OD adicionais e eventualmente efectuado correc es diferentes Ainda assim cumprem perfeitamente a finalidade com que fo
27. o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica No diagrama os fluxos a tra o cont nuo representam um fluxo de dados enquanto que os fluxos a tracejado representam um fluxo de controlo Uma descri o dos diversos componentes que comp em a arquitectura e da forma como estes interactuam entre si a seguir fornecida O utilizador come a por especificar as OD que pretende executar Estas opera es s o especificadas tendo por base a linguagem declarativa apresentada no Cap tulo 5 Ap s a especifica o destas opera es estas s o submetidas ao compilador de OD Este efectua o parse das OD e caso seja detectado algum erro sint ctico este reportado ao utilizador para que este proceda sua correc o No diagrama da arquitectura este fluxo n o foi intencionalmente representado para n o o sobrecarregar excessivamente Na situa o contr ria 7e n o ser detectado qualquer problema sint ctico as OD s o convertidas para uma representa o interna utilizada nos m dulos sequenciador de OD e motor de execucao incremental das OD Na sua nova representa o as OD s o sujeitas ao m dulo sequenciador de OD Este um dos principais m dulos da arquitectura da que v ser objecto de apresenta o detalhada na sec o seguinte Por agora suficiente dizer que este m dulo respons vel por organizar as opera es por NG e g atributo tuplo rela o e em cada um d
28. reduzida De acordo com este crit rio o prot tipo que d maior cobertura o Arktos II Mesmo assim s o somente cinco os PQD que se encontram cobertos a generalidade dos quais apenas ao n vel da detec o Constata se que nenhum dos prot tipos suporta de base a DC de um n mero apreci vel de problemas O Em tr s dos prot tipos designadamente no InteliClean no FraQL e no Potter s Wheel h um conjunto consider vel de problemas que n o possui sequer suporte nem a n vel de detec o nem a n vel de correc o Apesar de serem ferramentas de LD de car cter gen rico uma vez que o seu mbito n o se encontra limitado a um s problema a sua abrang ncia acaba por ser limitada Q Todos os prot tipos se socorrem das suas potencialidades de extensibilidade para cobrirem um maior leque de problemas suportando fun es definidas pelo utilizador Os dois prot tipos que mais seguem esta abordagem s o o Ajax e o Arktos II No caso espec fico do Ajax nem sequer s o disponibilizadas opera es predefinidas A DC dos PQD s o efectuadas maioritariamente por fun es definidas pelo utilizador Alguns problemas podem ser detectados e corrigidos por interm dio de opera es baseadas em SQL que o utilizador tamb m tem de especificar Apesar do caracter gen rico e flex vel 102 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica uma solu o que centrada nas fun es definida
29. repetir enquanto x null X Q VA X Gy E VA Si Si I SR bao DD x de tup X fim repetir fim repetir R amp R nuana uan R ue de tuplo U fim repetir t de tuplo T fim repetir fim Nota O significado de e dos atributos idcluster c encontra se definido na formaliza o anterior Cap tulo 6 Formaliza o das Opera es de Correc o 193 6 5 3 Viola o de restri o de integridade Formaliza o Sint ctica CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF RELATION ColunasAlvo DasTabelas DasBasesDados Defini o Atribui es UsandoTabelas UsandoCondi o Formaliza o Sem ntica A rela o que resulta da OD respectiva e ZD al m de conter os valores que representam viola es restri o de integridade ao n vel da rela o tamb m pode conter informa o sobre os tuplos que as provocam No caso desta informa o n o existir isso significa que a viola o da restri o de integridade resulta dos valores dos atributos envolvidos quando se considera a globalidade dos tuplos existentes e g o valor total dos artigos em stock resultantes do somat rio dos valores que resultam da multiplica o da quantidade pelo pre o unit rio de cada artigo tem de ser igual a um determinado valor fornecido pelo utilizador A OC proposta baseia se na altera o aos valores dos atributos nos tuplos especificados pelo utilizador entre os que se encontram envolvidos no PQD z
30. situa o mencionada A semelhan a do que sucede nas OD quando se especificam OC ao n vel do atributo a linguagem proposta permite que se defina numa nica opera o eg correc o de erro ortogr fico m ltiplos atributos de uma determinada rela o e g nome morada localidade Isto significa que a OC deve ser executada em cada um destes atributos Assim ainda que seja especificada uma s OC esta corresponde a m ltiplas opera es uma vez que a sua execu o efectuada individualmente para cada atributo As formaliza es apresentadas na sec o seguinte reflectem a sem ntica subjacente execu o da OC num atributo individual 6 3 Problemas ao N vel do Atributo Nesta sec o apresentam se as formaliza es das OC dos PQD que ocorrem ao n vel do atributo Preservando a forma de organiza o dos PQD por n vel de granularidade preconizada na taxionomia come a se por apresentar as formaliza es das OC que ocorrem no contexto do 168 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica valor individual do atributo De seguida apresentam se as formaliza es das OC dos PQD que ocorrem no contexto dos varios valores do atributo 6 3 1 Contexto do Valor Individual Nas subsec es seguintes apresentam se as formaliza es das OC dos PQD que ocorrem ao n vel do valor individual do atributo 6 3 1 1 Valor em falta Viola o de sintaxe Viola o de do
31. 2000 pp 3 13 Raman V e Hellerstein J M 2001 Potter s Wheel An Interactive Data Cleaning System In Proceedings of the 27 Very Large Databases Conference Roma It lia Setembro de 2001 pp 381 390 Redman T C 1996 Data Quality for the Information Age Artech House 1996 Redman T C 1998 The Impact of Poor Data Quality on the Typical Enterprise Communications of the ACM 41 2 1998 pp 79 82 Redman T C 2004 Data An Unfolding Quality Disaster In DM Review Magazine 380 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Salaun Y e Flores K 2001 Information Quality Meeting the Needs of the Consumer International Journal of Information Management 21 1 2001 pp 21 37 Sarawagi S e Bhamidipaty A 2002 Interactive Deduplication using Active Learning In Proceedings of the 8 ACM SIGKDD International Conference on Knowledge Discovery and Data Mining Alberta Canada 2002 pp 269 278 Sattler K U Conrad S e Saake G 2000 Adding Conflict Resolution Features to a Query Language for Database Federations In Proceedings of the 3 International Workshop on Engineering Federated Information Systems Dublin Irlanda Junho de 2000 pp 41 52 Sattler K U e Schallehn E 2001 A Data Preparation Framework Based on a Multidatabase Language In Proceedings of the International Database Engineering and Applic
32. A implementa o com sucesso de um armaz m de dados s pode ser conseguida por interm dio da boa QD Wang et al 2003 A problem tica da QD em ambientes de armaz ns de dados tem sido objecto de estudo em diversos trabalhos acad micos e g em Costa 2006 De Cap tulo 3 Limpeza de Dados 39 notar que por vezes tamb m se recorre cria o de armaz ns de dados como forma de solucionar alguns dos PQ existentes Lee e a 2000b Em suma a LD antecede a aplica o das tecnologias de dados de alto n vel actualmente existentes tendo como finalidade a DC dos PQD que possam existir No entanto a tarefa de limpar os dados das mais dif ceis e onerosas Estima se que entre 50 a 70 do tempo total necess rio implementa o de um projecto de descoberta de conhecimento em BD ou cria o de um armaz m de dados seja dispendido na fase de LD Liu 1999 Nos ltimos anos estas duas reas 7 e descoberta de conhecimento em BD e armaz ns de dados receberam muita aten o entre a comunidade cient fica da rea das BD No passado os esfor os de investiga o centraram se quase em exclusivo no problema da integra o de esquemas de dados O objectivo passava por reconciliar diferen as ao nivel do esquema A integra o de esquemas foi investigada em in meros trabalhos que propuseram arquitecturas de integra o e g Calvenese 1999 Metais et al 1997 sistemas mediadores em ingl s mediator syst
33. A ocorr ncia destes problemas deve ser evitada logo na sua origem Assim de modo a solucionar definitivamente os PQD necess rio identificar as suas reais causas e redesenhar os processos em fun o destas Os m todos de detec o de duplicados record linkage Newcombe et al 1959 e vizinhan a ordenada Hern ndez e Stolfo 1998 inserem se neste tipo de abordagem O Baseada no processo Esta abordagem centra a sua aten o nas actividades que geram os PQD originando a reengenharia do processo que pode ir desde a captura dos dados at ao desenho da pr pria base de dados As principais actividades que esta abordagem envolve s o monitorar o ciclo de vida dos dados para localizar o aparecimento dos PQ e usar controlo de qualidade estat stico e de gest o do processo para assegurar a QD desejada Esta abordagem possui a vantagem de solucionar os PQD a longo prazo ainda que possa ser bem mais dispendiosa do que a abordagem baseada nos dados Na literatura poss vel encontrar diversos m todos que seguem esta abordagem melhorando a QD por interm dio de altera es ao processo como fun es do processamento de informa o Redman 1996 desenvolvimento da fun o qualidade Akao 1990 sistema de produ o de informa o de Ballou Ballou ef al 1998 e arquitectura IP MAP Shankaranarayanan e al 2000 A introdu o de altera es ao processo tendo em vista a resolu o definitiva dos PQD fica fora do mbit
34. Hern ndez e Stolfo 1998 Uma alternativa mais razo vel passa por considerar que cada registo constitui uma fonte parcial de dados Frequentemente os dados s o apenas parcialmente redundantes e os diferentes registos podem complementar se fornecendo informa o adicional acerca de uma entidade Por vezes os valores que se encontram nos atributos dos registos duplicados s o contradit rios Neste caso o objectivo proceder consolida o dos registos duplicados efectuando a reconcilia o dos valores conflituosos e g entre os v rios valores conflituosos de um atributo apenas sobrevive o mais completo e originando um registo mais completo e preciso que substitui os existentes Esta via seguida por exemplo em Hylton 1996 e Cochinwala ez a 2001 Naturalmente a remo o de duplicados tamb m pode ser feita manualmente pelo utilizador seguindo qualquer uma das estrat gias anteriores 11 Um conjunto de teste uma amostra de tamanho limitado na qual se conhece a priori os resultados a obter Cap tulo 3 Limpeza de Dados 55 3 5 Ferramentas de Limpeza de Dados Os actuais sistemas de BD relacionais e g Oracle SOL Server Access suportam a realiza o de algumas opera es simples de LD Essencialmente estas opera es traduzem se em verifica es a integridade dos dados A integridade dos dados pode ser analisada ao n vel da tabela e inexist ncia de duplica es da mesma entidade refere
35. Modelo Sintaxe e Sem ntica Q Transformadores um para muitos Usados em transforma es de m ltiplos registos transforma es horizontais permitindo manipular heterogeneidades ao n vel do esquema Visam as situa es em que a informa o se encontra distribu da entre os valores dos atributos e o esquema da BD Os transformadores que fazem parte desta classe s o e Seleccionar registos Seleccionam registos com base numa condi o express o regular opera o aritm tica ou fun o definida pelo utilizador e Agregar atributos Tendo por base um conjunto de atributos de um registo s o produzidos m ltiplos registos resultantes da agrega o destes atributos num s e da replica o de toda a restante informa o Q Transformadores muitos para muitos Transformam m ltiplos registos num ou mais registos Nesta classe apenas se encontra definido o seguinte transformador desagregar atributos Este transformador usado para mover informa o dos valores dos atributos para os nomes dos atributos 3 5 1 5 FraQL O FraQL Sattler e al 2000 Sattler e Schallehn 2001 define uma arquitectura para as tarefas envolvidas na prepara o de dados integra o transforma o limpeza e redu o de dados tendo por base uma linguagem declarativa que permite o acesso e manipula o de dados armazenados em m ltiplas fontes Tendo por base um modelo de dados objecto relacional a linguagem uma extens
36. Z2 te de tuplo T repetir enquanto t null se flag actualiza valores rela o R verdadeiro ent o Ve FER Ay yoo Ram yee RI tn O zt itctter ttuse x PUR ay Z 1 0 A AR am Z 1d 21 Cap tulo 6 Formaliza o das Opera es de Correc o 203 sen o V lt TS 6 EE EER B D cz isiter fue s PA g6 2264 A8 6 226 z2 fim se ve de tupl V repetir enquanto v null se viola integridade referencial y falso ent o se flag actualiza valores rela o R verdadeiro ent o Ra Re sen o SS v fim se fim se ve de tupl V fim repetir te de tuplo T fim repetir fim Fun o Viola Integridade Referencial t seja wo n mero de rela es com as quais R ou Sse encontra relacionada seja A dn 1 5dmen O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja Co conjunto de atributos assim definido C fc c faz parte da chave estrangeira de A c A ie CCA seja B 6 41 6 4 O conjunto de atributos de que n o fazem parte da sua chave prim ria seja Do conjunto de atributos assim definido D fd d faz parte da chave estrangeira de A de B ie DCB inicio i1 Flag encontrado falso repetir enquanto i lt we flag encontrado falso se flag actualiza valores rela o R verdadeiro ent o Xe Oey v a A AC E A S sen o X lt Od v b A d my 0 5 S fim se 204 Detec o e Correc o de Problemas de Qualidade dos Dados Mode
37. as regras incidem apenas sobre o conjunto de registos que se encontra residente na mem ria de trabalho do sistema pericial 60 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A identifica o de registos duplicados efectuada com base num novo m todo baseado na transitividade perante a exist ncia de incerteza Este m todo permite reduzir o n mero de registos incorrectamente classificados como duplicados e falsos positivos A precis o das opera es de identifica o de duplicados melhorada atrav s da introdu o do conceito de factor de certeza das regras um n mero real compreendido entre zero e um Durante a determina o da transitividade o factor de certeza resultante do grupo de registos em an lise comparado com um limiar definido pelo utilizador Se o factor de certeza inferior ao limiar ent o os registos n o s o considerados como duplicados Uma arquitectura baseada em conhecimento representado sob a forma de regras facilita a exist ncia de um mecanismo de explica es Cada ac o pode ser explicada atrav s da an lise da sua sequ ncia de execu o A sequ ncia elucida sobre o racioc nio seguido e as altera es efectuadas As explica es s o especialmente teis para refinar a base de regras efectuada no seguimento da fase de verifica o e valida o humana 3 5 1 4 Potter s Wheel O Potter s Wheel Raman e Hellerstein 2001 base
38. ca da dedicate TRIM aa Ea Ta Su SNIS a dada da a a dada Daian 330 CAP TULO 10 CONCLUS O 333 10 1 OBJECTIVOS ALCAN ADOS vcscssscscscscsescscscscsescssscssscasscscscacscsescacscsescasscseseasscsescastasterauzuauaaateatiees 333 10 2 COMPARA O COM TRABALHO RELACIONADO cssssssssessesessesesceescescenssceesceacensceacenesceeseees 338 xviii 10 7 PROTOMPOS DEINVESTIGACAO sa AAE AA eames ete eat 338 10 2 1 1 Analise das Caracteristicas o inuuna eini iei ei iri a Si E EESE ES 338 10 2 1 2 An lise da Cobertura Dada aos Problemas de Qualidade dos Dados 340 10 2 2 FERRAMENTAS COMERCIAIS iseni i a Sob dm ec it 343 10 2 2 1 An lise das Caracter sticas wt isdustsscivestascivscteasasncivstassivactuavasounvasvasstuactuavesosbvsstasstnectuarenbastose 343 10 2 2 2 An lise da Cobertura Dada aos Problemas de Qualidade dos Dados 345 E a ONA E LIMITA ES OG neuter a 347 10 4 TRABALHO FUTURO gc cccececccinetesecenedisecevscdcacesedddenavecidesesecddesedesdcdessdecacdonsssvanbessssesousseauoscstenneee 349 AP NDICE A FERRAMENTAS COMERCIAIS DE MELHORIA DA QUALIDADE DOS DADOS 353 ALDATIRISPR FIER oerni naban taraha aae Ra ie a ELDAR A AA OA AEDE EOR OERSTE EE Ia OSEAS a EEEa Ca 353 A 2 WIZROLE cis ciscsiitsicccciscsdtsssceadcacssosdccssdesecsiocenscissiesecdiscadasedecescissccanensssssaccesscenensbessgcceacanaastsesesee se 354 WS ORACLE DATA INTEGRATOR aaa REG RSRS a 356 Ad WIZSAME 32 3icectieccsesteatecedddesadascestecedec
39. detec o Todos estes elementos encontram se expl citos na defini o de cada PQD A taxionomia foi usada para avaliar a cobertura que as actuais solu es de LD d o DC dos PQD Dois grupos distintos de solu es foram analisados prot tipos de investiga o e 108 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ferramentas comerciais Em cada um dos grupos foram seleccionadas as solu es de maior representatividade Concluiu se que a cobertura dada de ra z pelos prot tipos de investiga o ao conjunto de PQD que fazem parte da taxionomia reduzida Alguns destes prot tipos baseiam se na inclus o de fun es definidas pelo utilizador para cobrirem aquilo que n o suportam de base Ainda que em certos problemas n o haja alternativa e g detec o de viola o de restri o de integridade a maioria dos problemas poderia ser suportada de base pelos prot tipos pelo menos a n vel de detec o Nestes casos a obrigatoriedade do desenvolvimento de fun es n o justific vel especialmente pelas dificuldades e custos que lhes est o associados Concluiu se igualmente que a cobertura dada DC dos PQD pelas ferramentas comerciais diminuta e n o dado o adequado suporte limpeza dos problemas inclu dos na taxionomia Como est o muito orientadas para o utilizador n o perito nem sequer permitem a incorpora o de fun es definidas pelo utilizador Isto si
40. dulo de detec o e elimina o de duplicados como o nome o indica permite detectar e eliminar a exist ncia de registos duplicados ao n vel da FD ou entre FD O m dulo fornece de base algumas regras gen ricas de identifica o de duplicados dispon veis para uma utiliza o imediata No entanto a identifica o de registos duplicados efectuada essencialmente com base em regras especificadas pelo utilizador que podem ser armazenadas para utiliza es futuras As regras permitem identificar se os registos s o duplicados n o duplicados ou potenciais duplicados A exist ncia de ligeiras diferen as entre os registos n o impede a sua classifica o como duplicados A elimina o autom tica dos duplicados envolve a consolida o dos v rios registos identificados como duplicados num s Para o efeito o utilizador especifica em cada atributo qual o crit rio de sobreviv ncia dos valores e g o mais recente o mais completo o que resulta na cria o de um novo registo que substitui todos os duplicados detectados A consolida o dos registos tamb m pode ser efectuada manualmente pelo pr prio utilizador atrav s da interface gr fica que este m dulo disponibiliza 70 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 3 5 2 4 dfPower Quality As principais funcionalidades oferecidas pela ferramenta dfPower Quality DataFlux 2007 consistem na uniformiza o de valores e na dete
41. es estes podem no ser na totalidade ou apenas parcialmente Quando h atributos comuns as opera es podem ter de ser executadas segundo uma determinada ordem Esta ordem de execu o corresponde ordem de especifica o das opera es por parte do utilizador uma vez que este quem conhece a sem ntica que lhes est subjacente Ainda que o utilizador especifique as OD em fun o da ordem de execu o pretendida a sua execu o n o necessariamente sequencial Em fun o dos atributos sobre os quais incidem as OD que fazem parte da sequ ncia de depend ncias certas opera es s o executadas em simult neo Nestes casos a sequ ncia de depend ncias na pr tica corresponde a um grafo dirigido de OD Para o ilustrar considere se o exemplo que a seguir se apresenta Suponha se que o utilizador especificou tr s OD de viola o de restri o de integridade ao n vel do tuplo a primeira incide sobre os atributos a e 6 a segunda incide sobre os atributos c e d e a terceira incide sobre os atributos 6 e c Ainda que a ordem de especifica o das OD tenha sido a apresentada a sua execu o n o feita literalmente de forma sequencial As OD em causa originam o grafo de depend ncias apresentado na Figura 7 5 OD de Viola o Restri o de Integridade 1 OD de Viola o Restri o de Integridade 2 OD de Viola o Restri o de Integridade 3 Figura 7 5 Grafo dirigido de depend ncias correspondente s tr s OD
42. es fdu 5 6 3 Exist ncia de sin nimos Formaliza o Sint ctica DETECT EXISTENCE OF SYNONYMS ColunasAlvo DasTabelas DasBasesDados Defini oDicion rio UsandoCondi o 150 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Formaliza o Sem ntica A detec o deste PQD envolve verificar se os valores que comp em os pares resultantes de cada cluster de sin nimos que constam num determinado dicion rio definido pelo utilizador existem simultaneamente nos dois atributos em quest o 2 e atr e atr pertencentes respectivamente a cada uma das rela es 7 e Re S Caso se confirme a sua exist ncia est se perante um problema de sin nimos Nas duas rela es que eventualmente podem resultar da execu o desta OD a2 Z1 e Z2 al m dos valores que constituem sin nimos entre atr e atr s o tamb m armazenadas as chaves prim rias respectivamente dos tuplos de Re onde estes se encontram assim como o cluster de sin nimos a que pertencem Em ambas as rela es a informa o relativa a um sin nimo detectado armazenada apenas uma nica vez independentemente do n mero de situa es em que este seja identificado como sin nimo de outros valores Algoritmo Detec o Exist ncia Sin nimos E seja Ta rela o onde se encontra armazenado o dicion rio de sin nimos com esquema T idsin idcluster sin em que idsin constitui a chave prim ria idcluster o cluster
43. fim repetir fim No caso das altera es necess rias correc o da heterogeneidade sint ctica detectada n o serem suportadas pela fun o existente de raiz 7 e efectna correc o sint ciica necess rio recorrer a FDU De acordo com os requisitos de cada fun o existente na sequ ncia de atribui es da OC o valor do atributo de cada tuplo da rela o alvo de altera o sint ctica pode ser passado como par metro Al m deste podem existir outros par metros na fun o como vari veis e constantes Como resultado cada FDU retorna um valor at mico A ltima fun o da sequ ncia de atribui es na formaliza o seguinte representada por fdu retorna o valor que homogeneiza a sintaxe do valor do atributo com a sintaxe utilizada no outro atributo A formaliza o anterior sofre as altera es a seguir apresentadas de modo a reflectir a correc o da heterogeneidade de sintaxes baseada em FDU As retic ncias representam aquilo que permanece inalterado em rela o formaliza o anterior Algoritmo Correc o Heterogeneidade Sintaxes Baseada em FDU in cio t de tuplo T repetir enquanto t null v lt lt fdu p Pio oP v lt fdu Po wPo v fdu pe DP po roP Er se flag actualiza valores rela o R verdadeiro ent o 198 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica RE R t tatr Vk R R U Eta
44. m existe O SmartCkan possui potencialidades de anula o das altera es efectuadas como consequ ncia da execu o das OC Esta potencialidade n o se encontra dispon vel na maioria dos prot tipos analisados A generalidade dos prot tipos considerados n o suporta a execu o incremental das opera es de LD contrariamente ao que acontece no SwartClean Neste aspecto apenas o Ajax constitui excep o O SmartClean estabelece automaticamente a sequ ncia de execu o das opera es de LD especificadas pelo utilizador Apenas quando h mais do que uma opera o de um dado tipo e g viola o de restri o de integridade com um mbito de incid ncia comum e g o mesmo atributo que necess rio que o utilizador defina a sua ordem de execu o Neste aspecto apenas o IntelliClean segue um caminho similar No entanto como se poder constatar na sec o seguinte a cobertura dada por este prot tipo aos diversos tipos de PQD n o compar vel que suportada pelo SmartClean Face diversidade de opera es que este ltimo prot tipo suporta a defini o da sequ ncia de execu o das opera es revestiu se de maior complexidade 10 2 1 2 An lise da Cobertura Dada aos Problemas de Qualidade dos Dados A Tabela 10 2 a seguir apresentada constitui uma evolu o da Tabela 4 3 Esta ltima foi criada com a finalidade de ilustrar a cobertura dada aos PQD a n vel de DC pelos cincos prot tipos de
45. o resulta a identifica o de uma viola o de unicidade nos tuplos identificados com o ID 2 e 7 e Pintor S ap s terem sido executadas estas duas opera es que os PQD identificados s o reportados ao utilizador 240 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 7 3 Rela o para exemplifica o da execu o das OD no contexto multi valor do atributo Profiss o Electricista Pintor Canalizador M dico Professor Picheleito Pintor Naturalmente a correc o que faria mais sentido para o problema dos sin nimos consistiria na elimina o de um dos tuplos Suponha se por hip tese que o utilizador altera o valor da profiss o no tuplo identificado com o ID 6 para Canalizador Desta forma soluciona o problema da exist ncia de sin nimos mas introduz involuntariamente uma viola o de unicidade no atributo Quanto viola o de unicidade detectada suponha se que o valor da profiss o no tuplo identificado com o ID 2 passa a ser Pintor Autom vel e no tuplo identificado com o ID 7 passa a ser Pintor de Constru o Civil Ap s a realiza o das correc es a sequ ncia de execu o de OD reinicia se No contexto do valor individual do atributo neste rein cio apenas s o considerados os tuplos nos quais tinham sido detectados PQD Ao inv s neste contexto todos os valores do atributo 7e de todos os tuplos s
46. o N o N o Execu o incremental a Nao Nao Def seq execu o opera es Autom Autom O significado de cada caracter stica considerada o mesmo do que o apresentado na Sec o 3 5 1 6 Os resultados apresentados na tabela permitem tecer as seguintes considera es O As ferramentas comerciais analisadas maioritariamente cobrem um leque alargado de diferentes tipos de FD e g ficheiros bin rios documentos XML Q Todas as ferramentas evidenciam preocupa es a nivel de optimizar a execu o das opera es de LD Este facto especialmente evidente na detec o de registos duplicados O Nenhuma das ferramentas denota potencialidades de extensibilidade A possibilidade de incorporar fun es definidas pelo utilizador n o se coaduna com o esp rito destas 74 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ferramentas orientadas para o utilizador n o perito O objectivo permitir o seu uso sem obrigar a que os utilizadores possuam conhecimentos a n vel de programa o O Maioritariamente as ferramentas analisadas toleram a ocorr ncia de excep es durante a realiza o das opera es de LD Os registos em que as opera es n o podem ser levadas a cabo s o armazenados numa tabela sendo reportados ao utilizador no final Q Todas as ferramentas providenciam uma interface gr fica com o utilizador de modo a proporcionarem um ambient
47. o ao SQL com caracter sticas que permitem cobrir as necessidades particulares inerentes prepara o de dados implementa o das extens es como primitivas de BD permite tirar partido das potencialidades intr nsecas dos sistemas de gest o de BD actuais A principal vantagem da utiliza o de uma linguagem deste tipo que combina mecanismos de prepara o dos dados e potencialidades poderosas de inqu rito a v rias fontes heterog neas consiste numa integra o virtual na qual poss vel executar opera es de transforma o e limpeza sem afectar o conjunto de dados original Desta forma poss vel ensaiar e avaliar diferentes estrat gias sem ser necess rio proceder ao carregamento e materializa o expl cita dos dados Al m de potencialidades de integra o transforma o e redu o de dados aqui n o abordadas este prot tipo concede uma aten o especial LD suportando a realiza o das seguintes opera es O Convers o de valores S o efectuadas convers es simples de valor recorrendo a fun es predefinidas e g fun es de normaliza o de valores num ricos ou definidas pelo pr prio utilizador Cap tulo 3 Limpeza de Dados 63 O Resolu o de inconsist ncias entre os valores As inconsist ncias s o solucionadas recorrendo a fun es de reconcilia o e agrega o definidas pelo pr prio utilizador O Detec o e elimina o de duplicados O processo decomp
48. o das OD efectuada num ficheiro de texto Na Figura 7 19 do lado esquerdo exemplifica se a especifica o de um conjunto de OD Aquando da sua execu o os PQD identificados s o colocados em tabelas de uma BD especialmente criada para o efeito Compete ao utilizador consultar estas tabelas e analisar os PQD identificados Na Figura 7 20 ilustra se as tabelas resultantes da execu o de um conjunto de OD numa BD em MySQL e a respectiva consulta dos PQD As correc es que o utilizador entenda efectuar podem ser efectuadas por uma de duas vias 7 manualmente recorrendo a comandos de SQL e g update delete ou i automaticamente especificando as OC que devem ser efectuadas Tal como as OD as de correc o tamb m s o especificadas pelo utilizador num ficheiro de texto Na Figura 7 19 do lado direito ilustra se a especifica o de um conjunto de OC que visam solucionar os PQD detectados no contexto do valor individual do atributo H a perfeita no o de que uma interface gr fica deve suportar todas estas opera es auxiliando o utilizador nas suas tarefas eg a especifica o das OD ou OC deve ser assistida por um editor gr fico No entanto n o s o 266 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica DER CorrectionOperations txt WordPad DER Ficheiro Editar Ver Inserir Formatar Ajuda DEE SRA L gt BH wB B DetectionOperations txt WordPad Ficheiro Editar V
49. o fazem parte da sua chave prim ria seja C o conjunto de atributos de R envolvidos na restri o de integridade assim definido C c c usado na formula o da restri o de integridade A ce A e CCA seja g a cardinalidade de C seja B 6 41 bs O conjunto de atributos de que n o fazem parte da sua chave prim ria seja Do conjunto de atributos de envolvidos na restri o de integridade assim definido D td d usado na formula o da restri o de integridade A de B ie DC B seja fa cardinalidade de D seja func agrega uma fun o de agrega o existente em SQL e g count sum avg seja e um atributo pertencente a Cou D ie ee Cvee D seja Z a rela o que armazena o valor que constitui viola o restri o de integridade com o seguinte esquema Z1 d ami 6g 315 bdi 3 in cio Ze a E CI Cg blbe es Zai CESET E ped Y func agrega e R Da D lt s fim Notas A formaliza o apresentada o mais gen rica poss vel e abarca todas as situa es poss veis de serem expressas numa OD deste tipo No entanto dependendo da OD em concreto algumas das partes que constituem a express o em lgebra relacional podem n o se aplicar Assim o operador de agrega o 7 e y pode n o existir Caso exista pode n o existir a fun o de agrega o i e func agrega assim como pode tamb m n o existir o operador de projec o ie m No caso deste existir os a
50. o novamente considerados Se assim n o fosse n o seriam detectados outros PQD inadvertidamente introduzidos e g a resolu o de um problema de sin nimos entre dois valores pode reintroduzir outro problema de sin nimos entre um destes valores e um outro valor de outro tuplo da rela o No caso do exemplo apresentado o rein cio da execu o das OD ocorre com a detec o da exist ncia de sin nimos Face s correc es efectuadas pelo utilizador n o detectado qualquer problema do tipo exist ncia de sin nimos Quando isto acontece e semelhan a do que j foi explicado no contexto do valor individual do atributo a OD em causa n o voltar a ser executada em eventuais futuras itera es de execu o A execu o da opera o seguinte da sequ ncia detecta a exist ncia da j referida viola o de unicidade como consequ ncia das correc es efectuadas 7 e canalizador encontra se nos tuplos com ID 3 e 6 Ap s a correc o deste Cap tulo 7 Modelo Proposto para a Limpeza de Dados 241 problema pelo utilizador uma nova itera o da sequ ncia de opera es realizar se mas envolvendo apenas a detec o de viola o de unicidade Para ilustrar a forma como as duas opera es s o executadas o exemplo apresentado foi manipulado em conformidade Numa situa o real dificilmente o utilizador corrigiria um problema de sin nimos com a repeti o do mesmo valor no caso Canalizado em dois tup
51. o resulta do facto de nenhuma das taxionomias cobrir todos os PQD apresentados nas restantes Uma vez que constitui objectivo deste trabalho o desenvolvimento de um modelo de LD que suporte os v rios PQD da que uma taxionomia completa assuma especial relev ncia A elabora o de uma nova taxionomia tornou se assim num requisito a cumprir As diversas actividades pass veis de serem efectuadas num processo de melhoria da qualidade e DP AD TD LD e ED baseado unicamente nos dados foram descritas Apesar deste trabalho de doutoramento se centrar na LD esta actividade foi apresentada resumidamente mantendo uma coer ncia de apresenta o com as demais actividades do processo de melhoria da QD No entanto h que conceder necessariamente uma aten o especial LD o que ser efectuado no cap tulo seguinte LIMPEZA DE DADOS Este cap tulo debru a se detalhadamente sobre a Limpeza de Dados LD Este trabalho de doutoramento enquadra se nesta actividade do processo de melhoria da Qualidade dos Dados QD por este motivo que dado destaque a esta actividade em detrimento das restantes apresentadas no cap tulo anterior Assim ap s se introduzir o tema come a se por apresentar os principais contextos em que a LD assume especial import ncia Seguidamente s o expostos os requisitos a que uma actividade de LD tem de obedecer Na sec o seguinte apresentam se com algum detalhe os aspectos mais importantes relacio
52. pio lixo entra lixo sai Como tal os PQD necessitam de ser detectados e corrigidos e os dados t m de ser limpos No mbito deste trabalho importa identificar quais s o os diversos problemas de qualidade que afectam os dados Fundamentalmente ter um perfeito conhecimento dos PQD importante pelo seguinte O Possibilita desenvolver um modelo de LD que de uma forma global e integrada lhes d o necess rio suporte a nivel de DC O Permite avaliar e compreender a cobertura que lhes dada pelas solu es inform ticas actualmente existentes a n vel de DC O Permite orientar os esfor os de investiga o e desenvolvimento real ando aqueles que merecem uma maior aten o e se um determinado PQD n o possui suporte a n vel de detec o ou correc o isso significa que deve ser objecto de uma aten o especial A identifica o dos diversos problemas que afectam a qualidade dos dados resultou na elabora o de uma taxionomia cuja apresenta o efectuada na sec o seguinte 4 2 Taxionomia de Problemas de Qualidade dos Dados A Figura 4 1 ilustra a estrutura de organiza o dos dados segundo o modelo relacional Neste modelo os dados encontram se armazenados numa ou mais FD e g Bases de Dados BD sistema de ficheiros Cada FD composta por rela es podendo existir associa es i e relacionamentos entre estas Uma rela o constitu da por varios Zuplos sendo cada um
53. rela o ou rela es originais O resultado de uma opera o pode ser utilizado noutra opera o e as opera es em lgebra relacional podem estar encaixadas imbricadas entre si tal como acontece nas opera es aritm ticas H diversas varia es de sintaxe nas opera es de lgebra relacional Nesta disserta o utiliza se uma nota o simb lica usual na representa o das opera es Tamb m h muitas variantes das opera es inclu das na lgebra relacional Em Codd 1972 foram inicialmente apresentadas oito opera es mas desde ent o muitas outras foram propostas No mbito deste trabalho adoptaram se as opera es consideradas necess rias formaliza o das opera es de detec o e correc o Essencialmente estas opera es de lgebra relacional podem ser divididas em dois grupos b sicas e complementares Cada um destes grupos de opera es apresentado nas duas sec es seguintes B 2 Opera es B sicas As opera es b sicas s o aquelas que se encontram na generalidade das propostas de opera es de lgebra relacional Estas opera es satisfazem a generalidade das necessidades de manipula o dos dados Em lgebra relacional h cinco opera es b sicas selec o projec o produto Cartesiano diferen a e uni o Nas sec es seguintes s o apresentadas sucintamente as quatro primeiras A opera o de uni o fica exclu da em virtude de n o ser utilizada no contexto das
54. repetir enquanto v null 206 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica se viola integridade referencial y falso ent o se flag actualiza valores rela o R verdadeiro ent o Rs Re sen o SeS fim se fim se ve de tupl V fim repetir te de tuplo T fim repetir fim Nota O significado do atributo idclustere a formaliza o da fun o viola integridade referencial encontram se na formaliza o anterior 6 6 5 Viola o de restri o de integridade Formaliza o Sint ctica CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ColunasAlvo DasTabelas DasBasesDados Defini o Atribui es UsandoTabelas UsandoCondi o Formaliza o Sem ntica A rela o que resulta da OD respectiva 7e Z al m de conter os valores que constituem viola es restri o de integridade ao n vel multi rela o tamb m pode conter informa o sobre os tuplos das rela es envolvidas que as provocam No caso desta informa o n o existir isso significa que a viola o restri o de integridade resulta dos valores dos atributos envolvidos quando se considera a globalidade dos tuplos existentes nas diferentes rela es A OC proposta baseia se na altera o em cada rela o dos valores dos atributos nos tuplos especificados pelo utilizador entre os que se encontram envolvidos no PQD e todos os tuplos de R S ou apenas aqueles
55. ria de R e dtr E far sAm n Cujo valor ser objecto de correc o do PQD detectado seja Suma rela o com o seguinte esquema S b 0 0 1 0 9 em que 6 b representam os atributos que formam a sua chave prim ria seja atr um atributo que n o pertence chave prim ria de S e atr E 6 1 6 s cujo valor ser objecto de correc o do PQD detectado seja Z1 a rela o que cont m informa o sobre os tuplos de R onde foi detectado o PQD em causa seja Z2 a rela o que cont m informa o sobre os tuplos de onde foi detectado o PQD em causa seja cond a condi o opcional especificada na OC permitindo delimitar o seu mbito de aplica o seja e tuplo R uma fun o que l sequencialmente e devolve o pr ximo tuplo de R Quando o final de R alcan ado i e n o existem mais tuplos a fun o devolve o valor null seja dimensao vec uma fun o que recebe um vector determina o numero de elementos que o comp em e devolve este valor como resultado seja fdu p p p uma Fun o Definida pelo Utilizador FDU que faz parte da sequ ncia de fun es especificadas na OC A fun o recebe um conjunto de k par metros p p pp em que cada um destes representa uma constante o valor de um atributo o conjunto de valores de um atributo ou uma vari vel que armazena o resultado de uma fun o anterior Como resultado a fun o retorna um valor at mico ou uma estr
56. se existe rela o Z1 falso ent o P 21 lt Ta ap atr O cond R lt Ta psam R U Ta an Z1 i 1 sen o Z1 lt Taan atr cond R gt lt Z1 fim se fim 118 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Nota Na formaliza o anterior cond al m de representar uma eventual condi o de selec o que delimita a execu o da OD tamb m representa a condi o de que resulta a detec o da viola o de sintaxe dom nio O conte do de cond resulta do que se encontra especificado na cl usula where da OD Fruto da sua complexidade a detec o de viola o de sintaxe dom nio pode implicar o recurso a FDU Nesta situa o o valor do atributo atr pode constituir um par metro de uma ou mais fun es que fa am parte da sequ ncia de atribui es especificadas pelo utilizador na OD Estas fun es tamb m podem receber outros par metros como vari veis e constantes Como resultado cada fun o fdu retorna um valor at mico A formaliza o subjacente OD de viola o de sintaxe dom nio envolvendo FDU a seguir exposta Algoritmo Detec o Viola o Sintaxe Dom nio Baseada em FDU in cio se existe rela o Z1 falso ent o P Ts Ta an atr O cond RD ay soos R Dane Z1 i 1 sen o T lt Lay sAm at Oui R gt lt Z1 fim se t de tuplo T repetir enquanto t null v lt fdu p PiP v lt
57. sempre o pressuposto anterior faz sentido e aquilo que aparenta ser uma anormalidade at pode estar correcto e ser de grande import ncia em an lises subsequentes Assim a correc o dos valores tem de ser sempre supervisionada por um perito do dom nio Existem v rias ferramentas comerciais que efectuam AD e g WizWhy WizSoft 2007a WizRule WizSoft 2007b No Ap ndice A Sec o A 2 descreve se a ferramenta WizRuke O prot tipo Bellman Dasu et al 2002 e o desenvolvido na Ken State University Maletic amp Marcus 20002 s o os representantes da comunidade acad mica Apesar das ferramentas de AD sugerirem correc es normalmente estas n o dispensam o uso de ferramentas de LD pata a realiza o das correc es O principal objectivo das ferramentas de AD centra se na detec o dos potenciais problemas e n o na sua correc o 2 7 3 Transforma o de Dados A TD representa o conjunto de opera es e g integra o agrega o filtragem concatena o divis o que um conjunto de dados que se encontra segundo o esquema X de origem tem de ser sujeito para que fique de acordo com o esquema Y de destino Este tipo de opera es resulta em modifica es ao n vel do esquema dos dados materializadas em transforma es ao n vel dos valores A migra o de dados e a cria o de armaz ns de dados s o dois cen rios t picos que obrigam realiza o de opera es de TD A necessidade destas opera
58. 139 no dia 03 04 2007 as 23 00 Datiris 2007 Datiris Profiler Features and Benefits Dispon vel em http www datitis com features shtml no dia 06 04 2007 as 22 20 Deming W 1986 Out of Crisis MIT Center for Advanced Enginnering Study 1986 Eckerson W 2002 Data Quality and the Bottom Line Achieving Business Success through a Commitment to High Quality Data In The Data Warehousing Institute s Data Quality Report 2002 English L 1999 Improving Data Warehouse and Business Information Quality Methods for Reducing Costs and Increasing Profits Willey and Sons 1999 ETI 2007a ETI Data Cleanser Process Driven Data Cleansing and Matching for the Transparent Enterprise Dispon vel em _ http www eti com data_sheets ds ETI DataCleanser pdf no dia 02 04 2007 s 23 20 ETI 2007b ETI Data Quality Solutions Analysis Insight and Accuracy with ETI Data Profiler Dispon vel em http www eti com data_sheets ds ETI DataProfiler pdf no dia 02 04 2007 s 23 40 Fayyad U Piatetsky Shapiro G e Smyth P 1996 The KDD Process for Extracting Useful Knowledge from Volumes of Data Communications of the ACM 39 11 1996 pp 27 34 Feekin A e Chen Z 2000 Duplicate Detection Using K way Sorting Method In Proceedings of the 2000 ACM Symposium on Applied Computing Como Italy March 2000 pp 323 327 Fellegi I e Sunter A 1969 A Theory for Record Linkage Jou
59. 2007d HIquality Name Name Cleansing and Validation Dispon vel em http www humaninference com filebank originals original_627 pdf no dia 03 04 2007 as 0 05 Human Inference 2007e HIquality Address Rapid Addressing and Standardization Dispon vel em http www humaninference com filebank originals original_524 pdf no dia 03 04 2007 as 0 15 Human Inference 2007f HIquality Identify Fault tolerant searching matching and duplicate detection Dispon vel em _ http www humaninference com filebank originals original_472 pdf no dia 03 04 2007 as 0 25 Human Inference 2007g HIquality Merge Consolidation of Information Dispon vel em http www humaninference com filebank originals original_1254 pdf no dia 03 04 2007 as 0 35 Human Inference 2007h HIquality Enrich Makes your Information Reflect Reality Dispon vel em http www humaninference com filebank originals original_1213 pdf no dia 04 04 2007 as 0 00 Hylton J 1996 Identifying and Merging Related Bibliographic Records MSc Dissertation MIT 1996 374 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Inmon W Rudin K Buss C e Sousa R 1998 Data Warehouse Performance Willey 1998 ISBN 471298085 Ives B Olson M e Baroudi J 1983 The Measurement of User Information Satisfaction Communications of the ACM 26 10 1983 pp 785 793 Jarke M Lenze
60. 5AmsC15 5Cr inicio se existe rela o Z1 falso ent o Z1 lt Ta PE E e Sani r gt lt mais R 16 pees Or s senao Z1 lt Tapsan iatt Coons a bd ZIDA ik R a Tbb s fim se fim 154 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 5 6 7 Tuplos duplicados Formaliza o Sint ctica DETECT DUPLICATE TUPLES DasTabelas DasBasesDados Defini oColunas UsandoChavesOrdena o Usando Atribui es Defini oCondi o Formaliza o Sem ntica No caso da detec o de tuplos duplicados com base numa condi o suscept vel de ser expressa em SQL efectuado um produto Cartesiano que envolve os tuplos das duas rela es em quest o i e Re para identificar os que respeitam a condi o definida pelo utilizador e que assim constituem duplicados As rela es que eventualmente possam resultar desta OD e Z1 e Z2 armazenam respectivamente as chaves prim rias dos tuplos de Re que foram identificados como duplicados entre si bem como o cluster que formam Em ambas as rela es um dado tuplo apenas armazenado uma nica vez apesar das m ltiplas situa es em que possa ser identificado como duplicado de outros tuplos da outra rela o Todos estes tuplos formam o mesmo cluster de duplicados A sem ntica subjacente a esta OD apresentada de seguida Algoritmo Detec o Tuplos Duplicados Baseada em SQL amp sejam Z1 e Z2as
61. A Data Quality Model for Asset Management in Engineering Organizations In Proceedings of the 10th International Conference on Information Quality Boston EUA Novembro de 2005 pp 27 51 Kubica J e Moore A 2003 Probabilistic Noise Identification and Data Cleaning In Proceedings of the 3rd IEEE International Conference on Data Mining Florida EUA Novembro de 2003 pp 131 138 Lee M e Ling T W 1997 Resolving Constraint Conflicts in the Integration of Entity Relationship Schemas In Proceedings of the 16 International Conference on Conceptual Modeling California EUA Novembro de 1997 pp 394 407 Lee M L Ling T W e Low W L 2000a IntelliClean A Knowledge Based Intelligent Data Cleaner In Proceedings of the 6th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining Boston EUA August 2000 pp 290 294 Lee M L Lu H Ling T W e Ko Y T 1999 Cleansing Data for Mining and Warehousing In Proceedings of the 10th International Conference on Database and Expert Systems Applications Florence Italy September 1999 pp 751 760 Lee Y e Strong D 2003 Process Knowledge and Data Quality Outcomes In Proceedings of the 8 International Conference on Information Quality Boston EUA Outubro de 2003 pp 96 107 Lee Y Bowen P Funk J Jarke M Madnick S e Wand Y 2000b Data Quality in Internet Time Space and Communities In Proc
62. Dadores Opera es de Detec o seguir apresentam se as cinco OD de viola o de restri o de integridade efectuadas no mbito desta tabela Restri o de Integridade n 1 semelhan a da tabela Analises a restri o enunciada para a tabela Colheitas aplica se igualmente tabela Dadores Da execu o da OD correspondente nesta tabela tamb m n o resultou a detec o de qualquer viola o restri o de integridade Restri o de Integridade n 2 Na tabela Dadores a seguinte restri o tem de ser respeitada o valor do atributo relativo ao total de d divas e TotDadivas tem de ser igual ou superior ao valor do atributo referente ao total de d divas institui o em causa e TotDadivasInst A execu o da OD correspondente redundou na identifica o das viola es apresentadas na Tabela 8 31 Tabela 8 31 Resultados da OD de viola o da 2 restri o de integridade na tabela Dadores TotDadivas TotDadivasInst 3002 10 18 22003 10 18 24460 1 2 31957 10 18 63506 10 18 83430 1 2 298 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Restri o de Integridade n 3 Nesta tabela a seguinte restri o de integridade ao n vel do tuplo tem de ser respeitada o valor do atributo relativo press o arterial maxima Ze TensaoMax tem de ser superior ao valor do atributo referente press o arterial m nim
63. Exist ncia de Hom nimos Diferentes Granularidades Representa o Tuplos Duplicados Heterogeneidade de Unidades Medida Viola o de Restri o de Integridade Figura 7 8 Sequ ncias de depend ncias das OD no NG multi rela o da fonte multi fonte de dados A primeira opera o que consta da sequ ncia de depend ncias envolve a detec o de heterogeneidade de sintaxes A exist ncia deste PQD entre duas rela es possui consequ ncias nefastas uma vez que afecta a detec o de todos os outros problemas As diferen as sint cticas podem impedir a detec o de alguns problemas e g tuplos duplicados heterogeneidade de unidades de medida ou resultar na detec o de outros que apenas existem como um reflexo Cap tulo 7 Modelo Proposto para a Limpeza de Dados 231 destas e g viola o de restri o de integridade Como tal a detec o dos restantes problemas encontra se condicionada DC das heterogeneidades sint cticas existentes entre os atributos das rela es Por esta raz o a execu o desta OD encabe a a sequ ncia de depend ncias apresentada As OD de viola o de integridade referencial e de exist ncia de sin nimos possuem contextos de aplica o radicalmente diferentes Entre dois atributos nos quais se efectue uma OD de viola o de integridade referencial n o faz qualquer sentido a execu o de uma OD de sin nimos e vice versa Os atributos que estabelecem um relacionamento entre d
64. Gertz e al 2004 Apesar da diversidade de defini es h um consenso de que a QD deve ser definida na ptica dos Cap tulo 2 Qualidade de Dados 17 consumidores dos dados da que a generalidade das defini es envolva o conceito de adequa o ao uso eg Redman 1996 Shankaranarayanan e al 2003 Wang e Strong 1996 Uma defini o vulgarmente encontrada na literatura a seguinte dados com qualidade s o aqueles que s o adequados ao uso que o utilizador lhes pretende dar Wang e Strong 1996 Esta perspectiva tem em considera o a finalidade para a qual os dados v o ser usados No entanto a defini o por natureza subjectiva o que faz com que um determinado conjunto de dados possa ser considerado como possuindo qualidade para uma determinada finalidade mas n o ter a qualidade suficiente para uma outra finalidade Por exemplo uma lista com nomes e endere os dos habitantes de uma determinada cidade pode ser considerada como tendo qualidade para um utilizador que pretende publicitar um determinado produto A mesma lista pode ser considerada como tendo pouca qualidade para um utilizador que pretende contactar apenas os m dicos dessa cidade A QD varia em fun o do contexto em que estes s o usados e dos requisitos a que devem obedecer Em Orr 1998 tamb m sugerido que a QD est dependente do uso que os utilizadores d o aos dados uma vez que estes s o quem em ltima inst ncia avali
65. PQD que fazem parte da taxionomia Esta cobertura apresentada na sec o seguinte Cap tulo 4 Problemas de Qualidade dos Dados 105 4 6 Cobertura das Ferramentas de Data Profiling Na Tabela 4 5 apresentam se os resultados de cinco ferramentas comerciais designadamente Datiris Profiler Datiris 2007 ETI Data Profiler ETI 2007b Trium Discovery Trillium Software 2007b dfPower Profile DataFlux 2007b e HIQuality Inspect Human Inference 2007b Na tabela estas ferramentas surgem representadas respectivamente pelas letras A B C D e E A excep o da primeira todas as outras ferramentas de data profiling pertencem respectivamente aos mesmos pacotes das ferramentas de LD ETT Data Cleanser Trillium Quality dfPower Quality e HlIQuality A tabela foi elaborada com base na informa o t cnica sobre as ferramentas dispon vel nos sites das empresas propriet rias Nos casos em que foi poss vel a experimenta o das vers es de demonstra o tamb m contribuiu para a elabora o da tabela Tabela 4 5 Cobertura dada por ferramentas comerciais de data profiling aos PQD NG M ltiplas Valor Multi Tuplo Rela o rela es FD individual valor Valor em falta Viola o de sintaxe Erro ortogr fico Viola o de dom nio Viola o de unicidade Exist ncia de sin nimos Viola o de restri o de integridade Viola o de depend ncia funcional Tuplos duplicados Circularidade en
66. Rubert Librelotto 2005 Topic Maps da Sintaxe Sem ntica Disserta o de Dontoramento em Informatica Universidade do Minho Portugal 2005 Gravano L Ipeirotis P G Koudas N e Srivastava D 2001 Approximate String Joins in a Database Almost for Free In Proceedings of the 27 Very Large Databases Conference Roma Italia 2001 pp 491 500 Gravano L Ipeirotis P G Koudas N e Srivastava D 2003 Text Joins in an RDBMS for Web Data Integration In Proceedings of the 12 International Conference on World Wide Web Budapest Hungria Maio de 2003 pp 90 101 372 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Group 1 Software 2007 Centrus Merge Purge Dispon vel em http www centrus com documents MergePurge pdf no dia 07 04 2007 s 23 25 Guyon I Matic N e Vapnik V 1996 Discovering Informative Patterns and Data Cleaning In Advances in Knowledge Discovery and Data Mining American Association for Artificial Intelligence 1996 pp 181 203 ISBN 0 262 56097 6 Hamming R 1950 Error Detecting and Error Correcting Codes Bel System Tech Journal 9 1950 pp 147 160 Hellerstein J Stonebraker M e Caccia R 1999 Independent Open Enterprise Data Integration IEEE Technical Bulletin on Data Engineering Special Issue on Data Transformation 22 1 1999 pp 43 49 helpIT 2007 The matchIT Suite versi
67. Seja u o valor de uma chave prim ria u e U Seja Vo conjunto que come ando no tuplo identificado pela chave prim ria u cont m os valores das chaves estrangeiras de todos os outros tuplos com os quais h auto relacionamentos assim definido V u t T Mt S Ut T At t r Existe circularidade entre tuplos num auto relacionamento na rela o r sse u V Tuplos duplicados Seja o conjunto de nomes de atributos assim definido S a a RA A a usado na identifica o de duplicados e SC RA Seja similarity a fun o que determina a semelhan a entre dois valores do atributo s devolvendo a sob a forma de um n mero real entre 0 e 1 Seja 0 um n mero real compreendido entre 0 e 1 representativo do limiar a partir do qual se considera que os valores do atributo s e s o equivalentes Existem los duplicados na rela o r sse 3 t th E r V sE S Utd Uta V similarity v t d ta 2 0 A t to A classifica o de dois tuplos t e t t t 1 como sendo duplicados pode ainda ser mais detalhada de acordo com o que se apresenta de seguida Seja U o conjunto de nomes de atributos assim definido U a a e R A A an o faz parte da chave prim rias Cap tulo 4 Problemas de Qualidade dos Dados 97 e Duplicados iguais Diz se que os tuplos s o duplicados iguais sse Va e U vt a td e Duplicados aproximados Caso n o sejam iguais diz se que s o duplicados apro
68. UCT idoluster o ay mat _valores inka2 1 A A a mat _ valores Ginka2 n Zags t le tuplo T ue de tuplo U set null eu null ent o idcluster idcluster 1 Zeemp2 Zremp2 V t mat valores linha1 1 mat valores linhal n mat valores linhal ind idcluster Zeemp2 Zremp2 V t mat valores linha2 1 mat valores linha2 n mat_valores linha2 ind idcluster sen o se t null eu null ent o Zeemp2 Zremp2 V t mat valores linha2 1 mat valores linha n mat_valores linha2 ind t idcluster sen o se t null eu null ent o Zeemp2 Zremp2 YV t mat valores linha1 1 mat valores linhal n mat valores linhal ind u idcluster fim se retorna idcluster fim 5 5 4 Viola o de restri o de integridade Formaliza o Sint ctica DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF RELATION ColunasAlvo DasTabelas DasBasesDados Defini o Atribui es Defini oCondi o AgupandoPor Formaliza o Sem ntica No caso da detec o de viola o de restri o de integridade ser efectuada com base numa opera o pass vel de ser convertida num inqu rito SQL a opera o envolve uma das seguintes situa es identificar as chaves prim rias dos tuplos e os respectivos valores dos atributos da Cap tulo 5 Formaliza o das Opera es de Detec o 143 rela o que constituem uma viola o de restri o de integridade ou identificar apenas
69. X Im R R R v v at x atr 200 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica R RY Da LAVA V am fim Procedimento actualiza tuplo rela o S x E in cio VE OG x 6A nb x 6 S S S v Vath lt x atn SHS L 0 6 0 6 0 6 41 50 6 4 fim 6 6 3 Exist ncia de sin nimos Formaliza o Sint ctica CORRECT EXISTENCE OF SYNONYMS ColunasAlvo DasTabelas DasBasesDados FonteTermosUniformizacao Formaliza o Sem ntica As rela es que resultam da respectiva OD permitem agrupar os sin nimos em clusters O utilizador especifica qual a rela o cujos termos ser o utilizados na uniformiza o dos termos sin nimos existentes na outra rela o A correc o autom tica deste PQD envolve para cada cluster a actualiza o do valor que cont m o sin nimo no atributo de uma das rela es com o termo de uniformiza o utilizado no atributo da outra rela o Da actualiza o do valor do atributo resulta um novo valor que apenas difere do anterior no termo de uniformiza o que substitui o sin nimo mantendo se tudo o resto inalterado eg considerando os termos canalizador e picheleiro como sin nimos e sendo este ltimo o termo de uniformiza o o valor t cnico canalizador actualizado pata t cnico picheleiro Algoritmo Correc o Exist ncia Sin nimos amp seja idcluster um atributo de Z2 que identifica o cluster de sin nimos a q
70. a este valor constitui uma substring deste Caso esta situa o se verifique o valor considerado sobrecarregado Na rela o que resulta desta OD z e Z1 al m dos valores da chave prim ria dos tuplos onde se encontram os valores identificados como sobrecarregados os pr prios valores sobrecarregados s o tamb m armazenados assim como os diversos valores que constituem alternativas v lidas 7 e pertencem ao dom nio de valores v lidos do atributo Caso exista uma opera o pr via de detec o de valor incompleto sobre atr os valores j identificados como tal s o exclu dos desta OD de valor sobrecarregado Algoritmo Detec o Valor Sobrecarregado seja existe opera o detec o valor incompleto at uma fun o que recebe um atributo atr e verifica se na sequ ncia de OD existe uma OD de valor incompleto sobre atr devolvendo um valor booleano como resultado seja Z1 a rela o que armazena os valores incompletos detectados em atr seja 7r tokens str uma fun o que recebe uma string str e devolve o n mero de 0kens que a comp em seja extrai_primeiro_token str uma fun o que recebe uma string str e devolve o primeiro zoken dessa string seja extrai ultimo token str uma fun o que recebe uma string str e devolve o ltimo ken dessa string seja ength str uma fun o que recebe uma string str e devolve o n mero de caracteres que a comp em in cio se existe opera o detec o viola
71. a que pertence o sin nimo e sin o termo sin nimo sejam Z1 e Z2as rela es que armazenam os valores das chaves prim rias dos tuplos de Re onde foi detectada a exist ncia de sin nimos entre atn e ath os correspondentes sin nimos bem como o respectivo cluster de sin nimos a que estes pertencem Os esquemas de Z1 e Z2 respectivamente s o Z1 d dy atn idcluster e Z2 b 6 ath idclusten inicio Ve T ideluster Ocond T ue de tuplo U repetir enquanto u null V Tsin sin 2 T gt idcluster u idcluster A ideluster 2 u ideluster A idsin2 gt idsin Ps 2 idsin2 lt idsin jidcluster 2 lt idcluster sin 2 lt sin T ve de tupl V repetir enquanto v null X lt Ta samb sb atr atr R gt lt gt lt atn v sin v atr like v sin v atr like v sin v atr like v sin A A atn v sin 2 V atr like v sin 2 v atr like v sin 2 v atr like v sin 25 V V atr 0 sin 2 v atr like v sin 2 v atr like v sin2 v atr like v sin 2 A A atr v sin v atr like v sin v atro like v sin V atr like v sin S xe de tuplo X repetir enquanto x null se o Z1 ent o Oy X 41 A NA X Am Z1 Z1U xa X Ay Xatn uideluster Cap tulo 5 Formaliza o das Opera es de Detec o 151 fim se Se Of 6 r r6r x 6 22 ent o Z2 lt Z2 J xb Lb Gath uideluster y fim se Xe de tuplo O fim repetir ve de tupl V fim repetir ue de
72. amp pdfRecorded 1 no dia 03 04 2007 as 22 35 382 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tsur S e Zaniolo C 1986 LDL A Logic Based Data Language In Proceedings of the 17 International Conference on Very Large Data Bases Kyoto Jap o Agosto de 1986 pp 33 41 Umar A Karabatis G Ness L Horowitz B e Elmagardmid A 1999 Enterprise Data Quality A Pragmatic Approach Information Systems Frontiers 1 3 1999 pp 279 301 Vassiliadis P Simitsis A Georgantas P e Terrovitis M 2003 A Framework for the Design of ETL Scenarios In Proceedings of the 15 Conference on Advanced Information Systems Engineering CAiSE 03 Klagenfurt Austria Junho de 2003 pp 520 535 Verykios V S Moustakides G V e Elfeky M G 2003 A Bayesian Decision Model for Cost Optimal Record Matching The Very Large Databases Journal 12 2003 pp 28 40 Wand Y e Wang R Y 1996 Anchoring Data Quality Dimensions in Ontological Foundations Communications of the ACM 39 11 1996 pp 86 95 Wang R e Kon H 1993 Towards Total Data Quality Management TDQM In Information Technology in Action Trends and Perspectives Prentice Hall Inc 1993 pp 179 197 Wang R Y 1998 A Product Perspective on Total Data Quality Management Communications of the ACM 41 2 1998 pp 58 65 Wang R Y Storey V e Firth C 1995
73. atributos de um tuplo verifica se uma dada restri o de integridade x respeitada e devolve um valor l gico Seja o conjunto de nomes de atributos assim definido S a a e RA A a usado na formula o de x ie SC RA Existe uma viola o de restri o de integridade no tuplo t r sse check t S falso Nota Tal como definido na Sec o 4 4 1 v t S representa os valores dos atributos do conjunto no tuplo t 4 4 4 Problemas ao N vel da Rela o Nesta sec o apresentam se as defini es formais dos PQD identificados ao n vel da rela o i e que envolvem os valores de v rios atributos em m ltiplos tuplos de uma rela o O Viola o de depend ncia funcional Seja a um atributo cujos valores dependem funcionalmente dos valores de outros atributos O conjunto de nomes destes atributos definido como S fa a a E RA A valor de a depende funcionalmente do valor de a Existe uma viola o de depend ncia funcional na rela o r sse F t ty r V a e S toa Uta A Uta Ut dy Circularidade entre tuplos num auto relacionamento Sejam S e T conjuntos de nomes de atributos assim definidos a ae R A A a faz parte da chave prim ria e T a ae RA A a faz parte da chave estrangeira que define o auto relacionamento Seja U o conjunto que cont m os valores das chaves prim rias de todos os tuplos existentes na rela o r assim definido U v t te r
74. b sicas como o caso do join ou que entre as diversas propostas de opera es de lgebra relacional existentes na literatura foram consideradas teis para a formaliza o da sem ntica inerente s opera es de detec o e correc o B 3 1 Join Nas express es em lgebra relacional apresentadas nos Cap tulos 5 e 6 desta disserta o recorre se utiliza o de dois tipos de opera es join theta join e join natural Cada um destes tipos apresentado nas subsec es seguintes Refer ncias Bibliogr ficas 365 B 3 1 1 Theta Join A opera o iheta join simbolicamente representada por Rbd S constitui uma opera o bin ria que produz uma nova rela o que cont m os tuplos que satisfazem a condi o cond resultantes do produto Cartesiano entre os tuplos da rela o R e os tuplos da rela o S A condi o cond possui o seguinte formato R a 0 8 6 em que 0 constitui um operador de compara o e lt S gt 2 Os s mbolos a e 6 representam atributos respectivamente de R es B 3 1 2 Join Natural A opera o join natural simbolicamente representada por R gt lt S constitui uma opera o bin ria que produz uma nova rela o que cont m os tuplos resultantes do produto Cartesiano entre os tuplos da rela o R e os tuplos da rela o S em que os valores dos atributos comuns entre R e s o iguais Na rela o que resulta desta opera o apenas surge uma ocorr ncia de
75. cada atributo de cada tuplo encontra se um nico valor Actualmente alguns sistemas de BD relacionais e g SOL Server Oracle suportam tipos de dados complexos e g tipo de dados tabela matriz que permitem que num atributo possam estar armazenados simultaneamente m ltiplos valores Um desenvolvimento futuro deste trabalho consistir em fornecer o adequado suporte DC dos PQD existentes nos atributos cujos tipos de dados s o complexos Desenvolvimento de uma interface gr fica para o SmartClean Actualmente o SmartClean um prot tipo de LD que n o possui uma interface gr fica As opera es de DC s o especificadas directamente num ficheiro de texto utilizando as linguagens declarativas desenvolvidas A exist ncia de um editor gr fico que auxilie introdu o das opera es aumentar muito a usabilidade do prot tipo Por outro lado os PQD identificados s o despejados para tabelas de uma BD especialmente criada para o efeito enquanto que as correc es manuais t m que ser efectuadas directamente pelo 23 XML a abreviatura de Extensible Markup Language constituindo uma linguagem de anota o descritiva extens vel Cap tulo 10 Conclus o 351 utilizador na pr pria BD alvo de LD O utilizador necessita de efectuar inqu ritos SQL para visualizar os problemas detectados e as correc es automaticamente efectuadas Naturalmente esta n o a forma adequada de interagir com o utilizador da que
76. chaves prim rias dos tuplos a que pertencem No caso da n o exist ncia da heterogeneidade entre os valores estes s o armazenados noutras duas rela es no caso Z1 G22 naoheterog naohetero o assim como os valores das chaves primarias dos tuplos onde se encontram Quando o quociente entre o numero de Cap tulo 5 Formaliza o das Opera es de Detec o 147 situa es em que n o h heterogeneidade e o n mero de duplicados existentes excede um determinado limiar definido pelo utilizador conclui se que n o h heterogeneidade de unidades de medida Sempre que isto acontece n o se justifica a continua o da execu o da OD pelo que esta interrompida A sem ntica subjacente a esta opera o a seguir apresentada Algoritmo Detec o Heterogeneidade Unidades Medida Baseada SQL seja limiar um valor definido pelo utilizador cuja finalidade servir de referencial na verifica o da exist ncia de heterogeneidade de unidades de medida entre atr e atn Se este valor for superado isso significa que n o existe heterogeneidade e vice versa seja Zl e Z2 as rela es onde se encontram armazenadas as chaves prim rias dos tuplos respectivamente de Re S identificados como sendo duplicados e o respectivo cluster que formam Os esquemas de Z1 e Z2 s o Z1 a Amidcluster e Z2 6 6 idcluster seja Z1 e Z2as rela es que armazenam as chaves prim rias dos tuplos respectivamente de Re S on
77. cnica intelectual e instancia o Efectuando uma compara o entre as anteriores propostas de dimens es constata se que n o h um consenso sobre qual deve ser o conjunto de dimens es da QD a considerar A correc o e a completude dos dados s o as que recolhem maior unanimidade Por outro lado constata se que n o h uma defini o comum para cada dimens o Por vezes as diferentes propostas at usam o mesmo nome para dimens es com significados diferentes Na realidade nalguns casos h um completo desacordo entre as propostas quanto ao significado de uma determinada dimens o espec fica e g credibilidade Mesmo uma dimens o com um significado relativamente bvio como o caso da correc o n o possui uma defini o un nime Tamb m se constata a utiliza o de nomes diferentes com significados iguais ou semelhantes entre as diferentes propostas de dimens es de QD e g a dimens o clareza de defini o proposta em Redman 1996 semelhante dimens o interpretabilidade que surge nas propostas de Wang e Strong 1996 Bovee 2003 e Naumann 2002 2 2 2 2 Sinopse A luz da perspectiva lata a QD um conceito complexo definido por m ltiplas dimens es algumas das quais muito subjectivas De forma mais concreta a QD pode ser definida como um conjunto de dimens es que incluem a correc o a completude a consist ncia a actualidade a interpretabilidade e a acessibilidade Estas correspondem s dim
78. com o formato Microsoft Excel para posterior an lise Os resultados obtidos do processo de data profiling podem ser devidamente anotados com coment rios para os tornar mais expl citos Estes resultados podem ser armazenados num reposit rio existente para o efeito na sua totalidade ou apenas os n primeiros valores obtidos A ferramenta possui ainda outras potencialidades como 7 definir data profiling templates que podem ser especificados uma s vez e aplicados m ltiplas vezes em v rias bases de dados 7 permitir adicionar descri es s entidades e atributos de modo a tornar o seu significado mais expressivo e g o atributo dp representa a descri o do produto ii e suportar a exporta o dos resultados obtidos no processo de data profiling para o Microsoft Excel onde estes podem sofrer outras manipula es e g cria o de gr ficos A 2 WizRule A WizRule WizSoft 2007b uma ferramenta de an lise dos dados baseada em t cnicas de minera o de dados 2 e data mining Na sua base encontra se o seguinte pressuposto na maioria dos casos os problemas de qualidade dos dados manifestam se como excep es regra Por exemplo se todas as vendas efectuadas a um determinando cliente foram efectuadas pelo mesmo vendedor excep o de uma que foi efectuada por um vendedor associado a outros clientes esta pode ser considerada uma excep o regra Usando um algoritmo matem tico a ferramenta WizRule in
79. conceptuais de LD Mapeamentos Necess rios Granularidade Opera o Conceptual de LD neto ao ed Propriedade DETECT Syntax Violation ON e mail Atributo X Mapeamento Propriedade do DETECT Uniqueness Violation Conceito ON e mail Atributo_X Mapeamento FROM fornecedores Tabela Y Mapeamento fornecedores Propriedade do DETECT Missing Value Conceito do ON e mail Atributo X Mapeamento Dom nio FROM fornecedores OF com rcio electr nico Tabela Y Mapeamento fornecedores Base Dados Z Mapeamento PREE ENE electr nico 9 4 Heran a e Sobreposi o das Opera es Ontol gicas de Limpeza de Dados O n vel ontol gico ou conceptual da abordagem proposta permite uma representa o hier rquica do mundo real Assim um dom nio pode ser sub dom nio de outro dom nio e g a factura o constitui um sub dom nio da gest o comercial um conceito pode ser sub conceito de outro conceito e g cliente constitui um sub conceito de entidade comercial e uma propriedade pode ser sub propriedade de outra propriedade e g apelido constitui uma sub propriedade de nome Esta uma forma natural de modelar o mundo real Por outro lado esta organiza o hier rquica suporta duas importantes caracter sticas da abordagem heran a e sobreposi o das opera es de Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 325 DC Estas caracter sticas s o exemplificadas recorrendo a uma propri
80. da execu o das OD As correc es efectuadas aos valores para solucionar os PQD detectados n o t m qualquer influ ncia nesses atributos tuplos Atendendo a que os problemas v o sendo gradualmente identificados medida que outros s o solucionados da dizer se que a execu o das OD efectuada incrementalmente semelhan a do que sucedeu no m dulo anterior importa apresentar a forma como as OD s o executadas quando se considera 7 globalmente os v rios NG 77 isoladamente cada NG Contrastando com a sec o anterior nesta sec o come a se por expor esta ltima Considera se que esta invers o na ordem de apresenta o facilita a exposi o do motor de execu o das OD 7 4 1 Execu o em cada N vel de Granularidade Nas sec es seguintes exp e se a forma como s o executadas as OD que comp em a sequ ncia de depend ncias relativa a cada NG Esta exposi o inicia se com o NG do atributo e termina no NG multi rela o 7 4 1 1 Atributo Contexto do Valor Individual A identifica o de um PQD no valor de um atributo de um tuplo resultante de uma OD n o impede que as demais opera es da sequ ncia que incidem sobre esse atributo no contexto do valor individual sejam executadas Considerando a sequ ncia de depend ncias apresentada na Figura 7 3 a identifica o de um PQD no valor de um atributo n o implica a interrup o da execu o das OD da sequ ncia para que esse problema seja solucio
81. de sequ ncia respectivo representado na Figura 7 18 Esta diagrama de sequ ncia recapitula e sintetiza o modelo que se defende para a LD Como se pode observar no diagrama o in cio da LD ocorre com a especifica o de um conjunto de OD que visam identificar os PQD existentes nos diferentes NG De seguida as OD especificadas s o sequenciadas por e em cada NG Daqui resulta um conjunto de sequ ncias de OD para cada NG cuja execu o em cada n vel pode ser efectuada em simult neo As primeiras sequ ncias de OD executadas dizem respeito ao NG mais elementar que corresponde s opera es especificadas normalmente o NG do atributo contexto do valor individual No caso de serem identificados PQD pelas OD estes podem ser solucionados pela via manual pela via autom tica ou um misto das duas resolu o manual implica que o utilizador solucione os PQD directamente na pr pria fonte de dados Na resolu o autom tica o utilizador procede especifica o de um conjunto de OC que visam solucionar os PQD identificados O passo seguinte envolve a execu o destas OC Independentemente da abordagem adoptada na resolu o dos PQD as OD respons veis pela sua identifica o voltam a ser executadas para certificar que os problemas foram de facto solucionados execu o das sequ ncias de OD prossegue a partir dos pontos em que estas tinham sido interrompidas para que se efectuassem as necess rias correc es No caso de serem
82. de S artClean tamb m descrito de forma sucinta 12 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica No Cap tulo 8 Estudo de Caso de Limpeza de Dados procede se exposi o do estudo de caso de LD efectuado com o intuito de testar e validar a ferramenta SmartClean e consequentemente o modelo proposto e as opera es de LD subjacentes 7 e de detec o e correc o O caso baseado numa BD relativa ao dom nio das d divas colheitas de sangue As opera es de LD realizadas cobrem todos os n veis de granularidade de ocorr ncia de PQD desde o mais elementar 7 e O atributo at ao de maior complexidade z e m ltiplas rela es de diferentes fontes de dados No Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados apresentada uma abordagem original que suporta a interoperabilidade das opera es de DC em diferentes BD A interoperabilidade alcan ada atrav s da representa o conceptual das opera es de LD ao n vel da ontologia do dom nio subjacente A abordagem constitui uma extens o ao modelo de LD apresentado no Cap tulo 7 e que futuramente vir a ser implementada e integrada no prot tipo SmartClean Finalmente no Capitulo 10 Conclus o procura se demonstrar que todos os objectivos que estiveram na base da realiza o deste trabalho de doutoramento foram alcan ados Uma compara o entre trabalho relacionado e o trabalho
83. de medida os tuplos duplicados a exist ncia de hom nimos e a exist ncia de diferentes granularidades de representa o Ao n vel de uma s FD a situa o habitual existir homogeneidade nas sintaxes e unidades de medida utilizadas um determinado conjunto de entidades do mundo real e g clientes estar armazenado numa s rela o 7 e assim n o existem duplicados entre rela es n o serem usados valores com significados distintos consoante a rela o e ser usado o mesmo grau de detalhe na representa o dos valores Quer isto dizer que 88 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica habitualmente ao n vel de uma FD estes problemas n o existem entre as rela es No entanto n o poss vel excluir de todo a sua exist ncia A t tulo exemplificativo suponha se que uma determinada BD cont m al m de outras rela es duas rela es onde se armazenam respectivamente os clientes e os antigos clientes de uma empresa Ao fim de cinco anos sem ser efectuada qualquer transac o comercial o cliente transferido da tabela de clientes para a tabela de antigos clientes Se os tuplos n o forem removidos da tabela de clientes passam a constar de ambas as tabelas Quer isto dizer que poss vel encontrar tuplos duplicados entre duas tabelas pertencentes mesma BD De igual forma poderiam ser fornecidos exemplos que ilustrariam a ocorr ncia dos outros PQD entre rela
84. de projec o ie m No caso deste existir os atributos que constituem a chave prim ria de R 7 e d d podem n o constar no operador de projec o Naturalmente nesta situa o tamb m n o constam de Z1 Na formaliza o cond al m de representar uma eventual condi o de selec o que delimita a execu o da OD tamb m representa a condi o de que resulta a detec o da viola o da restri o de integridade O conte do de cond resulta do que se encontra especificado na cl usula where da OD Na detec o de viola o de restri o de integridade ao n vel da coluna pode ser necess rio recorrer a FDU e g devido complexidade das opera es envolvidas na detec o Nestas situa es o conjunto de valores do atributo atr pode ser passado como par metro de acordo com os requisitos de cada FDU presente na sequ ncia de atribui es especificada na OD As fun es tamb m podem receber outros par metros como vari veis e constantes excep o da ltima fun o 7 e fdu que obrigatoriamente retorna um valor at mico representativo do problema detectado todas as outras podem retornar um valor at mico ou uma estrutura de dados e g um vector uma matriz A formaliza o da detec o do PQD em causa baseada em FDU seguidamente apresentada Algoritmo Detec o Viola o Restri o Integridade Baseada em FDU amp seja Z1 a rela o que armazena o valor que constitui viola o
85. depend ncias 230 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica entre estas mais uma vez mantendo se a ordem de especifica o do utilizador Estas depend ncias manifestam se atrav s da exist ncia de atributos comuns entre as OD Os atributos envolvidos em cada OD pertencente a cada sequ ncia de depend ncias resultante permitem identificar as opera es cuja execu o pode ser efectuada em paralelo Quando h opera es nestas condi es daqui resulta um grafo dirigido de depend ncias de execu o das OD A informa o referente a cada sequ ncia de depend ncias armazenada em tabelas tempor rias auxiliares cuja estrutura est exposta no pen ltimo par grafo da sec o anterior 7 3 2 5 Multi Rela o Mono Fonte Multi Fonte de Dados A Figura 7 8 ilustra esquematicamente as tr s sequ ncias de execu o poss veis das OD dos PQD correspondentes aos tr s caminhos poss veis que envolvem m ltiplas rela es independentemente destas pertencerem mesma ou a diferentes fontes de dados Uma vez que os problemas que se manifestam no contexto dos dois ltimos NG ze fonte de dados e multi fonte de dados s o comuns a sequ ncia de depend ncias das OD tamb m a mesma para ambos os casos Sendo a mesma justifica se que a sua apresenta o seja efectuada em conjunto Heterogeneidade de Sintaxes Viola o de Integridade Referencial Exist ncia de Sin nimos
86. designada de JDBC Como se p de verificar nas sec es anteriores defende se que a execu o de algumas OD e OC pode ser efectuada em paralelo A linguagem Java tamb m fornece um suporte adequado execu o simult nea de v rias tarefas por interm dio de um mecanismo simples de cria o de threads Um outro aspecto que abonou a favor da escolha do Java como linguagem de programa o prende se com o seu cariz multi plataforma o que permite a portabilidade do prot tipo para diferentes sistemas operativos O desenvolvimento do SmartClean traduziu se em cerca de vinte e cinco mil linhas de c digo distribu das por mais de uma centena de classes Sempre que poss vel tirou se partido das potencialidades intr nsecas oferecidas pela pr pria linguagem na implementa o das OD e OC A t tulo de exemplo no caso da correc o das viola es de sintaxe tirou se partido das potencialidades de transforma o baseadas em express es regulares oferecidas por uma API que acompanha a linguagem Java no caso regex Cap tulo 7 Modelo Proposto para a Limpeza de Dados 265 As OD e OC especificadas para execu o pelo utilizador come am por ser submetidas aos respectivos compiladores Estes compiladores traduzem essas opera es representadas sob a forma declarativa para uma representa o interna usada nos demais m dulos da arquitectura caso n o estejam afectadas por erros sint cticos Esta representa o interna n o mais d
87. distancia de edi o tamb m conhecida por dist ncia de Levenshtein a m trica usualmente adoptada para avalia o da semelhan a entre valores do tipo string A dist ncia de edi o ou Levenshtein Levenshtein 1966 entre duas strings corresponde ao menor n mero de opera es de edi o simples 2 e inser es elimina es e substitui es que necess rio efectuar ao n vel dos caracteres individuais para transformar uma string na outra eg o valor da dist ncia de edi o entre as strings limpeza de dados e lipeza dos dados igual a um Esta m trica uma generaliza o da dist ncia de Hamming Hamming 1950 uma vez que esta obriga a que as strings possuam igual n mero de caracteres sendo permitidas apenas opera es de substitui o Entre duas strings a dist ncia de Hamming representa o n mero total de posi es em que os s mbolos que as ocupam s o diferentes Uma variante da dist ncia de edi o tamb m usada na an lise da semelhan a entre strings a dist ncia de Damerau Levenshtein Damerau 1964 Levenshtein 1966 Nesta m trica semelhan a da dist ncia de edi o a diferen a entre duas strings dada pelo menor n mero de opera es necess rias para transformar uma das strings na outra Uma opera o corresponde a uma inser o elimina o ou substitui o de um s caracter No entanto contrariamente ao que acontece na dist ncia de edi o a transposi o de dois c
88. do atributo A seguir formalizam se as OD ao n vel do tuplo e ap s estas as OD ao n vel da rela o Por ltimo s o apresentadas as formaliza es das OD dos PQD que ocorrem ao n vel de m ltiplas rela es pertencentes mesma ou a bases de dados diferentes 5 1 Introdu o No seguimento do cap tulo anterior no qual se apresentou uma taxionomia de PQD organizada por n vel de granularidade neste cap tulo apresenta se a formaliza o das opera es que permitem a detec o desses problemas As opera es s o formalizadas a dois n veis sint ctico i e da linguagem que permite especificar as OD dos diferentes PQD e sem ntico i e o modo de opera o que conduz detec o de cada tipo de PQD e g valor em falta viola o de sintaxe viola o de dom nio A formaliza o das opera es que conduzem detec o dos PQD constitui precisamente um dos objectivos deste trabalho de acordo com o enunciado no Cap tulo 1 Sec o 1 3 Na apresenta o da formaliza o sem ntica de cada OD adoptada a abordagem que a seguir se descreve Em primeiro lugar efectuada uma descri o textual sucinta e informal da filosofia subjacente OD Ap s esta que se apresenta de modo formal a sem ntica da opera o As formaliza es materializam a filosofia adoptada neste trabalho de fornecer de raiz suporte detec o de todos os PQD em que tal poss vel partida Naturalmente as formaliz
89. do tipo at mico ou estruturado Ze um vector ou uma matriz seja avalia_condicao p p gt p uma fun o que recebe um conjunto de par metros p p P necess rios avalia o da condi o que permite detectar o PQD em quest o Estes par metros representam uma constante o valor de um atributo o conjunto de valores de um atributo ou uma vari vel que cont m o resultado de uma fun o anterior Um destes par metros necessariamente a vari vel que cont m o resultado devolvido pela ltima fun o da sequ ncia de FDU A fun o efectua a avalia o l gica da condi o e retorna como resultado o valor booleano correspondente seja o o operador de concatena o de strings seja like o operador que verifica se uma dada string obedece a um padr o especificado pelo utilizador tal como vulgarmente utilizado em SQL Para n o tornar as formaliza es expostas nas sec es seguintes excessivamente extensas optou se por efectuar a sua apresenta o considerando que a condi o de selec o cond foi especificada pelo utilizador na OD Na situa o de tal n o acontecer uma vez que opcional em cada formaliza o apresentada deve ser removido cond das express es em lgebra relacional e caso este represente a nica condi o existente deve tamb m ser removido o respectivo operador de selec o Ze O Estas altera es s o suficientes para que as formaliza es passem a reflectir a sem nt
90. dos meta dados em que a abordagem se encontra alicer ada 9 1 Introdu o A LD obriga a que o utilizador especifique manualmente as opera es de Detec o e Correc o DC a efectuar O utilizador come a por definir as Opera es de Detec o OD que pretende executar Ap s a execu o destas o utilizador especifica as opera es de correc o autom ticas a realizar nos dados para solucionar os problemas identificados Em alternativa o utilizador pode decidir ou ser for ado a corrigir manualmente alguns dos problemas caso a caso em virtude de n o serem suscept veis de correc o autom tica Normalmente a realiza o de um processo de LD envolve a especifica o manual de um n mero apreci vel de opera es de DC Infelizmente n o h uma solu o m gica para a LD Um sistema inform tico completamente autom tico que receba dados detecte e corrija os problemas de qualidade existentes nestes sem obrigar a qualquer interven o por parte do utilizador uma miragem H aspectos sem nticos envolvidos da que n o seja poss vel transformar a LD num processo totalmente autom tico necess rio saber qual o conte do sem ntico de um atributo para que seja poss vel efectuar as opera es de DC adequadas e g se um determinado atributo armazena c digos postais ent o justifica se a realiza o de opera es que detectem viola es sua sintaxe e ao seu dom nio Normalmente o nome do atributo dispon
91. e todos os tuplos de Rou apenas aqueles que constam de ZD Assim para cada um desses tuplos e com base no conjunto de atribui es especificadas pelo utilizador a OC actualiza os valores dos atributos necess rios resolu o do PQD em fun o dos valores existentes noutros atributos Cada atribui o representada em fun o de uma express o que envolve exclusivamente atributos vari veis e ou constantes Algoritmo Correc o Viola o Restri o Integridade E seja dnst 5dm n O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos assim definido C fc c usado na correc o da viola o da restri o de integridade A ce As ie CCA Este conjunto resulta da especifica o da OC seja e a catdinalidade de C seja k o n mero de atribui es existentes na sequ ncia de atribui es da OC sejam x ye z n meros inteiros compreendidos no intervalo 1 e sejam o p e q n meros inteiros compreendidos no intervalo 1 in cio se existem atribs na rela o vec atribs chave prim R ZI verdadeiro ent o Tem Cond RDIZI M 50009 ole 194 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica sen o Te Ta MK AA Sond R fim se te de tuplo T repetir enquanto t null v atrib V atrib VE atrib us Ou t MBA R R R u v UC u c Vp U C V R RU
92. e se em duas fases Na primeira s o identificados os registos que provavelmente se referem mesma entidade do mundo real Na segunda fase os registos duplicados s o consolidados fundidos num s A detec o de duplicados efectuada com base num crit rio de semelhan a especificado pelo utilizador e em operadores de SQL estendido de join uni o e agrupamento consolida o efectuada com base em fun es definidas pelo utilizador e g especificando que o valor mais recente o que prevalece O Preenchimento de valores em falta Algumas estrat gias para o preenchimento de valores em falta est o dispon veis A de maior simplicidade envolve a remo o de todos os registos que estejam afectados com valores em falta com todos os inconvenientes que da adv m Uma outra alternativa passa por calcular o valor do atributo em falta com base nos restantes que est o preenchidos g m dia ou mediana dos valores do atributo 3 5 1 6 An lise Comparativa Na Tabela 3 2 apresentada uma compara o entre os cinco prot tipos de investiga o com base num conjunto de caracter sticas seleccionadas para o efeito Os significados dos acr nimos usados s o BDR BD Relacional e FT Ficheiro de Texto Tabela 3 2 Compara o das caracter sticas dos prot tipos de investiga o Potter s Wheel BDR FT Arktos IT IntelliClean BDR BDR Tipos de fontes suportadas BDR FT Preocupa es opti
93. efectuada sob a forma descendente Em alternativa correc o dos erros ortogr ficos pelas palavras de maior proximidade poss vel proceder pura e simplesmente sua elimina o Cada erro ortogr fico detectado removido do valor do atributo A remo o apenas suscept vel de ser efectuada quando o valor do atributo composto por mais do que uma palavra No caso de existir uma nica palavra a remo o desta implicaria que o valor do atributo ficasse a nulo De facto esta opera o encontra se orientada Cap tulo 6 Formaliza o das Opera es de Correc o 177 para aquelas situa es em que se considera importante a inexist ncia de erros ortogr ficos nem que para isso seja necess rio a elimina o da respectiva palavra do valor do atributo e que desta n o resultam consequ ncias de maior a n vel de perda de informa o e g em muitas situa es a elimina o de uma das palavras do nome de um indiv duo n o relevante Algoritmo Remo o Erro Ortogr fico seja o o operador de concatena o de strings in cio T Dy 50 5 Pr ee O cond 21 te ke tuplo T repetir enquanto t null us On t Pici Ed R R R u novo valor substitui_substring u atr gt o tpal erro cc Ea ce gt se novo valor u atr ent o gt novo valor substitui substring u atn O o t pal_err se novo valor u atr ent o
94. elementos das varias cl usulas No caso da cl usula Where as diversas condi es referentes s diferentes opera es do mesmo tipo s o ligadas pelo operador l gico conjuntivo Ze and No exemplo anterior isto corresponde a reunir as condi es que se encontram na cl usula Where das opera es do mesmo tipo z e opera es A e C para a detec o de viola o de sintaxe e opera es B e D para a detec o de viola o de dom nio A exemplifica o da abordagem foi efectuada exclusivamente com base em OD No entanto com as devidas adapta es as OC s o objecto do mesmo tipo de manipula o do que as OD 9 5 Modelo de Dados de Suporte a Interoperabilidade das Opera es de Limpeza Conceptualmente o modelo de dados que suporta a interoperabilidade das opera es de LD encontra se organizado em quatro quadrantes tal como se apresenta na Figura 9 7 Estes quadrantes suportam o armazenamento e manipula o de todo o conhecimento e g as ontologias e dos meta dados e g informa o sobre o esquema dos dados em que a abordagem Modelo de Dados assenta N vel da Ontologia N vel do Esquema de Dados 1 1 1 i 1 i i i I I I I 4 Representa o do Opera es de LD mundo real Figura 9 7 Representa o conceptual do modelo de dados 328 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O quadrante superior esqu
95. em que consistem Uma das optimiza es que por vezes surge vagamente mencionada prende se com a adop o de m todos eficientes de detec o de duplicados que n o obrigam realiza o de um produto Cartesiano de compara es entre os tuplos Nesta perspectiva o SmartClean tamb m disponibiliza o m todo da vizinhan a ordenada com multi passagem a O SmartClean possui potencialidades de extensibilidade ao contr rio do que acontece nas ferramentas comerciais analisadas A impossibilidade de incorporar FDU impede as de detectar outros problemas para al m daqueles que suportam de base Apesar do seu cariz orientado para o utilizador n o perito ze sem conhecimentos de programa o a inexist ncia desta potencialidade constitui uma limita o importante a Contrariamente ao que acontece no SwartClean todas as ferramentas comerciais possuem uma interface gr fica de interac o com o utilizador Esta limita o actual do SmartClean perante as ferramentas comerciais ser suprida num futuro pr ximo como j se referiu Cap tulo 10 Conclus o 345 a O SmartClan permite a anula o autom tica das altera es efectuadas no seguimento da execu o de OC caso os seus efeitos n o sejam os esperados Nas ferramentas comerciais esta potencialidade n o existe o que obriga a que seja especificada uma opera o de LD que restaure a situa o inicial Dependendo das altera es efectuadas nem sempre poss vel efect
96. equivalentes do ponto de vista sem ntico ainda que n o o sejam sintacticamente Lee e al 1999 Monge 2000 Bilenko e Mooney 2003 Por exemplo um determinado registo pode armazenar dados relativos a um indiv duo em que este est identificado pelo primeiro e ltimo nome e g Ant nio Silva Um outro registo pode armazenar dados sobre o mesmo indiv duo em que este est identificado pelas iniciais dos nomes pr prios e ltimo apelido e g A C Silva Entre outros problemas a exist ncia de duplicados influencia negativamente a realiza o de an lises estat sticas Quando n o se procede sua remo o frequ ncias de distribui o e opera es de agrega o produzem resultados errados e enganadores Por outro lado podem impedir que algoritmos de minera o de dados descubram padr es importantes ou induzi los na descoberta de padr es errados Bilenko e Mooney 2003 3 4 1 M todos de Detec o de Duplicados A detec o de duplicados envolve a identifica o de registos semelhantes que correspondem mesma entidade ou objecto do mundo real Na detec o de duplicados um dos principais problemas prende se com a decis o de quando que dois registos devem ser considerados 42 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica duplicados apesar das diferen as que possam existir entre estes H duas estrat gias distintas para determinar a exist ncia de registo
97. es apenas entre registos vizinhos Assim evita se o n mero excessivo de compara es que resulta do produto Cartesiano entre os registos A aplica o do m todo precedida pela reuni o dos registos provenientes das diversas fontes numa s tabela e envolve a execu o sequencial dos seguintes passos O Criar chave de ordena o Para cada registo existente na tabela criada uma chave de ordena o Em cada registo esta chave formada pela sequ ncia de valores dos atributos seleccionados ou de partes desses valores A escolha dos elementos constituintes da chave bem como da ordem pela qual aparecem da responsabilidade do utilizador N o h qualquer regra que defina como deve ser constitu da Esta uma tarefa que envolve conhecimento espec fico sobre os dados em causa Al m de se conhecer as caracter sticas dos dados tamb m necess rio ter uma ideia dos problemas os afectam A efic cia do m todo depende de uma escolha adequada da chave de ordena o Se tal n o for alcan ado da ordena o n o resulta uma sequ ncia de registos em que os duplicados aproximados se encontram pr ximos entre si Como consequ ncia certos duplicados 44 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica acabam por n o ser identificados como tal A t tulo exemplificativo considere se os registos apresentados na Tabela 3 1 Neste caso a chave constitu da pela concatena o de
98. es auxiliares que armazenam o estado das rela es antes da execu o das OC necess rio armazenar as correc es efectuadas Como j se referiu a identifica o destas correc es resulta da compara o entre as rela es auxiliares e as respectivas rela es O registo das correc es efectuadas importante pelas seguintes raz es 2 quando todos os PQD se encontram solucionados num NG o processo de detec o reinicia se novamente desde o n vel mais elementar mas considerando unicamente os valores que entretanto sofreram correc es 7 com base no conhecimento das altera es provocadas por uma dada OC que poss vel anular os seus efeitos e assim restaurar a situa o original De referir que quando se anulam corre es entretanto efectuadas a informa o armazenada sobre as correspondentes altera es tamb m eliminada Para suportar o armazenamento das altera es resultantes das diversas OC desenvolveu se o modelo de dados apresentado na Figura 7 17 sob a forma de um diagrama entidade rela o C a o E ZIN ZIN Itera o Detec o Tabela Envolvida 4 Atributo Envolvido WY ZIN ZIN Sub Itera o Detec o A Base Dados Envolvida Tuplo Envolvido WY Figura 7 17 Modelo de dados de suporte ao armazenamento das altera es efectuadas 260 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A implementa o do modelo de dados proposto traduz
99. es pode resultar entre outras possibilidades do seguinte Q O conjunto de atributos utilizados nos esquemas de dados para caracterizar cada entidade do mundo real diferente e g o atributo sexo existe no esquema de destino mas n o existe no esquema de origem Cap tulo 2 Qualidade de Dados 33 Q Tipos de dados diferentes s o usados para representar o mesmo atributo e g o atributo data factura do tipo data no esquema de destino enquanto que no esquema de origem do tipo string Q Modelos de dados diferentes e g no esquema de origem o atributo ocalidade integra a tabela chentes enquanto que no esquema de destino o mesmo atributo faz parte da tabela c digo postal A TD implica que sejam efectuados mapeamento de dados que estabelecem associa es entre os atributos do esquema de origem e os atributos do esquema de destino e sejam especificadas as transforma es que devem ocorrer entre estes Frequentemente estes mapeamentos s o dificultados pela necessidade de transforma es complexas envolvendo associa es entre atributos do tipo wm para muitos e muitos para um Normalmente a TD efectuada no contexto mais abrangente da cria o de armaz ns de dados envolvendo tamb m opera es de extrac o e carregamento Este processo vulgarmente conhecido por extrac o transforma o e carregamento Na fase de extrac o os dados s o retirados das fontes onde se encontram A gen
100. esquema ZI seg circulam O tipo de dados do atributo seg circular textual in cio Ta PERO AE r E aA Ooni a gt lt ain R E cpm 2 vec total segs circulares gerar sequencias T vec total segs circulares DT ier nik Coon Q PSR aR 2c ASR Ran R2cm Px ia 2 vec total segs circulares gerar sequencias T vec total segs circulares repetir para i lt 1 at dimwens o vec total segs circulares Z1 lt Z1 U vec total segs circulares i fim repetir fim Fun o gerar sequ ncias T vec total segs circulares amp seja existe valor em vector ordenado elem ved uma fun o que recebe um dado elemento elem e um vector ordenado vec e verifica a exist ncia de elem em vec Como resultado desta verifica o a fun o devolve um valor booleano seja insere valor em vector ordenado elem vec uma fun o que recebe um dado elemento elem e um vector ordenado vec e procede inser o ordenada de elem em vec devolvendo este como resultado seja insere valor em vector elem veq uma fun o que recebe um dado elemento elem e um vector vec e procede inser o de elem em vec devolvendo este como resultado 134 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica in cio te de tuplo T repetir enquanto t null seg inicial lt tmo o o otao otcoV o o o lc se existe valor em vector ordenado seg inicial vec segs iniciais falso ent o
101. exaustiva poderia tornar impratic vel a realiza o da LD Isto surge como consequ ncia das in meras itera es de execu o integral das sequ ncias de OD respeitantes a cada NG que poderia ser necess rio realizar Para contornar este problema adoptou se a abordagem exposta nas sec es anteriores No rein cio da execu o de cada sequ ncia de OD considera se unicamente as que anteriormente culminaram na identifica o de PQD e que dizem respeito apenas ao NG em quest o O grau de probabilidade de uma correc o causar um novo problema reduzido Ainda assim como essa possibilidade existe n o pode ser descurada Assim como forma de assegurar que as correc es efectuadas n o redundam na introdu o de novos problemas nos NG que se encontram a montante complementou se a abordagem com o que a seguir se descreve Quando da execu o das sequ ncias de OD respeitantes a um determinado NG j n o resultar a detec o de qualquer PQD ent o reinicia se a execu o das sequ ncias de detec o de cada NG que se encontra a montante Naturalmente esta execu o novamente efectuada de acordo com a sequ ncia por NG defendida neste trabalho e primeiro as OD referentes ao n vel do atributo e em ltimo as relativas a m ltiplas rela es de diferentes fontes de dados Assim em vez de se executar as OD referentes aos NG precedentes sempre que feita uma correc o estas s o executadas apenas uma nica vez no final
102. fonte A realiza o de LD efectuada num contexto que n o obriga realiza o de transforma o de dados Como o modelo suporta a execu o de todas as OD e OC formalizadas nos dois cap tulos anteriores a cobertura fornecida de base DC dos PQD bastante abrangente Cap tulo 7 Modelo Proposto para a Limpeza de Dados 213 s principais caracter sticas do modelo proposto de LD foram introduzidas de forma sum ria nesta sec o Nas sec es seguintes estas s o expostas com o necess rio detalhe que merecem O modelo proposto encontra se materializado na arquitectura apresentada na sec o seguinte 7 2 Arquitectura Na Figura 7 1 apresenta se a arquitectura proposta para a DC dos PQD e para a LD Esta arquitectura foi inicialmente proposta em Oliveira e al 2005b Os novos desenvolvimentos entretanto ocorridos foram apresentados em Oliveira e a 2006b Desde ent o a arquitectura sofreu mais alguns refinamentos A Figura 7 1 reflecte a vers o final a que se chegou Op Detec o Op Correc o Op Detec o Compiladas Dom nios Dicion rios Detectados Motor de Execu o de Op Correc o Op Correc o Compiladas Op Detec o Sequenciadas Motor de Execu o Incremental de Op Detec o Biblioteca de Fun es de LD Definidas pelo Utilizador Reposit rio de Opera es de LD Figura 7 1 Arquitectura proposta para a LD 214 Detec
103. gradual podem n o ser detectados certos problemas ou redundantemente serem reportados outros Na Figura 7 2 apresenta se a sequ ncia que se prop e para a DC dos PQD por NG A sequ ncia segue uma filosofia ascendente e bottom up Inicia se com os problemas que ocorrem no NG Cap tulo 7 Modelo Proposto para a Limpeza de Dados 219 M ltiplas Rela es M ltiplas Fontes de Dados M ltiplas Rela es Mono Fonte de Dados Atributo Multi Valor Atributo Valor Individual Figura 7 2 Sequ ncia de DC dos PQD por NG mais elementar 7e os que ocorrem ao n vel do atributo e termina nos que apresentam uma maior complexidade 7 e os que ocorrem ao n vel de m ltiplas rela es de diferentes fontes de dados Como resultado da aplica o desta sequ ncia de manipula o a dados afectados por problemas de qualidade na figura representados como dados sujos obt m se dados em que esses problemas est o solucionados na figura representados como dados limpos Face sequ ncia apresentada os primeiros problemas a serem manipulados 7 e detectados e de seguida corrigidos s o os que ocorrem no NG do atributo em particular os que se verificam no contexto do valor individual e g viola o de sintaxe erro ortogr fico O objectivo consiste em come ar por manipular os problemas que envolvem um nico valor e cuja resolu o n o depende de outros valores sejam estes do me
104. identificados novos PQD repete se todo o procedimento que acabou de ser descrito Quando da execu o de todas as sequ ncias de OD Cap tulo 7 Modelo Proposto para a Limpeza de Dados 263 Correc o Detec o H de I g or dd od 5 E T lt e G ZE o Q o x EE Ss Especificacao das OC Execucao das OC SE lg og SA 55 Es Correc o Manual E ae o So Z Sequencia o das OD Especifica o das OD Figura 7 18 Diagrama de sequ ncia do modelo proposto de LD referentes a um NG j n o resultar a identifica o de qualquer PQD a execu o das OD reinicia se no NG mais elementar na procura de novos problemas que possam ter sido involuntariamente introduzidos com as correc es efectuadas Neste rein cio apenas s o executadas as OD que incidem sobre atributos cujos valores tenham sido objecto de altera o com as correc es entretanto realizadas No caso de ser detectado algum PQD o procedimento atr s descrito volta a desenrolar se Caso contr rio a detec o dos PQD prossegue para o NG 264 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica seguinte Neste novo NG repete se tudo aquilo que at agora foi descrito A LD termina quando da execu o das OD referentes ao NG de maior complexidade que corresponde s opera es especificadas no limite o NG multi rela o de diferentes fontes de dados n o resultar a identif
105. identificados representam a viola o de unicidade a sua resolu o efectuou se manualmente Assim ap s se ter constatado que a elimina o do tuplo com a chave prim ria igual a 208 n o acarretava viola es integridade referencial da tabela Colheitas procedeu se sua elimina o Note se que apesar de n o estar definida na BDD existe um relacionamento entre a tabela Hospitais atributo CodHospital e a tabela Colheitas atributo Hospital 8 3 2 4 Tabela Brigadas Opera es de Detec o A Tabela 8 27 apresenta as OD efectuadas no contexto dos m ltiplos valores de cada atributo da tabela Brigadas Tabela 8 27 OD executadas no contexto dos m ltiplos valores dos atributos da tabela Brigadas Viola o de Atributo RE unicidade CodigoBrigada DesignacaoBrigada A execu o da OD de viola o de unicidade no atributo CodigoBrigada n o culminou na detec o de PQD deste tipo A execu o do mesmo tipo de OD no atributo DesignacaoBrigada resultou na identifica o das viola es de unicidade apresentadas na Tabela 8 28 Cap tulo 8 Estudo de Caso de Limpeza de Dados 295 Tabela 8 28 Resultados da OD de viola o de dominio no atributo DesignacaBrigada DesignacaoBrigada Associa o Dadores EDP Braga Associa o Dadores EDP Braga EN Electricidade do Norte SA EN Electricidade do Norte SA Amorim amp Irm os Amorim amp Irm os Ope
106. infere a sintaxe que se lhes encontra subjacente e devolve a como resultado No caso de n o ser poss vel inferir uma sintaxe 7 e devido inexist ncia de um padr o a fun o devolve como resultado o valor null sejam Z1 e Z2 duas rela es onde s o armazenadas respectivamente as sintaxes heterog neas identificadas em atr e ath com o seguinte esquema ZI sint e Z2 sint em que sint o atributo que armazena a sintaxe inferida in cio TT guy O cond R UT atr Cond S sint infere_sintaxe T sint infere_sintaxe V se sint sint ou sint null e sint null ent o Z1 lt Z1 U sint Z2 Z2 U sint fim se fim 5 6 2 Heterogeneidade de unidades de medida Formaliza o Sint ctica DETECT HETEROGENEITY OF MEASURE UNITS ColunasAlvo DasTabelas DasBasesDados Defini oLimiar Usando Atribui es Defini oCondi o Formaliza o Sem ntica No caso da detec o da exist ncia de heterogeneidade de unidades de medida com base numa condi o suscept vel de ser representada em SQL a opera o envolve verificar para cada par de tuplos identificado como duplicados pela OD respectiva previamente executada se a condi o que traduz a exist ncia de heterogeneidade entre atr e atr respeitada ou n o No caso de existir heterogeneidade de unidades de medida entre os valores estes s o armazenados nas rela es respectivas e Z1 e Z2 juntamente com os valores das
107. mero total de registos da tabela e que t o tamanho da janela de compara o cada novo registo que entra na janela comparado com os anteriores t 1 registos para verificar se h duplicados seus Quanto maior o tamanho da janela maior o n mero de registos duplicados identificados A entrada de um novo registo na janela de compara es faz com que o ltimo saia do seu interior tal como se ilustra na Figura 3 1 O n mero de compara es efectuadas usando este m todo apenas de O nt A compara o entre os registos para detec o dos duplicados efectuada com base num conjunto de axiomas regras enunciados pelo perito do dom nio sob a forma de uma Zeoria equacional em ingl s eguational theory que definem as situa es em que h equival ncia correspond ncia entre os registos A teoria equacional expressa usando uma linguagem declarativa de alto n vel Na avalia o da equival ncia s o inclu dos outros atributos al m dos usados na chave de ordena o Os pares de registos identificados como duplicados s o o resultado vis vel do m todo Cap tulo 3 Limpeza de Dados 45 Registo 11 Registo 12 Registo 13 Registo 14 4 Pr xima janela Janela actual de registos Registo 15 Registo 16 Registo 17 de registos Registo 18 Registo 19 Registo 20 Figura 3 1 Janela deslizante O principal inconveniente deste m todo prende se com a forte depend ncia da exist ncia de proximidad
108. na tabela Codigos Postais BD Dominios h unicamente duas localidades atributo Jocalidade v lidas para o c digo postal atributo CP 4445 Alfena e Ermesinde A exist ncia do valor Gandra no atributo LocPostal da tabela CodigosPostais BDD para um valor do atributo CodPostal igual a 4445 representa uma viola o restri o de integridade enunciada Cap tulo 8 Estudo de Caso de Limpeza de Dados 311 A OD que envolve a tabela CodigosPostais da BDD e a tabela Codigos Postais da BD Dominios a seguir apresentada DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ON CodPostal LocPostal CP FROM CodigosPostais Codigos Postais OF BDD Dom nios WHERE CodPostal CP AND LocPostal NOT IN SELECT Localidade FROM Codigos Postais WHERE CP CodPostal Da execu o desta OD resultaram 129 viola es de restri o de integridade Na Tabela 8 42 apresentam se algumas das viola es detectadas Tabela 8 42 Resultados da OD de viola o de restri o de integridade entre CodigosPostais e Codigos Postais CodPostal LocPostal ARNEIRO DAS MILHEIRICAS CASAL COMBA POCARICA SEIXO ALVO CAMBRES VILA FRANCA DAS NAVES ARRONCHES MARTINLONGO GINETES A execu o de uma OD com igual objectivo entre a tabela Dadores BDD e a tabela Codigos Postais BD Dominios redundou na identifica o de 516 viola es de restri es de integridade Alg
109. ncias sempre que eu o solicitei Ao meu colega do GECAD Nuno Silva pelo interesse demonstrado no andamento do trabalho pelos seus conselhos e incentivos pelo seu tempo e disponibilidade pela ced ncia de material bibliografia MAFRA Toolkit e pelas frutuosas discuss es que tivemos acerca de certos aspectos do trabalho Ao ISEP e ao IPP todos os meios que me disponibilizou e o apoio institucional que me concedeu na candidatura a uma bolsa PRODEP Igualmente agrade o ao PRODEP o financiamento concedido o que me isentou do pagamento de propinas e especialmente permitiu a dispensa de servi o docente Todos estes aspectos contribu ram muito favoravelmente para a realiza o do presente trabalho Cristina Goretti Helena e Paula da Secretaria do Departamento de Inform tica da Universidade do Minho pela sua simpatia disponibilidade e aux lio prestado em diversos assuntos Por ltimo mas n o menos importante agrade o a Deus a vida e a sa de que me concedeu bem como a todos aqueles que me s o queridos durante a realiza o deste trabalho A todos exprimo os meus muito sinceros agradecimentos Porto Setembro de 2008 vii RESUMO Os dados possuem uma import ncia crescente na actual sociedade da informa o e comunica o Por este motivo muito importante a Detec o e Correc o DC dos seus problemas de qualidade Os resultados obtidos a partir dos dados s o negativamente influenciados pelo
110. nrtuplos j v a fim repetir ind lt n repetir para j 2 at numcolunas mat_chvord incremento 2 ind lt ind 1 mat_valores nrtuplos ind v mat chvordi j fim repetir ue de tuplo U fim repetir 140 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica repetir para 1 at dimjanela 1 repetir para lt j 1 at nrtuplos v fdu mat _valores j x mat _valores ILx1 7 Pires v fdu mat valores j y mat vatores 15 Pa rPy v fdu mat _valores j w mat _valores C w p P aP se avalia _condi o P pP 3P verdadeiro ent o idcluster insere duplicados rela o ontpu mat valores j l idcluster ind fim se fim repetir fim repetir ue de tuplo U repetir enquanto u nulle nrtuplos lt dimjanela repetir para j 1 at dimjanela 1 repetir para lt 1 at ind mat_valores j v mat chvordj 1 1 fim repetir fim repetir E EC ve de tuplo w repetir para j lt 1 at n mat_valores dimjanela j v a fim repetir ind lt n repetir para j 2 at numcolunas mat_chvord incremento 2 ind lt ind 1 mat valores dimjanela ind v mat chvord il7 fim repetir repetir para 1 at dimjanela 1 v fdu mat valores j x mat valores dimjaneta x p Pior oPyy v fdu mat _valores j y mat _valores di mjanela y p Paa Pag Cap tulo 5 Formaliza o das Opera es
111. o restri o de integridade enunciada Entre as tabelas de Colheitas e Analises executou se uma OD de viola o de restri o de integridade com os mesmos objectivos da anterior Desta forma pretendia se verificar a exist ncia de valores diferentes no atributo NwmColh para os mesmos valores dos atributos Data e Dador de cada uma das tabelas Da execu o desta OD de viola o de restri o de integridade resultaram os PQD que se apresentam na Tabela 8 41 Cap tulo 8 Estudo de Caso de Limpeza de Dados 309 Tabela 8 41 Resultados da OD de viola o de restri o de integridade entre Colheitas e Analises T1 Data T1 Dador T1 NumColh T2 NumColh 139156 2001 06 05 139157 2001 06 05 139160 2001 06 05 139163 2001 06 05 139164 2001 06 05 139200 2001 06 19 189407 2001 08 28 189700 2001 12 04 Na tabela anterior as duas primeiras colunas cont m os valores das chaves primarias dos tuplos respectivamente das tabelas Codheitas e Analises onde residem as viola es restri o de integridade A terceira e quarta coluna cont m os valores em que h igualdade entre os atributos Data e Dador de ambas as tabelas As duas ltimas colunas apresentam as diferen as identificadas nos valores referentes ao n mero da colheita 7 e atributo NawmCo h em ambas as tabelas para o mesmo conjunto de valores formado pelos atributos Data e Dador de cada tabela Entre as
112. o deixando para o fim os mais gen ricos e de dif cil detec o Nas sec es seguintes encontram se os PQD identificados em cada NG Sec o 4 2 1 Problemas ao n vel do atributo Sec o 4 2 2 Problemas ao n vel do tuplo Sec o 4 2 3 Problemas ao n vel da rela o Sec o 4 2 4 Problemas ao n vel de m ltiplas rela es m ltiplas FD Os motivos que levaram ao desenvolvimento desta nova taxionomia quando j existem outras na literatura j foram devidamente explicados no Cap tulo 2 Sec o 2 6 Na identifica o dos problemas que comp em a taxionomia come ou se a partir do zero e ignorando os problemas inclu dos nas taxionomias relacionadas Este trabalho resultou numa nova taxionomia independente das j existentes uma vez que a sua cria o n o foi minimamente influenciada por aquelas A taxionomia cobre os problemas que afectam os dados representados num formato tabular e que se encontram pelo menos na primeira forma normal Exceptuando dados do tipo 80 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica multim dia que obrigam a um tipo especial de manipula o todos os outros tipos de dados e caracter string num rico data hora enumerado foram considerados na identifica o dos PQD Seguidamente inicia se a apresenta o da taxionomia com a exposi o dos PQD que ocorrem no NG mais elementar e ao n vel do
113. o eliminadas A Figura 7 16 ilustra as tr s itera es de execu o das sequ ncias de OD ocorridas no mbito do exemplo que acabou de ser descrito 254 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica M ltiplas Rela es Mono Fonte de Dados 1 it Atributo Valor Individual Dados Sujos Figura 7 16 Processo de execu o das OD por NG S custa deste m todo exaustivo e iterativo poss vel assegurar que todos os PQD existentes nos dados foram efectivamente solucionados e que as correc es efectuadas n o se traduziram involuntariamente na introdu o de novos problemas Face s OD de PQD especificadas pelo utilizador poss vel garantir que os dados se encontram de facto isentos desses problemas As formaliza es das OD apresentadas no Cap tulo 5 n o reflectem estas itera es de execu o que acabaram de ser descritas As formaliza es apenas reflectem a exist ncia de itera es em cada NG e n o entre NG diferentes Entendeu se que a apresenta o das formaliza es contemplando esta ltima situa o ficaria excessivamente complexa Em linhas muito gerais pode dizer se que o mbito de execu o das OD considera apenas os valores dos tuplos e atributos alterados pelas correc es entretanto efectuadas Para o efeito recorre se a um mecanismo do tipo join entre as rela es alvo de LD e as rela es auxiliares que armaze
114. o do intervalo de valores Viola o restri o de integridade Valor sobrecarregado Outros valores embutidos Valores extra x Valor incompleto Viola o de unicidade x Viola o de unicidade Valor duplicado Viola o restri o de integridade Exist ncia de sin nimos Dif representa es dos valores Valores alternativos abreviados Irregularidade Viola o de restri o de integridade Viola o de depend entre atributos Inconsist ncia entre m ltiplas tabelas Viola o restri o de integridade Cap tulo 4 Problemas de Qualidade dos Dados 91 Tabela 4 2 Taxionomia proposta versus outras taxionomias continua o Rahm e Do 2000 Kim et al 2003 M ller e Freytag 2003 Viola o de depend ncia Viola o de depend Valores mutuamente Viola o restri o funcional entre atributos inconsistentes de integridade Circularidade entre x x Z tuplos num auto relacio Tuplos duplicados Registos duplicados x Duplicados Dupl iguais Registos duplicados x Duplicados Dupl aproximados Registos duplicados x Duplicados Registos Dupl inconsistentes oe x Duplicados contradit rios Exist ncia de S Contexto z hom nimos incompleto Dif granularidades de Diferentes n veis de z x representa o agrega o Viola o de integridade Viola o integridade Viola o integr
115. o necess rios na detec o de heterogeneidade de unidades de medida Na realidade nem sequer se consegue executar esta ltima se n o existir uma opera o pr via de detec o de tuplos duplicados A detec o de heterogeneidade de unidades de medida entre os valores de dois atributos implica que se saiba que os respectivos tuplos representam a mesma entidade do mundo real Assim a detec o de tuplos duplicados tem de preceder a detec o de heterogeneidade de unidades de medida Naturalmente na detec o de duplicados n o podem ser usados os atributos que eventualmente possam estar afectados por heterogeneidade de unidades de medida Regra geral o tipo de atributos em causa e g representando valores monet rios temperaturas dist ncias n o usado na detec o de tuplos duplicados Este problema tamb m tem de ser manipulado antes da detec o das viola es Cap tulo 7 Modelo Proposto para a Limpeza de Dados 233 de restri o de integridade A n o identifica o e resolu o dos duplicados pode originar que sejam reportadas de forma redundante viola es de restri o de integridade Estas apenas surgem como consequ ncia da exist ncia de tuplos duplicados entre as rela es A opera o seguinte a ser executada envolve a detec o de heterogeneidade de unidades de medida A exist ncia deste PQD pode impedir a detec o da viola o de uma dada restri o de integridade ou causar a detec o de
116. o valor ou valores agregados que materializam a exist ncia de uma viola o de restri o de integridade A sem ntica subjacente opera o apresentada de seguida Algoritmo Detec o Viola o Restri o Integridade Baseada em SQL E seja dmit dm n O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos envolvidos na restri o de integridade assim definido C fc c usado na formula o da restri o de integridade A ce A ie CCA seja o a cardinalidade de C seja func agrega uma fun o de agrega o existente em SQL e g count sum avg seja Z1 a rela o que armazena o valor que constitui viola o restri o de integridade com o seguinte esquema Zi a AmsC1 gt Co in cio 21 Tay samit Fond 1 puso Y func _agrega c R gt lt R i Ram gt Pr2 R R2 p R 2am fim Notas Nesta formaliza o aplicam se as mesmas notas do que as apresentadas no mbito da formaliza o da OD de viola o de restri o de integridade baseada em SQL no contexto dos m ltiplos valores do atributo Sec o 5 3 2 3 No caso da OD n o implicar a realiza o de um produto cartesiano sobre R o que constitui a situa o mais usual este 22 R gt lt Pr2 R substitu do apenas por R Na detec o de viola o de restri o de integridade ao n vel da rela o pode ser necess rio recorrer a FDU e g em
117. oh v lt fdu ProrPy o lt fdu E Deore ut Oa t AAA LA R R amp R u uath Ug R RU ua UAU A cc U mtn t lt de tuplo T fim repetir fim 6 3 1 1 1 Valor incompleto Valor sobrecarregado Formaliza o Sint ctica CORRECT PQD ColunasAlvo DasTabelas DasBasesDados Usando ValorPr ximo UsandoCondi o PQD INCOMPLETE VALUE OVERLOADED VALUE Formaliza o Sem ntica A rela o que armazena os PQD e valores incompletos ou sobrecarregados detectados e Z1 cont m para cada um destes as diversas alternativas que os transformam em valores v lidos 2 2 que n o violam o dom nio No caso de existir apenas uma nica alternativa v lida esta utilizada na correc o do PQD Na situa o oposta 7 mais do que uma alternativa em fun o 174 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica da op o do utilizador especificada na OC a correc o ou n o se realiza o que significa que ser objecto de correc o manual ou ent o utilizada a alternativa v lida que apresenta menor diferen a com o valor inv lido em causa A diferen a analisada ao n vel do caracter entre ambos os valores No caso da menor diferen a corresponder a mais do que uma alternativa v lida n o efectuada qualquer correc o Nestes casos necess ria a interven o manual do utilizador Algoritmo Correc o Valor Incompleto
118. orienta o coaduna se perfeitamente finalidade com que o SmartClean foi desenvolvido no mbito deste trabalho de doutoramento 7 e materializar e permitir validar o modelo proposto de LD No futuro planeia se a implementa o deste modelo sob a forma de um Web Service Quem necessitar de detectar e corrigir PQD poder contratar este servi o de LD atrav s da Internet Extens o do modelo de LD desenvolvido para dados semi estruturados O modelo de LD desenvolvido encontra se vocacionado especificamente para dados representados no formato relacional A DC de problemas de qualidade em dados semi estruturados eg em XML envolve uma maior complexidade do que em dados estruturados e g no formato relacional A justifica o para isto encontra se na rigidez imposta pelos esquemas de dados associados s representa es estruturadas Nas representa es semi estruturadas h uma certa flexibilidade quanto ao que poss vel armazenat se o que dificulta a LD A LD representados em XML precisamente uma das reas que recentemente tem centrado a aten o de alguns investigadores desta comunidade Nesta perspectiva um desenvolvimento futuro envolver estender adaptar o modelo de LD proposto para dados representados num formato semi estruturado Alargamento do modelo de LD desenvolvido para tipos de dados complexos O modelo de LD desenvolvido encontra se limitado a valores cujo tipo de dados at mico ou elementar e em
119. origem de transforma es incorrectas e a refinar o processo de transforma es 3 5 1 2 Arktos Il O Arktos II Vassiliadis et al 2003 uma ferramenta gr fica baseada numa arquitectura para a modela o e execu o de processos de Extrac o Transforma o e Carregamento ETC destinados cria o de armaz ns de dados Um processo de ETC consiste numa sequ ncia de passos que extraem dados relevantes das fontes efectuam a sua transforma o para o formato pretendido procedem a sua limpeza e por ltimo executam o seu carregamento pata o armaz m de dados A arquitectura define um modelo conceptual para 7 o fluxo de dados que se estabelece desde as fontes at ao armaz m de dados e 77 a composi o das actividades sob a forma de grafo e respectivas sem nticas No modelo as actividades s o abstrac es l gicas das opera es f sicas executadas no processo de ETC Uma actividade constitui uma unidade at mica de trabalho representando um passo na sequ ncia de opera es do processo de ETC Uma vez que a finalidade de uma actividade efectuar processamento sob um fluxo de dados cada uma destas encontra se conectada a tabelas de entrada e de sa da de uma ou mais BD O modelo conceptual define os seguintes n veis de instancia o especializa o que suportam a representa o das actividades de ETC Q Meta modelo Este o nivel mais elevado de instancia o constituindo a forma mais gen rica de
120. partes dos diferentes atributos as primeiras tr s letras do primeiro nome s o concatenadas com as primeiras tr s letras do segundo nome seguidas pela concatena o dos quatro primeiros d gitos do c digo postal e terminando com a concatena o das tr s primeiras letras do apelido A adop o de uma chave seguindo esta sequ ncia pode ser justificada da seguinte forma os primeiros dois nomes s o usuais pelo que a probabilidade de ocorr ncia de erros nos primeiros caracteres reduzida da serem considerados os principais elementos discriminativos da chave de ordena o Tabela 3 1 Exemplo de chaves de ordena o C digo Postal Chave de Ordena o David Andr Loureiro 4415 206 DAVAND4415LOU David Andr Loreiro 4415 206 DAVAND4415LOR Davide Andr Loureiro 4415 DAVAND4415LOU David Jos Louren o 4415 206 DAVJOS4415LOU Ordenar os registos Os registos que fazem parte da tabela s o ordenados em fun o da chave criada no passo anterior Identificar duplicados Envolve deslocar uma janela de tamanho fixo sobre o conjunto de registos ordenados e realizar compara es entre estes para identificar os duplicados O tamanho ou dimens o da janela definido pelo utilizador tendo impacto directo nos duplicados identificados As compara es necess rias identifica o dos duplicados s o efectuadas apenas entre os registos que se encontram no interior desta janela Supondo que n o n
121. pode motivar que estes deixem de o ser Ao n vel t ctico a fraca QD influencia a qualidade das decis es As decis es dependem dos dados e como frequentemente uma s decis o obriga an lise de grandes quantidade de dados improv vel que todos possuam uma elevada qualidade Ao n vel estrat gico h necessidade de dados internos e externos para que seja poss vel definir a estrat gia de longo prazo A falta de dados completos relevantes actualizados e precisos acerca de clientes concorrentes e tecnologias pode constituir um obst culo defini o de uma estrat gia s lida Historicamente a exist ncia de PQD sempre foi uma realidade No entanto nos sistemas de informa o monol ticos do passado os dados eram manipulados em ambientes que proporcionavam um melhor controlo destes Com o surgimento das redes locais e da Internet os quais de natureza subjectiva e g a interpretabilidade dos dados Os defensores desta perspectiva advogam que estas dimens es tamb m s o importantes na an lise dos PQD Ambas as perspectivas s o apresentadas no Cap tulo 2 Nesta disserta o certos termos s o utilizados de forma indiferenciada Isto acontece com os termos atributo e campo representando ambos uma propriedade de um objecto ou entidade do mundo real O mesmo acontece com os termos plo e registo em que ambos correspondem a um n mero pr definidos de atributos ou campos representando um objecto ou entidade do mundo
122. podem envolver a invoca o a fun es de semelhan a definidas pelo utilizador e o uso de limiares de semelhan a que permitem distinguir os duplicados dos n o duplicados Noutro tipo de abordagem a detec o efectuada exclusivamente com base em fun es definidas pelo utilizador Hellerstein e a 1999 Estas fun es determinam o grau de semelhan a entre atributos individuais procedem sua combina o para formar um valor de semelhan a global ao n vel do registo e recorrem a limiares de semelhan a definidos pelo utilizador para concluir se dois registos s o ou n o duplicados Em ambas as abordagens especificar as situa es em que dois registos devem ser considerados ou n o duplicados pode revelar se uma tarefa altamente complexa O Independentes do dom nio Estes m todos n o requerem conhecimento espec fico do dom nio para efectuar a detec o de duplicados Em Monge e Elkan 1997 considera se que os registos s o compostos exclusivamente por sequ ncias de caracteres alfanum ricos e strings A detec o de registos duplicados efectuada com base em m tricas de an lise de semelhan a entre strings Ainda que atractivos face sua Cap tulo 3 Limpeza de Dados 51 independ ncia em rela o ao dom nio a precis o destes m todos n o atinge valores convincentes na identifica o dos duplicados O Mistos Uma forma de contornar a especifica o das regras e o desenvolvimento d
123. profundo agradecimento e reconhecimento vai obviamente para os meus orientadores Professora Doutora F tima Rodrigues e Professor Doutor Pedro Henriques pelo tempo que me dedicaram pela disponibilidade que sempre manifestaram pela capacidade cient fica que evidenciaram pelas cr ticas sugest es e correc es que me efectuaram pela orienta o que me concederam pela compet ncia e interesse que demonstraram e n o menos importante pelos incentivos que sempre me deram Professora Doutora F tima Rodrigues agrade o tamb m o financiamento da aquisi o de material inform tico necess rio realiza o deste trabalho de doutoramento Ao Professor Pedro Henriques agrade o tamb m pelo financiamento que concedeu s minhas desloca es a confer ncias sempre que eu o solicitei vi Professora Doutora Helena Galhardas docente do Instituto Superior T cnico pela disponibilidade que desde o primeiro momento em que foi contactada sempre mostrou pela colabora o prestada neste trabalho pelas valiosas cr ticas e sugest es que fez pelo tempo que me concedeu pela ced ncia de bibliografia e pelo interesse que demonstrou neste trabalho Ao Grupo de Engenharia do Conhecimento e Apoio Decis o GECAD do ISEP IPP na pessoa do seu Director Professor Doutor Carlos Ramos que me facultou o acesso aos meios inform ticos existentes nas instala es do referido grupo e financiou as minhas desloca es a confer
124. quatro primeiros atributos desta rela o formam em conjunto a chave estrangeira para a rela o TabelaEnvolida Os atributos C digoBD C digo Tabela e C digo Atributo formam a chave estrangeira para a rela o Atributo Em conjunto os cinco primeiros atributos formam a chave prim ria desta rela o Al m destes a rela o cont m ainda um outro atributo NrOpera oDetec o Este atributo armazena informa o sobre o n mero da OD que despoletou a presente correc o ao atributo a cada OD especificada pelo utilizador atribu do um n mero inteiro sequencial entre 1 e n que serve de identificador Esta informa o utilizada na reposi o do estado anterior realiza o das correc es efectuadas no seguimento dos PQD identificados pelas OD Por fim a rela o TuploEnvolvido armazena informa o sobre os tuplos que sofreram altera es como consequ ncia da execu o das OC O esquema desta rela o o que a seguir se apresenta TuploEnvolvido Nrltera o NrSubltera o C digoBD C digo Tabela NrSequencial ChavePrim riaTuplo NrOpera oDetec o TipoOpera o Tal como na rela o anterior o conjunto dos quatro primeiros atributos desta rela o formam a chave estrangeira para a rela o TabelaEinvolvida O atributo NrSequencial constitui um n mero inteiro sequencial iniciado em 1 para cada combina o dos atributos Nrltera o NrSubltera o C digoBD e C digoTabela O conjunto formado pel
125. que constituem viola o de depend ncia funcional juntamente com os valores de atm Todos os atributos s o origin rios de R in cio T lt T i aata Cond Z1 te ke tuplo T repetir enquanto t null sa Vc Tcount atr C1 yo ath count atr o A ANCO Ft Co z1 ue de tuplo U valor actualiz u atr Cap tulo 6 Formaliza o das Opera es de Correc o 189 max ocorr lt u count atr ue de tuplo U se u count atr lt max ocorr ent o repetir enquanto u null ve O cj u c A Aco u cy Aatr u aty R R R v v atr valor_actualiz R RU DA Velm Amato V am ue de tuplo U fim repetir fim se te de tuplo T fim repetir fim Nota Na express o em lgebra relacional assinalada com um asterisco a ordena o efectuada sob a forma descendente 6 5 2 Tuplos duplicados Formaliza o Sint ctica REMOVE DUPLICATE TUPLES DasTabelas DasBasesDados Defini oColunas UsandoAtribui es UsandoCondi o Formaliza o Sem ntica A rela o que resulta da respectiva OD permite agrupar os tuplos em fun o do cluster de duplicados a que estes pertencem semelhan a da OC de viola o de unicidade esta OC agrupa os tuplos por cluster de duplicados e em cada um destes excep o de um tuplo elimina todos os outros Esta elimina o pressup e que cada cluster composto por duplicados rigorosamente iguais entre si 7 e duplicados exactos Na elimina o dos
126. que d d representam os atributos que formam a sua chave prim ria seja atr um atributo que n o pertence chave prim ria de R e at E dn41 5dmtnt seja S uma rela o com o seguinte esquema S b 0 0 1 8 9 em que 6 6 representam os atributos que formam a sua chave prim ria seja atn um atributo que n o pertence chave prim ria de S e atr E b 11 6 s seja p o n mero de OD que incidem sobre atn e que na sequ ncia de OD antecedem uma dada opera o em atr seja 2 Z1 Z1 O conjunto de p rela es que cont m os PQD detectados em atr pelas opera es da sequ ncia de detec o que antecedem uma dada opera o sobre atn seja q o n mero de OD que incidem sobre atn e que na sequ ncia de OD antecedem uma dada opera o em atn seja Z Z2 Z24 O conjunto de q rela es que cont m os PQD j detectados em atn pelas opera es da sequ ncia de detec o que antecedem uma dada opera o sobre atn seja existe rela o nome rela o uma fun o que recebe o nome de uma rela o verifica se esta existe fisicamente ou n o na base de dados e devolve como resultado um valor l gico seja cond a condi o de selec o opcionalmente existente na OD com o objectivo de delimitar o seu mbito de aplica o 14 De acordo com o modelo proposto na detec o dos PQD as opera es especificadas pelo utilizador devem ser executadas segundo uma determinada orde
127. real No entanto como se est a manipular duplicados aproximados h a possibilidade dos registos serem erradamente classificados como duplicados i e falsos positivos A aplica o da transitividade nestes registos conduzir propaga o do erro e classifica o de outros registos como duplicados quando n o o s o Cap tulo 3 Limpeza de Dados 47 Este m todo encontra se formalizado nesta disserta o no mbito das opera es de detec o que conduzem identifica o de tuplos duplicados Cap tulo 5 Sec o 5 5 3 3 4 1 4 Algoritmo Fila de Prioridades A janela de compara es usada no m todo da vizinhan a ordenada possui uma dimens o fixa Se uma determinada entidade do mundo real est representada em in meros registos de uma tabela pode acontecer que alguns destes duplicados n o sejam detectados em virtude do n mero insuficiente de compara es Por outro lado se h poucos duplicados das entidades representadas na tabela ou mesmo nenhuns ent o est o a ser efectuadas compara es que n o s o necess rias O algoritmo fila de prioridades em ingl s priority queue algorithm Monge 2000 Monge e Elkan 1997 permite uma adapta o dimens o e homogeneidade dos potenciais duplicados identificados medida que a tabela vai sendo percorrida aumentando ou diminuindo a janela de compara es Para tal a janela de compara es de tamanho fixo substitu da por uma fila de priorid
128. real Por ltimo os termos rela o tabela e ficheiro s o tamb m usados indistintamente correspondendo a um conjunto de tuplos ou registos representando v rios objectos ou entidades do mundo real do mesmo tipo 4 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica sistemas de informa o passaram a poder interactuar entre si Os dados passaram a ser manipulados em ambientes bem mais turbulentos frequentemente sem a implementa o de mecanismos adequados que garantissem a sua qualidade A exist ncia de PQD acentuou se fortemente perante este novo panorama tecnol gico Face import ncia dos dados na actual sociedade da informa o e comunica o imperioso que os PQD sejam identificados e solucionados In meros projectos centrados nos dados falham por diferentes motivos mas a generalidade dos estudos apontam como principal causa a fraca QD English 1999 Actualmente come a a haver uma consciencializa o crescente da import ncia da melhoria da QD o que passa pela DC dos PQD Esta consciencializa o refor ada pela constata o de que quanto maior a qualidade maior o valor e utilidade dos dados 1 2 Problemas e Limita es das Actuais Solu es de Melhoria da Qualidade dos Dados A melhoria da QD implica a realiza o de dois tipos de actividades distintas 2 DC dos PQD existentes 77 altera o ao processo gerador desses dados de modo a eliminarem se
129. reconhe a a sua import ncia a qualidade do modelo de dados n o constitui uma preocupa o Naturalmente a qualidade deste modelo contribui para a exist ncia ou n o de certos problemas ao n vel dos valores dos dados e g numa rela o que se encontra na terceira forma normal n o poss vel existirem viola es de depend ncia funcional Fisicamente a BDD encontra se implementada em MySQL Nenhuma tabela desta BD possui chaves prim rias definidas No modelo relacional esta uma situa o pouco habitual Nalgumas situa es a exist ncia da chave prim ria o garante da inexist ncia de redund ncia nas tabelas e g definir os atributos CodPostal e LocPostal como chaves da tabela CodPostais impede que a Cap tulo 8 Estudo de Caso de Limpeza de Dados 273 mesma combina o de valores destes atributos possa ser introduzida em duplicado Como consequ ncia apesar dos relacionamentos entre as entidades que constam do modelo de dados apresentado na Figura 8 1 estes n o se encontram implementados na BDD sob a forma de restri es que assegurem a sua integridade referencial Para se ficar com uma ideia da dimens o da BDD na Tabela 8 1 apresenta se o n mero de tuplos que fazem parte de cada tabela Simultaneamente fornece se tamb m uma descri o sucinta do seu conte do Tabela 8 1 Informa o relativa a cada tabela da BDD Tabela Significado finalidade Analises 98341 An lises efectuadas aos pa
130. relacionamento necess rio recorrer implementa o de FDU para os solucionar Nestes problemas n o foi poss vel perspectivar uma OC que pudesse ser desde logo disponibilizada Ainda assim o SmartClean suporta de base a correc o da grande maioria dos PQD Quando se compara estas potencialidades de correc o com as dos prot tipos de refer ncia constata se que estas s o superadas Nesses prot tipos h v rios tipos de PQD cuja correc o n o suportada Outros prot tipos evidenciam potencialidades de correc o virtuais uma vez que a sua materializa o se encontra dependente da implementa o de FDU Quer a n vel de detec o quer a n vel de correc o o SmartClean disponibiliza um leque muito apreci vel de opera es prontas a usar na identifica o e resolu o dos PQD Nenhum outro prot tipo evidencia potencialidades similares 22 Naturalmente a correc o de qualquer PQD pode sempre ser efectuada por via manual e directamente pelo pr prio utilizador Cap tulo 10 Conclus o 343 Nalguns casos o SwartClean concede um suporte manipula o dos PQD que um misto de opera o predefinida e FDU Na tabela anterior estas situa es surgem representadas atrav s dos acr nimos OP FDU Quando a sem ntica da OD ou OC demasiado complexa para ser suportada pela opera o predefinida n o h outra alternativa que n o seja o recurso sua implementa o numa FDU Em todas os out
131. representa o das actividades A este n vel cada actividade descrita por diversos elementos Os de maior import ncia na caracteriza o da actividade s o e Nome Termo usado pata identificar cada actividade de forma nica e Tabela s de entrada Uma ou mais tabelas de entrada pertencentes a uma ou mais BD 58 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela de sa da Tabela de sa da na qual s o colocados os resultados produzidos pela actividade Sem ntica operacional Descri o declarativa da l gica subjacente actividade O formalismo de representa o usado uma linguagem declarativa de programa o em l gica denominada de LDL T sur e Zaniolo 1986 Q Template Este n vel especializa o anterior fornecendo um conjunto de actividades que suportam as tarefas mais usuais de ETC As potencialidades de extensibilidade permitem que actividades especificadas pelo utilizador possam ser adicionadas s existentes de base As actividades encontram se distribu das pelos seguintes grupos Filtros Verificam se determinada condi o respeitada ou n o pelos registos Os filtros que se encontram dispon veis s o viola o de chave prim ria viola o de unicidade viola o de integridade referencial exist ncia de nulo viola o de dom nio e sintaxe inv lida Transforma es un rias Deste grupo faz parte a actividade pu
132. representa o vectorial que inclui todas as combina es de n caracteres de uma string A representa o n gram de uma string corresponde a um vector n o nulo para cada substring de n caracteres que dela faz parte armazenando o n mero de vezes que cada substring ocorre O algoritmo de compara o de strings forma vectores n gram para ambas as strings subtraindo cada vector ao outro diferen a entre os dois vectores ent o comparada com um determinado limiar para determinar se h ou n o equival ncia entre as strings As m tricas baseadas em caracter funcionam bem a estimar a dist ncia entre strings que difiram devido a erros ortogr ficos ou a abreviaturas No entanto perdem precis o e o seu custo computacional aumenta consideravelmente perante strings de maior dimens o Bilenko e Mooney 2003 Por outro lado n o se comportam bem perante a transposi o de wens no interior da string e g Hipermercados Continente e Continente Hipermercados Gravano ef al 2003 As m tricas baseadas no espa o vectorial menosprezam a ordem pela qual os tokens surgem considerando as strings como um conjunto de Z0kens Como tal fornecem bons resultados mesmo perante a movimenta o de fens ou a inser o de novos tokens Estas m tricas demonstram ser muito eficientes produzindo bons resultados mesmo quando manipulam strings de grandes dimens es Bilenko e Mooney 2003 As m tricas podem ser usadas n o s para det
133. restri o de integridade com o seguinte esquema Z1 valor O tipo de dados de valor o mesmo do que o retornado pela ltima fun o no caso fdu da sequ ncia de FDU na OD in cio T lt Tatr Cond R v lt fdu p ProrP v lt fdu 2 PaPa w fdu 2 PoP iw se avalia_condic o p Pear gs verdadeiro entao Cap tulo 5 Formaliza o das Opera es de Detec o 129 Z1 lt Z1U tv fim se fim No caso da ltima fun o da sequ ncia de atribui es e fdu retornar uma estrutura de dados bidimensional ie uma matriz a formaliza o anterior sofre as altera es que a seguir se apresentam O que permanece inalterado relativamente formaliza o anterior encontra se representado sob a forma de retic ncias Algoritmo Detec o Viola o Restri o Integridade amp seja Z1 a rela o que armazena os valores dos atributos dos tuplos que constituem viola es restri o de integridade com o seguinte esquema Z1 4 in cio repetir para he at numlinhas v Z1 lt Z1 O ofAl 1 vf Al namcolunas fim repetir fim Nota Entre os atributos de Z1 podem encontrar se os que constituem a chave prim ria de R 5 4 Problemas ao N vel do Tuplo Nesta sec o apresenta se a formaliza o da OD do nico PQD que se manifesta ao n vel do tuplo 5 4 1 Viola o de restri o de integridade Formaliza o Sint ctica DETECT INTEGRITY CONSTRAINT VIOLAT
134. restri o de integridade com o seguinte esquema ZKa sAms Cp sl in cio se existe rela o Z1 falso ent o P Z1 asa Cp slo O cond R gt lt Tapsan R Uza pany Z1 i 1 senao Z1 lt La e cont R gt lt Z1 fim se fim Nota Na formaliza o anterior cond al m de representar uma eventual condi o de selec o que delimita a execu o da OD tamb m representa a condi o de que resulta a detec o da viola o da restri o de integridade O conte do de cond resulta do que se encontra especificado na cl usula where da OD A detec o de viola o de restri o de integridade ao n vel do tuplo pode envolver a utiliza o de FDU Nos casos em que isto acontece os valores dos atributos envolvidos na formula o da restri o de integridade podem ser passados como par metros obedecendo aos requisitos de cada FDU que se encontra na sequ ncia de atribui es especificada pelo utilizador na OD Vari veis e constantes tamb m podem ser par metros das fun es Como resultado cada fun o fdu retorna um valor at mico De seguida exp e se a formaliza o desta OD baseada em FDU Algoritmo Detec o Viola o Restri o Integridade Baseada em FDU in cio se existe rela o Z1 falso ent o Cap tulo 5 Formaliza o das Opera es de Detec o 131 P T lt Ta psami pesto cond RD aca w Ta psam Z1 1 1 sen o T Ta gee elo cont R gt lt Z1
135. retornar uma estrutura de dados bidimensional i e uma matriz a formaliza o inicial desta opera o sofre as seguintes altera es acrescentos Algoritmo Detec o Viola o Restri o Integridade amp seja Z a rela o que armazena os valores dos atributos que constituem viola es restri o de integridade com o seguinte esquema Z d d 5 5Byy 5 in cio repetir para Re at numlinhas v Z ZU AMO v A eumcolunas fim repetir fim Nota Entre os atributos de Z podem encontrar se os que constituem as chaves prim rias de algumas ou de todas as rela es envolvidas na restri o de integridade 2 e R etc 5 7 Conclus o Neste cap tulo foram apresentadas as formaliza es sint cticas e sem nticas das OD de todos os PQD inclu dos na taxionomia apresentada no cap tulo anterior A n vel sint ctico formalizou se uma linguagem que permite a especifica o de qualquer OD autom tica dos PQD que fazem parte da taxionomia A nivel sem ntico formalizaram se todas as opera es poss veis de serem disponibilizadas de base para a detec o dos PQD Fruto da sua diversidade e depend ncia do dom nio subjacente n o poss vel representar explicitamente a sem ntica inerente a todas as OD suscept veis de virem a ser executadas num cen rio de limpeza de dados Este aspecto particularmente not rio na detec o de viola es a restri es de integridade Nestes casos e na
136. s o definidos atrav s de descri es textuais Por mais cuidado que exista na sua elabora o estas descri es podem suscitar d vidas quanto ao seu verdadeiro significado mesmo quando acompanhadas de exemplos O uso de defini es formais apresenta se como uma solu o adequada para a especifica o clara e rigorosa dos PQD n o sendo sujeita a ambiguidades de interpreta o Al m da clareza e do rigor as defini es formais s o tamb m de maior utilidade uma vez que cont m informa o n o existente nas defini es textuais Uma defini o formal torna expl cito 2 que diz respeito a um determinado tipo de dados e g string i os meta dados necess rios detec o de um determinado problema e g o dominio do atributo 717 a express o matem tica que define objectivamente o PQD podendo ser traduzida para linguagem computacional o que permite automatizar a sua detec o e 7 a necessidade eventual de uma fun o que permita identificar o PQD e g a detec o de um erro ortogr fico obriga exist ncia de uma fun o de verifica o ortogr fica Nas sec es seguintes s o apresentadas as defini es formais para os PQD identificados em cada NG de acordo com o proposto em Oliveira ef al 2005c A apresenta o das defini es formais antecedida pela exposi o da nota o adoptada 4 4 1 Nota o Nesta sec o apresenta se a nota o que ser usada na defini o formal dos
137. se num conjunto de rela es e no estabelecimento de relacionamentos chave prim ria chave estrangeira entre estas Nos par grafos seguintes descreve se a finalidade de cada rela o bem como o esquema de dados subjacente A rela o BaseDados armazena o nome das BD envolvidas nas OC Esta rela o possui o seguinte esquema BaseDados C digoBD Descritivo O atributo C digoBD constitui a chave prim ria da rela o sendo um atributo de numera o autom tica que se inicia em 1 O atributo Descritivo cont m o nome das BD rela o Tabela armazena o nome das tabelas de cada BD envolvida em OC Esta tabela possui o seguinte esquema Tabela C digoBD C digo Tabela Descritivo O atributo C digoBD constitui a chave estrangeira para a rela o BaseDados C digo Tabela constitui um n mero inteiro sequencial iniciado em 1 para cada C digoBD Em conjunto estes dois atributos formam a chave prim ria desta rela o O atributo Descritivo cont m o nome de cada rela o que faz parte de uma BD A rela o Atributo armazena os nomes dos atributos das tabelas envolvidas em OC Esta tabela possui o seguinte esquema Atributo C digoBD C digoTabela C digo Atributo Descritivo Os atributos C digoBD e C digo Tabela formam em conjunto a chave estrangeira para a rela o Tabela C digo Atributo constitui um n mero inteiro sequencial iniciado em 1 para cada combina o de C digoBD e C digo Tabela Em conjunto estes tr s atribu
138. seja poss vel a execu o de qualquer outra OD em virtude dos problemas j detectados e das depend ncias existentes ou 77 todas as opera es terem sido executadas Quando a execu o das OD interrompida por um motivo ou outro s o reportados ao utilizador de uma s vez todos os PQD detectados dos diversos tipos Por sua vez este tamb m pode de uma s vez executar as ac es que conduzem sua correc o Desta forma diminui se ao n mero de interven es que o utilizador necessita de efectuar durante o processo de LD ze de DC Cap tulo 7 Modelo Proposto para a Limpeza de Dados 235 Ap s terem sido realizadas as correc es a execu o das OD reinicia se nos mesmos locais onde anteriormente tinham sido detectados PQD As opera es que tinham sido respons veis pela detec o dos problemas voltam a ser executadas com o intuito de garantir que estes foram efectivamente solucionados As OD da sequ ncia que eventualmente tenham ficado pendentes v o agora ser executadas No caso de serem detectados outros PQD o procedimento descrito no par grafo anterior volta a desenrolar se Note se que nalguns NG no caso atributo contexto do valor individual e tuplo o rein cio das OD apenas considera os valores nos quais anteriormente tinham sido detectados problemas Todos os atributos tuplos que j tinham sido analisados anteriormente e nos quais n o se detectou a exist ncia de problemas ficam exclu dos
139. si wincndanndadndausanddaddan ORAS ad andnandnanananicendoiendiwagilunuuancie 93 4 4 2 PROBLEMAS AO N VEE DOA TRIBUTO menepi e E a A antas AEA A tea duas 94 44241 Contexto do Valor Eadividual s str sait aire di a ir e a doa Dl a ic da Cc TS 94 A 4272 Contexto Mul Valor seses eee ee cuca qu Co in vans aan NEN EE EEst AEE SEO Aao SENON tect EEO SEARO donas cp 95 4 4 3 PROBLEM S AO NIVEL DO TUPL Os ssunasucnsison nna nnna iA i EE T T Eaa 95 4 4 4 PROBLEMAS AO N VEL DA RELACAO iscscsssssssssssssssesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesenenens 96 4 4 5 PROBLEMAS AO N VEL DE M LTIPLAS RELA ES FONTES DE DADOS memmesesememereese 97 4 5 COBERTURA DAS FERRAMENTAS DE LIMPEZA DE DADOS cssscssssesscesceeeeseccesscesceesncenseesees 99 4 5 1 PROT TIPOS DHINVESTIGA GCAO shox seagate canis ea SO ERO qem sena ee 100 4 5 2 FERRAMENTAS COMERCIAIS ain Ga 102 4 6 COBERTURA DAS FERRAMENTAS DE DATA PROFILING ccccccccccccesssssseeeeeeccccessssseceeeeeeeeeeees 105 xiv A T CONCLUS O 2 2 cutatedaaato ecitatateled edad E EREA EAE EEEE ETETETT 107 CAP TULO 5 FORMALIZACAO DAS OPERA ES DE DETEC O 109 BV IN TE RODUGAO 5cic5 cccc dsccdsdidcdcdcdedcacdedddecccccescaccacudeccccdessadeadudeccacdedonushnrsovestevoonsscnreevessevoonssvonnevessess 109 5 2 DEFINI ES GERAIS cecssecececececavesatecececesscesecavecececesecevevadchcoseeesonssbeshivsesessonssbnshivsssessbussbustsveseses 110
140. sin nimos e g picheleiro e canalizado num s resultaria em dois tuplos duplicados Como tal a solu o passa por manter apenas um dos tuplos eliminando os restantes Na elimina o dos tuplos levada em considera o a n o viola o da integridade referencial da BD Antes da elimina o de um tuplo os valores das chaves estrangeiras dos tuplos pertencentes s tabelas com as quais h um relacionamento e se referem chave prim ria do tuplo em quest o a eliminar s o actualizados para o valor da chave prim ria do tuplo sobrevivente A manuten o autom tica da integridade referencial encontra se dependente da exist ncia das respectivas restri es na BD 180 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Algoritmo Remo o Exist ncia Sin nimos amp seja w o n mero de rela es com as quais R se encontra relacionada seja B 6 6 O conjunto de atributos de que n o fazem parte da sua chave prim ria seja C o conjunto de atributos que formam a chave estrangeira de S assim definido C tc c faz parte da chave estrangeira de SA ce B e CCB in cio repetir para i lt 1 at dimens o vec sinonimos pu msm idcluster Carr vec _ sinonimos i v atr like Yvec sin onimos i Yo v v atr like vec _ sin onimos i Yo v atr like Yovec _ sin onimos i 21 te de tuplo T se t nullent o Uer Am Atr O ideluster t ideluster n atr vec _ sin
141. sobre o mesmo atributo ou conjunto de atributos de uma ou mais rela es estas s o executadas respeitando a ordem de especifica o do utilizador Na execu o de uma opera o este m dulo acede ao reposit rio onde se encontram os PQD detectados uma vez que apenas estes s o alvo de correc o Da execu o da opera o resultam actualiza es BD com o objectivo de solucionar os PQD detectados No Cap tulo 6 formalizou se um conjunto alargado de OC que de base suportam a generalidade dos PQD que comp em a taxionomia Este m dulo respons vel por suportar a execu o dessas OC Apesar da sua exist ncia a especificidade de certas OC e g correc o de uma determinada viola o de restri o de integridade pode implicar que se recorram a fun es definidas pelo pr prio utilizador Ap s a execu o das OC despoletado novamente a execu o das sequ ncias de OD nos mesmos pontos onde estas tinham parado anteriormente 7 e aquando da itera o anterior Desta forma reinicia se uma nova itera o de detec o e na eventualidade de serem detectados outros PQD tamb m de correc o Quando n o for detectado qualquer PQD no NG em quest o avan a se para a detec o dos problemas no n vel seguinte Caso se trate do ltimo NG este processo iterativo de detec o correc o dos PQD dado como conclu do A execu o das OD ou OC pode envolver a invoca o de fun es implementadas pelo pr prio u
142. stAnt Ant ob Onin sen o S S t tatr E VK SHS L 8 6 0 6 0 6 41 56 6 45 fim se te le tuplo T fim repetir fim 6 6 2 Heterogeneidade de unidades de medida Formaliza o Sint ctica CORRECT HETEROGENEITY OF MEASURE UNITS ColunasAlvo DasTabelas DasBasesDados Fonte TermosUniformiza o UsandoCondi o Formaliza o Sem ntica Da respectiva OD resultam duas rela es 7 e Z1 e Z2 onde se encontram os tuplos de R e nos quais h heterogeneidade de unidades de medida entre os atributos em causa O utilizador especifica qual a rela o R ou cujos valores ser o utilizados na homogeneiza o das unidades de medida usadas em ambas as rela es A correc o autom tica deste PQD envolve unicamente a actualiza o dos valores do atributo da rela o seleccionada com os valores que se encontram no atributo da outra rela o Dependendo de ser R ou a rela o de homogeneiza o s o usados os valores de Z1 ou Z2 Al m destas a OD tamb m pode ter originado as rela es Zln oheterog Z2n oheterog Onde se encontra informa o sobre os tuplos de R e nos quais a heterogeneidade de unidades de medida n o respeitada Previamente execu o desta OC estas situa es devem ser objecto de an lise por parte do utilizador que procede s correc es que entende necess rias Estas correc es s o importantes uma vez que a rela o Z1nioheterog OU Z2n oheterog dependendo de ser R
143. tabelas Dadores e Colheitas executou se uma OD de viola o de restri o de integridade com o objectivo de identificar se para os mesmos valores dos atributos Data e Dador de cada uma das tabelas os valores do atributo Abo de ambas as tabelas diferem A execu o desta OD n o culminou na detec o de qualquer PQD Ainda entre as tabelas Dadores e Colheitas executou se uma OD de viola o de restri o de integridade que visou identificar se os valores do atributo R de ambas as tabelas s o diferentes para os mesmos valores dos atributos Data e Dador de cada uma das tabelas Novamente da execu o da OD n o resultou a detec o de qualquer viola o a esta restri o de integridade Opera es de Correc o Na correc o das viola es de restri o de integridade detectadas entre as tabelas de Colheitas e Analises executou se a OC que a seguir se apresenta 310 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ON T1 Data TI Dador T1 NumColh T2 Data T2 Dador T2 NumColh FROM Colheitas T1 Analises T2 OF BDD SET T2 NumColh T1 NumColh Nota Apenas s o alvo desta OC os tuplos da tabela Analises em que o PQD foi detectado O valor do atributo NumColh definido no momento da colheita e registado na respectiva tabela 2 e Colheita Como tal considera se que este valor merece uma maior credibi
144. tomada de decis o Redman 2004 No entanto os dados nunca s o t o perfeitos como se esperaria e gostaria que fossem Kubica e Moore 2003 A fraca QD uma realidade sejam estes pertencentes a organiza es p blicas ou privadas Fisher e Kingma 2001 Nenhuma organiza o se encontra imune exist ncia de Problemas de Qualidade PQ nos seus dados Em virtude do princ pio lixo entra lixo sai a pouca QD influencia negativamente a informa o e o conhecimento que se conseguem obter Lee e a 20004 14 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Na realidade um dos maiores problemas que as organiza es enfrentam actualmente est relacionado com a pouca qualidade dos seus dados o que constitui um obst culo sua efectiva utiliza o Num n mero crescente de organiza es que consideram os dados como um dos seus activos mais importantes a op o por elevados n veis de QD constitui um investimento estrat gico para que se preserve o valor deste activo Missier e a 2003 Apenas se conseguem alcan ar vantagens competitivas a partir dos dados quando estes possuem um elevado n vel de qualidade Assim a QD constitui um aspecto cr tico a ter em conta na gest o dos sistemas de informa o Apesar da sua import ncia e valor a QD normalmente negligenciada Lopes e Babbitt 1999 Numa perspectiva de investiga o a QD tem sido objecto de estudo em dive
145. totalidade dos tuplos das rela es envolvidas independentemente de onde tinham sido 246 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica detectados os PQD As correc es efectuadas podem inadvertidamente ter introduzido novos problemas do tipo em quest o entre os tuplos das rela es e g a correc o de um problema de sin nimos pode introduzir um novo problema de sin nimos Somente considerando a globalidade dos tuplos poss vel assegurar que de facto n o existem problemas do tipo em quest o Caso a sequ ncia de depend ncias envolva mais do que uma OD de um dado tipo e g viola o de restri o de integridade heterogeneidade de unidades de medida a execu o destas feita obedecendo ordem pela qual foram especificadas pelo utilizador Uma OD de um dado tipo apenas executada quando da execu o da opera o anterior do mesmo tipo n o resultar a identifica o de qualquer PQD O motivo pelo qual se adoptou esta abordagem encontra se explicado no ltimo par grafo da sec o anterior 7 4 2 Execu o por N vel de Granularidade A execu o das OD obedece sequencia o por NG apresentada na Sec o 7 3 1 Assim as primeiras opera es a serem executadas referem se ao NG do atributo enquanto que as ltimas dizem respeito ao NG multi rela o de diferentes fontes de dados O in cio da execu o das OD relativas ao NG seguinte s ocorre quando t
146. tuplo da rela o clientes cont m o valor 5700 no atributo c digo postal sendo este inexistente na rela o c digos postais O Tuplos duplicados A mesma entidade ou objecto do mundo real encontra se representada em diferentes rela es semelhan a do que acontece ao n vel da rela o a classifica o de dois tuplos como sendo duplicados pode ainda ser mais detalhada em fun o do que a seguir se apresenta Para ilustrar convenientemente as situa es Cap tulo 4 Problemas de Qualidade dos Dados 87 suponha se a exist ncia das rela es centes e clientes ambas com esquema yr cliente nome morada nr identifica o fiscal e Duplicados iguais excep o dos valores dos atributos que constituem a chave prim ria de cada uma das rela es caso estas existam todos os outros valores s o rigorosamente iguais e g O tuplo chentes1 10 Ant nio Carlos Carvalho Rua do Sol 123 205723467 um duplicado exacto do tuplo chentes 72 Ant nio Carlos Carvalho Rua do Sol 123 205723467 e Duplicados aproximados Ainda que existam diferen as entre os valores de alguns atributos estas n o s o significativas que impe am a classifica o dos dois tuplos como sendo duplicados e g o tuplo clientesT 10 Ant nio Carlos Carvalho Rua do Sol 123 205723467 um duplicado aproximado do tuplo chentes2 72 Ant nio C Carvalho Rua do Sol 123
147. tuplos levada em considera o a n o viola o da integridade referencial da BD Antes da elimina o de um tuplo os valores das chaves estrangeiras dos tuplos pertencentes s tabelas com as quais h um relacionamento e se referem chave prim ria do tuplo em quest o a eliminar s o actualizados para o valor da chave prim ria do tuplo sobrevivente A manuten o autom tica da integridade referencial encontra se dependente da exist ncia das respectivas restri es na BD 190 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica def Algoritmo Remo o Tuplos Duplicados E seja idcluster o atributo de Z1 que identifica o cluster de duplicados a que cada tuplo detectado como duplicado pertence seja wo n mero de rela es com as quais R se encontra relacionada seja B 6 41 6 4 O conjunto de atributos de que n o fazem parte da sua chave prim ria seja C o conjunto de atributos que formam a chave estrangeira de S assim definido C tc c faz parte da chave estrangeira de SA ce B ic CCB incio T Mideluster cond Z1 t ke tuplo T repetir enquanto t null VT ra Ren Redd 4 veo Ren in Tideluster t idetuster R gt lt Z1 ue de tuplo U ve u ue de tuplo U repetir enquanto u null repetir para ie 1 at w MG ii hres ES S Si X x de tuplo X repetir enquanto x null XG Va XC VA Si I da Orb x de tuplo X f
148. ua Uam Uam Ulmin t lt le_tuplo T fim repetir fim Nota As atribui es atrib s o expressas em fun o dos atributos de C Na correc o de viola o de restri o de integridade ao n vel da rela o tamb m pode ser necess rio recorrer a FDU Nesta situa o o conjunto de valores de cada atributo necess rio correc o do PQD pode ser passado como par metro de acordo com os requisitos espec ficos de cada FDU que consta da sequ ncia de atribui es O conjunto de valores de cada atributo prov m dos tuplos envolvidos no PQD detectado 7 e todos os tuplos de R ou apenas os que constam de Zi As fun es tamb m podem receber outros par metros como vari veis e constantes Como resultado da sua execu o cada fun o retorna um valor at mico ou uma estrutura de dados e g um vector uma matriz A ltima fun o da sequ ncia de atribui es na formaliza o seguinte representada por fdu obrigatoriamente retorna uma estrutura de dados bidimensional e uma matriz Cada coluna da matriz cont m valores que actualizam um dos atributos envolvidos na correc o da viola o da restri o de integridade na formaliza o seguinte representados por cy C 2 A ordem dos valores nas linhas da matriz necessita de ser a mesma da considerada na extrac o dos valores dos atributos Este um requisito a que a Cap tulo 6 Formaliza o das Opera es de Correc o 195 matriz tem de
149. uma suposta viola o a uma restri o de integridade A ltima opera o a ser executada a de detec o de viola o de restri o de integridade Para que sejam detectadas as viola es que efectivamente existem e n o sejam reportadas supostas viola es que na pr tica at n o o s o necess rio que todos os outros anteriores problemas tenham sido identificados e solucionados Em cada tipo de PQD e g viola o de integridade referencial exist ncia de sin nimos pode ser especificada mais do que uma OD Nesta situa o perante a inexist ncia de rela es e atributos comuns entre as OD a sua execu o efectuada em simult neo uma vez que pertencem a sequ ncias de depend ncias de execu o distintas Quando h rela es e atributos comuns nas OD a sua execu o poder ter de ser efectuada seguindo uma determinada ordem A ordem considerada a que corresponde sequ ncia de especifica o das opera es por parte do utilizador Em fun o da sem ntica inerente a cada opera o e das preced ncias que possam existir entre estas compete ao utilizador sequenci las de modo a que a sua execu o possua um significado l gico Apesar do utilizador especificar as OD em fun o da ordem de execu o desejada tal n o significa que estas sejam literalmente executadas de forma sequencial Em fun o das rela es e dos atributos sobre os quais incidem as OD que comp em a sequ ncia de depend nci
150. usado para interagir com o utilizador Nos ambientes que n o s o gr ficos recorre se a linguagens declarativas para especificar as opera es de LD Os resultados da LD s o colocados em tabelas ou ficheiro competindo ao utilizador proceder sua an lise Potencialidades de anula o Possibilidade de anular uma opera o caso os seus efeitos se mostrem indesej veis Execu o incremental Possibilidade de executar o processo de LD por incrementos Caso haja necessidade de voltar a executar a sequ ncia de opera es de LD ap s uma execu o desta esta n o necessita de o ser na integra A sequ ncia pode ser executada apenas a partir de um determinado ponto e aplicar se unicamente aos tuplos que se encontrem numa determinada situa o 7 e obede am a uma determinada condi o Defini o da sequ ncia de execu o das opera es Forma de defini o da sequ ncia de execu o das opera es de LD Dependendo da ferramenta de LD a sequ ncia de opera es definida manualmente pelo utilizador ou automaticamente pela pr pria ferramenta Os resultados apresentados na tabela permitem tecer os seguintes coment rios Q Q q Q Todos os prot tipos permitem aceder a BD relacionais uma vez que se trata do modelo de representa o de dados que maior divulga o possui actualmente A maioria dos prot tipos denota preocupa es a n vel de optimiza o tendo adoptado t cnicas que
151. valores O Existe uma rela o CodigosPostais cuja finalidade armazenar c digos postais e respectivas localidades No entanto esta mesma informa o encontra se armazenada na rela o Dadores A justifica o a seguinte o mesmo valor de c digo postal pode estar associado a diferentes localidades logo esta tamb m tem de ser armazenada na tabela Dadores Se apenas fosse armazenado o c digo postal nesta tabela n o seria poss vel saber qual a localidade do dador a n o ser que existisse apenas uma localidade para o c digo postal em quest o No entanto esta forma de organiza o introduz redund ncia e eventualmente at inconsist ncia nos dados Uma correc o efectuada na tabela CodigosPostais n o se reflecte na tabela Dadores A inclus o de um atributo num rico que funcionasse como identificador nico de cada tuplo z chave prim ria em C digosPostais teria permitido que o relacionamento entre ambas as tabelas pudesse ser estabelecido com base neste Desta forma garantidamente n o existiriam os referidos problemas de redund ncia e inconsist ncia nos dados Face a estas observa es n o se consegue vislumbrar uma justifica o para o modelo de dados subjacente BDD ter sido constru do desta forma que n o seja a de uma concep o deficiente Recorde se que no mbito deste trabalho de doutoramento as preocupa es com a qualidade centram se unicamente ao n vel da inst ncia valor dos dados Ainda que se
152. vel nos metadados de uma BD n o suficiente para concluir acerca do seu conte do Por vezes o nome do atributo muito telegr fico sen o mesmo opaco e n o possui qualquer significado e g atribl pelo que nada se pode concluir quanto ao que armazena Por outro lado a especifica o do que se 318 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica considera um Problema de Qualidade de Dados PQD e a forma de como o solucionar s o tamb m tarefas que dependem do utilizador No exemplo dado anteriormente o utilizador tem de especificar o que considerado uma viola o de sintaxe e uma viola o de dom nio ao c digo postal Para os problemas de sintaxe e de dom nio detectados necess rio que o utilizador especifique a forma de os corrigir automaticamente caso esta exista Por estes motivos a especifica o das opera es de DC por parte do utilizador algo de inultrapass vel apesar de constituir uma tarefa altamente trabalhosa Em suma o utilizador necessita de especificar os problemas que pretende detectar a forma de os detectar bem como o modo de os corrigir A abordagem seguida nos prot tipos de investiga o e nas ferramentas comerciais actualmente existentes passa pela especifica o das opera es de DC ao n vel do esquema dos dados As opera es s o especificadas com base nos nomes dos atributos das tabelas e das BD Esta mesma abordagem foi adoptada no
153. virtude da complexidade inerente OD Nestes casos o conjunto de valores de cada atributo da rela o que se encontra envolvido na formula o da restri o de integridade pode ser fornecido como par metro respeitando os requisitos de cada FDU presente na sequ ncia de atribui es especificadas na OD Vari veis e constantes tamb m podem ser fornecidos como par metros das fun es Exceptuando a ltima fun o ae fdu que obrigatoriamente retorna um valor at mico representativo do problema detectado todas as outras podem retornar um valor at mico ou uma estrutura de dados e g um vector uma matriz A formaliza o da detec o deste PQD envolvendo FDU a seguir exposta 144 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Algoritmo Detec o Viola o Restri o Integridade Baseada em FDU seja Z1 a rela o que armazena o valor que constitui viola o restri o de integridade com o seguinte esquema Z1 valor O tipo de dados de valor o mesmo do que o retornado pela ltima fun o no caso fdu da sequ ncia de FDU na OD in cio T Ta psam C1 lo cond R v lt fdu p PiP v lt fdu 2 Poo oD v eftu 2 PoP jw se avalia _ condi o verdadeiro ent o Bey Peo aee Z1 lt Z1 U fim se fim Nota O conjunto de todos os valores dos atributos envolvidos no caso T constitui um par metro de uma ou mais f
154. 365 BS ORDENA O Lakatinanad nannunnnunununnnUnununnnUnununnnunn el solado da A 365 REFERENCIAS BIBLIOGRAFICAS 367 xix NDICE DE FIGURAS Pe dee elos ETOD nn A i ag ee en adage wad haa aoe veda hea an 24 Figura 3 1 fanela deslizante ia ia atear da dead fa DS na 45 Figura 4 1 Estrutura de organiza o dos dados segundo o modelo relacional s 79 Figura 4 2 Valor de um atributo num tuplo sms do deita Eure do neto Foi uia 80 Figura 4 3 rvore de decis o para identifica o dos PQD que ocorrem no valor individual do AADU nas anaa tric scala aca aoc aa 81 Figura 4 4 Valores de um atributo em m ltiplos tuplos ss sssesssesssesssesseesreesseesstessessseesereseeeneesnress 81 Figura 4 5 rvore de decis o para identifica o dos PQD que ocorrem nos v rios valores de Um atti butos as qu e iaria sine o A aa SEAE aE eSEE e E SE Aa 82 Figura 4 6 Valores dos atributos de um tuplo ssesesssersssreessessressresseeeseeesetuntesntesnresreessrenereneenresneness 82 Figura 4 7 rvore de decis o para identifica o do PQD que ocorre ao n vel do tuplo 83 Figura 4 8 Valores dos atributos em m ltiplos tUplOs aiitegiontaiudedienBasuladinavtaieojtnatin s 83 Figura 4 9 rvore de decis o para identifica o dos PQD que ocorrem ao nivel da rela o 84 Figura 4 10 Valores dos atributos em m ltiplos tuplos de m ltiplas rela es de uma ou malis
155. 4m n O conjunto de atributos de R seja C o conjunto de atributos de que atn depende funcionalmente assim definido C fc atr depende funcionalmente de cA ce A ie CCA seja o a cardinalidade de C seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de Re os respectivos valores que constituem viola es depend ncia funcional existente com o seguinte esquema Z1 dy AmsC15 5 o ath inicio Z1 lt a pees e Coat Oond R gt lt Te co Pri R PLR tc R 2 AR 1 ER 265A AR Latr R2atr PR RD fim 5 5 2 Circularidade entre tuplos num auto relacionamento Formaliza o Sint ctica DETECT EXISTENCE OF CIRCULARITY ColunasAlvo DasTabelas DasBasesDados Defini oColunas UsandoCondicao Formaliza o Sem ntica A detec o deste PQD envolve desenvolver todas as sequ ncias poss veis de tuplos que resultam do auto relacionamento Assim come a se por identificar os tuplos que constituem o ponto de partida das sequ ncias resultantes dos auto relacionamento Para cada um destes tuplos expande se a sequ ncia de auto relacionamento o m ximo poss vel Para o efeito utilizam se os valores da chave prim ria e da chave estrangeira de cada tuplo custa dos quais se estabelece o auto relacionamento para sucessivamente ir desenvolvendo essa sequ ncia Este desenvolvimento interrompido quando se alcan ou um tuplo cuja chave estrangeira n o estabelece um Cap tulo 5 Fo
156. 5 2 1 SINTAXE DA LINGUAGEM DE ESPECIFICA O x intao nei 110 5 2 2 SEM NTICA DAS OPERA ES DE DETEC O quis cturii incas di na 114 5 3 PROBLEMAS AO NIVEL DO ATRIBUTO soiiiecctecicteicielitele adiada dai a ad 116 5 31 CONTEXTO DO VALOR ENA 116 SINEVA eni faltar eai EE E EEE E EEEE dian tonne AE ER 116 5 3 1 2 Viola o de sintaxe dom nio cccccscsesssssssesessessssesessessssessssesessesesesecsesesscsessesesseseeseseessseeneaeens 117 5 31 21 Valor incompleto asas R RAA RNR RA R TAA ER 119 5 3 1 2 2 Valor sobrecarregado issena o ia a iaa a ETE N 121 5 3 1 3 Erro OftO talc snieni ETES SEE ESEESE 123 5 3 2 CONTEXTO MULTE VALOR toe nasiaote ao raiet teena SANABRIA lago Eaa EELE dedo der E EAER eden EEEE 125 532 L Existencia de sSiNoNiN OS sex sss estanstsestenees steasstaastanina a ne EE a ee Aa a seda cus 125 DIA NO aC de unicidade aa aE E E EAE EER 126 9 3 23 Viola o det sticao de mteonidade inniinn aia E AEE E AREARE 127 5 4 PROBLEMAS AO N VEL DO TUPLO sa E Saia ad 129 5 4 1 VIOLA O DE RESTRI O DE INTEGRIDADE cant a pai TT ma menmen 129 5 5 PROBLEMAS AO N VEL DA RELA O ra ra ar arae OP I Erir RENo EPE SESE Ee Saros eeestis 131 5 5 1 VIOLA O DE DEPEND NCIA FUNCIONAL wiscssssssscssssscscscscscscscscscevevsvssevassvasavasavesasesasevasasaacessceseseeees 131 5 5 2 CIRCULARIDADE ENTRE TUPLOS NUM AUTO RELACIONAMENTO csssssssssesseesscessesseneenseeseeseensees 132 Des EUPLOS TUIPLIC ADO Gis ora ates 136 5 5 4 VIOL
157. 94065934 ELECTROTECNICOS ELECTROTECNICOS 0 98222226 SEGURANCA SEGURANCA 0 97037035 MACANICOS MECANICOS 0 8666667 SAUDE SAUDE 0 8933333 VETERINARIOS VETERINARIOS 0 9777778 SERVICO SERVICO 0 952381 PEDIATRICA PEDIATRICA 0 9155556 SECUNDARIO SECUNDARIO 0 97333336 282 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O significado de cada coluna da tabela o mesmo do que o fornecido aquando da apresenta o da Tabela 8 3 Mais uma vez o grau de semelhan a resulta da m trica Jaro Winkler utilizada na OD Opera es de Correc o A correc o das viola es de sintaxe detectadas envolveu 2 a substitui o do segundo h fen por um ponto 77 a supress o dos dois primeiros d gitos do ltimo conjunto ap s o segundo h fen quando este composto por quatro d gitos Para o efeito executou se a OC a seguir apresentada CORRECT SYNTAX VIOLATION ON CodProfissao FROM Profissoes OF BDD BY TRANSFORMING d d d d d d INTO 1 2 3 BY TRANSFORMING d d d d d d d d INTO 1 2 4 A correc o dos erros ortogr ficos detectados no atributo DesProfissao envolveu a sua substitui o pelos valores semelhantes identificados no dicion rio Esta OC semelhante apresentada anteriormente para o atributo DesignacaoConciusao da tabela Conclusoes 8 3 1 7 Tabela Colheitas Ope
158. A O DE RESTRI O DE INTEGRIDADE tt agi pair 142 5 6 PROBLEMAS AO N VEL DE M LTIPLAS RELA ES FONTES DE DADOS ccceeeeeseeeeeeeeees 145 5 61 HETEROG NEIDADE DE SINTA KES rri e i a anaE RE R ARRERA 145 5 6 2 HETEROGENEIDADE DE UNIDADES DE MEDIDA W eeseeseeeseeeeeesseseseeeesescseeeeeseneneeesaeaeseeeeaeaeeeeeeeeees 146 5 69 EXIS TENGINDE SINONIMO S reae ienaa ee ERE EEEE E E E R E 149 56A EXIST NCIA DE HOMONIMOS sgs xo tus sro gi ea dera gpa Sl i EEEE ERA EE EA 151 5 6 5 DIFERENTES GRANULARIDADES DE REPRESENTAGAO ssssssssssssssssscssesscessesscncessessesscnseescesseseensees 152 5 6 6 VIOLA O DE INTEGRIDADE REFERENCIAL ccscscssssessessesessescssescsscscsscsescseeecseceesscsessssesesseeesseeeessenens 153 5 6 7 PUPLOS DUPLICADOS Nresr ioiii tons decano devida pas ana de ceia papas aaa qu quandu qua E ces dna erga 154 5 6 8 VIOLA O DE RESTRI O DE INTEGRIDADE wuvcsccssssssessesessesessescscsesscsesssseeecsececsecsesssseeesseeecseeecseeaees 156 XV 57 CONCLUS O e222ncadetedetetetsducadedeastetetsdudededecededatedudeeescavssncecesssesea vavonucceaceesssesvonsscess eseseavescesesesests 159 CAP TULO 6 FORMALIZA O DAS OPERA ES DE CORREC O 161 GA INTRODUGAO soii si cbcdidcicccdedeccdedddcccdcccscccsecndeccdccessscsedddcccececdenunvonsseesesevveusvonssceessevveusvoosscesvests 161 62 DEFINI ES GERAIS cscivecececesecovaccvecececdsscecedavececevesecevedavececesdeeceuedddgesedsbosushensesesssveonnsho
159. A Framework For Analysis of Data Quality Research IEEE Transactions on Knowledge and Data Engineering 7 4 1995 pp 623 640 Wang R Lee Y Pipino L e Strong D 1998 Manage your Information as a Product S oan Management Review 39 4 1998 pp 95 105 Wang R Madnick S Harris W e Allen T 2003 An Information Product Approach for Total Information Awareness In Proceedings of the IEEE Aerospace Conference Montana EUA 2003 pp 3005 3020 Refer ncias Bibliogr ficas 383 Wang R Y e Strong D 1996 Beyond Accuracy What Data Quality Means to Data Consumers Journal of Management Information and Systems 124 1996 pp 5 34 Winkler W E 1999 The State of Record Linkage and Current Research Problems In Szatistics of Income Division Internal Revenue Service Publication R99 04 Dispon vel em http www census gov std papers pdf rr99 04 pdf no dia 30 05 2007 as 22 50 Winkler W E 2003 Data Cleaning Methods In Proceedings of the ACM Workshop on Data Cleaning Record Linkage and Object Identification Washington EUA Agosto de 2003 pp 1 6 Winkler W E 2004 Methods for Evaluating and Creating Data Quality Information Systems 29 7 2004 pp 531 550 WinPure 2007 WinPure Data Cleaning Made Easy Dispon vel em http www winpute com CAM2007 pdf no dia 06 04 2007 s 22 50 WizSoft 2007a WizWhy White Paper Dispon vel em http www wizsoft co
160. Cap tulo 5 Formaliza o das Opera es de Detec o 125 repetir para j lt 1 at numlinhas plvs_semelhs Z1 lt Z1U t a t 4 palavra plos_semelhs j 1 plvs_semelhs j 2 fim repetir fim se fim se fim repetir te de tuplo T fim repetir fim 5 3 2 Contexto Multi Valor Nesta sec o apresenta se a formaliza o das OD dos PQD que se manifestam ao n vel dos v rios valores do atributo 5 3 2 1 Exist ncia de sin nimos Formaliza o Sint ctica DETECT EXISTENCE OF SYNONYMS ColunasAlvo DasTabelas DasBasesDados Defini oDicion rio UsandoCondi o Formaliza o Sem ntica A detec o da exist ncia de sin nimos envolve verificar se os valores que constituem os pares resultantes de cada cluster de sin nimos que constam de um determinado dicion rio definido pelo utilizador existem simultaneamente no atributo em quest o 7 e atr No caso de se detectar a sua exist ncia est se perante um problema de sin nimos Na rela o que resulta desta OD ze Z1 al m das chaves prim rias dos tuplos onde existem sin nimos no atributo os respectivos valores tamb m s o armazenados assim como o cluster de sin nimos a que pertencem Nesta rela o um dado valor apenas armazenado uma nica vez apesar das m ltiplas situa es em que possa ser identificado como sin nimo de outros valores Algoritmo Detec o Exist ncia Sin nimos E seja Xa rela o onde se encontra armazena
161. Cobertura dada por ferramentas comerciais de LD aos PQD ETI Data Trillium dfPower HI Cleanser Quality Quality Quality Detec o NS Valor em falta Correc o NS Detec o OP Viola o de sintaxe Correc o OP Detec o NS Erro ortogr fico Correc o NS Detec o Opts Correc o Ops Viola o de dom nio Detec o NS Viola o de unicidade Correc o NS Cap tulo 4 Problemas de Qualidade dos Dados 103 Tabela 4 4 Cobertura dada por ferramentas comerciais de LD aos PQD continua o Exist ncia de sin nimos Detec o ETI Data Cleanser Trillium Quality dfPower Quality HI Quality Correc o Viola o de restri o de integridade Detec o Correc o Viola o de depend ncia funcional Detec o Correc o Circularidade entre tuplos num auto relac Detec o Correc o Tuplos duplicados Detec o Correc o Exist ncia de hom nimos Detec o Correc o Dif granularidades de representa o Detec o Correc o Viola o de integridade referencial Detec o Correc o Heterogeneidade de sintaxes Detec o Correc o Heterogeneidade de unidades de medida Notas Detec o Correc o 1 Apenas em atributos que armazenam elementos referentes a
162. D A apresenta o dos principais m dulos termina com o que constitui o motor de execu o das Opera es de Correc o OC A descri o do modelo proposto finda com a apresenta o do diagrama de sequ ncia respectivo Por fim apresentada uma descri o sucinta do prot tipo desenvolvido baptizado com a designa o SmartClean Este prot tipo constitui uma implementa o fiel da arquitectura apresentada nas sec es anteriores e consequentemente do modelo que se defende para a LD 7 1 Introdu o Neste cap tulo descreve se pormenorizadamente o modelo que se prop e e defende para a LD Este cap tulo surge na sequ ncia natural dos dois anteriores nos quais foram apresentadas as formaliza es sint cticas e sem nticas das opera es de LD e OD e OC O modelo que se prop e para a LD articula a execu o integrada de ambos os tipos de opera es 7 DC que nos dois cap tulos anteriores surgiram separadamente luz do modelo os dois tipos de opera es encontram se intimamente relacionados sendo executados em altern ncia De facto sempre que um problema identificado este de imediato solucionado uma vez que pode ocultar ou redundar na detec o de outros PQD Para cada tipo de PQD o modelo estabelece qual a sua 16 O termo opera o de correc o possui o seguinte significado opera o especificada pelo utilizador com o prop sito de solucionar PQD de um determinado tipo Cada correc o po
163. D de viola o de sintaxe no atributo Profissao recorreu se mesma OC com as devidas adapta es que tinha sido definida para a correc o das viola es de sintaxe no atributo CodProfissao da tabela Profissoes Opera es de Detec o nova itera o Nesta nova itera o apenas as OD respeitantes aos atributos onde tinham sido identificados PQD voltaram a ser objecto de execu o Mais especificamente o seu mbito restringiu se apenas aos valores nos quais tinham sido detectados PQD Da execu o destas opera es apenas a referente detec o de viola es de dom nio no atributo CodPostal voltou a reportar a exist ncia de 37 problemas Isto significa que das 101 viola es inicialmente detectadas a OC anteriormente realizada solucionou 64 problemas O motivo pelo qual as 37 viola es de dominio subsistitam no atributo CodPostal e o modo como foram manualmente solucionadas s o os mesmos do que os j descritos no mbito do atributo CodPostal da tabela CodigosPostais 8 3 1 9 Tabela Analises Opera es de Detec o Na Tabela 8 22 encontram se as OD efectuadas no contexto do valor individual dos atributos da tabela Analises A execu o das OD de valor em falta nos quatro atributos n o resultou na detec o de qualquer PQD Igualmente as OD de viola o de dom nio tamb m n o culminaram na identifica o de problemas A execu o destas opera es visou identificar as viola es ao dom nio dos atrib
164. D nos tuplos onde esta tinha ficado pendente A Figura 7 11 representa esquematicamente o processo de execu o das OD que acabou de ser descrito As diversas itera es que eventualmente possam ser necess rias at resolu o de todos os PQD tamb m se encontram representadas na figura Viola o de Restri o de Integridade 1 Viola o de Restri o de Integridade 2 a Viola o de Restri o de Integridade n i Figura 7 11 Processo de execu o das OD no contexto do NG do tuplo Cap tulo 7 Modelo Proposto para a Limpeza de Dados 243 Com as devidas adapta es este processo exactamente o mesmo do que o exemplificado passo a passo na Sec o 7 4 1 1 7 4 1 4 Rela o Face ao exposto na Sec o 7 3 2 4 as depend ncias entre as OD permitem que se estabele am as seguintes sequ ncias de execu o 7 viola o de depend ncia funcional tuplos duplicados e viola o de restri o de integridade ou 77 circularidade entre tuplos num auto relacionamento tuplos duplicados e viola o de restri o de integridade Perante os PQD que possam ser detectados por uma OD neste NG n o h qualquer outra opera o subsequente da sequ ncia que possa ser executada Contrariamente ao sucedido nos NG anteriores neste n vel n o podem ficar PQD pendentes e continuar se com a execu o das restantes OD da sequ ncia execu o de qualquer OD obriga a que todos os PQD respeitant
165. D pode ser vista como um processo que envolve a 34 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica realiza o sequencial dos seguintes passos 7 especifica o dos PQD cuja exist ncia se pretende verificar 77 detec o autom tica dos PQD que existem nos dados e z correc o autom tica ou manual dos PQD identificados A fronteira entre LD e TD nem sempre clara Na literatura da rea acontece por vezes os termos serem usados conjuntamente ou mesmo indistintamente No mbito desta disserta o efectua se uma distin o entre ambas uma vez que em rigor n o s o o mesmo A TD visa a realiza o de opera es que alteram os dados ao n vel do esquema z e os dados transitam do esquema X para o esquema Y Naturalmente estas altera es ao n vel do esquema repercutem se nos valores dos pr prios dados e g um atributo eg nome do esquema de origem pode corresponder a dois atributos e g nomes pr prios e apelidos no esquema de destino A LD visa manipular os PQ que afectam os dados ao n vel dos seus valores n o produzindo modifica es ao seu esquema de representa o 7 e os dados permanecem de acordo com o esquema Z Alguns autores atribuem um destaque especial elimina o de duplicados considerando a como mais uma actividade do processo de melhoria da QD e g Barateiro e Galhardas 2005 Neste trabalho considera se que os duplicados est o abrangid
166. DU duplicados OP C OP OP OP OP OP FDU Exist ncia de D NS NS NS NS NS OP hom nimos C NS NS NS NS NS FDU Dif granular D NS NS NS NS NS OP representa o C NS NS NS NS NS FDU Cap tulo 10 Conclus o 347 Tabela 10 4 Cobertura dada aos PQD pelo SmartClean por compara o a cinco ferramentas comerciais de LD cont ETI Data Trillium dfPower HI Cleanser Quality Quality Quality Viola o integr referencial Heterogen de sintaxes Heterogen de un medida Nota O significado das anota es num ricas apresentadas nesta tabela encontra se no Cap tulo 4 Sec o 4 5 2 N o se considerou relevante voltar a efectuar a sua repeti o neste local A tabela evidencia que o SyzartClean oferece uma cobertura bem mais abrangente do que qualquer outra das ferramentas comerciais de LD consideradas Contrariamente ao que acontece no SmartClean estas ferramentas n o suportam a detec o da generalidade dos PQD que comp em a taxionomia exposta no Cap tulo 4 A n vel de correc o apesar de ligeiramente melhor o panorama n o substancialmente diferente A correc o da grande maioria dos PQD tamb m n o suportada pelas ferramentas analisadas isto acresce ainda o facto de que nalguns PQD o suporte concedido a n vel de DC apenas parcial em virtude deste se encontrar limitado a dados de um determinado tipo e g nomes de pessoas endere os postais
167. Data Mining Alberta Canada Julho de 2002 pp 475 480 Costa A 2006 A Gestao da Qualidade dos Dados em Ambientes de Data Warehousing na Prossecu o da Excel ncia da Informa o Disserta o de Mestrado em Sistemas de Dados e Processamento Anal tico orientada pelo Prof Doutor Orlando Belo Universidade do Minho 2006 Damerau F 1964 A Technique for Computer Detection and Correction of Spelling Errors Communications of the ACM 7 3 1964 pp 659 664 Dasu T e Johnson T 2003 Exploratory Data Mining and Data Cleaning Willey and Sons 2003 Dasu T Johnson T Muthukrishnan S e Shkapenyuk V 2002 Mining Database Structure Or How to Build a Data Quality Browser In Proceedings of the 2002 ACM SIGMOD International Conference on Management of Data Wisconsin EUA Junho de 2002 pp 240 251 Dasu T Vesonder G T e Wright J R 2003 Data Quality Through Knowledge Engineering In Proceedings of the SIGKDD 03 Conference Washington August 2003 pp 705 710 DataFlux 2007a Accelerate to Compliance Data Governance and MDM Dispon vel em http www dataflux com Resoutces file stream asprrid 146 no dia 03 04 2007 s 22 40 370 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica DataFlux 2007b Data Profiling The Diagnosis for Better Enterprise Information Dispon vel em http www dataflux com Resources file stream asp rid
168. Detec o 123 fim repetir fim Notas Os significados de Z1 e X usados nesta formaliza o encontram se enunciados nas defini es da formaliza o da detec o de valor incompleto A finalidade de Z1 excluir da detec o de valor sobrecarregado todos os valores que j foram identificados como estando incompletos Na sequ ncia de execu o de OD a detec o de valor incompleto antecede a detec o de valor sobrecarregado Um valor n o pode estar ao mesmo tempo incompleto e sobrecarregado Procedimento determina valores validos U t amp seja sybstring stn str uma fun o que recebe duas strings str e str verifica se a primeira constitui uma substring da segunda e devolve como resultado um valor booleano seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de R onde existem valores sobrecarregados em atn os respectivos valores sobrecarregados e as diversas alternativas v lidas que solucionam o problema O esquema de Z1 Z1 d dm atn dom in cio ue de tuplo U repetir enquanto u null se substring u dom t atr verdadeiro ent o Z1 lt Z1 VU ta tatatn u dom fim se u lt de tuplo U fim repetir fim 5 3 1 3 Erro ortogr fico Formaliza o Sint ctica DETECT MISSPELLING ERRORS ColunasAlvo DasTabelas DasBasesDados Defini oDicion rio Defini oM trica UsandoCondi o Formaliza o Sem ntica A detec o de erro ortogr fico envolve
169. Detec o e Correc o de Problemas de o o x q S i 7e S 3 E a E q A a E o q B q ed f E co E o 7 Paulo Jorge Machado Oliveira UMinho 2008 Universidade do Minho Escola de Engenharia Paulo Jorge Machado Oliveira Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Setembro 2008 Universidade do Minho Escola de Engenharia Paulo Jorge Machado Oliveira Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tese de Doutoramento Inform tica Tecnologia da Programa o Trabalho efectuado sob a orienta o de Professor Doutor Pedro Rangel Henriques Professora Doutora Maria de F tima Rodrigues Setembro 2008 AUTORIZADA A REPRODU O INTEGRAL DESTA TESE APENAS PARA EFEITOS DE INVESTIGA O MEDIANTE DECLARA O ESCRITA DO INTERESSADO QUE A TAL SE COMPROMETE Universidade do Minho Assinaturas_ ee ee esi ee iii Ao meu Filho David A minha Esposa Susana AGRADECIMENTOS Um conjunto alargado de pessoas e institui es contribuiu de uma forma mais ou menos acentuada para a realiza o desta disserta o de doutoramento A todos gostaria de expressar o meu agradecimento pela ajuda que me concederam Desde j apresento as minhas desculpas se por lapso me esquecer de referir algu m Naturalmente a primeira palavra vai para aque
170. E ANAIS DE DADOS okesen ee E E E E E EE EEE EA A E E E ERE 31 2 7 3 TRANSFORMA O DE DADOS joia 32 2 74 CIMPEZA DE DADOS cadens A A E R 33 2 7 9 ENRIQUECIMENTO DE DADOS ea aae aa di nerd 35 2 8 CONCLUS O EEE T E EEA 36 CAP TULO 3 LIMPEZA DE DADOS 37 FA INTFRODUGAO sis cccetecetteetidececececedevedadecacedededevedadadadedecedeveaadadededeavucscoase cesseavensaceascesssvacensncoasceseases 37 3 2 CONTEXTOS DE APLICA O cicdcdedsiededelecededadeladededecedsdadeladadadedadedsdecedelededededsdadsbubvavestevdeuteteteveveses 38 3 3 REQUISITOS sisiaieteceiedetelasedubecetstetecedeteledetedelededilelsdocedsledeleetssebwbetatesubadebutvavescesveacerycatessbacesetuavseer 39 3 4 O PROBLEMA DOS DUPLICADOS NA LIMPEZA DE DADOS sccessceessceesereeesceeesneceeseeeeneeeeees 40 3 4 1 M TODOS DE DETEC O DE DUPLICADOS ccccessssssssessssesssesesscscsesesssscscsesesssecsesesscecsesenssesscsenseecaesenees 41 341 1 M todo do Produto Cartesiado santas quests apre selo cita ui api nahin estalo anta ela ando aa seas 43 34 1 2 M todo da Vizinhan a Orde nadassssccicscscscscecicvescucedecictcveicicietesctevetescdcuctescbevddescdcedtercerdbecczarees 43 3 4 1 3 M todo da Vizinhan a Ordenada com Multi Passagem i ienes 45 34 1 4 Algoritmo Fila de Proridades wissscscssisscscscdssssssssescssscsssciesessseveseinsescsedosssssesessinsesenedebvaeseveseinseseneees 47 3 4 1 5 Record Wink age A A EA SAE E AA EEEE 48 3 4 2 MBITO DOS M TODOS DE DE
171. Formaliza o Sint ctica DETECT INCOMPLETE VALUE ColunasAlvo DasTabelas DasBasesDados Defini oDom nio UsandoCondicao Formaliza o Sem ntica A detec o de valor incompleto envolve verificar se cada valor do atributo em causa e atr que n o faz parte do dom nio respectivo eventualmente j confirmado por uma opera o pr via de detec o de viola o de dom nio constitui uma substring de um ou mais valores v lidos do dom nio Caso esta situa o se verifique o valor classificado como estando incompleto Na rela o que resulta desta OD ze Z1 al m dos valores da chave prim ria dos tuplos onde se encontram os valores identificados como incompletos os pr prios valores incompletos s o 120 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica tamb m armazenados assim como os diversos valores que ao complet los constituem alternativas v lidas 7 e pertencem ao dom nio de valores v lidos do atributo Algoritmo Detec o Valor Incompleto E seja Z1 a rela o que armazena as viola es de dom nio detectadas em atn com base num dom nio de refer ncia seja Xa rela o que armazena o dom nio de valores v lidos com o seguinte esquema X id dom em que id constitui a chave prim ria e dom o atributo onde se encontram os valores considerados v lidos para atr seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de R onde e
172. ION AT LEVEL OF ROW ColunasAlvo DasTabelas DasBasesDados Usando Atribui es Defini oCondi o Formaliza o Sem ntica No caso da detec o de viola o de restri o de integridade com base numa condi o suscept vel de ser expressa em SQL a opera o envolve identificar as chaves prim rias dos tuplos e os respectivos valores dos atributos envolvidos na restri o de integridade que respeitam a condi o 130 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica especificada e que assim constituem uma viola o de restri o de integridade Todos estes valores s o armazenados na rela o que resulta da OD ze Z1 A sem ntica que se encontra subjacente a esta opera o de seguida apresentada Algoritmo Detec o Viola o Restri o Integridade Baseada em SQL E seja dnit 5dm n O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos envolvidos na restri o de integridade assim definido C fc c usado na formula o da restri o de integridade A ce A e CCA seja o a cardinalidade de C seja 2 Z1 Z15 O conjunto de o rela es que cont m os PQD j detectados nos atributos de C pelas opera es anteriores que comp em a sequ ncia de detec o seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de Re os respectivos valores que constituem viola es
173. MULTIPLE RELATIONS NasColunas e ColunasAlvo ColunasAlvo ON Coluna RestantesColunas Coluna AliasTabelaDaColuna NomeColuna AliasTabelaDaColuna identificador NomeColuna identificador RestantesColunas ColunaAdicional Coluna Adicional Coluna DasTabelas FROM Tabela Restantes Tabelas 164 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela NomeTabela Alias Tabela NomeTabela identificador AliasTabela identificador Restantes Tabelas TabelaAdicional TabelaAdicional gt Tabela NaBaseDados DasBasesDados DasBasesDados OF BaseDados RestantesBasesDados BaseDados identificador RestantesBasesDados BaseDadosAdicional BaseDadosAdicional BaseDados UsandoT cnica gt T cnicaExistenteBase T cnicaExistenteBase USING T cnicaPreenchimento T cnicaPreenchimento AVERAGE MODE MEDIAN PROBABILISTIC DISTRIBUTION UsandoColunas Defini oColunas Defini oColunas USING Coluna RestantesColunas UsandoOpera es UsandoAtribui es UsandoFun oVoid UsandoAtribui es gt Defini o Atribui es Defini oAtribui es SET Atribui o RestantesAtribui es Atribui o LadoEsquerdo Atribui o LadoDireito Atribui o LadoEsquerdo Atribui o NomeColuna Vari vel Vari ve
174. NG rela o 17 resultar na detec o de uma viola o de restri o de integridade NG multi rela o mono fonte de dados e 11 impedir a detec o da exist ncia de tuplos duplicados NG multi rela o multi fonte de dados Os problemas que ocorrem no NG da rela o e g viola o de depend ncia funcional tuplos duplicados s o os pr ximos a serem manipulados O objectivo consiste em manipular os PQD que afectam cada rela o quando considerada isoladamente Ze m ltiplas linhas e m ltiplas colunas da rela o e cuja resolu o depende somente dos valores dos seus atributos e n o dos Cap tulo 7 Modelo Proposto para a Limpeza de Dados 221 valores dos atributos de outras rela es Recorde se que nesta fase da sequ ncia os eventuais problemas existentes ao n vel do atributo e do tuplo j foram detectados e solucionados A detec o dos PQD nos restantes NG encontra se condicionada resolu o dos problemas que ocotrem ao n vel da rela o Por exemplo a exist ncia de tuplos duplicados ao n vel da rela o pode resultar na detec o de uma viola o de restri o de integridade nos NG multi rela o de uma fonte de dados e multi rela o de diferentes fonte de dados Os pr ximos problemas a serem manipulados s o os que ocorrem ao n vel de m ltiplas rela es de uma fonte de dados eg viola o de integridade referencial viola o de restri o de integridade O object
175. Na correc o destas viola es ao dom nio do atributo Abe optou se por substituir os valores respectivos pelo grupo sangu neo 4 Para tal executou se a OC que a seguir se apresenta 284 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica CORRECT DOMAIN VIOLATION ON Abo FROM Colheitas OF BDD SET Abo A 8 3 1 8 Tabela Dadores Opera es de Detec o As OD efectuadas no contexto do valor individual dos atributos da tabela Dadores encontram se presentes na Tabela 8 15 Tabela 8 15 OD executadas no contexto do valor individual dos atributos da tabela Dadores Valor em Viola o de Viola o de Atributo Eau falta dom nio sintaxe Data Dador AnoColh NumColh Sexo DtNasc Profiss o CodPostal TotDadivas TotDadivasInst Horalnscricao Peso Altura TensaoMax TensaoMin Abo Rh Cap tulo 8 Estudo de Caso de Limpeza de Dados 285 Da execu o das OD de valor em falta nos atributos assinalados na tabela anterior de preenchimento supostamente obrigat rio n o resultou a detec o de qualquer PQD A execu o das OD de viola o de dom nio nos atributos Data Dador NumColh e Rh n o detectou a exist ncia de qualquer problema nestes atributos A execu o destas opera es visou identificar viola es ao dom nio de valores dos atributos de acordo com o j enunciado
176. O DE EXECUCAO i 28k ec tee ae eB A i 255 7 5 2 CONTROLO DAS CORREC ES EFECTUADAS vivcccssesssssssesssssessseessesssesscssecssesssessecssecsseesuesasessesseessees 257 7 6 DIAGRAMA DE SEQUENCIA ni a a a veainln oh oanoeeaetes 262 7 71 PROT TIPO DESENVOLVIDO waceiedecedetedesedecedecedededndedededsdededecededededededededsdedsdecscecveadatnowsbessssachentes 264 TB CONCLUS O isceccssntsssosdosonsecsvntedesasossdesssvasaossnasesndebesadedesnsedonssancssasatadssncseancesabatesacacessneasabatacscces 267 CAPITULO 8 ESTUDO DE CASO DE LIMPEZA DE DADOS 269 8 1 INTRODU O sees cess sisssctccassssseasseostasssastesssivossucesasassnssuossucasasatisssutacecetesetevezaneteastesstenvaosstecstetedtats 269 8 2 APRESENTA O DO CASO sais ei 270 8 3 LIMPEZA DE DADOS AO NIVEL DO ATRIBUTO ssssccccccccsssssssscccccceeesssssecccccseeasssssssceceeeeaes 274 8 3 CONTEXTO DO VALOR INDIVIDUAL ceclcccavesecncaneddensachcostiendeuisncutuntidandivendoabicseecitisntdnchsetonceedeteiestests 274 Eo E E o1 ER D71 EEE o siassiavabrsilaasbs odio osba vala ibaasis odds sala abani ba cb iai asa onsdae sig din o 274 8 3 1 2 Tabela Enmiiliga es aasien ani ia nia AE Ea EE Ea AE ES R eiS 276 GIES Labela FAODAR EREE EEE doa Sed od So abba Reta ede DE a a 276 8 3 1 4 Tabela Brigadasicsiesitet tiastscstatbvasivstuasitarsbvaabvachnschasstansbvasbuasensttassuantbnasbunsenaatanitans EEEREN 277 8 3 1 5 Tabela Codigos Postais v sicisiccssasaecavsssavscsvssvaseuscotssvasctesc
177. O DE RESTRI O TEN TER MDA 193 6 6 PROBLEMAS AO N VEL DE M LTIPLAS RELA ES FONTES DE DADOS cccceeeeeseeeeeeeees 196 6 6 1 HETEROGENEIDADE DE SINTA RE Sa e enaa aa 196 6 6 2 HETEROGENEIDADE DE UNIDADES DE MEDIDA sesssissssissesisresteseststtsttestsestseststentstentstesesreseeesess 198 66S EXISTENCIA DE SINONIMO Sininen ann ne dt a A a dd a mas 200 6 0 4 FUPLOS D PLICADOS arrore ren Ne e NELERE NEAKEN ENEAN ENERE ARA Sant Sen AEn dao q ad Sa co lie bo au 202 6 6 5 VIOLA O DE RESTRI O DE INTEGRIDADE adsrcseieannansnanananouonananeuaenananes 206 6 7 CONCLUSA O Basics cccccics dscucevedscecedscoveuececdeecdsecevensdecededdsedvensdedsceeveneuthorteveoseresenaberecveessrenonurenccoesss es 208 CAP TULO 7 MODELO PROPOSTO PARA A LIMPEZA DE DADOS 211 TA INTRODU O 4s odes dodadiccdaceledsdedelsccdeccdedsdudedadedeccdedcdsdedudedeccdedsdevabasetesutoowbusatesevessevontusnteneveseseon sash 211 ToD ARQUI TES TOR Keres ices tik ik Dado ndo ssa as lee aes cage haps dan ests Ua EEEIEE qa Radar tenses iave sees EEEE 213 7 3 SEQUENCIADOR DE OPERA ES DE DETECGAO scsscccccssssssssscecceessscessssceeeceeesssessseeceeseeeees 218 xvi 7 3 1 SEQUENCIA O POR N VEL DE GRANULARIDADE ovessccssssssssssessessecssesssesseesssessessssesesssuesseesseesseenees 218 7 3 2 SEQUENCIA O EM CADA DE N VEL DE GRANULARIDADE o eecccsssssssesessescecseseescecsesescessesesseeceeses 221 7 3 2 1 Atributo Contexto do Valor Individual occ cece
178. O objectivo identificar potenciais problemas que possam ter sido inadvertidamente introduzidos Esta outra caracter stica do modelo de LD proposto sobre o qual o SwartClean se encontra alicer ado Esta caracter stica n o evidenciada no estudo de caso efectuado uma vez que desse rein cio de execu o das OD nunca resultou a identifica o de qualquer outro problema que tivesse sido introduzido involuntariamente a montante fruto das correc es entretanto efectuadas Apenas com esta abordagem iterativa e exaustiva de DC que faz parte do modelo de LD proposto poss vel assegurar que os dados se encontram limpos e isentos de PQD O x presente caso de estudo permitiu demonstrar a validade desse modelo de LD INTEROPERABILIDADE DAS OPERA ES DE LIMPEZA DE DADOS Neste cap tulo come a se por descrever detalhadamente a abordagem que permite a interoperabilidade das opera es de Limpeza de Dados LD entre Bases de Dados BD diferentes De seguida apresentada uma das suas principais potencialidades que consiste na especifica o das opera es conceptuais de LD e ao n vel da ontologia a diferentes n veis de granularidade de instancia o Outra das principais potencialidades envolvendo a heran a e sobreposi o das opera es conceptuais de LD exposta imediatamente a seguir Por ltimo apresentado o modelo de dados que suporta o armazenamento e manipula o do conhecimento e
179. OC de heterogeneidade de sintaxes envolve efectuar altera es sintaxe dos valores do atributo de uma das rela es de modo a coloc los de acordo com a sintaxe do atributo da outra rela o Os valores do atributo sujeitos a altera o dependem do especificado pelo utilizador Nesta OC recorre se a uma fun o no caso efectna correc o sint ctica que de raiz suporta a realiza o das altera es mais comuns de formato com base em express es regulares Na especifica o da OC o utilizador define as express es regulares e os respectivos novos formatos dos valores A fun o verifica a concord ncia entre o valor do atributo e cada express o regular Caso seja encontrada uma concord ncia o valor do atributo alterado para o formato respectivo Caso contr rio n o efectuada qualquer altera o ao valor do atributo Algoritmo Correc o Heterogeneidade Sintaxes amp in cio se flag actualiza valores rela o R verdadeiro ent o TO Ccond R sen o TE Cond S fim se t de tuplo T repetir enquanto t null novo valor efectna correc o sint ctica t atn mat_transf_sintdcticas se novo valor t atr ent o se flag actualiza valores rela o R verdadeiro ent o Cap tulo 6 Formaliza o das Opera es de Correc o 197 R R t t atr novo valor R RU Eta std tamt ob An n sen o S S t tatr novo valor SHS L t bi t bot bitb fim se fim se te le tuplo T
180. OD de um dado tipo eg viola o de depend ncia funcional viola o de restri o de integridade estas s o executadas de acordo com a ordem de especifica o do utilizador Uma determinada OD de um dado tipo apenas executada quando da execu o da opera o anterior do mesmo tipo n o resultar a identifica o de problemas Adopta se esta abordagem em virtude de poderem existir depend ncias na execu o das opera es relativas ao mesmo tipo de problema Desta forma garante se que todos os PQD resultantes da execu o de uma OD se encontram solucionados antes de se proceder execu o da opera o seguinte 7 4 1 5 Multi Rela o Mono Fonte Multi Fonte de Dados Neste NG h apenas duas opera es cuja execu o poss vel mesmo perante a exist ncia de PQD resultantes de OD pr vias da sequ ncia de depend ncias apresentada na Sec o 7 3 2 5 As opera es em causa s o exist ncia de hom nimos e heterogeneidade de unidades de medida No caso da OD de exist ncia de hom nimos esta efectuada em conjunto com a de exist ncia de sin nimos Em primeiro lugar executada esta imediatamente seguida da OD de exist ncia de hom nimos A execu o conjunta destas duas opera es poss vel uma vez que os PQD detectados pela primeira n o impedem a segunda de ser executada de forma fidedigna e n o serem detectados os hom nimos existentes ou serem identificados hom nimos que apenas s o um mer
181. OLATION ON Local FROM Dadores OF BDD DEPENDENT ON CodigoBrigada FROM Brigadas Da execu o das OD respectivas n o resultou a detec o de qualquer PQD do tipo em quest o entre os pares de tabelas Dadores TipoDadiva Dadores Conclus es Dadores Sexo Dadores EstadoCivil Dadores Profissoes Dadores CodigosPostais Dadores Analises Dadores Colheitas Colheitas An lises Colheitas TipoDadiva e Colheitas Hospitais Na Tabela 8 39 apresentam se algumas das 37 viola es de integridade referencial resultantes da execu o da OD respectiva no par de tabelas Dadores Brigadas De referir que todas as viola es detectadas surgem como consequ ncia da exist ncia do valor OM no atributo Local Tabela 8 39 Resultados da OD de viola o de integridade referencial entre Dadores e Brigadas Na Tabela 8 40 apresentam se as viola es de integridade referencial detectadas resultantes da execu o da OD respectiva no par de tabelas Colheitas Inutilizacoes Tabela 8 40 Resultados da OD de viola o de integridade referencial entre Colheitas e Inutilizacoes 308 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Opera es de Correc o A resolu o da viola o de integridade referencial entre as tabelas Dadores e Brigadas consistiu na inser o na tabela Brigadas de um tuplo com o valor do atributo CodigoBriga
182. OST A cd a figo dd Sd aC A dO 311 Tabela 8 43 Resultados da OD de viola o de restri o de integridade entre Dadores e CABO TORII ai E Ser eka Mla est 312 Tabela 8 44 Tempo necess rio execu o das OD em cada NG estereo 315 Tabela 9 1 Mapeamentos necess rios instancia o das opera es conceptuais de LD 324 Tabela 10 1 Caracter sticas do SmartClean comparativamente aos prot tipos de investiga o de Tabela 10 2 Cobertura dada aos PQD pelo SmartClan por compara o aos prot tipos de investiga o de LD sreisraateisiel poi oradt asi agi aa algodao ais 341 Tabela 10 3 Caracter sticas do SartCkan comparativamente s ferr comerciais de LD 344 Tabela 10 4 Cobertura dada aos PQD pelo SmartClean por compara o a cinco ferramentas camerae de TDs iinet RR DR RC RR RN O RA 346 XXV LISTA DE ACR NIMOS Em consequ ncia da utiliza o frequente de algumas designa es procedeu se sua substitui o por acr nimos Em cada cap tulo a primeira utiliza o do acr nimo sempre acompanhada pelo respectivo significado Mesmo assim com o intuito de facilitar a leitura da disserta o fornece se a seguinte lista onde podem ser consultados os significados de todos os acr nimos utilizados Acr nimo Significado AD An lise de Dados BD Base de Dados DC Detec o e Correc o DP Data Profiling ED Enriquecimento de Dados ETC Extrac o T
183. PQD 18 Ainda que o termo surja sempre no singular e base de dados o processo de LD pode envolver simultaneamente v rias BD Ali s esta perspectiva ilustrada graficamente na figura que representa a arquitectura Cap tulo 7 Modelo Proposto para a Limpeza de Dados 215 executar o utilizador pode especificar opera es que envolvem a invoca o de fun es definidas por si necessidade do utilizador recorrer a estas fun es adv m de requisitos espec ficos de detec o de PQD e g detec o de viola o de uma dada restri o de integridade Uma particularidade deste m dulo que certas OD no caso as referentes aos NG do atributo e do tuplo s o executadas incrementalmente Assim al m da execu o das OD ser efectuada por NG em cada NG a detec o de um determinado PQD faz com que se pare nesse ponto Todas as restantes opera es da sequ ncia de detec o que envolvam esse valor ou valores ficam com a execu o pendente at que o problema seja solucionado Todas as outras OD da sequ ncia cuja execu o n o dependa da correc o do PQD s o executadas Quando todas as OD tiverem sido executadas que o utilizador toma conhecimento dos problemas entretanto identificados Ap s a correc o dos PQD a execu o da sequ ncia de OD reinicia se mas apenas nos locais onde tinha parado anteriormente e onde tinham sido detectados os problemas Os valores j gt anteriormente analisados e nos qu
184. PQD No essencial esta nota o segue a que apresentada em Atzeni e Antonellis 1983 O esquema de uma rela o consiste de um nome R Ze o nome da rela o juntamente com uma lista A a 4 a de nomes de atributos distintos e representa se por R a a 4 ou simplesmente por RA O inteiro n representa o grau do esquema da rela o Uma FD F composta por um conjunto de m esquemas de rela o R A R A R Ap Um dom nio d um conjunto de valores at micos Dado um conjunto D de dom nios e um conjunto A de nomes de atributos assume se que existe um fun o Dom A D que associa os atributos aos seus dominios A fun o Dom aplicada ao conjunto de nomes de atributos representada por Dom A Dom a a a Dom a X Dom a X x Dom a Uma inst ncia da rela o ou mais simplesmente rela o um conjunto finito r c Dom a X Dom a X X Dom a sendo representado por ra m a ou 94 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica simplesmente por nA Cada elemento de r designado de tuplo sendo representado por t Um tuplo t pode ser visto como uma fun o que associa um valor de Dom a a a um valor de Dom a a da e um valor de Dom a a a O valor do atributo a no tuplo t representado por uta Os valores no tuplo t dos atributos a a a isto vta U ta Uta s o representados por v t A Por analogia os valores
185. PQD pode impedir que outros problemas sejam detectados ou da resultar a detec o redundante de outros supostos problemas Estes problemas dificultam as tarefas de correc o do utilizador uma vez que este tem de identificar os verdadeiros problemas e separ los dos falsos problemas Apenas os primeiros necessitam de ser solucionados uma vez que os segundos como consequ ncia das correc es tamb m o s o Neste trabalho defende se portanto que a detec o de um PQD deve ser seguida da sua imediata correc o Adoptando este princ pio necess rio interromper constantemente a execu o das OD e requerer a interven o do utilizador para que este efectue as necess rias correc es Como forma de minimizar este inconveniente sempre que uma dada sequ ncia de depend ncias o permite procura se identificar o m ximo n mero poss vel de problemas em cada execu o das OD que a comp em Nestas situa es a execu o de uma sequ ncia de opera es n o interrompida assim que se detecta o primeiro problema Por exemplo a identifica o de um PQD num atributo de um tuplo impede que as demais OD que incidem sobre esse atributo desse tuplo possam ser executadas No entanto a exist ncia deste problema n o impede a execu o das restantes OD sobre o atributo em todos os outros tuplos nos quais o problema em quest o n o foi detectado Assim a execu o das opera es que fazem parte de uma sequ ncia decorre at 7 que n o
186. QD envolve a realiza o de uma ou mais das anteriores cinco actividades e implica que pelo menos uma dessas actividades seja de correc o O processo pode ser iterativo e uma ou mais actividades podem repetir se v rias vezes Isto acontece em virtude de poder n o ser poss vel atingir o n vel de QD pretendido com uma nica itera o Muitas vezes necess rio analisar os resultados obtidos refinar as decis es tomadas para melhorar a QD e re executar novamente a actividade ou actividades em causa A interven o do utilizador pode ainda ser necess ria para solucionar certos PQD Nalguns casos apenas o utilizador pode manualmente solucionar os problemas uma vez que a sua resolu o depende de uma an lise individualizada Estes PQD n o s o suscept veis de serem manipulados de forma autom tica Nas subsec es seguintes s o descritas as diversas actividades que o processo de melhoria da QD compreende Este trabalho de doutoramento enquadra se fundamentalmente na actividade de LD As restantes actividades s o apresentadas com o intuito de dar uma vis o geral de tudo o que est envolvido no processo de melhoria da qualidade 2 7 1 Data Profiling O DP consiste em aplicar t cnicas de an lise com o objectivo de determinar o conte do estrutura e qualidade dos dados existentes Olson 2003 O DP diferente da AD efectuada com 30 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Se
187. QD num NG encontra se dependente da resolu o pr via dos problemas que existem nos n veis anteriores Se tal n o acontecer podem n o ser detectados certos PQD ou erradamente serem reportados outros que n o s o mais do que um mero reflexo de problemas existentes noutro NG Em cada NG os problemas tamb m s o detectados e de imediato solucionados de acordo com uma sequ ncia predefinida A n o observ ncia desta sequ ncia em cada NG possui igualmente as consequ ncias j referidas Ze n o serem detectados certos problemas ou 268 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica redundantemente serem reportados outros Pelo que se conhece esta a primeira vez que proposta uma sequ ncia de manipula o que cobre os diversos tipos de problemas de qualidade que podem afectar os dados ESTUDO DE CASO DE LIMPEZA DE DADOS Neste cap tulo procede se apresenta o do estudo de caso de Limpeza de Dados LD efectuado com o intuito de testar e validar o modelo proposto e as opera es de LD z e de Detec o e Correc o DC Estes aspectos foram detalhados nos tr s cap tulos anteriores e encontram se materializados no prot tipo desenvolvido designado de SmartClean este sistema de LD que origina a realiza o do presente estudo de caso O cap tulo inicia se com a apresenta o do caso baseado numa Base de Dados BD relativa a d divas colheitas de sangue De
188. QD valor em falta viola o de sintaxe ou viola o de dom nio pode ser necess rio recorrer a fun es definidas implementadas pelo utilizador No caso da correc o de valores em falta ou de viola es de dom nio pode querer utilizar se uma outra t cnica de preenchimento substitui o que n o as existentes de base No caso da viola o de sintaxe a complexidade das opera es envolvidas na correc o pode n o ser suportada pela fun o existente de raiz 7 e efectua correc o sint ctica Estas situa es obrigam o utilizador a implementar novas funcionalidades em fun es especialmente definidas para o efeito De acordo com os requisitos de cada fun o existente na sequ ncia de atribui es da OC o valor do atributo de cada tuplo no qual foi detectado o PQD em causa pode ser passado como par metro Eventualmente podem existir outros par metros como vari veis e constantes Como resultado cada FDU retorna um valor at mico A ltima fun o da sequ ncia de atribui es na Cap tulo 6 Formaliza o das Opera es de Correc o 173 formaliza o seguinte representada por fdu retorna o valor representativo da correc o ao valor em falta viola o de sintaxe ou viola o de dom nio sendo usado na actualiza o do valor do atributo Algoritmo Correc o_Valor_em_Falta Viola o_Sintaxe Dom nio_Baseada_FDU in cio t de tuplo T repetir enquanto t null v fdu p Pi
189. S 6 6 Z2y O 152 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica t de tuplo T repetir enquanto t null se Cacrarunuctas Z1 ent o Z1 Z1 VU ta statatr fim se Se Of 1 6 n s6r t 6 Z2 ent o Z2 Z2 J t 6 t 6 tatn fim se t lt le_tuplo T fim repetir fim Nota Na formaliza o anterior no caso de n o existir uma OD de sin nimos pr via a express o em lgebra relacional assinalada com um asterisco substitu da pela seguinte ea Ta samb yoy tT Oumar R D atr atry S 5 6 5 Diferentes granularidades de representa o Formaliza o Sint ctica DETECT DIFFERENT GRANULARITY OF REPRESENTATION ColunasAlvo DasTabelas DasBasesDados UsandoCondi o Formaliza o Sem ntica A detec o deste PQD envolve identificar os valores de atr da rela o R que n o existem em atr da rela o S e vice versa No caso de serem identificadas diferen as os valores s o armazenados respectivamente nas rela es Z1 e Z2 Al m destes s o tamb m armazenadas as chaves prim rias dos tuplos onde se encontram os valores diferentes Algoritmo Detec o Diferentes Granularidades Representa o sejam Z1 e Z2 as rela es que armazenam respectivamente os valores das chaves prim rias dos tuplos de Re S bem como os respectivos valores que apresentam diferen as ao nivel da granularidade de representa o usada entre a
190. TEC O DE DUPLICADOS ssssssssssssssssessssssssesssssssssssssssnnsssesssssseeeeees 50 3 4 3 M TRICAS DE AVALIA O DA SEMELHAN A uscscssssssssesssscscsesesscecscsesssececsesssscacsesesscecsesensessesenseessesenees 51 3 4 4 AVALIA O DA EFIC CIA DA DETEC O DE DUPLICADOS ceccccssssssssescscscscscsesescscscsesesesesescscsesesens 53 3 4 5 ABORDAGENS UTILIZADAS NA ELIMINA O DE DUPLICADOG scssssssssssssessseseecsceneeateneecsceneeneensees 54 3 5 FERRAMENTAS DE LIMPEZA DE DADOS ccsssscceseccesssceescceesnsceessscessccecensceeseeeessneeenseeeesesenees 55 39 1 PROTOTIPOS DE INVESTIGA O surda dont hus niini nce dia Son SU E San Si a Da 55 BBA a SE gt EEEE E EE S 55 Bid 1 2 APktOS E A O RR DDR 57 e E Cleats PTE E EAE EE EAN 58 SS dA Botter s Wheelie oaa E E E E E A E EEE E ER E E E RERAN i 60 xiii SRo be tra 100 EE SRD RS ER DONS E RD PO A DR RT OR RD IEEE 62 3 5 1 6 An lise Gompatativa sissies siidi eisini Siess iiSi iS ei ns Sii iisi Nai oiai reit 63 3 5 2 FERRAMENTAS GOMER CLANS A A A a 65 2 5 21 WinPure Clean Se Mate iu giussten ste dure dino tus veces Ens da Eu ds do n LU E R 66 3 5 222 E PE Data Cleans r ar mm sth es athe Rate A ee hh ea DR 67 PEPA A RE QUAM CY EEEE EE AE cu ir a aa ida d es 68 BID A AERO Wer Oa ty sie antigas eE uid arado Clave adidas doando 70 3 5 2 5 MG ialitysicssscsssivsscrssvsnsoveisssanvasctssossiovensssarioieissvaniovesndeanipiedsseanis essssaniotedsivensauss
191. TION AT LEVEL OF ROW ON TensaoMin TensaoMax FROM Dadores OF BDD SET TensaoMax TensaoMaxMediaDador ID Dadores ID TensaoMax 300 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica sem ntica desta opera o equivalente sem ntica da OC de viola o de dom nio no atributo TensaoMax Basicamente substituiu se o valor do atributo TensaoMax que viola a restri o de integridade pelo valor m dio da tens o m xima existente noutro tuplos para o mesmo dador Na aus ncia desta informa o actualizou se o atributo com a m dia dos valores da tens o m xima dos indiv duos do mesmo sexo e idade Restri o de Integridade n 4 Na correc o das viola es detectadas restri o de integridade n 4 recorreu se opera o que a seguir se apresenta CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF ROW ON Horalnscricao HoraTriagem FROM Dadores OF BDD SET Temp Horalnscricao Horalnscricao HoraTriagem HoraTriagem Temp Esta OC procedeu troca dos valores que se encontram nos atributos Horalnscricao e HoraTriagem o que soluciona as viola es identificadas restri o de integridade Na sua base encontra se a constata o de que houve uma troca dos valores no momento da sua introdu o nos respectivos atributos 8 5 Limpeza de Dados ao N vel da Rela o Nesta sec o apresentam se as opera es de LD efectuadas ao n vel das
192. VIOLATION AT LEVEL OF RELATION ON T1 ID T2 ID T1 Dador T1 Data T2 Data FROM Dadores T1 Dadores T2 OF BDD WHERE T1 ID gt T2 ID AND T1 Dador T2 Dador AND T1 Sexo 1 AND Abs DateDiff T1 Data T2 Data lt 90 Da execu o desta OD bem como da OD relativa a segunda restri o de integridade nao resultou a detec o de qualquer PQD Opera es de Correc o Na resolu o da viola o de depend ncia funcional detectada no atributo Alinra da tabela Doadores executou se uma OC semelhante s efectuadas nos atributos Abo e Rh da tabela Colheitas 8 5 4 Tabela Analises Opera es de Detec o semelhan a das tabelas anteriores nesta tabela tamb m se executou uma OD com o objectivo de identificar a exist ncia de eventuais tuplos duplicados Um tuplo considerado duplicado de outro quando simultaneamente os valores dos atributos referentes data e ao dador s o iguais Da execu o da OD n o resultou a identifica o da exist ncia de qualquer tuplo duplicado 8 6 Limpeza de Dados ao N vel Multi Rela o da Base de Dados Nesta sec o apresentam se as opera es de LD efectuadas ao n vel das m ltiplas tabelas da BDD No contexto dos diversos PQD que podem ocorrer ao n vel de m ltiplas rela es nesta 306 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica BD apenas faz sentido procurar detectar viola es de integridade referencial e viola es de re
193. Valor Sobrecarregado amp seja dom o atributo de Z1 que dependendo do PQD em causa cont m as diversas alternativas v lidas que completam os valores incompletos detectados em atn para os valores sobrecarregados detectados em atr seja flag valor proximo uma vari vel booleana que indica se deve ou n o ser usado o valor de dom mais pr ximo de atr quando h mais do que uma alternativa de correc o Para o efeito considera se que o valor mais pr ximo aquele que difere no menor n mero de caracteres O valor desta vari vel resulta do especificado na OC in cio Sd Ay yes atr Y dom count atr Cond 21 t de tuplo T repetir enquanto t null se t count atr 1 ent o actualiza valon t t dom sen o se flag valor proximo verdadeiro ent o 6 Ue Tlength dom Tam o t dy A Nlm Am 21 ue de tuplo U primeiro valor lt u dom ue de tuplo U segundo valor u dom 6 se pq valor incompleto ent o se ength primeiro_valor lt length segundo valor ent o actualiza valor t primeiro valor fim se sen o se ength primeiro_valor gt length segundo valor ent o actualiza valor t primeiro valor fim se fim se t lt de tuplo T Cap tulo 6 Formaliza o das Opera es de Correc o 175 fim repetir fim Nota No caso da correc o de valor sobrecarregado na express o em lgebra relacional assinalada com um asterisco a ordena o efectuada sob a forma des
194. Wheel Correc o OBS FDU Viola o de sintaxe Detec o OBS FDU Correc o FDU Erro ortogr fico Detec o FDU Correc o FDU Viola o de dom nio Detec o OBS Correc o OBS FDU Viola o de unicidade Detec o OBS Correc o OBS FDU Exist ncia de sin nimos Detec o FDU Correc o FDU Viola o de depend ncia funcional Detec o OBS Correc o FDU Circularidade entre tuplos num auto relac Detec o FDU Correc o FDU Cap tulo 4 Problemas de Qualidade dos Dados 101 Tabela 4 3 Cobertura dada pelos prot tipos de investiga o de LD aos PQD continua o Tuplos duplicados Detec o OBS FDU Intelli Clean Potter s Wheel Correc o OBS FDU Exist ncia de hom nimos Dif granularidades de representa o Detec o OBS Correc o Detec o FDU OBS FDU Correc o OBS FDU Viola o de integridade referencial Detec o Correc o OBS Heterogeneidade de sintaxes Detec o Correc o Heterogeneidade de Detec o unidades de medida Correc o A an lise da tabela permite alcan ar as seguintes conclus es Q A cobertura dada aos PQD pelos prot tipos de investiga o com base em opera es predefinidas
195. a es constituem o necess rio suporte para uma posterior implementa o e consequente automatiza o da execu o das OD Assim a detec o dos PQD n o fica excessivamente dependente do utilizador e das fun es que este se v obrigado a definir em virtude da detec o do PQD em 110 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica causa n o ser suportada de base Na grande maioria dos PQD n o h justifica o para que isto aconte a Este foi um dos problemas identificados nas actuais solu es vocacionadas pata a melhoria da qualidade dos dados ver Cap tulo 1 Sec o 1 2 e que neste trabalho se visa suprir Estas formaliza es foram efectuadas com esse objectivo em mente e apresentar solu es que suportem a detec o dos PQD que comp em a taxionomia Na formaliza o sem ntica das OD recorre se a um misto de lgebra relacional e linguagem algor tmica A escolha da lgebra relacional na representa o da sem ntica das opera es surgiu com naturalidade uma vez que estas s o executadas num contexto de base de dados relacional Na especifica o das opera es tudo o que envolve acessos a base de dados representado sob a forma de lgebra relacional Contudo na grande maioria das opera es a lgebra relacional por si s n o suficiente para representar a sem ntica inerente detec o do PQD No geral a defini o da sem ntica obriga a q
196. a o de D OBS FDU OP NS FDU OP depend ncia funcional C FDU FDU NS NS NS OP Circularidade entre D FDU FDU NS NS NS OP tuplos num auto relac C FDU FDU NS NS NS FDU OBS OP OBS OP ou PU rou rou N mu Tuplos duplicados OBS FDU Exist ncia de OBS hom nimos FDU 342 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 10 2 Cobertura dada aos PQD pelo 7zartClean por compara o aos prot tipos de investiga o de LD cont Intelli Potter s Clean Wheel Dif granularidades de representacao Viola o de integridade referencial Heterogeneidade de sintaxes Heterogeneidade de unidades de medida Esta tabela demonstra que o SartClean proporciona uma cobertura mais abrangente a LD do que qualquer outro dos prot tipos de investiga o considerados De facto o SmartClean suporta de base a detec o de todos os PQD inclu dos na taxionomia proposta no Cap tulo 4 Nos prot tipos de investiga o que servem de referencial h diversos tipos de PQD cuja detec o nem sequer suportada Noutras situa es esse suporte apenas existe virtualmente uma vez que depende da especifica o de FDU O suporte concedido pelo SmartClean a n vel de correc o inferior ao de detec o Nem todos os PQD podem ser solucionados de raiz a partir das OC disponibilizadas Nalguns PQD eg exist ncia de circularidade num auto
197. a o de unicidade s o executadas conjuntamente 7 e na mesma fase de execu o A execu o da OD de viola o de unicidade n o obriga a que os sin nimos detectados sejam previamente corrigidos Naturalmente os tuplos nos quais sejam identificados sin nimos s o exclu dos da execu o da opera o seguinte de detec o de viola o de unicidade Nesta opera o apenas se consideram os valores do atributo que n o constituem sin nimos uma vez que apenas esses s o suscept veis de serem iguais A execu o conjunta de ambas as opera es permite reportar de uma s vez ambos os tipos de problemas ao utilizador Na itera o seguinte de execu o da sequ ncia de opera es os tuplos exclu dos da detec o de viola o de unicidade por estarem envolvidos no problema de sin nimos s o ent o considerados Tendo como objectivo clarificar a abordagem que acabou de ser descrita considere se o exemplo que a seguir se apresenta A Tabela 7 3 exibe o conte do da rela o utilizada no exemplo Suponha se que o utilizador especificou para execu o apenas as duas OD em causa 7 e detec o da exist ncia de sin nimos e detec o de viola o de unicidade Da execu o da primeira opera o resulta a identifica o da exist ncia de sin nimos nos tuplos identificados com o ID 3 e 6 i e canalizador e picheleiro Estes dois tuplos ficam desde logo exclu dos da OD de viola o de unicidade Da execu o desta opera
198. a gt gt Ra Ras PR_2 6 nba an RD idcluster 1 te de tuplo T 138 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica repetir enquanto t null v lt fdu p PiP v lt fdu PoovPo v fdu PoP jw se avalia _ condi o verdadeiro ent o Pa Pr obs UCT ideluster fe Aw A Ag 2 21 VT ifetuster Ones AA dm bmn z1 fim se t lt le_tuplo T fim repetir fim Nota Como resultado cada fun o fdu retorna um valor at mico A detec o de tuplos duplicados pode ser efectuada com base no M todo da Vizinhan a Ordenada com Multi Passagem MVO MP Hern ndez e Stolfo 1995 Hern ndez e Stolfo 1998 Este m todo encontra se descrito no Cap tulo 3 Sec o 3 4 1 3 Seguidamente fornece se a sem ntica que possibilita uma poss vel implementa o do m todo Algoritmo Detec o Tuplos Duplicados Baseada em MVO MP amp seja extrai caracteres pos carac str uma fun o que recebe uma string str e uma outra string pos carac que cont m as posi es dos caracteres a extrair de str separados por v rgula A fun o procede extrac o dos caracteres de str que se encontram nas posi es pos carac devolvendo a substring resultante seja dimjanela a dimens o ou tamanho da janela deslizante usada nas compara es entre tuplos vizinhos t pica do m todo da vizinhan a ordenada seja mat chvord uma matriz em que cada l
199. a 7 e TensaoMin Da execu o desta OD resultou a identifica o da viola o de restri o de integridade que se apresenta na Tabela 8 32 Tabela 8 32 Resultados da OD de viola o da 3 restri o de integridade na tabela Dadores Ra TensaoMin TensaoMax 100 Restri o de Integridade n 4 Al m das j apresentadas nesta tabela h ainda a seguinte restri o de integridade ao n vel do tuplo O valor do atributo relativo hora de triagem ze HoraTriagem tem de ser superior ao valor do atributo referente a hora de inscri o e Horalnscri o Seguidamente apresenta se a OD que se encontra subjacente a esta restri o de integridade DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF ROW ON Horalnscricao HoraTriagem FROM Dadores OF BDD WHERE Horalnscricao gt HoraTriagem Na Tabela 8 33 ilustram se algumas das 132 viola es identificadas a esta restri o de integridade resultantes da execu o desta OD Tabela 8 33 Resultados da OD de viola o da 4 restri o de integridade na tabela Dadores HoraInscricao HoraTriagem 10 27 00 10 10 00 16 35 00 16 24 00 11 22 00 11 02 00 10 24 00 10 17 00 12 37 00 12 31 00 17 10 00 17 03 00 13 07 00 13 01 00 Cap tulo 8 Estudo de Caso de Limpeza de Dados 299 Restri o de Integridade n 5 Por ltimo h uma restri o que obriga a que um dador tenha idade compreendida entre os 18
200. a a correspondente opera o ao n vel do esquema de dados A propriedade c digo postal encontra se especializada em duas sub propriedades c digo postal Portugu s e c digo postal dos E U A Estas especializa es da propriedade c digo postal pretendem cobrir casos espec ficos Uma OD de viola o de dom nio opera o B encontra se definida para a primeira sub propriedade O objectivo desta opera o consiste em identificar os valores que n o correspondem um c digo postal Portugu s existente Caso exista um mapeamento entre um atributo e esta sub propriedade ver Figura 9 5 duas OD s o automaticamente instanciadas a viola o de dom nio opera o B e tamb m a viola o de sintaxe opera o A Esta ltima opera o herdada da propriedade pai da sub propriedade c digo postal 326 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Como se pode constatar na Figura 9 6 na sub propriedade c digo postal dos E U A encontram se especificadas duas OD uma viola o de sintaxe opera o C e uma viola o de dominio opera o D Suponha se que os c digos postais dos E U A n o correspondem sintaxe definida ao n vel da propriedade c digo postal o que obriga especifica o de uma nova OD de viola o de sintaxe A detec o de viola o de dom nio nos c digos postais dos E U A tem uma finalidade similar detec o de viola o de dom nio nos c digo
201. a chave prim ria da rela o cont m valores que s o conflituosos entre si eg o tuplo chentes 10 Ant nio Carlos Carvalho Rua do Sol 123 205723467 um duplicado inconsistente do tuplo chentes 72 Antonio Carlos Carvalho Rua das Flores 987 205723467 O Viola o de restri o de integridade Uma restri o de integridade ao n vel dos valores dos atributos de m ltiplos tuplos n o respeitada e g a quantidade de exist ncias Cap tulo 4 Problemas de Qualidade dos Dados 85 em stock de produtos da fam lia X n o superior a 700 violando assim uma restri o existente 4 2 4 Problemas ao N vel de M ltiplas Rela es Fontes de Dados Nesta sec o apresentam se os PQD que envolvem os valores de m ltiplas rela es pertencentes a uma ou mais FD quando considerados conjuntamente tal como se ilustra na Figura 4 10 Entre as rela es podem existir ou n o associa es Figura 4 10 Valores dos atributos em m ltiplos tuplos de m ltiplas rela es de uma ou mais FD O crit rio utilizado na identifica o dos PQD que ocorrem a estes n veis encontra se representado na Figura 4 11 Seguidamente clarifica se o significado de cada PQD identificado O Heterogeneidade de sintaxes Utiliza o de sintaxes diferentes entre as rela es para representar a mesma propriedade eg na rela o X o atributo data encomenda representado sob a forma dia m s ano enq
202. a da rela o Viola o de Unicidade Viola o de Restri o de Integridade Figura 7 4 Sequ ncia de depend ncias das OD no contexto multi valor do atributo No caso do utilizador especificar OD para todos os PQD suscept veis de se manifestarem no contexto dos m ltiplos valores de um dado atributo a execu o dessas opera es efectuada de acordo com a sequ ncia apresentada No caso de sobre o atributo incidir apenas um subconjunto de OD a sua execu o respeita na mesma a sequ ncia apresentada Cap tulo 7 Modelo Proposto para a Limpeza de Dados 225 A primeira opera o da sequ ncia consiste na OD de exist ncia de sin nimos Na depend ncia de execu o desta opera o encontram se as OD de viola o de unicidade e viola o de restri o de integridade No caso da viola o de unicidade a cria o da depend ncia visa optimizar a execu o desta opera o Os pares de valores identificados como sin nimos naturalmente n o s o iguais da que possam ser exclu dos da OD de viola o de unicidade Apenas por este motivo que a execu o destas duas opera es n o realizada em simult neo De facto a exist ncia de sin nimos nos valores de um atributo n o impede a detec o das viola es de unicidade que possam existir e vice versa Igualmente da exist ncia de sin nimos n o resulta a detec o de viola es de unicidade que surgem como um mero reflexo daquele problema e vic
203. a facilidade e rapidez com que os dados podem ser acedidos pelos utilizadores Pipino e a 2002 Interpretabilidade Envolve a exist ncia de informa o suplementar e meta dados sobre os dados com o objectivo de clarificar o seu significado o que garante a sua utiliza o de forma adequada Brackstone 1999 2 3 Contextos de Preocupa o com a Qualidade dos Dados Essencialmente as preocupa es com a QD manifestam se nos seguintes contextos Galhardas e al 2000b O Detec o e Correc o DC dos PQD e g valores em falta viola es de sintaxe registos duplicados existentes ao n vel da fonte de dados individual e g base de dados ou ficheiros Um exemplo de uma situa o em que h a necessidade de detectar e corrigir os erros e anomalias existentes na FD ocorre aquando da implementa o de um projecto de gest o de relacionamento com o cliente vulgarmente designado pela sigla CRM Customer Relationship Management Migra o de dados pouco estruturados ou n o estruturados para uma FD estruturada e g migra o dos dados que se encontram num ficheiro de texto para uma tabela de uma base de dados que facilite a sua manipula o A implementa o de um projecto de descoberta de conhecimento em bases de dados vulgarmente conhecido por minera o de dados constitui um exemplo de uma situa o que obriga a que os dados sejam colocados segundo uma representa o estruturada Integra
204. a isso tenha sido necess ria qualquer opera o de transforma o de dados Al m de obedecer aos requisitos iniciais o modelo de LD desenvolvido possui ainda as seguintes catacter sticas Q Define um mecanismo de execu o incremental das OD Nos NG do atributo designadamente no contexto do valor individual e do tuplo sempre que detectado um PQD num tuplo todas as subsequentes OD da sequ ncia de execu o que envolvem o atributo ou atributos em causa ficam pendentes A detec o dos problemas prossegue com toda a normalidade em todos os outros atributos e tuplos nos quais n o foram identificados PQD O objectivo reportar ao utilizador o m ximo n mero de problemas poss vel em cada execu o das sequ ncias de OD Ap s terem sido efectuadas as correc es de forma manual e caso a caso ou autom tica e com base nas OC especificadas pelo utilizador a execu o das sequ ncias de OD reinicia se nos mesmos pontos onde tinham sido detectados os problemas Todas as opera es pendentes da sequ ncia de execu o v o agora ser executadas na procura de outros PQD Caso sejam detectados uma nova itera o de correc o detec o volta a ocorrer repetindo se tudo aquilo que at agora se descreveu De notar que nesta nova itera o apenas s o executadas as OD relativas aos atributos e aos tuplos nos quais tinham sido detectado PQD resultantes da itera o anterior Este mecanismo de execu o increm
205. a l gica inerente a cada opera o que conduz correc o do PQD Na apresenta o da formaliza o sem ntica de cada OC adoptada a abordagem que a seguir se descreve Em primeiro lugar efectuada uma descri o textual sucinta e informal da filosofia subjacente OC Ap s esta que se apresenta de modo formal a sem ntica da opera o De referir que a este prop sito se adoptou a mesma abordagem usada na formaliza o das OD e um misto de lgebra relacional e linguagem algoritmica A justifica o para esta abordagem a mesma do que a exposta na Sec o 5 1 do cap tulo anterior semelhan a das OD a formaliza o das OC constitui um dos objectivos deste trabalho tal como enunciado no Cap tulo 1 Sec o 1 3 A formaliza o das OC importante uma vez que constitui a base para a sua implementa o computacional 6 2 Defini es Gerais Nesta sec o enunciam se as defini es de car cter geral a n vel sint ctico e sem ntico utilizadas na generalidade das formaliza es das OC dos PQD Como tal esta sec o tender a ser consultada in meras vezes ao longo da leitura deste cap tulo 6 2 1 Sintaxe da Linguagem de Especifica o Nesta sec o define se a linguagem declarativa que permite ao utilizador especificar as OC a efectuar para solucionar automaticamente os PQD detectados Tal como a linguagem de especifica o das OD esta linguagem segue o esp rito da Structured Query La
206. a organiza o ainda que sejam muito dif ceis sen o mesmo imposs veis de quantificar Estes s o os custos intang veis da fraca QD Em Redman 2004 argumenta se que estes custos representam uma fatia de montante semelhante aos custos tang veis Cap tulo 2 Qualidade de Dados 23 No seu conjunto os custos tang veis e intang veis da fraca QD representam uma percentagem significativa dos proveitos organizacionais Em Redman 2004 aponta se para um valor que ronda os 20 2 5 Gest o da Qualidade dos Dados Em Wang 1998 defende se a metodologia Gest o Total da Qualidade dos Dados GTQD em ingl s Total Data Quality Mangement pata a melhoria cont nua da qualidade Na literatura h outras metodologias que visam gerir a QD eg Sistema da Qualidade Seis Sigma em ingl s Six Sigma Quality System Pande et al 2000 no entanto esta a mais divulgada A metodologia GTQD constitui uma adapta o da Gest o Total da Qualidade em ingl s Total Quality Management a area da gest o da QD com base na abordagem produto informa o Wang 1998 De acordo com a metodologia o resultado produzido por um sistema de informa o considerado como sendo um produto 7e o produto informa o que visa satisfazer as necessidades dos clientes ou consumidores da informa o Da mesma forma que um produto f sico tem crit rios de qualidade associados um produto informa o tamb m tem associados crit rios de qualid
207. a pelo dom nio a tabela substitu da pelo conceito e o atributo substitu do pela propriedade Cada elemento da ontologia e g propriedade pode participar em diversas opera es de LD No exemplo apresentado na Figura 9 2 duas opera es conceptuais de LD e detec o de viola o de sintaxe e de viola o de dom nio encontram se definidas para a propriedade C digo Postal A especifica o das opera es conceptuais de LD constitui o segundo passo da abordagem Representa o do Mundo Real Opera es de LD DETECT Syntax Violation ON C digo Postal WHERE C digo Postal NOT LIKE gt ON DETECT Domain Violation ON C digo Postal i WHERE C digo Postal NOT IN I Figura 9 2 Especifica o conceptual das opera es de LD Na BD na qual se pretende detectar e corrigir os PQD o utilizador estabelece manualmente mapeamentos entre o seu esquema de dados e a ontologia do dom nio respectiva Os mapeamentos entre os dois n veis 7 e da ontologia e do esquema de dados s o estabelecidos entre 7 uma BD e um dom nio 7 uma tabela e um conceito e 717 um atributo e uma propriedade Um mapeamento entre uma BD e um dom nio significa que aquela cont m dados deste dom nio Um mapeamento entre uma tabela e um conceito significa que aquela cont m dados que correspondem a este conceito Por ltimo um mapeamento entre um atributo e uma propriedade significa que aquele cont m valores
208. a pelo utilizador A linguagem de especifica o n o totalmente declarativa uma vez que permite a invoca o de c digo procedimental e g fun es definidas pelo utilizador Ali s precisamente esta caracter stica que confere linguagem potencialidades de extensibilidade e g invoca o de fun es espec ficas do dom nio A sem ntica de cada transforma o envolve a gera o de excep es aquando da ocorr ncia de situa es anormais erros ou inconsist ncias As excep es constituem a base de um ambiente Cap tulo 3 Limpeza de Dados 57 interactivo com o utilizador na manipula o dessas situa es Os registos causadores de uma situa o excepcional durante uma transforma o s o marcados para posterior an lise por parte do utilizador A originalidade adv m das excep es serem toleradas e n o obrigarem paragem do processo de transforma es O Ajax tamb m permite a an lise dos resultados interm dios produzidos ao longo do grafo de transforma es O ltimo aspecto relevante consiste na exist ncia de um mecanismo geneal gico dos dados em ingl s data lineage que permite a obten o de explica es Em cada transforma o o utilizador pode aceder aos registos que estiveram na base da gera o de um determinado registo Este mecanismo permite analisar o processo de transforma es auxiliando o utilizador a compreender os resultados alcan ados Isto possibilita identificar a
209. a qualidade dos dados exposto no Cap tulo 2 No mbito deste trabalho de doutoramento procedeu se ao seu estudo e respectiva experimenta o Estas ferramentas suportam a realiza o das diversas actividades efectuadas no processo de melhoria da qualidade dos dados nomeadamente data profiling an lise de dados transforma o de dados e limpeza de dados A 1 Datiris Profiler A ferramenta Datiris Profiler Dataris 2007 efectua data profiling em bases de dados dos seguintes tipos Oracle SOL Server e Access Atrav s de uma conex o ODBC ainda poss vel aceder a outros tipos de bases de dados O primeiro passo a efectuar quando se utiliza esta ferramenta consiste em especificar a fonte de dados e a s tabela s a analisar A ferramenta permite manipular simultaneamente m ltiplas tabelas batch profiling podendo ser especificadas diferentes op es para cada uma destas No passo seguinte procede se escolha dos atributos a analisar Normalmente o interesse do data profiling encontra se centrado num subconjunto dos atributos existentes De seguida h que seleccionar os registos a considerar Para o efeito est o dispon veis tr s op es todos os registos apenas os 7 primeiros registos e um subconjunto dos registos da tabela em fun o de um determinado crit rio Ap s terem sido especificadas estas op es o utilizador d in cio ao processo de data profiling propriamente dito Os resultados s o apresentados
210. a rela o apenas h necessidade de executar as sequ ncias de OD que envolvam um ou mais atributos cujos valores tenham sido objecto de correc es As sequ ncias de OD em que nenhum dos atributos envolvidos sofreu qualquer correc o n o voltam a ser executadas No caso do exemplo apenas repetida a execu o da sequ ncia de OD que envolve o atributo Profiss o Nos NG multi rela o de uma fonte de dados e multi rela o de diferentes fontes de dados verifica se exactamente o mesmo do que no NG da rela o Assim apenas h a necessidade de executar as sequ ncias de OD que envolvam um ou mais atributos independentemente da rela o cujos valores tenham sofrido altera es Em todas as outras sequ ncias em que nenhum dos atributos envolvidos tenha sido objecto de altera es n o se justifica uma nova execu o No caso espec fico do PQD viola o de integridade referencial o mbito de execu o da OD ainda mais restrito uma vez que considera apenas os tuplos cujos valores foram alterados No caso do exemplo apresentado apenas executada novamente a sequ ncia de OD que envolve o atributo Profiss o da rela o em causa O comportamento que acabou de ser descrito por NG perante a necessidade de voltar a executar as OD desde o in cio 7 e desde o NG mais elementar similar ao que decorre do rein cio das OD em cada NG e que tinha sido exposto na Sec o 7 4 1 Importa agora apresentar o modo de opera
211. a rela o que armazena o valor que constitui viola o restri o de integridade com o seguinte esquema Z valor O tipo de dados de valor o mesmo do que o retornado pela ltima fun o no caso fdu da sequ ncia de FDU na OD in cio T lt Coon Cz resto 2 Dq Da E s v lt fdu p ProrP v lt fdu Pay Pas v eft 2 Po spo jw se avalia _condi o PR 1PR 27PR z verdadeiro ent o Z ZUJ t v fim se fim Notas Os valores dos diversos atributos envolvidos eg dm Cis Co 6 6 constituem par metros de uma ou mais fun es fdu No caso da ltima fun o da sequ ncia de FDU 7 e fdu retornar uma estrutura de dados do tipo unidimensional 7 e um vector a formaliza o anterior alvo das altera es acrescentos que a seguir se apresentam O que permanece inalterado encontra se representado sob a forma de retic ncias Algoritmo Detec o Viola o Restri o Integridade amp seja Z a rela o que armazena os valores que constituem viola es restri o de integridade com o seguinte esquema Z valor O tipo de dados de valor o mesmo do que o retornado pela ltima fun o no caso fdu da sequ ncia de FDU na OD in cio w fdu 2 Ps sod sy repetir para 1 lt 1 at dimens o v Cap tulo 5 Formaliza o das Opera es de Detec o 159 Z ZU cu fim repetir fim No caso da ltima fun o da sequ ncia 7 e fdu
212. acaoConcinsao envolveu a sua substitui o pelos valores que comparativamente a estes apresentam o maior grau de semelhan a Para tal executou se a OC que a seguir se apresenta CORRECT MISSPELLING ERRORS ON DesignacaoConclusao FROM Conclusoes OF BDD De acordo com a sem ntica apresentada no Cap tulo 6 esta OC substitui o erro ortogr fico pelo valor que possui o maior grau de semelhan a No caso de existir mais do que um valor com o mesmo grau de semelhan a n o efectuada correc o autom tica 8 3 1 2 Tabela Inutilizacoes Opera es de Detec o Na Tabela 8 4 apresentam se as OD efectuadas no contexto do valor individual dos atributos da tabela Inutilizacoes Tabela 8 4 OD executadas no contexto do valor individual dos atributos da tabela Inutilizacoes Valor em Viola o de Erro Atributo falta sintaxe ortogr fico Codigolnutilizacao DescricaoInutilizacao A execu o das OD de valores em falta em cada um dos atributos viola o de sintaxe no atributo Codigolnutilizacao deve ser composto por dois d gitos num ricos e erro ortogr fico no atributo Descricaolnutiizacao n o redundou na detec o de qualquer PQD 8 3 1 3 Tabela Hospitais Opera es de Detec o A Tabela 8 5 exibe as OD efectuadas no contexto do valor individual dos atributos da tabela Hospitais Cap tulo 8 Estudo de Caso de Limpeza de Dados 277 Tabela 8 5 OD executadas no contexto do valor
213. ade Wang 1998 A adop o do termo produto informa o visa enfatizar o facto dos resultados obtidos a partir dos dados possu rem valor sendo este transferido para os seus consumidores O conjunto de sistemas que processam os dados em bruto e os disponibilizam aos seus consumidores sob a forma de produtos de informa o considerado um processo de manufactura de informa o Esta metodologia nasce de uma analogia com o tradicional fabrico de produtos no qual o sistema produtivo actua sobre materiais em bruto para gerar os produtos Apesar do n mero exacto e das designa es das dimens es variarem de investigador para investigador desde os meados dos anos 90 que a ess ncia desta metodologia possui uma elevada aceita o entre a comunidade de investiga o da rea Tal como se ilustra na Figura 2 1 a metodologia GTQD envolve as seguintes fases na melhoria cont nua da QD definir avaliar analisar e melhorar O ciclo an logo ao ciclo de melhoria da qualidade proposto em Deming 1986 composto pelas seguintes fases planear executar controlar e actuar 24 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica amp Figura 2 1 Ciclo da GTQD A primeira fase do ciclo consiste na defini o das dimens es da QD e dos requisitos que estas devem assegurar aos consumidores dos dados A fase de avalia o visa a produ o de m tricas que quantifiquem a QD nas dimens
214. ade apenas ao n vel dos valores armazenados nas tabelas Normalmente esta perspectiva que os investigadores da rea da inform tica adoptam na defini o do conceito reflectindo a sua vis o objectiva sobre o que a QD 16 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Em qualquer Fonte de Dados FD quase certo existirem PQ de completude consist ncia e correc o dos dados Mais de metade dos registos criminais inform ticos dos Estados Unidos da Am rica foram classificados como estando incorrectos incompletos ou amb guos Strong cf al 1997 Ao n vel da FD individual s o in meros os PQ que podem afectar os dados entre os quais valores em falta em atributos de preenchimento obrigat rio representa es n o uniformes dos mesmos dados e g uso de abreviaturas valores incompletos m ltiplos registos relativos mesma entidade do mundo real erros ortogr ficos e inconsist ncias entre os valores Lee e al 1999 Low et al 2001 A import ncia da qualidade dos valores dos dados foi originalmente identificada em 1950 aquando dos censos nos Estados Unidos da Am rica Kilss e Alvey 1985 No entanto apenas recentemente se come ou a assistir a uma consciencializa o de que uma parte importante dos dados na generalidade das fontes apresenta PQ Ao n vel do atributo diversos estudos reportam taxas de ocorr ncia que v o desde os 0 5 at aos 30 Redma
215. ades O algoritmo percorre sequencialmente a tabela ordenada recorrendo fila de prioridades composta por conjuntos de registos pertencentes aos ltimos segmentos ou clusters de duplicados identificados Cada membro de um segmento um duplicado aproximado de qualquer outro membro A fila de prioridades n o pode exceder um determinado n mero m ximo de conjuntos de registos Cada conjunto cont m um ou mais registos de um segmento O conjunto que representa o segmento em que foi acrescentado o membro mais recente possui a maior prioridade da lista e assim sucessivamente Para cada registo r da tabela o algoritmo come a por verificar se r j membro de algum dos segmentos representados na fila de prioridades A verifica o feita comparando o segmento representativo a que pertence r com os representativos dos segmentos existentes na fila de prioridades Caso alguma das compara es tenha sucesso isso significa que 7 j membro de um segmento representado por um conjunto de registos na fila de prioridade Este conjunto passa a ser o que det m maior prioridade Caso r n o seja membro de um segmento existente na fila de prioridades efectuada uma pesquisa que compara r com os registos existentes na fila de prioridades Esta pesquisa itera por cada conjunto de registos da lista de prioridades come ando por aquele com maior prioridade Em cada conjunto o algoritmo itera pelos seus diversos elementos Caso uma semelhan a seja detec
216. ado na OC seja flag actualiza valores rela o R uma vari vel booleana que indica se o PQD em quest o deve ser solucionado em R ou em S O valor desta vari vel resulta da especifica o da OC seja mat altera es uma matriz onde se encontram as altera es de formato a realizar uma por linha resultante da especifica o da OC A matriz composta por duas colunas representando a primeira a express o regular e a segunda o correspondente novo formato sint ctico seja efectua correc o sint ctica valor mat altera es uma fun o que recebe um valor de um atributo e uma matriz de altera es de formato e caso haja concord ncia entre o valor e uma express o regular coloca o valor de acordo com o formato sint ctico associado Como resultado a fun o devolve o valor no seu novo formato Caso n o haja concord ncia a fun o n o efectua qualquer modifica o retornando o valor inalterado Para n o tornar as formaliza es expostas nas sec es seguintes excessivamente extensas optou se por efectuar a sua apresenta o considerando que a condi o de selec o cond foi especificada pelo utilizador na OC Na situa o de tal n o acontecer uma vez que esta opcional basta remover cond das express es em lgebra relacional bem como o respectivo operador de selec o 2 2 O em cada formaliza o apresentada Estas altera es fazem com que as formaliza es passem a reflectir a sem ntica inerente
217. ador que socorrendo se de outros atributos da rela o e de uma rela o auxiliar actualiza o valor do atributo NomeFuncionario A ordem pela qual as tr s OC s o executadas absolutamente irrelevante O facto da correc o de viola o de sintaxe ser executada em primeiro segundo ou terceiro lugar n o tem qualquer implica o nas demais OC O mesmo se passa com as outras OC Isto acontece em virtude de n o existir qualquer depend ncia de execu o entre as OC exist ncia desta resulta da pr pria independ ncia de execu o das opera es que comp em a sequ ncia de OD o que permitiu que diferentes tipos de PQD fossem reportados de uma s vez Como j referido quando existe mais do que uma OC respeitante a um determinado tipo de problema a ordem de execu o das opera es obedece ordem de especifica o por parte do utilizador No caso espec fico da OC de heterogeneidade de unidades de medida for osamente esta tem de preceder a opera o de remo o de tuplos duplicados A exist ncia de unidades de medida diferentes entre as duas rela es constitui um obst culo consolida o dos clusters de tuplos duplicados existentes num s tuplo S ap s ambos os atributos estarem sob uma unidade de medida comum faz sentido proceder consolida o dos tuplos duplicados existentes Assim como h uma depend ncia Cap tulo 7 Modelo Proposto para a Limpeza de Dados 257 entre estas duas opera es s o
218. ados permitindo a detec o dos problemas mais comuns Cap tulo 3 Limpeza de Dados 61 O Potter s Wheel suporta os seguintes tipos de problemas Q Sint cticos Como consequ ncia de diferen as ao n vel da sintaxe dos atributos e g 31 05 04 e 2004 05 31 O Ao n vel do esquema Resultantes de deficientes estrat gias de integra o de dados Por exemplo nalguns casos os valores de um determinado atributo encontram se a nulo e noutros casos est o correctamente preenchidos O Viola o de restri es de integridade A detec o deste tipo de problemas requer algoritmos espec ficos do dom nio A detec o pode ser efectuada ao n vel de um nico registo ou envolvendo v rios registos e g o somat rio dos valores das linhas de uma factura n o s o iguais ao valor da factura correspondente Um conjunto de operadores designado de transformadores encontra se dispon vel permitindo a realiza o de transforma es usuais ao n vel do esquema Os transformadores s o simples e f ceis de especificar atrav s do ambiente gr fico n o envolvendo linguagens complexas de transforma o Um elevado n mero de situa es de transforma o encontra se coberto custa da composi o dos diferentes transformadores Os transformadores efectuam um balanceamento entre tr s objectivos 7 poder das opera es de transforma o sem recurso a programa o expl cita por parte do utilizador 7 facilidad
219. ados Naturalmente apenas se pode avaliar a efic cia se existir um conjunto de teste sobre o qual as estrat gias de detec o de duplicados possam ser aplicadas A efic cia de uma estrat gia de detec o de duplicados tem implica o directa no grau de melhoria da QD O Precis o Representa a rela o entre o numero de duplicados correctamente detectados e o n mero total de duplicados existentes nos dados de acordo com a seguinte f rmula N merode duplicados correctamente detectados Precis o N merototal de duplicadosexistentes O Falsos positivos Representa a rela o entre o numero de duplicados incorrectamente detectados e o n mero total de duplicados detectados de acordo com a seguinte f rmula e N merode duplicados incorrectamente detectados Falsos Positivos gt gt gt N merototal de duplicados detectados 3 4 5 Abordagens Utilizadas na Elimina o de Duplicados A correc o deste PQD s e exist ncia de duplicados envolve remover os registos duplicados de modo a que cada entidade do mundo real fique representada num s registo Na remo o autom tica dos duplicados podem ser seguidas duas vias distintas Um dos registos considerado correcto e g o mais recente e todos os seus duplicados considerados errados Neste caso o objectivo eliminar da tabela todos os registos duplicados de um determinado registo Esta via proposta por exemplo em
220. adssesesssstusedsssiutnanietes 71 5 2 0 Analises Comparative tu trocas giro cl dra lave da dada dove e Bad dE E ad a E Ena sda 73 3 6 CONCLUS O 5 cssies ctsssssscchscesssesssesncauadessissedsassossisasiasedssssonsaeastecubuvasteasetesesabevasceacetesusavenusteesesttebass 74 CAP TULO 4 PROBLEMAS DE QUALIDADE DOS DADOS 71 41 INTRODU O stato tals estalo talo decades tado nlato loca data ita da toddcad chestusunteencuesvsvaveuntucnenessisnveuntucnenaneetan 77 4 2 TAXIONOMIA DE PROBLEMAS DE QUALIDADE DOS DADOS ccsscsssssessceesceeeecesscescessncesseesees 78 42 1 PROBLEMAS AO N VEL DO ATRIBUTO deiere reiterar REEE E 80 4 2 1 1 Contexto do Valor Individuaal ccccessssssssssssssessssssesesssssseseessssssesesssssseseseesssesesesesseseseessesaeaeeess 80 42 2 Contexto Muli Valotie E EEEE EEE E E EE 81 A 2 2 PROBLEMAS O N VEL DO TUPLOitaicscteiatiantianatoueliandn iE EEI EER EEEE 82 4 2 3 PROBLEMAS AO N VEL DA RELACAO isecccssssssssssesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesesenenesenenens 83 4 2 4 PROBLEMAS AO N VEL DE M LTIPLAS RELA ES FONTES DE DADOS ssssssssssiesieriererrrerrrrsresre 85 ADD RESUMO a a are dei o dead dacs ad as Ada Aea aa PA EE A Ota E Ea Eat 88 4 3 COMPARA O COM TRABALHO RELACIONADO sscssscessssesscesscessceeeccesscessceseccesscesseeesscesseeenes 90 4 4 DEFINI O FORMAL DOS PROBLEMAS DE QUALIDADE DOS DADOS sssssssssessceseeeeeecesseeees 93 AA ANOTA O
221. ais n o foram detectados PQD n o s o novamente considerados At todos os problemas estarem solucionados podem ser necess rias m ltiplas itera es detec o correc o Em cada itera o os PQD existentes v o sendo progressivamente detectados e de seguida corrigidos tendo como ponto de rein cio da detec o os locais onde esta tinha sido interrompida na itera o anterior por este motivo que se considera a execu o das OD incremental Da execu o de cada OD resulta a identifica o dos PQD existentes sendo estes armazenados num reposit rio Sempre que a execu o das OD interrompida o utilizador acede a este reposit rio para analisar os PQD identificados que problemas e em que locais Os PQD detectados podem ser solucionados por via manual autom tica ou um misto das duas 2 e certos problemas s o solucionados manualmente enquanto outros o s o automaticamente Pela primeira via 7 e manual o utilizador interage directamente com a pr pria BD na correc o individual dos PQD identificados Apesar dos v rios inconvenientes desta solu o e g morosa trabalhosa prop cia a erro em certos PQD n o h outra hip tese que n o seja o recurso a esta via Alguns problemas e g resolu o de uma circularidade entre tuplos n o parecem suscept veis de resolu o autom tica uma vez que n o h uma regra gen rica que possa ser enunciada e aplicada A sua resolu o depende de uma an lise indi
222. alidade das formaliza es expostas nas sec es seguintes Igualmente a apresenta o da formaliza o das opera es efectuada seguindo a organiza o dos PQD por n vel de granularidade decorrente da taxionomia apresentada no Cap tulo 4 Assim come a se pela formaliza o das opera es que incidem sobre os problemas que ocorrem ao n vel do atributo seguir formaliza se a Opera o de Correc o OC do nico problema que ocotre ao n vel do tuplo e ap s esta formalizam se as opera es relativas aos problemas que se manifestam ao n vel da rela o Por ltimo apresenta se a formaliza o das opera es referentes correc o dos PQD que ocorrem ao n vel de m ltiplas rela es de uma ou mais Bases de Dados BD 6 1 Introdu o No cap tulo anterior apresentou se a formaliza o das Opera es de Detec o OD Neste cap tulo apresenta se a formaliza o do outro tipo de opera es envolvido na limpeza de dados e que permitem a correc o dos PQD detectados Para a generalidade dos problemas que fazem parte da taxionomia proposta uma OC autom tica Na grande maioria das opera es a correc o envolve meramente a altera o aos valores de um ou mais atributos Num conjunto restrito de opera es a correc o implica a remo o ou elimina o de um ou mais tuplos da rela o As OC baseiam se nos resultados produzidos pelas respectivas OD As opera es propostas suportam as corre
223. altera es n o se justifica repetir a execu o das OD No caso do exemplo apresentado apenas executada a sequ ncia de OD relativa ao atributo Profiss o ficando a execu o das opera es que comp em esta sequ ncia restrita ao valor que se encontra no tuplo identificado com o ID 5 i e Professor No contexto dos m ltiplos valores do atributo ainda no NG do atributo apenas se justifica repetir a execu o das sequ ncias de OD que envolvam atributos cujos valores tenham sofrido altera es As sequ ncias de OD que envolvam atributos em que tais altera es n o se tenham verificado n o voltam a ser executadas No caso do exemplo apenas executada a sequ ncia de OD que incide sobre o atributo profiss o No NG do tuplo apenas se justifica repetir a execu o das sequ ncias de OD que envolvam pelo menos um atributo que tenha sido alvo de altera es Tal como no contexto do valor individual Cap tulo 7 Modelo Proposto para a Limpeza de Dados 251 do atributo o mbito de execu o fica ainda mais limitado a apenas aos tuplos cujos valores tenham sido alterados Nos demais tuplos e em todos os atributos que tenham permanecido inalterados n o se procede repeti o da execu o das OD relativas a este NG No caso do exemplo apresentado apenas executada a sequ ncia de OD que envolve o atributo Profiss o ficando limitada aos valores que se encontram no tuplo identificado com o ID 5 No NG d
224. am se os dados correspondem s suas necessidades Estas defini es implicam que a qualidade seja definida pelo consumidores dos dados o que significa que n o pode ser avaliada de forma independente de quem os usa Strong et al 1997 A qualidade considerada como an loga de satisfa o A qualidade tamb m pode ser definida como o respeito pelas ou o superar das expectativas dos consumidores Estes conceitos s o origin rios da rea da qualidade dos produtos tendo estes sido adaptados pelos investigadores para caracterizar o que a QD A qualidade de um produto depende em primeira inst ncia do seu processo de concep o e produ o Wand e Wang 1996 No entanto um produto perfeito sob estes pontos de vista possui pouco valor se n o se adequa finalidade que o consumidor pretende Assim as caracter sticas do produto devem ir de encontro s necessidades do cliente 2 2 2 1 A Multi Dimensionalidade da Qualidade de Dados Diversos estudos emp ricos evidenciam que a QD um conceito multi dimensional e g Wang e Strong 1996 Dasu e Johnson 2003 Ives et a 1983 Wang e Kon 1993 Fox ez al 1994 Wand e Wang 1996 Wang e Strong 1996 Shanks e Darke 1998 Kahn e al 2002 uma vez que na sua defini o diferentes dimens es concorrem Nestes estudos foram efectuadas diversas propostas de dimens es ou crit rios que reflectem aspectos importantes da QD para os consumidores e que na opini o dos
225. ame Hlquality Address H1quality Identify e HIquality Merge O m dulo HIgnality Name Human Inference 2007d efectua opera es de limpeza em atributos que armazenam nomes de pessoas assegurando uma nota o correcta e completa O m dulo suporta a limpeza de nomes de diversos pa ses O conhecimento existente na base de conhecimento do m dulo sobre cada pa s permite validar abreviar uniformizar e converter este g nero de dados A base de conhecimento usada para verificar todos os elementos que fazem parte de um nome e g apelidos nomes pr prios t tulos acad micos sendo considerados inv lidos os que n o fa am parte desta O conhecimento tamb m usado para corrigir discrep ncias nos formatos dos nomes e revelar potenciais conflitos com atributos relacionados e g sexo do individuo O m dulo configur vel permitindo uma adapta o s necessidades espec ficas deste g nero de dados Estas necessidades resultam entre outras de regras gramaticais e de requisitos espec ficos de cada organiza o As seguintes opera es de LD encontram se dispon veis 7 convers o de formatos converte os nomes em fun o de uma estrutura predefinida e g dividir um nome nos seus v rios componentes uniformizar os nomes com base em regras i capitaliza o coloca o da primeira letra de cada palavra que constitui o nome do indiv duo em mai sculas 777 abrevia o de nomes este tipo de opera o visa garanti
226. aplica o radicalmente diferentes Assim no contexto em que se justifica a execu o de uma das opera es n o se justifica a execu o da outra execu o de uma OD de viola o de depend ncia funcional justifica se no contexto de uma rela o que n o se encontra na terceira forma normal 7 e normalizada Apenas nestes casos faz sentido identificar viola es de depend ncia funcional No caso da detec o de exist ncia de circularidade entre tuplos a execu o desta opera o justifica se em rela es que se encontram normalizadas S assim poss vel implementar um mecanismo de auto relacionamento Em rela es normalizadas n o existem viola es de depend ncia funcional Dependendo da situa o a primeira opera o a executar consiste na detec o de viola o de depend ncia funcional ou na detec o da exist ncia de circularidade entre tuplos num auto relacionamento exist ncia de uma viola o de depend ncia funcional ou de uma circularidade entre tuplos resulta de valores incorrectos nos atributos Estes valores incorrectos podem impedir que um ou mais tuplos sejam identificados como duplicados de outros tuplos da rela o Por outro lado da exist ncia de uma viola o de depend ncia funcional ou de uma circularidade pode resultar a detec o da viola o a uma determinada restri o de integridade que surge como um reflexo redundante da exist ncia de qualquer um dos problemas Por ambas as ra
227. ar o distantes um do outro pelo que n o ser o identificados como duplicados Como forma de superar este problema s o efectuadas m ltiplas passagens deste m todo criar chave de 46 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ordena o ordenar os registos e identificar duplicados usando chaves diferentes em cada uma das v rias itera es e g na primeira passagem o atributo morada usado como parte principal da chave enquanto que na segunda passagem utilizado o atributo nome com uma janela de compara es de reduzida dimens o Reconhece se que uma s chave n o garante que todos os registos duplicados fiquem pr ximos uns dos outros O objectivo subjacente a este m todo o de reduzir as hip teses de n o serem identificados todos os duplicados Cada itera o do m todo origina um conjunto de pares de registos duplicados Sobre este conjunto aplicada a transitividade matem tica 7 e se o registo r um duplicado do registo r2 e o registo r2 um duplicado do registo 15 ent o por transitividade o registo 7 tamb m um duplicado do registo 73 Desta forma os registos r e 1 s o considerados duplicados embora n o se encontrem simultaneamente em nenhuma das janelas de compara o criadas durante as diferentes itera es O resultado final resulta da reuni o de todos os pares de registos duplicados identificados em cada itera o sendo exclu dos os qu
228. ar desta abordagem n o constituir um objectivo inicial do trabalho durante a execu o do mesmo esta surgiu como resultado da explora o de uma oportunidade de investiga o entretanto identificada Por este raz o considera se que se trata de um resultado lateral do trabalho realizado Actualmente esta abordagem pode ser encarada como uma extens o ao modelo desenvolvido sob a forma de uma nova camada que futuramente vir a ser integrada neste Apesar de n o constituir um trabalho acabado a originalidade da abordagem j mereceu aprova o e reconhecimento em confer ncias cient ficas internacionais da rea e g Oliveira e al 2006c por este motivo que se considera que constitui uma contribui o deste trabalho de doutoramento 338 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Como coment rio de conclus o pode dizer se que o saldo final deste trabalho afigura ser francamente positivo Assim al m de terem sido concretizados os objectivos enunciados no in cio desta disserta o foi poss vel obter outros dois resultados inicialmente n o programados mas com relev ncia cient fica Ainda assim existe a consci ncia de que muito h a fazer para consolidar e dar seguimento ao trabalho efectuado no mbito deste doutoramento Algum desse trabalho futuro perspectivado na ltima sec o deste cap tulo 10 2 Compara o com Trabalho Relacionado N o se poderia dei
229. ara os quais se prop s e formalizou uma OD neste cap tulo podem ser detectados por uma outra via devidamente implementada na FDU No geral as formaliza es sem nticas apresentadas neste cap tulo foram desenvolvidas tendo como preocupa o as quest es relacionadas com a sua execu o eficiente No entanto n o foram levadas ao limite e haver o certamente optimiza es que podem ser introduzidas na execu o da detec o de alguns PQD Uma destas situa es a que diz respeito detec o de duplicados quando esta efectuada com base no produto Cartesiano A n o introdu o de optimiza es pode fazer com que a execu o deste tipo de OD em certas situa es se torne computacionalmente muito pesada Naturalmente isto depende do n mero de tuplos envolvidos e da capacidade de processamento do computador onde a opera o executada A optimiza o de algumas OD ser objecto de trabalho num futuro pr ximo FORMALIZA O DAS OPERA ES DE CORREC O Neste cap tulo apresenta se a formaliza o sint ctica e sem ntica das opera es que permitem solucionar os Problemas de Qualidade dos Dados PQD Dependendo do PQD a correc o pode implicar a altera o aos valores de um ou mais atributos ou a remo o de um ou mais tuplos de uma dada rela o semelhan a do cap tulo anterior come a se por apresentar as defini es de car cter geral a n vel sint ctico e sem ntico comuns gener
230. aracteres corresponde a uma s opera o de edi o em vez de duas Outras m tricas tamb m usadas ainda que menos representativas s o a dist ncia de Jaro Jaro 1989 e uma evolu o desta ltima designada de dist ncia de Jaro Winkler Winkler 1999 O segundo grupo de m tricas origin rio da comunidade cient fica da rea da recupera o de informa o transforma as strings em representa es vectoriais sobre as quais s o executadas an lises de semelhan a A m trica de maior representatividade neste grupo a da semelhan a baseada no co seno dos vectores Baeza Yates e Ribeiro Neto 1999 As strings s o representadas sob a forma de vectores unit rios num espa o bidimensional O valor do co seno do ngulo formado pelos dois vectores representa o grau de semelhan a existente entre as strings Caso os vectores se sobreponham o ngulo formado por estes zero Daqui resulta um valor do co seno igual a um o que significa que as sings s o iguais No caso do ngulo ser 90 o valor do co seno igual a zero Isto significa que n o existe qualquer semelhan a entre as strings Estas duas situa es representam os extremos Todas as outras situa es interm dias correspondem a graus vari veis de semelhan a entre as duas strings Um outro m todo de compara o de strings tamb m inspirado em representa es vectoriais baseado em a grams Hylton 1996 Um n gram uma Cap tulo 3 Limpeza de Dados 53
231. as algumas destas opera es acabam por ser executadas ao mesmo tempo Nestes casos a sequ ncia de depend ncias corresponde a um grafo dirigido de OD Esta situa o semelhante exemplificada nas duas sec es anteriores respectivamente para os NG do tuplo e da rela o Este m dulo tem por miss o criar as sequ ncias de depend ncias das OD especificadas ao n vel multi rela o Na cria o destas sequ ncias utiliza se a mesma abordagem da que se encontra descrita no ltimo par grafo da sec o anterior referente ao NG da rela o 234 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 7 4 Motor de Execu o Incremental das Opera es de Detec o Uma vez estabelecidas as sequ ncias de depend ncias por NG das OD definidas pelo utilizador chegado o momento da sua execu o execu o das opera es respeita estas sequ ncias iniciando se com as que dizem respeito ao NG do atributo e terminado com as que se referem ao NG multi rela o de diferentes fontes de dados Em cada NG podem existir diversas sequ ncias de OD para execu o A exist ncia destas sequ ncias reflecte a independ ncia de execu o das opera es que as comp em Cada sequ ncia pode ser composta por uma ou v rias OD Sempre que h sequ ncias independentes as OD que as integram s o executadas em simult neo Como se salientou na sec o anterior a exist ncia de um determinado
232. as fun es que permitem concluir se dois registos s o ou n o duplicados consiste em recorrer a algoritmos de aprendizagem autom tica Cohen e Richman 2001 O objectivo treinar um classificador que permita distinguir entre duplicados e n o duplicados O algoritmo recebe um conjunto de treino composto por pares de duplicados e de n o duplicados Um conjunto com diversos tipos de fun es de semelhan a espec ficas do dom nio em quest o tamb m fornecido por um perito do dom nio O algoritmo de aprendizagem socorre se dos exemplos para automaticamente encontrar a melhor forma de combinar e definir os limiares de semelhan a dos diversos atributos O sucesso desta abordagem depende muito do fornecimento de um conjunto de treino abrangente composto por pares de registos que sejam reveladores das subtilezas das duplica es e n o duplica es existentes Este processo n o nada trivial uma vez que implica que o utilizador pesquise manualmente em tabelas de grandes dimens es os pares de registos que interessa incluir no conjunto de treino Surpreendentemente o que se reveste ainda de maior dificuldade encontrar um conjunto de registos n o duplicados que possam ser confundidos com registos duplicados Sarawagi e Bhamidipaty 2000 A recolha manual de um n mero elevado de registos duplicados n o permitir alcan ar uma elevada precis o a n o ser que um especial cuidado seja colocado na selec o de um conjunto represent
233. as n o poss vel anular os efeitos a partir de um determinado ponto da sequ ncia de OC Actualmente ao efectuar se a anula o rep e se o estado anterior execu o da primeira OC da sequ ncia As limita es enunciadas a n vel de anula o dos efeitos das OC ser o objecto de trabalho futuro Uma rela o auxiliar composta pelo conjunto de atributos envolvidos nas diversas OC que incidem sobre a rela o respectiva Comparativamente a esta na rela o auxiliar ficam exclu dos os atributos que n o s o suscept veis de sofrer altera es 7 e que n o est o envolvidos em qualquer OC H no entanto uma situa o que obriga a que a rela o auxiliar contenha todos os atributos da rela o a que se encontra associada Para tal basta que exista uma opera o de remo o elimina o no conjunto de opera es que incidem sobre a rela o Quando isto acontece necess rio armazenar os valores de todos os atributos na rela o auxiliar para que caso se mostre necess rio seja poss vel restaurar os tuplos eliminados Al m da rela o auxiliar poder n o ser uma r plica da rela o a que se encontra associada na ptica do atributo tamb m pode n o o ser na perspectiva do tuplo Na rela o auxiliar armazena se apenas informa o relativa aos tuplos que se encontram afectados por PQD resultantes da execu o das diversas OD que incidem sobre a rela o em quest o Apenas os valores referentes a esses tupl
234. as de uniformiza o bem como a altera o das existentes de base de modo a cobrir situa es espec ficas de LD O m dulo possui potencialidades de interpretar compreender e reorganizar os valores tendo em conta o contexto em que se encontram Em fun o do contexto o significado de um mesmo valor pode diferir As regras permitem detectar palavras chave e padr es no valor de cada atributo de que resulta a identifica o dos elementos relevantes merecedores de serem armazenados em novos atributos A realiza o destas opera es de decomposi o adv m da exist ncia de atributos sobrecarregados de valores Estas opera es melhoram n o s o valor dos dados como tamb m aumentam a taxa de recupera o de registos duplicados O m dulo de valida o de endere os postais permite validar endere os postais de diversos pa ses ainda que o grau de valida o concedido varie de pa s para pa s O m dulo identifica automaticamente o pa s de origem do endere o e aplica lhe o conjunto de regras de valida o postal respectivo entre os diversos conjuntos que possui de base Esta potencialidade muito til em FD que armazenam endere os referentes a pa ses diferentes mas nas quais n o h qualquer indica o sobre o pa s a que os endere os dizem respeito As regras permitem validar e quando poss vel corrigir e at mesmo completar os atributos referentes a endere os postais e g morada c digo postal localidade O m
235. as m tricas da QD assumem esta forma e g consist ncia completude A m trica definida de acordo com o apresentado na f rmula seguinte Por exemplo a completude ao n vel do atributo ze coluna de uma tabela definida em fun o do n mero de valores em falta nesse atributo numero de casos com o problema de qualidade numero total de casos O Opera o m nimo ou maximo Na manipula o de dimens es que envolvem a agrega o de m ltiplos indicadores da qualidade vari veis pode usar se a opera o m nimo ou m ximo O m nimo ou o m ximo determinado a partir da lista que cont m os valores normalizados referentes a cada indicador de qualidade considerado A opera o m nimo conservadora uma vez que atribui dimens o um valor agregado igual ao menor valor que se encontra nos indicadores da qualidade Ao inv s a opera o m ximo representa uma interpreta o liberal dos diversos indicadores de qualidade da dimens o Estes indicadores podem ser calculados recorrendo ao r cio simples Q M dia ponderada Caso haja um perfeito conhecimento da import ncia de cada indicador de qualidade na avalia o global de uma determinada dimens o ent o o uso da m dia ponderada dos diversos indicadores adequado Cada factor de pondera o deve situar se entre zero e um e o seu somat rio tem de ser igual a um A avalia o da qualidade constitui uma tarefa dif cil pelos seguintes motivos Q As d
236. as ou atributos estarem em falta as opera es de limpeza correspondentes t m de ser eliminadas Isto faz com que as altera es a efectuar se revistam ainda de maior dificuldade n o constituindo meras opera es de localizar e substituir Neste cap tulo apresenta se uma extens o ao modelo de LD exposto no Cap tulo 7 que suporta a interoperabilidade das opera es de DC entre BD diferentes de acordo com o proposto em Oliveira e al 2006c A extens o apresentada consiste numa abordagem que tira partido das Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 319 opera es de LD especificadas de uma forma abstracta conceptual ao n vel de uma ontologia do dom nio Estas opera es encontram se independentes do esquema de qualquer BD Tendo por base um conjunto de mapeamentos definidos pelo utilizador entre o esquema de uma BD e a ontologia do dom nio um conjunto de opera es conceptuais automaticamente instanciado BD em causa sendo a sua execu o proposta ao utilizador A abordagem permite que as opera es de limpeza conceptuais possam ser facilmente reutilizadas em diferentes BD 9 2 Descri o da Abordagem Proposta A abordagem proposta para a interoperabilidade das opera es de LD assenta na exist ncia de ontologias dos dom nios a que pertencem as BD nas quais as opera es s o executadas Tal como se ilustra na Figura 9 1 a representa o da realidade e do mundo
237. as reais causas da exist ncia dos PQD No mbito deste trabalho de doutoramento apenas o primeiro tipo de actividades constitui objecto de estudo embora se reconhe a a import ncia do segundo na elimina o definitiva dos PQD Ainda que existam outras possibilidades para a DC autom tica dos PQD a apresentar no Cap tulo 2 Sec o 2 7 a Limpeza de Dados LD por se basear unicamente nas especifica es do pr prio utilizador constitui a forma mais efectiva de alcan ar esse objectivo As reas acad mica e comercial t m contribu do com diversas solu es inform ticas para a LD No entanto estas solu es apresentam alguns problemas e limita es relevantes Os prot tipos resultantes dos trabalhos de investiga o realizados ainda que se auto intitulem de LD possuem potencialidades limitadas a este n vel No geral estes prot tipos est o 5 O termo autom tico refere se unicamente execu o do processo de DC uma vez que este efectuado por meios exclusivamente autom ticos Naturalmente um processo de DC no global nunca completamente autom tico pois requer o envolvimento do utilizador quanto mais n o seja para analisar os problemas detectados e validar as correc es efectuadas Nesta perspectiva o termo mais adequado semi automdtico 6 O termo utilizador empregue nesta disserta o com um sentido para al m do tradicional Assim utilizador representa um indiv duo com bons conheciment
238. assunto as ferramentas comerciais suportam a verifica o de restri es de integridade definidas pelo utilizador em fun o das necessidades particulares de cada caso Tipicamente as restri es de integridade a verificar s o definidas com base em linguagens relativamente simples que incluem operadores l gicos e de compara o No entanto estas linguagens n o suportam a especifica o de restri es de integridade com l gicas subjacentes demasiado complexas Nestas situa es n o h outra hip tese que n o seja a implementa o da sua verifica o atrav s de uma linguagem de programa o convencional No entanto as ferramentas comerciais de LD normalmente n o possuem capacidades de extensibilidade e n o permitem a inclus o de fun es definidas pelo utilizador Isto pode ser explicado pelo seu cariz orientado ao utilizador n o perito contrariamente ao que acontece nos prot tipos de investiga o Por outro lado ainda que em teoria pretendam abarcar todos os PQD na pr tica as ferramentas comerciais evidenciam uma cobertura limitada a n vel de DC dos diversos problemas Como n o possuem potencialidades de extensibilidade n o conseguem cobrir outros problemas para al m daqueles que suportam de base As funcionalidades oferecidas pelas diferentes ferramentas comerciais acabam por ser muito similares A isto n o ser alheio a concorr ncia existente entre as empresas que as det m o que se reflecte na constante pro
239. ations Symposium Grenoble Fran a Julho de 2001 pp 219 228 Scannapieco M 2004 DaQuinCIS Exchanging and Improving Data Quality in Cooperative Information Systems PhD Dissertation Universita degli Studi di Roma La Sapienza 2004 Scannapieco M Virgillito A Marchetti C Mecella M e Baldoni R 2004 The DaQuinCIS Architecture A Platform for Exchanging and Improving Data Quality in Cooperative Information Systems Information Systems 29 2004 pp 551 582 Shankaranarayanan G 2005 Towards Implementing Total Data Quality Management in a Data Warehouse Journal of Information Technology Management 16 1 2005 pp 21 30 Shankaranarayanan G e Watts Sussman S 2003 A Relevant Believable Approach for Data Quality Assessment In Proceedings of the 8 International Conference on Information Quality Boston EUA Outubro de 2003 pp 178 189 Shankaranarayanan G Wang R e Ziad M 2000 IP MAP Representing the Manufacture of an Information Product In Proceedings of the 5 International Conference on Information Quality Boston EUA Outubro de 2000 pp 1 16 Refer ncias Bibliogr ficas 381 Shankaranarayanan G Ziad M e Wang R Y 2003 Managing Data Quality in Dynamic Decision Making Environments An Information Product Approach Journal of Database Management 14 4 2003 pp 14 32 Shanks G e Darke P 1998 Understanding Data Quality in a Data Warehou
240. ativamente formaliza o anterior encontra se representado sob a forma de retic ncias Algoritmo Correc o Viola o Restri o Integridade Baseada em FDU in cio fim se v fda 2 Pio oP v lt fdu gt PoovP gt Cap tulo 6 Formaliza o das Opera es de Correc o 185 Ve fdu EM Pe TR he 0 te le tuplo T repetir enquanto t null h h 1 se v fh t atr ent o Wg i nae eR RR u u atr vAh R RU ua UAU A eU Amd fim se t lt de tnplo T fim repetir fim Nota Os valores dos atributos de C podem constituir par metros de uma ou mais fun es fdu 6 4 Problemas ao N vel do Tuplo Nesta sec o apresenta se a formaliza o da OC do nico PQD que ocorre ao n vel do tuplo 6 4 1 Viola o de restri o de integridade Formaliza o Sint ctica CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF ROW ColunasAlvo DasTabelas DasBasesDados Defini o Atribui es UsandoTabelas UsandoCondi o Formaliza o Sem ntica A rela o resultante da OD ie Z1 cont m informa o sobre os tuplos nos quais foram identificadas viola es restri o de integridade Para cada um destes tuplos e com base num conjunto de atribui es especificadas pelo utilizador esta opera o actualiza os valores dos atributos necess rios correc o do PQD em fun o dos valores existentes noutros atributos do mesmo tuplo O utilizador tem possibilidade de limi
241. ativo de n o duplicados A precis o do classificador depende do conjunto de treino que lhe deu origem Missier e al 2003 Ainda que o classificador seja criado automaticamente com base na amostra n o estando dependente do fornecimento directo de conhecimento espec fico do dom nio por parte do utilizador a selec o da amostra apropriada uma compet ncia do perito e como tal espec fica de cada dom nio Por este motivo se considera que este tipo de m todos misto 3 4 3 M tricas de Avalia o da Semelhan a A avalia o da semelhan a entre dois valores de um atributo um problema importante na integra o de dados e na LD Gravano et a l 2001 A semelhan a entre valores do tipo num rico determinada quase sempre com base no m dulo da sua diferen a Quanto menor for este resultado maior a semelhan a entre os valores dos atributos No caso de valores cujo tipo de dados string o cen rio n o recolhe igual unanimidade A generalidade das m tricas usadas para 10 Um conjunto de treino uma amostra de tamanho limitado extra da a partir dos dados existentes 52 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica determinar a semelhan a insere se num dos dois seguintes grupos m tricas baseadas em caracter e m tricas baseadas no espa o vectorial As m tricas baseadas em caracter baseiam se em opera es de edi o ao n vel do caracter Neste grupo a
242. atributo 4 2 1 Problemas ao N vel do Atributo Na identifica o dos PQD que ocorrem no atributo efectuaram se dois tipos de an lises ao valor individual do atributo e ao conjunto de valores do atributo Os problemas identificados em cada contexto s o apresentados nas sec es seguintes 4 2 1 1 Contexto do Valor Individual Nesta sec o apresentam se os PQD que envolvem o valor individual dos atributos tal como se ilustra na Figura 4 2 Figura 4 2 Valor de um atributo num tuplo Na identifica o dos PQD que ocorrem neste contexto utilizou se o crit rio representado na Figura 4 3 O significado de cada PQD identificado clarificado de seguida O Valor em falta Aus ncia de valor num atributo que de preenchimento obrigat rio e g falta de preenchimento do atributo nome cliente O Viola o de sintaxe O valor n o respeita a sintaxe estabelecida para o atributo e g o atributo cod produto cont m o valor ABC123 em vez de ABC 123 O Erro ortogr fico O valor cont m um erro ortogr fico acidental 7 e de digita o ou nao e o utilizador n o soube escrever correctamente a palavra eg o atributo localidade cont m o valor Pedrozo em vez de Pedroso O Viola o de dom nio O valor n o faz parte do conjunto de valores v lidos do atributo e g no atributo quantidade encomendada encontra se um valor negativo Quando se est perante um atributo do tipo enumerado tex
243. axe e Sem ntica classifica o gen rica dos PQD em tr s grandes classes 7 valores em falta 77 valores existentes mas errados e g viola o de integridade referencial viola o de unicidade e ii valores existentes e correctos mas n o utiliz veis e g utiliza o de abreviaturas unidades de medidas diferentes Este ltimo caso adv m de n o ter sido adoptado um padr o de representa o comum aquando da introdu o dos valores A taxionomia surge da decomposi o hier rquica destas tr s classes gen ricas de manifesta o de PQD O Taxionomia de Miller e Freytag Nesta taxionomia Muller e Freytag 2003 os POD s o classificados genericamente com sendo sint cticos sem nticos e de cobertura Os problemas sint cticos dizem respeito aos aspectos relacionados com sintaxe e valores usados na representa o das entidades eg viola es de sintaxe Os problemas sem nticos impedem os dados de serem uma representa o n o redundante e n o amb gua do mundo real e g registos duplicados Os problemas de cobertura est o relacionados com a quantidade de entidades e propriedades das entidades do mundo real que de facto se encontram armazenadas na tabela e g valores em falta Nesta taxionomia al m de muito gen ricos os PQD encontram se limitados aos que ocorrem ao n vel de uma s tabela da que muitos outros estejam em falta Nada dito sobre a forma como se chegou aos problemas apresentados em
244. belas DasBasesDados UsandoColunas UsandoChavesOrdena o UsandoLimiar UsandoOpera es DependentesDe DasTabelasRefer ncia DasBasesDadosRefer ncia UsandoDominio UsandoCondi o AgupandoPor UsandoDicionario UsandoM trica ProblemaQualidadeDados N velValorIndividual N velColuna NivelTuplo N velRela o N velM ltiplasRela es NivelValorIndividual MISSING VALUE SYNTAX VIOLATION DOMAIN VIOLATION INCOMPLETE VALUE OVERLOADED VALUE MISSPELLING ERRORS NivelColuna EXISTENCE OF SYNONYMS UNIQUENESS VIOLATION INTEGRITY CONSTRAINT VIOLATION NivelTuplo INTEGRITY CONSTRAINT VIOLATION N velRela o FUNCTIONAL DEPENDENCY VIOLATION EXISTENCE OF CIRCULARITY DUPLICATE TUPLES INTEGRITY CONSTRAINT VIOLATION N velM ltiplasRela es HETEROGENEITY OF SYNTAXES HETEROGENEITY OF MEASURE UNITS EXISTENCE OF SYNONYMS EXISTENCE OF HOMONYMS DIFFERENT GRANULARITY OF REPRESENTATION REFERENTIAL INTEGRITY VIOLATION DUPLICATE TUPLES INTEGRITY CONSTRAINT VIOLATION N velOpera o e AT LEVEL OF Nivel N vel COLUMN ROW RELATION MULTIPLE RELATIONS NasColunas gt e ColunasAlvo ColunasAlvo ON Coluna RestantesColunas Coluna Alias TabelaDaColuna NomeColuna AliasTabelaDaColuna identificador NomeColuna identificador RestantesColunas Coluna Adicional ColunaAdicional gt Coluna DasTabelas FROM Tabela Restantes Tabelas 112
245. blemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica SS L AO pac OLD aia E fim se reinicializa leitura tuplos V x de tuplo X fim repetir ue de tuplo U fim repetir fim 6 6 4 Tuplos duplicados Formaliza o Sint ctica REMOVE DUPLICATE TUPLES DasTabelas DasBasesDados Defini oColunas UsandoAtribui es UsandoCondi o Formaliza o Sem ntica As rela es que resultam da respectiva OD z e Z1 e Z permitem agrupar os tuplos em fun o do cluster de duplicados que estes formam Em fun o do especificado pelo utilizador esta opera o remove todos os tuplos duplicados existentes na rela o R ou S Esta elimina o pressup e que cada cluster composto por duplicados rigorosamente iguais entre si Ze duplicados exactos ou que os valores existentes nos duplicados de uma das rela es apresentam um grau de confian a menor pelo que os tuplos respectivos podem ser eliminados A elimina o de cada tuplo duplicado s ocorre caso desta n o resulte uma viola o integridade referencial da BD Naturalmente a capacidade de assegurar automaticamente a integridade referencial encontra se dependente da exist ncia das respectivas restri es na BD Algoritmo Remo o Tuplos Duplicados E seja idcluster um atributo de Z1 e Z2 que identifica o cluster de duplicados a que os tuplo de Re identificados como duplicados pertencem in cio T lt Tideluster O cond Z1D4 Z1 idcluster Z 2 idcluster
246. bstitui o sin nimo mantendo se os restantes termos inalterados e g considerando os termos canalizador e picheleiro como sin nimos e adoptando este ltimo como termo de uniformiza o o valor t cnico canalizador actualizado para t cnico picheleiro Algoritmo Correc o Exist ncia Sin nimos amp seja idcluster o atributo de Z1 que identifica o cluster de sin nimos a que cada termo sin nimo detectado pertence seja vec sinonimos um vector que cont m os termos de uniformiza o utilizados em substitui o de todos os outros seus sin nimos Este vector resulta da especifica o da OC seja Ta rela o onde se encontra armazenado o dicion rio de sin nimos com esquema T idsin idcluster sin em que idsin constitui a chave prim ria idcluster o cluster a que pertence o sin nimo e sino termo sin nimo in cio repetir para i lt 1 at dimens o vec sinonimos US Tideluster Can vec _ sin onimos 1 v atr like Yovec _ sin onimos i v atr like vec _ sin onimos i v v atr like Yovec _ sin onimos i Z1 Vez sin Oidcluster u idcluster A sin vec _ sin onimos i T Xn A Ay ath Cideluster u ideluster atr vec _ sinonimos i A atr not like Yovec _ sin onimos i A A atr not like vec _ sin onimos i A atr not like Yovec _ sin onimos i Z1 x de tuplo X repetir enquanto x null ve de tuplo V novo valor x atr Cap tulo 6 Formaliza o das Opera es de Correc o 179 r
247. butos representativos da mesma propriedade do mundo real Sejam e T conjuntos que cont m os valores distintos de cada um dos atributos assim definidos v t a t Er a E R A e T Ita t E r ae RAA Existem diferentes granularidades de representa o entre as rela es r e n sse S T Nota S e T representam respectivamente as cardinalidades dos conjuntos Se T Viola o de integridade referencial Considere se a exist ncia de um relacionamento entre os esquemas R A e R A Sejam S e T conjuntos de nomes de atributos assim definidos fa ae R A A a faz parte da chave prim ria e T a aE R A Aa faz parte da chave estrangeira que estabelece o relacionamento Seja Vo conjunto dos valores da chave prim ria de todos os tuplos existentes assim definido V ts te r Existe uma viola o de integridade referencial entre as rela es r e n sed ter UbT V Tuplos duplicados Sejam a e a os nomes de dois atributos representativos da mesma propriedade do mundo real Seja o conjunto de nomes de atributos assim definido fla a a E RIA A a E RAA A a a s o usados na identifica o de duplicados Seja similarityaray a fun o que determina a semelhan a entre dois valores do par de atributos a a E devolvendo a sob a forma de um n mero real entre 0 e 1 Seja ay a um n mero real compreendido entre O e 1 representativo do limiar a partir do qual se considera qu
248. c es que de uma forma racional se consideraram teis e que partida se podem disponibilizar de base ou raiz Assim minimiza se a necessidade do utilizador ter de recorrer a fun es especialmente desenvolvidas para o efeito Relembre se que nas actuais solu es inform ticas vocacionadas para a limpeza de dados a correc o dos PQD se encontra excessivamente dependente da implementa o de fun es por parte do utilizador ver Cap tulo 1 Sec o 1 2 Esta limita o suprida neste trabalho atrav s do fornecimento de um conjunto 162 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica gen rico de OC Naturalmente h a consci ncia de que por op o do utilizador ou por n o ser vi vel correc o autom tica muitas correc es ter o de ser efectuadas manualmente envolvendo uma interven o individualizada 7 e caso a caso No entanto muitas outras correc es poder o ser efectuadas de forma totalmente autom tica com base neste argumento que se prop em as OC apresentadas neste cap tulo Tal como as OD as OC s o formalizadas a dois n veis sint ctico e sem ntico A n vel sint ctico definida uma linguagem que permite especificar as OC dos diferentes PQD que fazem parte da taxionomia Por quest es de uniformiza o e facilidade de aprendizagem esta linguagem segue o mesmo esp rito da linguagem de especifica o das OD O n vel sem ntico representa
249. c o e elimina o de registos duplicados A ferramenta permite a realiza o de opera es de uniformiza o nos valores dos atributos e g abreviaturas formatos Um conjunto de regras de uniformiza o disponibilizado de raiz Al m de lhes ser poss vel efectuar altera es tamb m permitida a introdu o de novas regras de modo a cobrirem necessidades espec ficas de LD A ferramenta tamb m possui potencialidades de separar automaticamente os m ltiplos valores que erradamente possam estar armazenados num nico atributo do tipo textual string O mecanismo existente capaz de compreender os seus significados sem nticos colocando os em atributos individuais Por exemplo a identifica o autom tica dos elementos referentes a um endere o ao nome de um fornecedor e a um c digo de produto requer apenas o disp ndio de uns breves instantes na sua configura o atrav s de uma interface gr fica do tipo point and click A ferramenta permite validar a correc o dos valores dos atributos por compara o com outros valores da mesma ou de outra FD utilizada como referencial Efectuar verifica es s restri es de integridade e identificar as viola es que a estas ocorrem tamb m poss vel Um conjunto gen rico de restri es de integridade disponibilizado pela ferramenta para utiliza o imediata Al m destas restri es poderem ser alteradas tamb m poss vel a defini o de novas restri es
250. cada Cap tulo 7 Modelo Proposto para a Limpeza de Dados 261 Nrltera o que representa a sub itera o em cada itera o de detec o Conjuntamente estes dois atributos formam a chave prim ria desta rela o A rela o BDEnvolvida armazena informa o sobre as BD envolvidas em cada OC Esta rela o possui o seguinte esquema BDEnvolvida NrIteracao NrSublteragao C digoBD Os dois primeiros atributos em conjunto formam a chave estrangeira para a rela o Subltera oDetec o O atributo C digoBD constitui a chave estrangeira para a rela o BaseDados Em conjunto os tr s atributos da rela o formam a sua chave prim ria A rela o TabelaEnvolvida armazena informa o sobre as tabelas envolvidas em cada OC O esquema desta rela o o que a seguir se apresenta TabelaEnvolvida Nrltera o NrSubltera o C digoBD C digo Tabela Em conjunto os tr s primeiros atributos da rela o constituem a chave estrangeira para a rela o anterior Os atributos C digoBD e C digoTabela formam em conjunto a chave estrangeira para a rela o Tabela A chave prim ria da rela o composta pelo conjunto formado pelos quatro atributos A rela o AtributoEnvolvido armazena informa o sobre os atributos envolvidos em cada OC Esta rela o possui o esquema que a seguir se apresenta AtributoEnvolvido Nrltera o NrSubltera o C digoBD C digoTabela C digo Atributo NrOpera oDetec o Os
251. cada atributo comum a ambas as rela es B 3 2 Renomea o A opera o de renomea o simbolicamente representada por psgea R constitui uma bata opera o un tia que produz uma nova rela o que constitui uma c pia da rela o R em que o atributo a de R renomeado para 6 em S e assim sucessivamente at ao atributo a de R que renomeado para b em S B 3 3 Agrega o A opera o de agrega o simbolicamente representada por guy atr Y func agrega R constitui uma opera o un ria que produz uma nova rela o em que os tuplos da rela o R se encontram agrupados por atr atr e que cont m os valores resultantes da aplica o da fun o de agrega o func agrega e g m dia m ximo m nimo a cada um destes grupos Na nova rela o cada grupo de tuplos de R corresponde a um s tuplo B 3 4 Ordena o A opera o de ordena o simbolicamente representada por Tan ar R constitui uma opera o un ria que produz uma nova rela o em que os tuplos da rela o R se encontram ordenados em fun o dos valores dos atributos atr atr O primeiro crit rio de ordena o ney baseia se nos valores de atr e o ltimo crit rio de ordena o baseia se nos valores de atr 366 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A opera o de ordena o simbolicamente representada por Tam ar R constitui uma opera o un ria qu
252. cada grupo e problemas sint cticos problemas sem nticos e problemas de cobertura Quando se comparam os problemas que constituem cada uma das taxionomias constata se que estes s o diferentes As diferen as n o s o s ao n vel dos termos usados para denominar cada PQD Apesar de existir um conjunto de problemas comuns e pertencendo a mais do que uma taxionomia tamb m h problemas que apenas surgem numa destas e g o PQD contexto incompleto apenas mencionado em Kim et al 2003 Quer isto dizer que nenhuma das tr s taxionomias completa e engloba todos os PQ que afectam os dados A reuni o dos problemas que constam das tr s taxionomias permite obter um conjunto bastante vasto de PQD mas que pode n o ser completo N o f cil detectar eventuais problemas que possam estar em falta neste conjunto quando a sua identifica o n o resulta de um m todo sistem tico mas sim de uma compila o de problemas A prop sito disto a nica taxionomia que explicita claramente o m todo usado na identifica o dos problemas a de Kim e al 2003 Uma vez que neste trabalho de doutoramento se pretende conceber e desenvolver um modelo de DC que d suporte aos diversos PQD a sua identifica o exaustiva reveste se de uma especial import ncia Estes motivos levaram elabora o de uma nova taxionomia cuja apresenta o ser efectuada no Cap tulo 4 Por esta raz o n o se enumerou detalhadamente os problema
253. cada sec o uma tabela efectua o cruzamento entre os PQD e as solu es de LD consideradas Os significados dos acr nimos a usar nas tabelas s o OBS Opera o Baseada em Structured Query Language SQL FDU Fun o Definida pelo Utilizador OP Opera o Predefinida e NS N o Suportado O significado de cada um destes tipos diferentes de cobertura de detec o correc o a seguir clarificado 100 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O Opera o baseada em SQL O utilizador necessita de especificar uma opera o que envolve a escrita de c digo SQL O Fun o definida pelo utilizador O utilizador tem de implementar uma fun o que suporte o problema O Opera o predefinida O problema suportado de base ou raiz Nalguns casos necess rio apenas que o utilizador forne a os par metros 4 5 1 Prot tipos de Investiga o Na Tabela 4 3 apresenta se a cobertura dada aos PQD pelos cinco prot tipos de investiga o apresentados na Sec o 3 5 1 do Cap tulo 3 cujas designa es s o Ajax Galhardas e al 2001 Arktos II Vassiliadis et al 2003 IntelliClean Low et al 2001 FraQL Sattler e Schallehn 2001 e Potter s Wheel Raman e Hellerstein 2001 Tabela 4 3 Cobertura dada pelos prot tipos de investiga o de LD aos PQD Valor em falta Tipo de 5 Detec o OBS Intelli Clean Pottet s
254. cas de LD s o especificadas unicamente ao n vel da propriedade Para que as opera es possam ser instanciadas automaticamente suficiente a exist ncia de mapeamentos para as suas propriedades independentemente do dom nio e conceitos em quest o A t tulo de exemplo suponha se a exist ncia de uma opera o de viola o de sintaxe associada propriedade e mail Naturalmente n o importa se um email de um cliente fornecedor ou funcion rio um e mail tem de respeitar uma sintaxe Esta opera o n o depende de conceitos e muito menos de um dom nio espec fico Como tal o estabelecimento de um mapeamento entre um atributo e esta propriedade suficiente para a sua instancia o autom tica independentemente do dom nio e conceitos representados na BD No n vel interm dio de granularidade as opera es ontol gicas de LD s o especificadas para uma propriedade de um determinado conceito Estas opera es s s o instanciadas automaticamente caso existam simultaneamente mapeamentos para as suas propriedades e conceitos O dom nio subjacente n o relevante na instancia o das opera es Por exemplo suponha se a exist ncia de uma OD de viola o de unicidade na propriedade e mail do conceito fornecedor Dois fornecedores n o podem ter o mesmo endere o de e mail a n o ser que sejam o mesmo De qualquer forma em ambos os casos h um PQD viola o de unicidade ou registos duplicados A OD apenas instanciada
255. cendente Procedimento actualiza valor t novo valor amp in cio ve On t a Nu Ady ELA R R R v v atr novo valor R RU Da DAVA V Am n fim 6 3 1 2 Erro ortogr fico Formaliza o Sint ctica TipoOpera o MISSPELLING ERRORS ColunasAlvo DasTabelas DasBasesDados UsandoCondi o Formaliza o Sem ntica A rela o que armazena os erros ortogr ficos detectados 7 e Z1 cont m para cada um destes sempre que tal foi poss vel as palavras correctas semelhantes identificadas no dicion rio Em cada erro ortogr fico as palavras similares identificadas possuem um grau de semelhan a associado resultante da m trica utilizada A correc o autom tica envolve substituir o erro ortogr fico pela palavra correcta que apresenta o maior grau de semelhan a Apesar de solucionar o PQD nem sempre a substitui o de um erro ortogr fico pela palavra semelhante de maior proximidade produz o resultado pretendido Naturalmente este tipo de correc o deve ser efectuado com alguma prud ncia Compete ao utilizador decidir se o utiliza ou n o No caso de existir mais do que uma palavra com igual grau de semelhan a n o efectuada qualquer correc o Nestes casos ter de ser o utilizador a solucionar individualmente cada erro ortogr fico Uma outra situa o que tamb m impede a realiza o de correc o autom tica e obriga interven o do utilizador adv m da n o identifica o de palavras semelhant
256. cia com a taxionomia elaborada no Cap tulo 4 ocorreram em contextos distintos valor individual do atributo e m ltiplos valores do atributo As opera es efectuadas em cada um destes contextos s o expostas nas duas subsec es seguintes 8 3 1 Contexto do Valor Individual Come a se ent o por apresentar as opera es de LD efectuadas no contexto do valor individual dos atributos pertencentes s diversas tabelas da BDD 8 3 1 1 Tabela Conclusoes Opera es de Detec o A Tabela 8 2 apresenta as OD efectuadas no contexto do valor individual dos atributos da tabela Conclusoes Tabela 8 2 OD executadas no contexto do valor individual dos atributos da tabela Conclusoes Valor em Viola o Erro falta de sintaxe ortogr fico Atributo CodigoConclusao DesignacaoConclusao Para efeitos ilustrativos a seguir fornece se a especifica o sint ctica da generalidade destas opera es DETECT MISSING VALUE ON CodigoConclusao FROM Conclusoes OF BDD DETECT SYNTAX VIOLATION ON CodigoConclusao FROM Conclusoes OF BDD WHERE CodigoConclusao NOT LIKE TA Z 0 9 0 9 0 9 Cap tulo 8 Estudo de Caso de Limpeza de Dados 275 DETECT MISSPELLING ERRORS ON DesignacaoConclusao FROM Conclusoes OF BDD USING DICTIONARY DicPortugues USING METRIC Jaro Winkler Da execu o das OD de valor em falta em cada um dos atributos e da execu o da OD de viola o de sintaxe n o resultou a identifica o
257. cis es bem fundamentadas Q Por ltimo quando o volume de dados envolvidos elevado o processo de LD torna se muito dispendioso computacionalmente Este aspecto torna se particularmente cr tico quando a LD envolve a detec o e elimina o de duplicados As novas tecnologias disponibilizam uma maior capacidade de processamento e uma maior velocidade o que permite efectuar os processos de LD em tempos aceit veis mesmo com volumes de dados muito elevados Mesmo assim a utiliza o de t cnicas de optimiza o mostra se necess ria de modo a manter este custo computacional em n veis aceit veis 3 4 O Problema dos Duplicados na Limpeza de Dados Um duplicado um registo que representa uma entidade do mundo real j representada noutro registo Verykios e al 2003 Os duplicados podem ser exactos 7 e rigorosamente iguais ou aproximados Ze com ligeiras diferen as de representa o Frequentemente as BD cont m redund ncias deste tipo Guyon ef a 1996 Este problema coloca se n o s ao n vel da tabela individual 2 e identificar e eliminar duplicados no interior de uma tabela como tamb m ao n vel de m ltiplas tabelas e identificar e eliminar registos que representam a mesma entidade em tabelas diferentes Bilenko e Mooney 2003 Sarawagi e Bhamidipaty 2002 Verykios e al 2003 Este ltimo caso assume especial import ncia na integra o de dados provenientes de fontes diferentes A detec o e
258. clui uma coluna extra onde se encontram as caracter sticas do SmartClan O conjunto de caracter sticas utilizado como referencial de compara o o mesmo da Tabela 3 3 O significado de cada caracter stica encontra se definido no Cap tulo 3 Sec o 3 5 1 6 344 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 10 3 Caracter sticas do SzzartClean comparativamente s ferramentas comerciais de LD ETI Data ERAS Cleanser Tipos de fontes BDR FT suportadas Preocupa es de eng Sim j i j j Sim optimiza o Capacidades extensibilid de N o N o Sim Suporte excep es N o Sim i i i Sim Interface com o 3 F p N o em Gr fico Gr fico Gr fico Gr fico Gr fico z utilizador gr fico Potencialidades de z N o N o a Sim anula o Execu o N o N o incremental Defin sequ ncia execu o opera Os resultados expostos nesta tabela justificam os coment rios que a seguir se apresentam Q Tal como sucede em todas as ferramentas comerciais consideradas o SwartClean tamb m evidencia preocupa es a n vel da optimiza o da execu o das opera es de DC Estas preocupa es j foram enunciadas na Sec o 10 2 1 1 deste cap tulo No caso das ferramentas comerciais ainda que estas optimiza es sejam publicitadas pelas empresas propriet rias em concreto n o foi poss vel apurar exactamente
259. consideradas no exemplo Como se pode depreender do grafo de depend ncias as duas primeiras OD de viola o de restri o de integridade s o executadas simultaneamente Isto poss vel em virtude das opera es em causa incidirem sobre conjuntos de atributos disjuntos Cap tulo 7 Modelo Proposto para a Limpeza de Dados 227 O m dulo em quest o respons vel pela cria o das sequ ncias de depend ncias das OD especificadas ao n vel do tuplo Para tal as OD come am por ser agrupadas em fun o da exist ncia de depend ncias entre estas preservando se a ordem pela qual foram especificadas pelo utilizador As depend ncias traduzem se na exist ncia de atributos comuns entre as OD Em cada sequ ncia de depend ncias resultante os atributos envolvidos em cada OD s o analisados para identificar as situa es em que poss vel efectuar a sua execu o em simult neo Caso haja opera es nestas condi es isso origina um grafo dirigido de depend ncias de execu o das OD A informa o relativa a cada sequ ncia de depend ncias armazenada numa tabela tempor ria auxiliar cujo esquema cont m os atributos NrOpera o que corresponde ao n mero sequencial atribu do OD em causa cada OD especificada pelo utilizador identificada por um n mero sequencial de 1 a n e NrOpera oPrecedente que corresponde ao n mero sequencial atribu do OD que a antecede A t tulo ilustrativo o grafo de depend nc
260. ctivo 7 e motor de execu o incremental das OD e respeita a sequ ncia ascendente por NG que acabou de ser descrita Em primeiro lugar s o executadas as OD que incidem sobre o atributo e em ltimo as que envolvem rela es de fontes de dados diferentes 7 3 2 Sequencia o em cada de N vel de Granularidade Da mesma forma que se defende a manipula o gradual dos PQD por NG tamb m se advoga em cada n vel a DC progressiva dos PQD de acordo com uma determinada sequ ncia A 222 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica exist ncia de um PQD num NG pode impedir a detec o de um ou mais problemas no mesmo NG e g ao n vel do atributo a exist ncia de uma viola o de sintaxe pode impedir a detec o de uma viola o de dom nio necess rio solucionar o PQD detectado para que seja poss vel identificar outros problemas Por outro lado a exist ncia de um problema num NG pode resultar na detec o de um ou mais problemas no mesmo NG eg ao n vel do valor individual do atributo a exist ncia de um erro ortogr fico pode conduzir detec o de uma viola o de dom nio semelhan a do que acontece entre problemas de diferentes NG um PQD de um NG tamb m pode reflectir se em cascata num conjunto de outros problemas no mesmo NG Ao corrigir se o primeiro todos os outros supostos problemas s o tamb m solucionados Face interdepend ncia entre os PQD em ca
261. ctuada nas solu es oriundas de duas reas distintas acad mica cient fica e comercial empresarial Uma vez que as ferramentas comerciais de LD se baseiam nas ferramentas de data profiling para a detec o de certos problemas a taxionomia proposta tamb m usada para avaliar a cobertura destas 4 1 Introdu o Actualmente a import ncia e utilidade dos dados largamente reconhecida Os dados s o um activo chave na melhoria da efici ncia e efic cia num ambiente organizacional actual de grande dinamismo e competitividade No entanto tamb m sabido que geralmente os dados se encontram afectados por diversos problemas de qualidade Orr 1998 Tal como se evidenciou no Cap tulo 2 diferentes interpreta es podem ser dadas express o PQD Relembre se que no contexto deste trabalho de doutoramento PQD refere se aos problemas que se manifestam ao n vel dos valores dos dados Estes problemas afectam todos os projectos que se baseiam nos dados e g minera o de dados an lise multi dimensional de dados gest o do relacionamento 12 Uma taxionomia um sistema de classifica o que organiza entidades conceitos Giovani 2005 78 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica com o cliente fraca qualidade dos dados condiciona negativamente a qualidade dos resultados que se obt m nos processos baseados na sua explora o an lise Sattler e Schallehn 2001 princ
262. cura de oferecerem iguais potencialidades s existentes nas ferramentas concorrentes Como corol rio dos problemas e limita es identificados nas actuais solu es acad micas e comerciais pode afirmar se que concedida uma cobertura deficiente aos PQD O resumo dos problemas e limita es aqui apresentado encontra se devidamente fundamentado nos Cap tulos 3 e 4 desta disserta o 1 3 Objectivos do Trabalho O presente trabalho de doutoramento explora os problemas e limita es apontados s actuais solu es de melhoria da QD Em particular os objectivos que se pretendem alcan ar com a sua realiza o s o 8 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O Formaliza o da sem ntica das opera es que conduzem DC dos PQD em que tal suporte suscept vel de ser desde logo fornecido Estas formaliza es constituem a base para uma posterior implementa o e respectiva automatiza o das opera es Q Concep o e desenvolvimento de um modelo orientado especificamente para a DC dos PQD relacionais que obede a aos seguintes requisitos gen ricos e Defina uma sequ ncia de manipula o para os PQD que 7 supere os problemas da sequ ncia utilizada pelas ferramentas comerciais reflectindo as depend ncias existentes entre os diversos problemas 77 na medida do poss vel n o dependa da especifica o manual por parte do utilizador ao inv s do que s
263. d ncia entre as OD de viola o de restri o de integridade a abordagem adequada consiste em garantir que todos os PQD identificados pela execu o de uma opera o s o solucionados antes de se passar execu o da OD referente restri o de integridade seguinte 7 4 1 3 Tuplo No NG do tuplo h apenas um nico tipo de PQD viola o de restri o de integridade Como tal o processo de execu o que a seguir se descreve corresponde situa o em que existe mais do que uma OD de viola o de restri o de integridade Uma sequ ncia de OD deste g nero obedece ao processo de execu o j descrito no contexto do valor individual do atributo Assim a identifica o de uma viola o a uma restri o de integridade n o impede a continua o da execu o das restantes OD de viola o de restri o de integridade de acordo com a ordem estabelecida pelo utilizador A sequ ncia de OD apenas interrompida no tuplo em quest o 242 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ficando pendente at que o problema em causa seja solucionado Nos tuplos onde n o tenha sido detectado o problema n o se justifica a sua interrup o Nestes tuplos a execu o das opera es pode continuar com toda a normalidade uma vez que os outros tuplos que se encontram afectados com PQD n o interferem na execu o das OD que incidem sobre estes Suponha se que uma determinada s
264. da NG s se deve avan ar para a detec o de um problema quando todos os problemas de que este depende tiverem sido detectados e corrigidos Caso n o se adopte esta abordagem gradual podem n o ser detectados certos problemas ou de forma redundante serem identificados outros Nas sec es seguintes apresenta se a sequ ncia de manipula o proposta para cada NG de PQD Estando as OD organizadas por NG este m dulo estabelece qual a sua ordem de execu o originando sequ ncias de depend ncias em cada um dos n veis de acordo com o proposto nas sec es seguintes A execu o das opera es ser efectuada pelo m dulo respectivo 7 e motor de execu o incremental das OD respeitando essas sequ ncias de depend ncias em cada NG 7 3 2 1 Atributo Contexto do Valor Individual Na Figura 7 3 apresenta se a sequ ncia de execu o das OD dos PQD que ocorrem ao n vel do atributo mais especificamente no contexto do seu valor individual Valor em Falta Viola o de Sintaxe Erro Ortogr fico Viola o de Dom nio Valor Incompleto Valor Sobrecarregado Figura 7 3 Sequ ncia de depend ncias das OD no contexto do valor individual do atributo Cap tulo 7 Modelo Proposto para a Limpeza de Dados 223 No caso do utilizador especificar OD para todos os problemas suscept veis de afectarem o valor individual de um dado atributo a execu o dessas opera es efectuada de acordo com a sequ ncia aprese
265. da atributo 7 e coluna da tabela e inferidas as suas caracter sticas como tipo de dados e respectivos tamanhos valores ou intervalo de valores existentes cardinalidade e percentagem de valores nulos Este tipo de an lise tamb m inclui o recurso a t cnicas de reconhecimento de padr es sint cticos que permitem verificar se os valores de um atributo possuem o formato esperado e g se um atributo s cont m valores num ricos se possui tamanhos consistentes Algumas estat sticas b sicas acerca dos valores do atributo s o tamb m geradas e g valores m nimos e m ximos m dia mediana moda desvio padr o As estat sticas s o teis em todos os tipos de dados especialmente nos de tipo num rico cria o do perfil do atributo tamb m produz frequ ncias de ocorr ncia As frequ ncias de ocorr ncia permitem analisar a distribui o dos valores existentes nos dados O perfil do atributo auxilia a identificar alguns PQD e g o facto da cardinalidade do atributo sexo ser superior a dois indica a exist ncia de um PQD O An lise de estrutura Permite criar um perfil de depend ncias atrav s da an lise dos valores entre registos Os valores de cada atributo s o comparados com os valores que se encontram nos restantes atributos A an lise de estrutura permite inferir todas as depend ncias funcionais que possam existir entre os atributos de uma tabela Durante o processo s o identificadas pseudo depend ncias que s
266. da execu o das OD do NG em quest o 7 e quando j n o for detectada a exist ncia de qualquer problema Eventuais problemas que possam ter sido inadvertidamente introduzidos nos NG a montante fruto das correc es efectuadas s o 248 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Dados Limpos M ltiplas Rela es M ltiplas Fontes de Dados M ltiplas Rela es Mono Fonte de Dados Atributo Multi Valor na Atributo Valor Individual o Dados Sujos Figura 7 14 Processo de execu o das OD por NG assim detectados A Figura 7 14 ilustra graficamente o processo de execu o descrito Esta figura constitui uma reformula o sequ ncia de manipula o dos PQD apresentada na Figura 7 2 At ao momento abordou se a possibilidade de uma correc o de um problema num NG introduzir um outro PQD noutro n vel No limite o mesmo pode acontecer no interior de cada NG e a correc o de um problema pode causar um outro problema cuja detec o j tinha sido dada como conclu da Por exemplo no contexto dos m ltiplos valores do atributo NG do atributo a correc o de uma viola o de unicidade pode redundar num problema de sin nimos que anteriormente n o existia Note se que de acordo com a sequ ncia defendida a execu o da OD de sin nimos efectuada antes da de viola o de unicidade Assim quando se rei
267. da existente n o era excessivamente elevado recorreu se via manual para proceder sua correc o A abordagem seguida foi do g nero da descrita no contexto do atributo CodPostal da tabela CodigosPostais A nova execu o da OD de viola o de restri o de integridade entre as tabelas de Dadores BDD e CodigosPostais BD Dom nios redundou na identifica o de 180 problemas deste tipo Isto significa que a OC respectiva solucionou 336 viola es de restri o de integridade O motivo da exist ncia destes PQD o mesmo do que o referido no par grafo anterior Como se trata de um n mero demasiado elevado de viola es restri o de integridade para ser manipulado por via manual executou se a OC que a seguir se apresenta CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ON CodPostal LocPostal CP Localidade FROM CodigosPostais Codigos Postais OF BDD Dom nios SET LocPostal LocalidadeMaisFrequente Nota Apenas s o alvo da OC os tuplos da tabela CodigosPostais em que se detectou o PQD 20 Mesmo que tivesse sido poss vel haveria situa es n o suscept veis de manipula o autom tica uma vez que o mesmo lugar pode corresponder a mais do que uma localidade Todavia diminuiria ao n mero de situa es que requerem interven o manual 314 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Como se pode observar esta OC envolve a execu
268. da igual a OM e o valor do atributo DesignacaoBrigada igual a Desconhecido A correc o da viola o de integridade referencial entre as tabelas de Colheitas e Inutilizacoes seguiu a mesma abordagem do que a utilizada na resolu o das viola es de integridade referencial entre as tabelas anteriores Assim inseriram se dois tuplos na tabela Inutilizacoes com o atributo Codigolnutilizacao respectivamente igual a 34 e 74 e o atributo Descricaolnutihzacao igual a Causa desconhecida Ainda que longe de ser a solu o ideal esta abordagem soluciona as viola es integridade referencial No futuro poderia vir a ser dada um outro tratamento a estas correc es que de momento podem ser consideradas como provis rias 8 6 2 Viola o de Restri o de Integridade Opera es de Detec o Entre as tabelas Dadores e An lises executou se uma OD de viola o de restri o de integridade que visou identificar se para os mesmos valores dos atributos Data e Dador de cada uma das tabelas os valores do atributo NwmCo h em ambas as tabelas s o diferentes A OD inerente a esta verifica o a seguir apresentada DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ON T1 Data TI Dador T1 NumColh T2 Data T2 Dador T2 NumColh FROM Dadores T1 Analises T2 OF BDD WHERE T1 Data T2 Data AND T1 Dador T2 Dador AND T1 NumColh lt gt T2 NumColh A execu o desta OD nao redundou na detec o de qualquer viola
269. da sua execu o definiu se a exist ncia desse relacionamento entre as tabelas na BDD 8 3 2 2 Tabela Inutilizacoes Opera es de Detec o Na Tabela 8 25 apresentam se as OD efectuadas no contexto dos m ltiplos valores de cada atributo da tabela Inutilizacoes Tabela 8 25 OD executadas no contexto dos m ltiplos valores dos atributos da tabela Inutilizacoes Viola o de Atributo ae unicidade Codigolnutilizacao DescricaoInutilizacao A execu o das OD de viola o de unicidade nos atributos Codigolnutilizacao e DescricaoInutilizacao n o redundou na detec o deste tipo de PQD 8 3 2 3 Tabela Hospitais Opera es de Detec o As OD efectuadas no contexto dos m ltiplos valores de cada atributo da tabela Hospitais encontram se na Tabela 8 26 Tabela 8 26 OD executadas no contexto dos m ltiplos valores dos atributos da tabela Hospitais Viola o de Atributo VG unicidade CodHospital DesHospital 294 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Da execu o da OD em quest o no atributo CodHospital n o resultou a detec o de PQD No caso do atributo DesHospital detectou se um problema de viola o de unicidade resultante da exist ncia do valor Nefrocl nica respectivamente nos tuplos com valor de chave prim ria igual a 208 e 214 Opera es de Correc o Uma vez que apenas se detectou um PQD os dois tuplos
270. das 278 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 8 7 OD executadas no contexto do valor individual dos atributos da tabela Brigadas Valor em Viola o de Atributo falta sintaxe Codigo Brigada DesignacaoBrigada A execu o das OD de valor em falta em cada um dos atributos n o identificou a exist ncia de qualquer problema deste tipo A execu o da OD de viola o de sintaxe visou identificar os valores que se encontram no atributo CodigoBrigada que n o s o constitu dos unicamente por duas letras alfab ticas Da execu o desta OD tamb m n o resultou a identifica o de qualquer PQD 8 3 1 5 Tabela CodigosPostais Opera es de Detec o As OD efectuadas no contexto do valor individual dos atributos da tabela CodigosPostais encontram se na Tabela 8 8 Tabela 8 8 OD executadas no contexto do valor individual dos atributos da tabela CodigosPostais Valor em Viola o de falta dom nio Atributo CodPostal LocPostal A especifica o sint ctica da OD de viola o de dominio no atributo CodPostal a seguir apresentada DETECT DOMAIN VIOLATION ON CodPostal FROM CodigosPostais OF BDD USING DOMAIN Codigos Postais opera o socorre se do dominio de valores v lidos do c digo postal Este dom nio encontra se dispon vel no SyzartClean tendo sido constru do a partir de um ficheiro de texto descar
271. de 2005 pp 219 233 Olson J 2003 Data Quality The Accuracy Dimension Morgan Kaufmann Publishers 2003 Oracle Data Integrator 2007 Oracle Data Integrator User s Guide Dispon vel em http www oracle com technology products oracle data integrator 10 1 3 htdocs documentation oracledi_users pdf no dia 02 04 2007 s 23 40 Refer ncias Bibliogr ficas 379 Orr K 1998 Data Quality and Systems Theory Communications of the ACM 41 2 1998 pp 66 71 Pande P Newman e Cavanagh 2000 The SIX SIGMA Way McGraw Hill 2000 Papakonstantinou H Quass D Rajaraman A Sagiv Y Ullman J Vassalos V e Widom J 1997 The TSIMMIS Approach to Mediation Data Models and Languages Journal of Intelligent Information Systems 8 2 1997 pp 117 132 Parssian A Sarkar S e Jacob V S 2004 Assessing Data Quality for Information Products Impact of Selection Projection and Cartesian Product Management Science 50 7 2004 pp 967 982 Pipino L L Lee Y W e Wang R Y 2002 Data Quality Assessment Communications of the ACM 45 4 2002 pp 211 218 Rahm E e Bernstein P 2001 A Survey of Approaches to Automatic Schema Matching The Very Large Databases Journal 10 2001 pp 334 350 Rahm E e Do H H 2000 Data Cleaning Problems and Current Approaches Buletin of the Technical Committe on Data Engineering Special Issue on Data Cleaning 23 4
272. de Detec o 141 v fdu mat _valores j w mat _valores dimjanela w p Pia oP y 5 se avalia _condi o PP oP verdadeiro ent o idcluster lt insere duplicados rela o ontpu mat valores j dimjanela idcluster ind fim se fim repetir ue de tuplo U fim repetir XT ideluster 1 aj Am b1 gt b idcluster 2 04 5C ms 4 yey Ztemp2 gt Ie ses Cm gt Ay gees A A ideluster 2 gt ideluster 1 Z mp2 aux C16 Ay yess Co Am 9 1B sd 6 Ztemp2 _aux x de tuplo X repetir enquanto x nulle nrtuplos lt dimjanela v lt fdu x6 Ad Py Py oP p 2 flu x6 Ad Pop o97P Vo lt fdu x6 Xd Po 15P0 2 Po h se avalia _ condi o P pP oP verdadeiro ent o Ss S s Z Zremp2 Ztemp Cae AN a N Am X Am Bir Ziemp2 S Zemp Y Xt so EA X bis Xb idcluster2 fim se xX de tuplo X fim repetir Z1 lt Z1 U Zemp fim repetir fim Notas Em cada fun o fdu dois dos par metros s o obrigatoriamente os que cont m os valores sujeitos a compara o e que se encontram na estrutura de dados mat_valores Como resultado cada fun o fdu retorna um valor at mico 142 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Fun o insere duplicados rela o outpu mat valores finhal linha2 idcluster ind amp in cio Te ideluster oa mat _valores finha1 1 A a mat _ valores linha 1 n ig
273. de atributos assim definidos a a e RA A a usado na formula o de x e T a a e RA A a usado na formula o de x Sejam Ue V conjuntos que cont m os valores dos atributos de todos os tuplos das rela es r e n assim definidos U tv t S t rye V ut T t r Existe uma viola o de restri o de integridade entre as rela es r e n sse check U V falso 4 5 Cobertura das Ferramentas de Limpeza de Dados Tal como referido na introdu o deste cap tulo um dos motivos pelo qual a taxionomia importante adv m desta permitir a avalia o da cobertura das ferramentas de qualidade dos dados Uma vez que o trabalho efectuado no mbito desta disserta o se centra na rea da LD nesta sec o efectuada uma an lise cobertura que as solu es existentes d o aos PDQ O objectivo aferir at que ponto as actuais solu es suportam os PQD que fazem parte da taxionomia a n vel de DC Fundamentalmente as solu es existentes subdividem se em dois grandes grupos prot tipos de investiga o e ferramentas comerciais Os prot tipos de investiga o s o origin rios da comunidade cient fica acad mica enquanto que as ferramentas comerciais s o produzidas por organiza es comerciais empresariais que desenvolvem software nesta rea A cobertura dada pelas solu es de maior representatividade de cada um dos grupos a n vel de DC apresentada nas duas sec es seguintes Em
274. de entre tuplos muito dificilmente poder ser solucionada por outra via que n o a manual Apesar das considera es tecidas no par grafo anterior as formaliza es apresentadas materializam um conjunto de opera es que de raiz fornecem um suporte que se considera til e adequado correc o de um leque alargado de PQD Embora as OC propostas n o constituam uma solu o universal para todos os PQD constituem uma mais valia ao que actualmente fornecido pelas aplica es inform ticas de limpeza de dados 7e prot tipos de investiga o e ferramentas comerciais MODELO PROPOSTO PARA A LIMPEZA DE DADOS Neste cap tulo apresenta se em detalhe o modelo que se prop e para Detec o e Correc o DC dos Problemas de Qualidade dos Dados PQD e para a Limpeza de Dados LD O cap tulo inicia se com a apresenta o da arquitectura que materializa o modelo proposto Esta apresenta o acompanhada de uma descri o dos diversos componentes que integram a arquitectura assim como da forma como estes interactuam entre si Nas sec es seguintes do cap tulo apresentam se detalhadamente os principais m dulos da arquitectura Estes m dulos constituem a ess ncia do modelo proposto da que se justifique plenamente uma aten o especial Assim come a se por apresentar o m dulo sequenciador de Opera es de Detec o OD A seguir apresenta se o m dulo que constitui o motor de execu o incremental das O
275. de envolver n o s altera es aos valores de um ou mais atributos num ou mais tuplos como tamb m a remo o elimina o de um ou mais tuplos 212 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ordem de execu o Neste aspecto o modelo assenta na manipula o ze DC dos PQD por N vel de Granularidade NG resultante da taxionomia elaborada no Cap tulo 4 Na manipula o dos PQD adoptou se uma aproxima o ascendente z e bottom up por NG Come a se pelos problemas que se manifestam no n vel mais elementar Ze atributo e termina se nos que ocorrem no n vel de maior complexidade 7 e m ltiplas rela es de diferentes fontes de dados Em cada NG os PQD s o tamb m manipulados seguindo uma determinada sequ ncia preestabelecida Ali s desta sequ ncia de manipula o resultou a tese que se defende no mbito desta disserta o de doutoramento Ao identificarem se depend ncias na manipula o dos PQD isso significa que a sequ ncia o da execu o da generalidade das opera es pode ser automatizada Assim em fun o das opera es especificadas pelo utilizador a ordem pela qual s o executadas determinada automaticamente Esta caracter stica constitui uma mais valia comparativamente s solu es actualmente existentes destinadas melhoria da qualidade dos dados ver Cap tulo 1 Sec o 1 2 Nos prot tipos que resultaram de trabalhos de investiga
276. de execu o da sequ ncia de OD No exemplo apresentado aquando da segunda itera o todas as OD que fazem parte da sequ ncia foram novamente executadas No entanto nem sempre assim acontece sequ ncia de OD pode ser executada parcialmente e somente a partir de um determinado ponto em diante Suponha se que no exemplo anterior aquando da primeira itera o das OD n o tinha sido detectada a exist ncia de um valor em falta no atributo CodigoPostal Assim na segunda itera o das OD a sequ ncia seria executada a partir da viola o de sintaxe 2 e detec o de viola o de sintaxe e detec o de viola o de dom nio O exemplo apresentado ilustra apenas tr s OD No entanto todas as opera es que visam a detec o de problemas deste NG obedecem ao processo de execu o descrito Recapitulando a detec o de um PQD no valor de um atributo num tuplo n o impede a continua o da execu o das OD que incidem sobre o mesmo atributo nos demais tuplos da rela o Por outro lado apenas os valores afectados por PQD voltam a ser alvo da execu o das OD aquando da itera o seguinte Todos os outros valores do atributo em que n o sejam identificados problemas n o voltam a ser objecto da execu o das OD 7 4 1 2 Atributo Contexto Multi Valor No contexto multi valor do atributo uma sequ ncia de depend ncias pode envolver OD de exist ncia de sin nimos viola o de unicidade e viola o de restri
277. de foi detectada a exist ncia de heterogeneidade de unidades de medida entre atr e atr assim como os respectivos valores destes atributos Os esquemas de Z1 e Z2 s o ZI nrsega sAvatr e Z2 nrseq b 6 atr O atributo nrseg permite estabelecer uma associa o entre cada heterogeneidade de unidades de medida identificada entre atr e atn seja Zlniohercrog Z2nioheterog AS rela es que armazenam as chaves prim rias dos tuplos respectivamente de Re onde a heterogeneidade de unidades de medida entre atr e atm n o se verifica bem como os respectivos valores destes atributos Os esquemas de Lisias Z2n oheterog S O Zln oheteroglNTSeq M 4m 4t Z2r oheteroglnTseq br baath A finalidade do atributo nrseq a mesma do que a enunciada no ponto anterior in cio nrduplicados 1 count 21 ideluster 21 Da Z2 heterog lt O ndoheterog O TEA ideluster Z1 t de tuplo T repetir enquanto t null e n oheterog nrduplicados lt limiar US Ta yasam Prete z1 P lt 2 1 ideluster t ideluster Z2 ideluster t ideluster 22 ue de tuplo U repetir enquanto u null e n oheterog nrduplicados lt limiar V lt Ta App v6 yeep atr gab x P ay uaA A Oy U Abj u b A 6 u 6 cond s ve de tupl V se v null ent o heterog lt heterog 1 Z1 lt Z1 VU heterog v d 0 dm V atn Z2 Z2 VU heterog v 6 0 6 vatn 148 Detec o e Correc o de Problema
278. de integridade cujo respeito se pretenda verificar A ferramenta tamb m disponibiliza uma biblioteca de transforma es de dados bastante completa que suporta a realiza o de diversas opera es de LD A ferramenta permite identificar e eliminar registos duplicados ao n vel da FD ou entre FD Os duplicados s o identificados mesmo que existam diferen as de formata o e erros ortogr ficos nos valores dos atributos A realiza o pr via de opera es de uniformiza o e g formatos abreviaturas c digos num ricos melhora significativamente os resultados desta tarefa A identifica o de duplicados baseia se em in meras regras existentes de raiz na pr pria ferramenta O utilizador pode altera las ou adicionar novas regras de modo a corresponderem s especificidades da identifica o de duplicados em causa Os registos identificados como duplicados s o consolidados num s com base em regras de sobreviv ncia dos valores definidas pelo utilizador para cada atributo A consolida o dos registos duplicados tamb m pode ser efectuada caso a caso pelo pr prio utilizador recorrendo interface gr fica dispon vel para o efeito Cap tulo 3 Limpeza de Dados 71 3 5 2 5 Hiquality A ferramenta Hlquality Human Inference 2007a composta por diversos m dulos cada um vocacionado para uma finalidade espec fica No estudo das potencialidades desta ferramenta de LD foram analisados os seguintes m dulos HIquality N
279. de qualquer PQD A Tabela 8 3 apresenta os erros ortogr ficos identificados pela OD respectiva Tabela 8 3 Resultados da OD de erro ortogr fico no atributo DesignacaoConcinsao Valores Similares Grau de Semelhan a Erro Ortogr fico Homssexualidade Homossexualidade 0 9854167 0 9888889 psicosocial psicossocial psicosocial psico social 0 98611116 Patologai Patologia 0 98518515 Patologai Catalogai 0 80423284 psqiqui trica infeciosa psiqui trica infecciosa 0 95726496 0 98333335 autoimune auto imune 0 98 autoimune Inotoxica o auto imune Intoxica o 0 95 0 95353544 Na primeira coluna da tabela encontram se os valores das chaves prim rias atributo ID dos tuplos nos quais se detectaram erros ortogr ficos no atributo em quest o A coluna seguinte cont m os erros ortogr ficos propriamente ditos Na terceira coluna encontram se os valores existentes no dicion rio que apresentam semelhan as aos erros ortogr ficos Na ltima coluna h um n mero que relaciona os valores similares aos erros ortogr ficos em fun o do grau de semelhan a entre estes resultante da m trica utilizada na OD no caso Jaro Winkler Winkler 1999 276 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Opera es de Correc o A correc o dos erros ortogr ficos no atributo Design
280. de regras descobertas O c lculo efectuado com base no n mero e no n vel de signific ncia das regras que permitem identificar a excep o Quanto menor for o grau de improbabilidade maior a probabilidade da excep o ser mesmo um problema de qualidade dos dados Estes casos s o considerados como sendo poss veis problemas de qualidade sendo apresentados no ecr atrav s de um relat rio de f cil compreens o Compete ao utilizador proceder sua an lise e aferir se de facto representam problemas de qualidade dos dados 356 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A 3 Oracle Data Integrator A ferramenta Oracle Data Integrator Oracle Data Integrator 2007 permite a defini o e execu o de processos de integra o e transforma o de dados A ferramenta pode ser usada em in meros contextos de manipula o de dados nomeadamente na cria o de armaz m de dados na migra o de dados e na replica o de dados A defini o das opera es efectuada atrav s de uma abordagem declarativa o que simplifica o seu desenvolvimento e manuten o A abordagem separa a defini o do processo efectuada sob a forma de regras declarativas dos detalhes de implementa o A ferramenta permite aceder e integrar dados provenientes de qualquer sistema de base de dados relacional existente bem como de outras tecnologias que tamb m manipulam dados eg ERP CRM fontes d
281. define se um modelo direccionado especificamente para a LD que visa suportar a DC de todos os PQD inclu dos na taxionomia Este modelo encontra se materializado numa arquitectura de uma ferramenta inform tica O modelo assenta numa aproxima o sequencial ascendente 2 e bottom up de detec o e imediata correc o dos PQD concebida de acordo com os n veis de granularidade que comp em a taxionomia desde o n vel mais elementar i e atributo at ao de maior complexidade 7e m ltiplas rela es de diferentes fontes de dados Um mecanismo de execu o incremental das opera es de DC faz tamb m parte do modelo As opera es de DC a efectuar s o especificadas pelo utilizador com base em duas linguagens declarativas As potencialidades de extensibilidade inclu das no modelo permitem cobrir a DC dos problemas para os quais n o poss vel fornecer partida tal suporte devido sua especificidade eg viola es de restri es de integridade O modelo permite que as opera es sejam efectuadas directamente na pr pria fonte dispensado a realiza o de TD Este modelo foi inicialmente proposto em Oliveira ef al 2005b Os novos desenvolvimentos entretanto ocorridos foram apresentados em Oliveira e al 2006b O Prot tipo para a DC de PQD Um prot tipo denominado de SmartChkan apresentado tendo sido desenvolvido de acordo com a arquitectura proposta para a DC dos PQD O prot tipo usado num cas
282. delimita a execu o da OD tamb m representa a condi o de que resulta a detec o dos tuplos duplicados O conte do de cond resulta do que se encontra especificado na cl usula where da OD No caso da detec o de tuplos duplicados pode ser necess rio recorrer a FDU e g em virtude do crit rio de detec o de duplicados ser demasiado complexo para ser expresso numa condi o SQL Nestes casos os valores dos atributos que constituem a chave prim ria de cada tuplo da rela o e R e os valores dos atributos envolvidos na detec o dos duplicados definidos pelo utilizador de cada tuplo podem ser passados como par metros de acordo com os requisitos de cada FDU que consta da sequ ncia de atribui es especificadas na OD As fun es tamb m podem receber outros par metros como vari veis e constantes No caso da detec o de duplicados ser efectuada com base em FDU a formaliza o anterior alvo das seguintes altera es acrescentos Tudo o resto representado sob a forma de retic ncias permanece inalterado Algoritmo Detec o Tuplos Duplicados Baseada em FDU amp seja A d dn 4m iy 54dm n O conjunto de atributos que fazem parte de R seja Co conjunto de atributos envolvidos na detec o de duplicados assim definido C fc c usado na detec o dos tuplos duplicados de R A ce A e CCA seja o a cardinalidade de C in cio TER R Am R26 R20m RC py Rilo RLY yo RAL O cond RO IRD 6 Rob
283. destes formado por um n mero pr definido de atributos Esta estrutura resulta na seguinte hierarquia de NG dos dados m ltiplas FD m ltiplas rela es rela o tuplo e atributo A taxionomia de PQD ao n vel da inst ncia Oliveira e al 2005a foi criada baseada neste modelo Cada NG foi minuciosamente analisado tendo os problemas sido identificados com base nos diferentes elementos que fazem parte do modelo e g tipos de dados dom nios dos atributos relacionamentos existentes caracter sticas usuais dos valores armazenados A an lise foi efectuada de forma independente de qualquer BD espec fica o que lhe confere um car cter gen rico e universal Desta forma a taxionomia n o meramente representativa dos PQD Cap tulo 4 Problemas de Qualidade dos Dados 79 M ltiplas FD M ltiplas rela es Rela o Atributo 1 Atributo 2 Atributo n Tuplo Atributo Figura 4 1 Estrutura de organiza o dos dados segundo o modelo relacional identificados numa BD ou num conjunto de BD em patticular Se assim fosse certamente seria uma taxionomia incompleta e n o representativa dos diversos PQD que ocorrem A aproxima o adoptada foi ascendente 7 come ou se por analisar o NG mais elementar e atributo e terminou se no NG mais complexo 7 e m ltiplas FD O objectivo da aproxima o consistiu em identificar em primeiro lugar os problemas mais concretos e de f cil detec
284. diferentes dom nios Este assunto ser abordado na sec o seguinte O exemplo usado simplista uma vez que utiliza uma s propriedade No entanto a filosofia de funcionamento preconizada na abordagem a mesma independentemente de se utilizar uma ou v rias propriedades Caso v rios conceitos sejam utilizados na opera o de LD conceptual ou ontol gica esta apenas instanciada caso existam mapeamentos entre todos os conceitos envolvidos e tabelas da BD e simultaneamente existam mapeamentos entre as propriedades e os atributos destas tabelas Os metadados da BD desempenham um papel importante uma vez que s o utilizados para evitar a instancia o de opera es de LD desnecess rias A t tulo de exemplo considere se a exist ncia de um atributo definido como de preenchimento obrigat rio Naturalmente n o poss vel a exist ncia de valores em falta neste atributo A instancia o de uma OD de valores em falta no atributo n o faz qualquer sentido Os metadados s o teis uma vez que impedem a instancia o de algumas opera es de LD desnecess rias Apenas se consideram metadados que podem ser obtidos directamente a partir da BD Outras fontes de metadados e g dicion rios de dados nao s o consideradas uma vez que podem n o estar correctas Naturalmente est se a partir do pressuposto que o motor da BD fi vel e que assegura devidamente este g nero de restri es Nas BD comercializadas actualme
285. do atributo excep o do que se encontra no tuplo identificado com o ID 2 Da execu o desta opera o resulta a detec o de uma viola o de sintaxe no tuplo identificado com o ID 4 execu o das restantes opera es da sequ ncia fica pendente para este valor at que o problema seja solucionado Nos restantes valores do atributo n o detectada qualquer outra viola o de sintaxe Assim nestes valores passa se execu o da OD seguinte e detec o de viola o de dom nio Esta opera o considera todos os valores do atributo excep o dos que foram identificados como estando em falta tuplo com o ID 2 ou contendo uma viola o sintaxe tuplo identificado com ID 4 Da execu o desta ltima opera o resulta a detec o de uma viola o de dom nio no valor do atributo do tuplo identificado com o ID 6 e 1000 111 Uma vez que esta a ltima opera o da sequ ncia conclui se que todos os restantes valores que constam dos tuplos com ID impar n o se encontram afectados pelos PQD em causa 7 e cuja detec o o utilizador especificou Na pr xima itera o das OD estes valores n o s o considerados na execu o destas uma vez que j se confirmou que n o est o afectados pelos problemas em quest o Ao utilizador s o reportados os problemas encontrados nos tr s tuplos ze um valor em falta uma viola o de sintaxe e uma viola o de dom nio Suponha se que o utilizador procede co
286. do o dicion rio de sin nimos com esquema X idsin idcluster sin em que idsin constitui a chave prim ria idcluster o cluster a que pertence o sin nimo e sino termo sin nimo seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de R onde foi detectada a exist ncia de sin nimos em atr o correspondente sin nimo bem como o 126 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica respectivo cluster de sin nimos a que este pertence O esquema de Z1 Z1 d d atn idclusten inicio T lt Tideluster Ocond X t de tuplo T repetir enquanto t null Ucn sin sin 2 XD ideluster t idoluster nideluster 2 t idcluster A idsin 2 gt idsin Ox 2 idsin2 lt idsin vidcluster 2 lt idcluster sin 2 lt sin x D u lt le_tuplo U repetir enquanto u null Ve Ta gooey yyy atr bi bm atra O atr u sin v atr like u sin v atr like u sin v atr like u sin A A atr u sin 2 V atr like u sin2 V atr like u sin 2 v atr like u sin mR gt lt la 6 7 A am b PR 26a nb Aq atro atr RO ve le_tuplo V repetir enquanto v null SE Ca va r sap v a 21 ent o Z1 Z1U Iva vaAv atn t ideluster fim se Se Of lt 0 6 A b v 6 Z1 ent o Z1 Z1U 0 6 0 6n 0 athr t idcluster y fim se ve de tupl V fim repetir u lt ke tuplo U fim repetir t lt de tuplo T fim repetir fim 5 3 2 2 Viola o d
287. dom nio a seguinte da sequ ncia Estando solucionados os PQD que podem resultar na detec o de viola es de dom nio que n o s o mais do que um mero reflexo desses problemas est o reunidas as condi es para a execu o desta opera o Al m da OD de viola o de dom nio tamb m podem ser especificadas pelo utilizador OD de valor incompleto ou de valor sobrecarregado Os valores incompletos ou sobrecarregados representam casos espec ficos de viola o de dom nio Estas opera es ainda que normalmente acompanhem a OD de viola o de dom nio podem ser efectuadas independentemente desta existir ou n o Quando existe a OD de viola o de dom nio qualquer uma das duas OD de valor sobrecarregado ou incompleto tira partido dos resultados j produzidos Apenas constitui um poss vel valor incorrecto ou sobrecarregado os que foram identificados como viola es ao dominio A n o viola o do dominio do atributo garante desde logo que o valor n o incompleto nem sobrecarregado Quando o valor n o viola o dom nio nem sequer se justifica a 224 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica execu o das OD de valor incompleto ou sobrecarregado Por este motivo as OD de valor incompleto e valor sobrecarregado surgem na sequ ncia ap s a OD de viola o de dominio A opera o seguinte da sequ ncia ent o a de detec o de valor incompleto A ordem entre e
288. du r Po a E se avalia condi o p Pook verdadeiro entao jl ji jz UZ ideluster ou t A Ady t dyn Z1 VT ideluster o gm aN tb Z2 fim se t lt le_tuplo T fim repetir fim Notas Os valores dos atributos envolvidos a am 6 565 C5 53 Q5 4 constituem par metros de uma ou mais fun es fdu Como resultado cada fun o fdu retorna um valor at mico 5 6 8 Viola o de restri o de integridade Formaliza o Sint ctica DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ColunasAlvo DasTabelas DasBaseDados Defini o Atribui es Defini oCondi o AgupandoPor Formaliza o Sem ntica No caso da detec o de viola o de restri o de integridade ser efectuada com base numa opera o suscept vel de ser traduzida num inqu rito SQL a opera o envolve uma das seguintes situa es identificar as chaves prim rias dos tuplos e os respectivos valores dos atributos das v rias rela es que constituem uma viola o de restri o de integridade ou identificar apenas o Cap tulo 5 Formaliza o das Opera es de Detec o 157 valor ou valores agregados que consubstanciam a exist ncia de uma viola o de restri o de integridade A sem ntica subjacente opera o a que a seguir se apresenta Algoritmo Detec o Viola o Restri o Integridade Baseada em SQL E seja dnst 5dmin O conjunto de atributos de R que n
289. e os 65 anos de idade Na identifica o das viola es que ocorrem a esta restri o de integridade executou se a seguinte OD DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF ROW ON Data DtNasc FROM Dadores OF BDD WHERE DateDiff Data DtNasc 365 25 lt 18 OR DateDiff Data DtNasc 365 25 gt 65 A execu o desta OD n o redundou na detec o de qualquer viola o restri o de integridade em quest o Opera es de Correc o As OC executadas com o intuito de solucionar as viola es s restri es de integridade detectadas s o a seguir apresentadas Restri o de Integridade n 2 Na resolu o das viola es detectadas a esta restri o de integridade executou se a OC que a seguir se apresenta CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF ROW ON TotDadivas TotDadivasInst FROM Dadores OF BDD SET TotDadivas TotDadivaslnst Assim considerou se que todas as d divas foram efectuadas directamente institui o em causa Restri o de Integridade n 3 Apesar de ter sido identificada uma nica viola o restri o de integridade n 3 na sua correc o executou se a opera o que a seguir se apresenta Esta OC invoca a mesma fun o definida pelo utilizador desenvolvida para a correc o de viola es de dom nio no atributo TensaoMax A possibilidade da sua reutiliza o na resolu o deste PQD justifica a especifica o desta OC CORRECT INTEGRITY CONSTRAINT VIOLA
290. e LD obriga a que em cada propriedade ou sub propriedade esteja especificada uma s opera o do mesmo tipo e g viola o de sintaxe viola o de dominio Se tal n o acontecer e se existir mais do que uma opera o candidata compete ao utilizador seleccionar a opera o que deve ser instanciada No exemplo atr s considerado caso duas OD de viola o de sintaxe estivessem associadas propriedade c digo postal em vez de uma s teria sido necess ria a interven o do utilizador Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 327 Ainda que n o seja uma situa o comum podem ser estabelecidos diversos mapeamentos entre um atributo e v rias propriedades ou sub propriedades diferentes Conceptualmente isto significa que o atributo armazena valores que correspondem ambas as propriedades No exemplo anterior considerou se a exist ncia de um mapeamento entre o atributo zpc e a sub propriedade c digo postal dos E U A No caso de tamb m existir um mapeamento entre o mesmo atributo e a sub propriedade c digo postal Portugu s isto significa que o atributo armazena c digos postais referentes a ambos os pa ses Quando ha mais do que uma opera o do mesmo tipo e g detec o de viola o de sintaxe entre as diversas propriedades envolvidas nos mapeamentos as opera es s o combinadas o que resulta na instancia o de uma s opera o A combina o das opera es resulta da reuni o dos
291. e R 5 6 Problemas ao N vel de M ltiplas Rela es Fontes de Dados Nesta sec o apresenta se a formaliza o das OD dos PQD que ocorrem ao n vel de m ltiplas rela es independentemente destas pertencerem a uma s ou a m ltiplas bases de dados 5 6 1 Heterogeneidade de sintaxes Formaliza o Sint ctica DETECT HETEROGENEITY OF SYNTAXES ColunasAlvo DasTabelas DasBasesDados UsandoCondi o Formaliza o Sem ntica A detec o deste PQD envolve a invoca o de uma fun o respons vel por inferir a sintaxe que se encontra subjacente aos valores de cada um dos atributos em causa 7e atr e atr pertencentes respectivamente a cada uma das rela es z Re No caso de n o ser poss vel inferir a sintaxe subjacente face inexist ncia de um padr o comum a fun o retorna o valor null como resultado As duas rela es que eventualmente resultam desta OD ze Z1 e Z2 armazenam respectivamente as sintaxes diferentes identificadas em atr e atr ou reflectem a impossibilidade de se inferir a sintaxe nalgum dos atributos ou at em ambos inexist ncia das rela es Z1 e Z2 ap s a execu o desta OD significa que n o h heterogeneidade de sintaxes 146 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Algoritmo Detec o Heterogeneidade Sintaxes E seja infere sintaxe vec uma fun o que recebe num vector vec o conjunto de valores de um atributo
292. e acordo com esta a adop o de uma sequ ncia de manipula o predefinida em que os PQD s o detectados e corrigidos seguindo uma aproxima o ascendente desde o NG mais elementar do modelo relacional at ao de maior complexidade constitui uma forma adequada e eficaz de identificar e solucionar os PQD existentes Por um lado a sequ ncia de manipula o adequada porque reflecte as depend ncias de detec o correc o existentes entre os problemas que for osamente t m de ser respeitadas Em muitos casos a exist ncia desta dispensa a usual interven o Cap tulo 10 Conclus o 335 do utilizador na defini o da sequ ncia de execu o das opera es de LD Por outro lado a sequ ncia eficaz porque garante a DC dos PQD existentes Os testes realizados durante o per odo de desenvolvimento do prot tipo e o estudo de caso de LD demonstram a validade da tese defendida O Suporta a realiza o das opera es de DC directamente na Base de Dados BD n o obrigando realiza o de transforma o de dados Contrariamente ao que acontece nas actuais solu es de LD ze englobando prot tipos de investiga o e ferramentas comerciais em que a DC dos PQD efectuada num contexto que implica transforma o de dados 7e altera es ao n vel do esquema dos dados no modelo proposto as opera es de LD s o efectuadas na pr pria BD No final da LD os PQD existentes encontram se solucionados sem que par
293. e dados XML seguindo sempre a mesma metodologia A qualidade dos dados assegurada uma vez que os problemas s o detectados e solucionados antes da sua inser o na base de dados de destino O processo de integra o e transforma o de dados que a ferramenta permite implementar inicia se com a especifica o das opera es a efectuar Para cada opera o necess rio definir a tabela na qual ser o armazenados os resultados tabela de destino e a tabela ou tabelas que cont m os dados a transformar tabelas de origem A ferramenta permite estabelecer automaticamente o mapeamento entre os atributos das tabelas de origem e os atributos da tabela de destino com base na igualdade dos nomes dos atributos Os restantes mapeamentos t m que ser estabelecidos manualmente O utilizador define graficamente os joins necess rios entre as tabelas de origem caso estes n o se encontrem definidos nos meta dados das tabelas O utilizador pode definir filtros que limitam os valores das tabelas de origem a considerar no processo de transforma o O utilizador tamb m define as regras de transforma o dos valores a armazenar na tabela de destino expressas sob a forma de declara es SQL Por ltimo o utilizador tamb m pode definir as verifica es a efectuar aos dados de modo a assegurar a sua integridade e consist ncia A ferramenta permite detectar e armazenar as viola es de integridade que possam existir e g a regras de neg cio i
294. e de especifica o gr fica e 717 flexibilidade de aplica o interactiva Os utilizadores recorrem aos transformadores medida que s o necess rios o que normalmente acontece ap s a detec o de algum problema Como consequ ncia a sequ ncia de transforma es resultante possui frequentemente transformadores redundantes ou nao optimizados O Potter s Wheel converte esta sequ ncia numa sequ ncia de execu o mais eficiente e efectua a sua compila o num programa optimizado de transforma o de dados A execu o deste programa depois efectuada sob a forma de batch efectuando as transforma es em todos os registos da tabela Os transformadores encontram se organizados nas seguintes classes O Transformadores de valor individual Aplicam uma fun o ao valor que se encontra num atributo em cada um dos registos existentes Al m das transforma es baseadas em express es regulares e opera es aritm ticas permitem a invoca o de fun es definidas pelo utilizador para realizar transforma es espec ficas O Transformadores um para um Utilizados em opera es ao n vel do atributo transformador vertical transformando um registo num novo registo A esta classe pertencem os seguintes transformadores eliminar copiar inserir fundir separar em fun o de uma posi o ou express o regular e dividir em fun o de uma condi o 62 Detec o e Correc o de Problemas de Qualidade dos Dados
295. e entre os registos duplicados ap s a ordena o que por sua vez depende da chave utilizada Uma vez que a chave de ordena o extra da directamente dos dados e que estes podem apresentar outros PQD al m da exist ncia de duplicados h a probabilidade de que as pr prias chaves tamb m espelhem esses problemas Caso os registos duplicados estejam distantes ap s a ordena o improv vel que se situem na mesma janela de compara es o que significa que n o ser o identificados como duplicados Uma poss vel solu o passa por aumentar o tamanho da janela O problema que isto implica um aumento da complexidade computacional face ao maior n mero de compara es a realizar o que se traduz num acr scimo do tempo de execu o 3 4 1 3 M todo da Vizinhan a Ordenada com Multi Passagem O m todo da vizinhan a ordenada com multi passagem Hern ndez e Stolfo 1995 Hern ndez e Stolfo 1998 considera que uma s itera o passagem do m todo da vizinhan a ordenada n o suficiente para detectar todos registos duplicados Por exemplo suponha se que um funcion rio se encontra representado em dois registos da tabela num com o n mero de seguran a social 132451702 e no outro com o n mero 312451702 h transposi o dos dois primeiros n meros Suponha se tamb m que o n mero de seguran a social usado como principal elemento da chave de ordena o Ap s a realiza o da ordena o certamente que os dois registos fic
296. e intuitivo e de f cil utiliza o Isto reflecte o seu cariz orientado ao utilizador n o perito O Nenhuma ferramenta evidencia potencialidades de anular automaticamente as opera es de correc o efectuadas Para anular uma opera o necess rio que o utilizador defina manualmente uma nova opera o de LD No entanto nem todas as opera es efectuadas s o suscept veis de serem anuladas desta forma e algumas opera es tornam se gt irremediavelmente definitivas O Nenhuma ferramenta possui a capacidade de executar incrementalmente as opera es de LD Nas ferramentas comerciais analisadas sempre que se executam as opera es de LD suportadas essa execu o feita novamente na ntegra englobando todos os tuplos das rela es envolvidas Q Em todas as ferramentas analisadas a defini o da sequ ncia de execu o das opera es de LD efectuada automaticamente Essencialmente estas ferramentas executam um conjunto de passos predefinidos que s o configur veis pelo utilizador para a DC dos PQD Mais uma vez este tipo de abordagem reflecte o cariz destas ferramentas orientadas para o utilizador n o perito 3 6 Conclus o Neste cap tulo abordou se em pormenor a actividade do processo de melhoria da QD sobre a qual se centra este trabalho de doutoramento 7 a LD Tendo como objectivo a DC dos PQD com base nas especifica es fornecidas pelo utilizador a LD importante em diversos c
297. e m dulo tamb m respons vel por colocar as opera es pela ordem que ser o executadas H opera es que necessariamente t m de ser executadas antes de outras Estas duas tarefas s o apresentadas em detalhe nas duas sec es seguintes 7 3 1 Sequencia o por N vel de Granularidade Neste trabalho defende se um modelo de LD em que os PQD s o manipulados 2 e detectados e corrigidos por NG exist ncia de um problema num NG pode impedir a detec o de um ou mais problemas noutro ou noutros n veis e g a exist ncia de um erro ortogr fico NG atributo contexto do valor individual pode impedir a detec o da exist ncia de sin nimos NG multi rela o multi fonte de dados Noutras situa es a exist ncia de um problema num NG pode resultar na detec o de um ou mais problemas noutro ou noutros n veis e g a exist ncia de sin nimos NG atributo contexto multi valor pode conduzir detec o de uma viola o de depend ncia funcional NG rela o Neste caso um PQD num NG pode reflectir se em cascata num conjunto de outros problemas noutros n veis Ao corrigir se o primeiro todos os outros supostos problemas tamb m s o solucionados Face interdepend ncia entre problemas de diferentes NG s se deve avan ar para a detec o dos problemas num NG quando todos os problemas dos outros n veis mais elementares tiverem sido detectados e solucionados Caso n o se adopte esta abordagem
298. e os valores do par de atributos a a S s o equivalentes Existem Zup os duplicados entre as rela es r e n se 3 t E n t E n V a ad E S toa Uta V similaritya ay V t 4 t2 42 2 Oar ap A classifica o de dois tuplos t t r e t t E r como sendo duplicados pode ainda ser mais detalhada de acordo com o que a seguir se apresenta Sejam Ue Vos conjuntos de nomes de atributos assim definidos U fa a R A A a n o faz parte da chave prim rias e V fa ae RA A an o faz parte da chave prim rias e Duplicados iguais Diz se que os tuplos s o duplicados iguais sse Na e U Tae V toa Uta e Duplicados aproximados Caso n o sejam iguais diz se que s o duplicados aproximados sse Y a E U A a E V Uta Uta V similaritya Atas Uta gt 41 92 Cap tulo 4 Problemas de Qualidade dos Dados 99 e Duplicados inconsistentes Caso as anteriores situa es n o se verifiquem diz se que os tuplos s o duplicados inconsistentes uma vez que J a e UV a E V similarity ar an A ty a u to 4 lt Orar az Nota Relembre se que a e a representam nomes de dois atributos referentes mesma propriedade do mundo real Q Viola o de restri o de integridade Seja check uma fun o que recebe os valores dos atributos dos tuplos das rela es r e r verifica se uma dada restri o de integridade x respeitada e devolve um valor l gico Sejam e T conjuntos de nomes
299. e produz uma nova rela o em que os tuplos da rela o R se encontram ordenados em fun o dos valores dos atributos atr atr O primeiro crit rio de ordena o baseia se nos valores de atr e assim sucessivamente at ao ltimo crit rio de ordena o baseado nos valores de atr REFER NCIAS BIBLIOGR FICAS Akao Y 1990 Quality Function Deployment Integrating Customer Requirements into Product Design Productivity Press Inc 1990 Atzeni P e Antonellis V 1983 Relational Database Theory The Benjamin Cummings Publishing Company 1983 Baeza Yates R e Ribeiro Neto B 1999 Modern Information Retrieval ACM Press 1999 Ballou D e Tayi G 1999 Enhancing Data Quality in Data Warehouse Environments Communications of the ACM 42 1 1999 pp 73 78 Ballou D Madnick S e Wang R Y 2003 Special Section Assuring Information Quality Journal of Management Information and Systems 20 3 2003 pp 9 11 Ballou D Wang R Prazer H e Tayi G 1998 Modeling Information Manufacturing Systems to Determine Information Product Quality Management Science 44 4 1998 pp 462 484 Barateiro J e Galhardas H 2005 A Survey of Data Quality Tools Datenbank Spektrum 14 2005 pp 15 21 Baskarada S Koronios A e Gao J 2006 Towards a Capability Maturity Model for Information Quality Management A TDQM Approach In Proceedings of the 11th International Confere
300. e qualquer utilizador mas apenas dos que possuem conhecimentos a n vel de programa o De facto os prot tipos de investiga o est o muito orientados para o utilizador especialista No entanto mesmo para estes desenvolver algumas fun es ou pelo menos encontrar a forma mais eficiente de o fazer pode n o ser trivial O desenvolvimento das fun es que permitem a DC dos PQD apenas deve ser deixado em aberto quando n o h mesmo outra hip tese e g como no caso das restri es de integridade que s o 6 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica espec ficas de cada situa o particular Por outro lado nos prot tipos de investiga o quase sempre a LD realizada exclusivamente no contexto da TD Isto significa que n o poss vel limpar os dados directamente na pr pria fonte de dados sempre necess rio efectuar uma TD mesmo que n o se pretenda efectuar uma altera o ao seu esquema Neste caso h que simular essa transforma o ze do esquema X para o esquema X para se poder realizar a LD A defini o da sequ ncia de execu o das opera es de limpeza a efectuar sob a forma de um grafo dirigido de transforma es constitui uma responsabilidade do utilizador No geral as ferramentas comerciais ditas de LD baseiam o seu funcionamento numa sequ ncia composta pelos seguintes passos 7 atomiza o que consiste em dividir separar os valores d
301. e surgem mais do que uma vez acrescentado dos pares que neste conjunto podem ser inferidos por transitividade Os testes realizados pelos autores evidenciam que a combina o dos resultados de m ltiplas passagens com uma janela de reduzida dimens o aumenta a taxa de recupera o de duplicados comparativamente a uma nica passagem com uma janela de tamanho superior Uma janela de reduzida dimens o tamb m contribui para a diminui o do n mero de registos incorrectamente classificados como duplicados 7 e para a diminui o da taxa de falsos positivos O incremento no tempo de execu o registado nos testes realizados n o significativo Para se alcan ar resultados equivalentes com o m todo original seria necess rio um tempo de execu o muito superior Apesar de tudo este m todo apresenta o mesmo problema que o m todo original e a elabora o das chaves de ordena o Encontrar as chaves adequadas que coloquem os registos duplicados pr ximos uns dos outros pode revelar se uma tarefa rdua Caso os valores dos atributos n o obede am a um padr o as diferen as de representa o fazem com que registos duplicados sejam colocados distantes entre si mesmo recorrendo a chaves de ordena o diferentes O outro problema est relacionado com a transitividade A sua aplica o gera resultados correctos se os pares de registos correspondem a verdadeiros duplicados e se gt representam a mesma entidade do mundo
302. e unicidade Formaliza o Sint ctica DETECT UNIQUENESS VIOLATION ColunasAlvo DasTabelas DasBasesDados UsandoCondi o Cap tulo 5 Formaliza o das Opera es de Detec o 127 Formaliza o Sem ntica A detec o de viola o de unicidade envolve identificar os valores das chaves prim rias dos tuplos que possuem igual valor no atributo em causa ze atr Al m dos valores das chaves prim rias na rela o que resulta desta OD ze Z1 s o tamb m armazenados os respectivos valores que constituem viola es unicidade do atributo Algoritmo Detec o Viola o Unicidade seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de Re os respectivos valores que constituem viola es de unicidade em atn com o seguinte esquema ZIKa Am atn seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de Re os respectivos valores que constituem sin nimos em atn resultantes da OD pr via caso esta exista in cio Z1 Ta an atr O cond R gt lt Ta sam R Ta nan Ziy gt lt Tatr 0R1 R gt lt PR Lay AR 2 0 A AR Lan FR 2d AR Latn R 2atn PR2 K fim 5 3 2 3 Viola o de restri o de integridade Formaliza o Sint ctica DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF COLUMN ColunasAlvo DasTabelas DasBasesDados Defini o Atribui es Defini oCondi o AgupandoPor Formaliza o Sem ntica No caso da detec o de v
303. e versa No caso da viola o de restri o de integridade o cen rio j n o o mesmo uma vez que a exist ncia de sin nimos pode impedir a sua detec o Pelos motivos expostos a detec o da exist ncia de sin nimos surge como primeira opera o da sequ ncia opera o seguinte da sequ ncia envolve a detec o de viola es unicidade do atributo Este tipo de problema tem de ser identificado e solucionado antes da OD de viola o de restri o de integridade Se tal n o acontecer uma viola o de unicidade pode traduzir se numa viola o de restri o de integridade Esta ltima manifesta se apenas como uma consequ ncia da exist ncia da primeira Pelos motivos j apresentados a detec o de viola o de restri o de integridade constitui a ltima opera o da sequ ncia Para que seja poss vel detectar correctamente as viola es de restri o de integridade existentes necess rio que o atributo n o contenha sin nimos e que n o existam viola es unicidade do atributo No caso deste tipo espec fico de PQD o utilizador pode especificar mais do que uma OD de viola o de restri o de integridade que incida sobre o mesmo atributo Quando tal acontece tamb m pode existir uma ordem na sua execu o e apenas ser executada a detec o de uma dada viola o de restri o de integridade quando uma outra tiver sido executada e os respectivos PQD identificados devidamente solucionados As
304. ecifica o de uma opera o de LD pode ser a 7 propriedade 77 propriedade do conceito ou 717 propriedade do conceito do dom nio A organiza o hier rquica suportada pelo n vel ontol gico da abordagem permite a heran a e sobreposi o das opera es conceptuais de LD Os elementos do esquema da BD encontram se conectados aos elementos da ontologia atrav s de um conjunto de mapeamentos manualmente estabelecidos pelo utilizador Com base nestes as opera es definidas ao n vel conceptual s o automaticamente seleccionadas e instanciadas ao n vel do esquema da BD em quest o A representa o conceptual das opera es de LD propicia a sua interoperabilidade em diferentes BD e permite que a mesma opera o abstracta possa ser adaptada a cada situa o concreta e reutilizada in meras vezes Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 331 O desenvolvimento de uma ontologia do dom nio algo de dif cil e complexo Naturalmente apenas faz sentido proceder ao seu desenvolvimento se os ganhos excederem os custos Na abordagem proposta as ontologias s o utilizadas para suportar a especifica o das opera es a um n vel conceptual e assim permitir a sua reutiliza o em diferentes BD Caso as opera es sejam de tal forma espec ficas que apenas possam ser executadas numa nica BD a abordagem proposta n o adequada Nestes casos o desenvolvimento de uma ontologia acarreta custos el
305. ecificado pelo utilizador Durante o processo de transforma o suportam a realiza o de algumas opera es de LD O suporte concedido LD acaba por ser reduzido uma vez que as ferramentas n o foram concebidas especificamente para esta finalidade O nico prot tipo vocacionado exclusivamente para a LD o IntelliClean Low et al 2001 Contrariamente ao que acontece em todos os outros este prot tipo efectua as opera es de LD na pr pria FD n o obrigando a transforma es ao n vel do esquema No entanto est limitado quase em exclusivo ao problema dos duplicados As ferramentas comerciais n o s o tecnicamente t o transparentes quanto os prot tipos de investiga o N o poss vel obter qualquer informa o relativamente aos algoritmos usados e g na detec o de duplicados Naturalmente estes segredos resultam da concorr ncia que existe entre as empresas que desenvolvem as ferramentas Esta mesma concorr ncia faz com que as empresas procurem disponibilizar as mesmas funcionalidades do que as concorrentes As descri es apresentadas das ferramentas comerciais analisadas acabam por ser muito semelhantes Por vezes at d ideia de se estar a descrever novamente a mesma ferramenta Isto permite generalizar que outras ferramentas possuir o sensivelmente as mesmas funcionalidades Basicamente na generalidade das ferramentas a LD corresponde realiza o sequencial dos seguintes passos atomiza o e s
306. ecolha de dados envolve inconsist ncias entre os diversos servi os que efectuam a recolha dos dados e falta de consciencializa o da import ncia de dados correctos e completos em quem efectua a sua introdu o A exist ncia ou n o de certos PQD e g valores em falta depende do grau de controlo exercido pelo esquema dos dados e das restri es que controlam os valores permitidos Nas FD que n o 22 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica possuem esquema e g ficheiros de texto h poucas restri es aos valores que podem ser armazenados Nestes casos h uma alta probabilidade de existirem v rios PQD Nas FD que possuem esquema eg bases de dados a exist ncia de certos PQ resulta da aus ncia de restri es adequadas e g restri es de integridade A sua inexist ncia pode ficar a dever se pouca qualidade do esquema de dados subjacente ou ao n mero insuficiente de restri es implementadas para n o sobrecarregar o controlo de integridade dos dados 2 4 2 Consequ ncias Em Parssian e al 2004 demonstra se o impacto da fraca QD nos resultados produzidos por um sistema de informa o A fraca QD influencia negativamente a sua interpreta o os modelos e as an lises criadas a partir destes e compromete as decis es tomadas com base nestes Kubica e Moore 2003 N o f cil aos gestores tomarem decis es l gicas e bem fundamentadas com base em
307. ed Approach to Data Integration and Reconciliation in Data Warehousing In Proceedings of the International Workshop on Design and Management of Data Warehouses Heidelberg Alemanha Junho de 1999 pp 16 1 16 11 Chandrasekaran B 1999 What are Ontologies and Why Do We Need Them IEEE Intelligent Systems and Their Applications 9 1 1999 pp 20 26 Chaudhuri S e Dayal U 1997 An Overview of Data Warehousing and OLAP Technology SIGMOD Record 26 1 1997 pp 65 74 Chengalur Smith I Ballou D e Prazer H 1999 The Impact of Poor Data Quality Information on Decision Making An Exploratory Analysis IEEE Transactions on Knowledge and Data Engineering 11 6 1999 pp 853 864 Cholvy L e Moral S 2001 Merging Databases Problems and Examples International Journal of Intelligent Systems 16 2001 pp 1193 1221 Refer ncias Bibliogr ficas 369 Cochinwala M Kurien V Lalk G e Shasha D 2001 Efficient Data Reconciliation Information Sciences 137 2001 pp 1 15 Cohen W e Richman J 2001 Learning to Match and Cluster Entity Names In Proceedings of the ACM SIGIR 01 Workshop on Mathematical Formal Methods in Information Retrieval Louisiana EUA Setembro de 2001 Cohen W e Richman J 2002 Learning to Match and Cluster Large High Dimensional Data Sets for Data Integration In Proceedings of the 8 ACM SIGKDD International Conference on Knowledge Discovery and
308. edade c digo postal e a duas sub propriedades desta c digo postal Portugu s e c digo postal dos Estados Unidos da Am rica E U A de acordo com o ilustrado na Figura 9 5 Representa o do Mundo Real Opera es de LD ON C digo Postal WHERE C digo Postal NOT LIKE j DETECT Syntax Violation DETECT Domain Violation B ON C digo Postal Portugu s WHERE C digo Postal Portugu s NOT IN a Postal DETECT Syntax Violation ON C digo Postal E U A Propriedade a Propriedade b WHERE C digo Postal E U A NOT LIKE L m Postal C digo Postal DETECT Domain Violation I Portugu s E U A ON C digo Postal E U A N vel da Ontologia WHERE C digo Postal E U A NOT IN BaseDados X Tabela X1 Tabela X2 Tabela Xn 1 DETECT Domain Violation B ON cpost OF Tabela_X2 FROM BaseDados_X i DETECT Syntax Violation A i ON cpost OF Tabela_X2 FROM BaseDados_X 1 WHERE cpost NOT LIKE 1 N vel do Esquema de Dados Figura 9 5 Heran a na instancia o das opera es conceptuais de LD Uma OD de viola o de sintaxe opera o A encontra se especificada para a propriedade c digo postal Suponha se que esta opera o detecta viola es sintaxe mais utilizada internacionalmente na representa o de um c digo postal Caso exista um mapeamento entre um dado atributo e esta propriedade a opera o ontol gica de LD instanciada automaticamente par
309. eddaesaasteceteceaadeseusdecesesedecnce hoses ST 357 AS MATCH DS iecviccctccicucutatwewescoceduswcuteescenscasusvassesstsescanestsvevecssced ecedavesevessseeccadsvaredesedevesavevavessseteees 358 A 6 CENTRUS MERGES PURGE sixisiaedotarsdo alo iadededaleladado datado ade ladaledal sdelcisladslecalecsleieiieislsweaitiiteries 359 AP NDICE B LGEBRA RELACIONAL 363 B FCONCEITO MORENA NENE ARE ERR ERND e daia RENDER NA NENE NRRRDA ENREDO SRS OR at kh 363 B2 OPERA ES B SICAS iescccssccsssssssossasesssssssssvsosacecesspessseoosasessssnosags soansasesssevonsuacesstssssvareenateastetedsase 363 B 2 1 SELECAO annann digno dei Tu Poda Edi E dd eo lea lava di Bd SL VR QUARTO Da GU ates nae kaon 364 B2 2 PROJ ECCA GO ru es amarei ani a tat een uc A hate Da IR E 364 BA PRODUTO CARTESIANO Fo cercado aU DU AC 364 B24 DIFERENCA eres nr apra cases ag areata een O Cap Ca pa De ada panda cu trite pa 364 B 3 OPERA ES COMPLEMENTARES cui case ascecteds caus cadacaan iraniano ain n carina ninar nda na nd dn Cena 364 Per JOIN Seis oserirado ou eiid dd od do dd Case BE Bd EU E S EB q dq dd Sd SEE 364 B 3 1010 Libera Ona ease vir Riprnier AAE dama asp da AR du dava Dalai duda DO Sua dada Sea 365 B 3 1 2 Join Natutal catasstcsicspissatecatesstessiccsiasstacatssstensatsatacetecsseapucesttanscetorsctasutcpisvatoaptaavebessbsvebevsbasbonsbcvandd 365 B 3 22RENOMEA O ses renes as rima nis aereas perante adia apena doados apa EEE cesar 365 BIS AGRUPAMENTO caio e E EE nurs
310. eedings of the 21st International Conference on Information Systems Queensland Australia Dezembro de 2000 pp 713 716 Levenshtein V 1966 Binary Codes Capable of Correcting Deletions Insertions and Reversals Doklady Akademii Nauk SSSR 163 4 1966 pp 845 848 Liu X 1999 Progress in Intelligent Data Analysis Applied Intelligence 11 1999 pp 235 240 376 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Lopes A e Babbitt T 1999 Knowledge Management Differing Ideals Differing IT Implications In Proceedings of the Americas Conference on Information Systems Milwaukee EUA Agosto de 1999 pp 477 479 Low W L Lee M L e Ling T W 2001 A Knowledge Based Approach for Duplicate Elimination in Data Cleaning Information Systems 26 2001 pp 585 606 Luebbers D Grimmer U e Jarke M 2003 Systematic Development of Data Mining Based Quality Tools In Proceedings of the 29th Very Large Databases Conference Berlin Alemanha Setembro de 2003 pp 548 549 Maletic J I e Marcus A 2000a Automated Identification of Errors in Data Sets In Technical Report n TR CS 00 02 Universidade de Memphis 2000 Maletic J I e Marcus A 2000b Data Cleansing Beyond Integrity Analysis In Proceedings of the 5 International Conference on Information Quality Boston EUA Outubro de 2000 pp 200 209 McCallum A K N
311. efectuadas no seguimento da primeira execu o das sequ ncias de OD n o introduzam outros PQD como se verificou no estudo de caso esta constitui a situa o mais usual apenas h uma itera o adicional de execu o das OD em cada NG e uma outra desde o n vel mais elementar Em termos de custo computacional estas itera es representam o pre o a pagar para se ter a certeza que todos os PQD foram solucionados e que os dados est o efectivamente limpos No estudo de caso apresentado no Cap tulo 8 o custo computacional n o se mostrou minimamente relevante Todavia a dimens o da BD utilizada n o muito significativa especialmente quando comparada com certas BD que armazenam milh es de tuplos A avalia o do custo computacional em BD de maiores dimens es ser objecto de trabalho futuro No modelo proposto de LD a manipula o dos PQD obedece a uma sequ ncia preestabelecida por e em cada NG As OD especificadas pelo utilizador s o executadas de acordo com essa sequ ncia de manipula o Independentemente da situa o de LD Cap tulo 10 Conclus o 349 em causa e dom nio BD os PQD s o sempre manipulados em fun o dessa sequ ncia A exist ncia desta evita que tenha de ser o utilizador a definir as depend ncias de execu o entre as opera es como actualmente acontece nos prot tipos de investiga o Naturalmente quando a defini o das depend ncias fica a cargo do utilizador qual
312. efectuado apresentada As limita es inerentes a este s o tamb m evidenciadas Por ltimo s o perspectivadas algumas hip teses de desenvolvimentos futuros com o intuito de dar seguimento ao trabalho efectuado at ao momento Al m dos 10 cap tulos a disserta o ainda composta por dois ap ndices No Ap ndice A Ferramentas Comerciais de Melhoria da QD apresenta se uma descri o sucinta de algumas ferramentas comerciais utilizadas no processo de melhoria da QD No mbito deste trabalho de doutoramento procedeu se sua an lise e experimenta o No Ap ndice B lgebra Relacional apresenta se uma breve descri o sobre os operadores de lgebra relacional utilizados na formaliza o sem ntica das opera es de detec o e correc o presentes respectivamente nos Cap tulos 5 e 6 desta disserta o Para uma leitura mais r pida desta disserta o orientada apenas ao trabalho efectuado no mbito deste doutoramento sugere se que se avance os cap tulos referentes ao estado da arte a2 Cap tulos 2 e 3 Para um leitor menos conhecedor das reas da Qualidade de Dados no geral e da Limpeza de Dados em particular aconselha se a leitura dos Cap tulos 2 e 3 desta disserta o QUALIDADE DE DADOS Este cap tulo d uma vis o geral sobre a tem tica da Qualidade de Dados QD Assim come a pot contextualizar e vincar a import ncia da QD real ando o facto de ser uma rea de investiga
313. el identificar quais os tuplos 258 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica e atributos que sofreram altera es No caso da rela o resultante da OD e a que armazena os PQD conter a chave prim ria dos tuplos nos quais os problemas foram identificados esta informa o usada na identifica o das altera es Caso contr rio necess rio efectuar uma compara o integral entre todos os tuplos de ambas as rela es para identificar as altera es Nem sempre uma correc o produz os resultados que se esperam Contemplando esta possibilidade poss vel anular integralmente as altera es efectuadas A anula o da correc o implica que se reponha o estado da rela o antes da sua execu o Para que tal seja poss vel necess rio que o estado anterior esteja armazenado Este constitui o segundo motivo que justifica a exist ncia das rela es auxiliares Actualmente apenas poss vel repor o estado anterior realiza o das correc es efectuadas com o intuito de solucionar um determinado PQD N o poss vel repor qualquer outro estado anterior a este ltimo Por outro lado a correc o de um dado PQD pode envolver mais do que uma OC e uma sequ ncia de opera es Perante a anula o das altera es efectuadas no gt mbito da resolu o de um PQD s o anulados os efeitos de todas as OC que comp em uma dada sequ ncia Por outras palavr
314. elimina o de registos duplicados constitui a tarefa da LD a que tem sido dada maior aten o H pelo menos cinquenta anos que se reconhece que o problema importante Monge 2000 Esta realidade comprovada pelo elevado n mero de publica es o que constitui um indicador da sua import ncia O problema foi originalmente identificado em Newcombe e al 1959 tendo este autor usado o termo record linkage para o designar O mbito do trabalho centrou se na identifica o de registos m dicos relativos ao mesmo indiv duo mas referentes a per odos de tempo diferentes Depois deste muitos outros trabalhos de investiga o debru aram se debru am se e certamente continuar o a debru ar se sobre esta problem tica da detec o e elimina o de duplicados No entanto n o h um termo universalmente aceite que a caracterize como se pode constatar pelas diferentes designa es encontradas na literatura al m da inicialmente proposta em Newcombe al 1959 problema da identidade do objecto em ingl s object identity problem Monge 2000 Naumann e Haussler 2002 problema de fundir remover em ingl s merge purge problem Hern ndez e Stolfo 1995 Hernandez e Stolfo Cap tulo 3 Limpeza de Dados 41 1998 detec o de duplicados Monge e Elkan 1997 Sarawagi e Bhamidipaty 2002 correspond ncia de refer ncias em ingl s reference matching McCallum e al 2000 agrupamento e correspond ncia de no
315. eliminando os duplicados existentes e ii detectar e remover os registos de uma tabela que existem noutra tabela e identificar e eliminar sobreposi es Nestes dois ltimos casos n o obrigat rio que as tabelas possuam um esquema exactamente igual sendo permitidas algumas diferen as A ferramenta disponibiliza um conjunto de assistentes que auxiliam o utilizador ao longo de todo o processo de manipula o de duplicados A ferramenta opera sobre uma c pia dos dados pelo que a primeira opera o executada envolve a sua importa o ferramenta suporta o acesso a dados que se encontram no formato Microsoft Access Microsoft Excel bem como aos formatos textuais habituais e g separado por v rgulas separado por tabula es Outros tipos de fontes de dados podem ser acedidas recorrendo a uma conex o ODBC A ferramenta permite visualizar os dados e corrigir o conte do sem ntico e g linha de endere o telefone departamento inferido automaticamente para cada atributo O conte do de cada atributo importante na identifica o dos registos duplicados A detec o e remo o de duplicados pode ser efectuada com objectivo diferentes designadamente de obter apenas um registo por 7 contacto ou indiv duo 77 empresa ou familia ou 717 endere o A identifica o dos duplicados efectuada exclusivamente com base nas seguintes chaves 7 chave fon tica do ltimo nome juntamente com o c digo postal 77 cha
316. em ntica A detec o deste PQD envolve identificar as chaves prim rias dos tuplos onde o atributo em causa e atr n o possui valor e encontra se a null Algoritmo Detec o Valor em Falta amp seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de R onde existem valores em falta em atr com o seguinte esquema Z1 d dm in cio se existe rela o Z1 falso ent o P Z1 apa O atr nulf cond R gt lt Fy sours R Fee x Z1 i 1 sen o Z1 asim cs San cond R gt lt z1 fim se fim Nota Nos problemas que ocorrem ao n vel do contexto do valor individual do atributo e no que ocorre ao n vel do tuplo surge uma estrutura condicional do g nero se existe rela o Z1 falso ent o sen o A finalidade desta estrutura condicional a Cap tulo 5 Formaliza o das Opera es de Detec o 117 seguir explicada No caso da rela o que armazena os PQD je ZI n o existir isso significa que se est perante a primeira execu o da OD Nesta primeira execu o consideram se todos os valores do atributo excep o daqueles que tenham sido explicitamente exclu dos na especifica o da opera o pelo utilizador e daqueles onde j tenham sido identificados PQD resultantes da execu o de opera es anteriores da sequ ncia de OD em rela o opera o corrente nas formaliza es a exclus o destes valores representada pela sub expre
317. emonstrar na pr tica as suas potencialidades de DC dos PQD Consequentemente foi tamb m demonstrada a validade da arquitectura e do modelo de LD que se encontra na sua g nese Isto significa que este objectivo tamb m foi alcan ado Da concretiza o dos dois objectivos anteriores resultaram as principais contribui es alcan adas com a realiza o deste trabalho de doutoramento 2 e o modelo de LD e o prot tipo O m rito cient fico destas contribui es foi reconhecido em publica es internacionais e g Oliveira ef al 2006b Al m destas foi poss vel alcan ar outras duas contribui es que surgiram como resultados laterais do trabalho realizado e que designadamente s o O Taxionomia de PQD relacionais Um dos objectivos do trabalho consistia em conceber e desenvolver um modelo para a DC dos PQD representados no formato relacional Naturalmente o primeiro passo nesse sentido consistiu em identificar todos esses problemas Apesar de na literatura j existirem taxionomias de PQD por compara o entre estas constatou se que nenhuma era completa Como se pretendia definir um modelo que contemplasse os diversos problemas de qualidade suscept veis de afectarem os dados a cria o de uma taxionomia o mais completa poss vel tornou se um requisito Assim desenvolveu se uma nova taxionomia assente numa abordagem de identifica o dos PQD Nesta taxionomia os PQD surgem agrupados em fun o do NG do modelo relacio
318. ems e g Papakonstantinou 1997 Bressan et al 1997 e resolu o de conflitos ao n vel do esquema e g Batini e al 1986 Lee e Ling 1997 Comparativamente o pr ximo passo l gico Ze identificar e solucionar problemas ao n vel dos valores tem merecido pouca aten o entre a comunidade cient fica 3 3 Requisitos Especificar e implementar um processo de LD que alcance bons resultados envolve alguns requisitos Q Em primeiro lugar um processo de LD n o pode ser executado sem o envolvimento de um perito do dom nio nas suas v rias fases Quer a detec o quer a correc o dos PQD n o podem ser automatizadas na totalidade Na realidade para que se possa concretizar um processo de LD necess rio fornecer se o conhecimento necess rio DC dos problemas Este conhecimento apenas pode ser transmitido por peritos do dom nio Dasu et al 2003 Q Em segundo lugar em virtude da natureza iterativa do processo de LD essencial ter se a possibilidade de modificar toda a especifica o e implementa o do processo de LD O Em terceiro lugar como os peritos do dominio s o um recurso caro importante automatizar o m ximo de trabalho poss vel antes destes serem chamados a intervirem no 40 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica processo de limpeza E necess rio fornecer lhes o m ximo de informa o poss vel de modo a que possam tomar de
319. encontram se as uniformiza es de sintaxes e a adop o de representa es consistentes para abreviaturas e acr nimos Na realiza o das correc es Cap tulo 3 Limpeza de Dados 59 s o usadas fun es de convers o e tabelas de pesquisa O resultado desta fase um conjunto consistente de registos que ser usado na fase seguinte O Processamento Envolve a avalia o das regras de LD sobre os registos pr processados Estes registos alimentam o mecanismo de infer ncia do sistema pericial os registos s o os factos As regras especificam as ac es a realizar perante a ocorr ncia de determinadas situa es Estas podem conter predicados complexos e refer ncias a fun es externas tanto no antecedente como no seu consequente Sempre que os registos respeitam as condi es definidas nas regras estas s o activadas disparadas As ac es especificadas no consequente das regras s o ent o executadas Os tipos de opera es de LD suportados encontram se organizados nas seguintes categorias de regras e Identifica o de duplicados Especificam as condi es a que necess rio obedecer para que dois registos possam ser considerados duplicados As regras podem invocar fun es que comparam a semelhan a textual efectuam manipula o de texto ou determinam a equival ncia entre registos e Fus o Definem a forma de manipula o dos registos duplicados Por exemplo uma regra de f
320. endere os de e mail Como as ferramentas em causa n o possuem potencialidades de extensibilidade n o poss vel incorporar FDU para a detec o ou correc o de outros PQD que n o sejam suportados de raiz Nenhuma das ferramentas comerciais de LD consideradas oferece uma pan plia de OD e OC prontas a usar de dimens o t o consider vel quanto as dispon veis no SwartClean 10 3 Problemas e Limita es Naturalmente alguns problemas e limita es podem ser apontados ao trabalho realizado Nos pontos seguintes efectua se a sua apresenta o Q O modelo de LD foi desenvolvido especificamente para os PQD que fazem parte da taxionomia Como tal apenas estes problemas possuem suporte a n vel de DC Como nao foi poss vel provar formalmente que a taxionomia completa 7 e que cobre todos os PQD que podem afectar os dados tamb m n o poss vel garantir que o modelo de LD 348 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica desenvolvido suporta a DC de todo e qualquer problema Ainda que se considere improv vel no caso de vir a ser identificado um novo PQD que justifique a sua inclus o na taxionomia o modelo de LD teria de ser adaptado em conformidade Ainda assim isto n o implicaria altera es de maior Em fun o do NG a que o problema pertencesse haveria que efectuar a sua inser o no local apropriado na respectiva sequ ncia de manipula o preconizada Na
321. ens es partilhadas pela generalidade das propostas Apesar de existirem v rias dimens es diferentes nas v rias propostas poss vel identificar um conjunto comum de dimens es que definem a ess ncia do conceito de QD Todas as restantes dimens es inclu das nas diversas propostas ou capturam aspectos secund rios ou s o muito espec ficas do contexto Apesar da diversidade de defini es que poss vel encontrar na literatura foram seleccionadas as que a seguir se apresentam para definir o significado de cada uma das dimens es atr s referidas Q Correc o Representa o armazenamento correcto dos valores relativos s propriedades dos objectos do mundo real e consiste em possuir valores certos Pipino ez a 2002 O Completude Representa o armazenamento de todos os dados considerados importantes de modo a que a aus ncia ou a insufici ncia de detalhe dos dados n o condicione a tomada de decis o Pipino et a 2002 Lee e Strong 2003 20 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Consist ncia Refere se inexist ncia de anomalias sint cticas nos valores dos dados e inexist ncia de conflitos contradi es entre os valores M ller e Freytag 2002 Actualidade Corresponde exig ncia dos dados estarem suficientemente actualizados para a execu o das tarefas a efectuar Lee e Strong 2003 Acessibilidade Representa
322. ental tira partido da exist ncia de uma sequ ncia de execu o das OD No caso de n o serem identificados PQD o processo dado como conclu do no NG actual prosseguindo no n vel seguinte O Baseia se em linguagens declarativas para a especifica o das opera es de DC As opera es de DC dos PQD que fazem parte da taxionomia s o especificadas tendo 336 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica por base duas linguagens declarativas especialmente desenvolvidas para o efeito A sintaxe inerente a cada uma das linguagens foi formalmente apresentada Relativamente ao terceiro objectivo do trabalho efectivamente foi implementado um sistema de LD de car cter experimental ze um prot tipo denominado de SmartClean que materializa fielmente a arquitectura resultante do modelo proposto Este prot tipo constitui o resultado mais vis vel do trabalho realizado demonstrando que a arquitectura suscept vel de ser materializada numa ferramenta inform tica Por outro lado o SartClean foi utilizado num caso real de LD Os PQD foram identificados e solucionados seguindo a sequ ncia preconizada e de forma progressiva em fun o das opera es especificadas pelo utilizador Ap s a utiliza o do prot tipo os dados ficaram isentos dos problemas que os afectavam inicialmente registando se a pretendida melhoria da qualidade A aplica o do prot tipo a um caso real permitiu d
323. entas comerciais em causa concedem aos PQD Relativamente a esta a Tabela 10 4 possui uma coluna adicional que ilustra a cobertura dada pelo prot tipo SmartClkan aos PQD Esta tabela permite comparar as potencialidades de DC do SyartClean em rela o s ferramentas comerciais Os significados dos acr nimos utilizados nesta tabela s o exactamente os mesmos do que os apresentados para a Tabela 10 2 346 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 10 4 Cobertura dada aos PQD pelo SmartClean por compara o a cinco ferramentas comerciais de LD ETI Data Trillium dfPower HI Cleanser Quality Quality Quality D OP NS OP NS NS OP Valor em falta OP E NS NS OP NS NS FDU D OP NS NS NS OP OR Viola o de FDU sintaxe OP C OP OP OP OP OP FDU D NS NS NS NS NS OP Erro ortogr fico C NS NS NS NS NS OP E D OP OP OP Op pe OP iola o de dom nio C OP Op 1 Op Op Op451011 OP FDU Viola o de D OP NS NS NS NS OP unicidade C NS NS NS NS NS OP Exist ncia de D NS NS NS NS NS OP sin nimos C OP OP OP OP OP OP D NS NS NS NS NS QR Viola o restr FDU integridade OP C NS NS NS NS NS FDU Viola o dep D NS NS NS NS NS OP funcional C NS NS NS NS NS OP Circular entre D NS NS NS NS NS OP tuplos auto rel C NS NS NS NS NS FDU OP D OP OP OP OP OP Tuplos F
324. epara o dos valores dos atributos nos seus elementos at micos uniformiza o valida o detec o de duplicados e consolida o de duplicados Esta sequ ncia n o suscept vel de ser alterada pelo utilizador o que reflecte a filosofia destas ferramentas orientadas para o uso pelo utilizador n o perito Tal como acontece nos prot tipos de investiga o n o se consegue dissociar a LD de transforma o de dados A transforma o de dados ocorre logo no primeiro passo da sequ ncia 7 e aquando da atomiza o S depois dos dados respeitarem o esquema de representa o predefinido pela ferramenta que os restantes passos da sequ ncia s o efectuados E muito pouco prov vel que este passo possa ser 76 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica dispensado e que os dados j estejam de acordo com esse esquema de representa o Ap s a realiza o da LD os dados resultantes encontram se segundo um esquema diferente do inicial Implicitamente considera se que o novo esquema o ideal para efectuar posteriores manipula es dos dados No entanto este pressuposto muitas vezes n o se verifica pelo que necess rio voltar a colocar os dados de acordo com o esquema original Esta tarefa n o suportada nas ferramentas comerciais analisadas semelhan a dos prot tipos de investiga o no geral estas ferramentas tamb m n o permitem efectuar LD directamente na
325. ependentemente de se tratarem de prot tipos de investiga o ou ferramentas comerciais as solu es inform ticas de LD actualmente existentes operam ao n vel do esquema dos dados O mesmo acontece com o prot tipo SwartClean desenvolvido no mbito deste trabalho de doutoramento No entanto este modo de funcionamento prende as opera es de DC a cada BD espec fica N o f cil aplicar as opera es de LD noutra BD pois os seus esquemas de dados s o normalmente diferentes Em suma n o trivial efectuar a sua reutiliza o noutras BD Esta limita o importante uma vez que em BD que pertencem ao mesmo dom nio muitas vezes faz sentido aplicar se as mesmas opera es de DC ou pelo menos um determinado subconjunto destas Como forma de a superar nesta disserta o concebeu se uma abordagem que suporta a interoperabilidade das opera es de DC entre BD diferentes Em vez de definidas ao n vel do esquema de dados as opera es s o especificadas conceptualmente ao n vel dos elementos das ontologias usando os dom nios os conceitos e as propriedades envolvidas Um conjunto de mapeamentos definidos pelo utilizador entre os dois n veis 2 e esquema de dados e ontologia permite identificar e instanciar automaticamente as opera es conceptuais de LD suscept veis de execu o em cada BD espec fica Desta forma suportada a interoperabilidade das opera es o que permite a sua reutiliza o em diferentes BD Apes
326. epetir enquanto v nulle novo valor x atr novo valor substitui substrindx atn v atr vec_sinonimos i se novo valor x atr ent o ve le_tuplo V fim se fim repetir YF Og x Au Ady X R R Ry y atr novo valor RH RU Qd meV Amt I Ima reinicializa leitura tuplos V x de tuplo X fim repetir fim repetir fim Em alternativa correc o dos sin nimos baseada na estrat gia de uniformiza o apresentada poss vel proceder elimina o dos tuplos que no atributo em quest o cont m sin nimos de um determinado conjunto de termos definidos pelo utilizador Assim o utilizador come a por indicar entre os sin nimos que formam cada cluster qual o termo que prevalece sobre os restantes A execu o autom tica desta opera o envolve a elimina o de todos os tuplos onde constam os sin nimos dos termos eleitos pelo utilizador como sobreviventes em cada cluster A elimina o dos tuplos faz sentido em todas aquelas situa es em que a execu o da opera o de correc o anterior introduziria redund ncia 7 e tuplos duplicados Tipicamente esta situa o ocorre em tabelas auxiliares vulgarmente existentes nas BD eg tabela de profiss es Estas tabelas caracterizam se por possu rem dois atributos um identificador c digo cuja finalidade a de ser chave prim ria e um descritivo onde se encontram os valores que a tabela armazena Neste tipo de tabelas a uniformiza o de dois termos
327. equ ncia composta por duas OD de viola o de restri o de integridade Se num dado tuplo da rela o for detectada uma viola o primeira restri o de integridade a segunda OD j n o executada nesse tuplo ficando pendente at correc o do problema No entanto atendendo a que em todos os outros tuplos da rela o n o foi detectada qualquer viola o primeira restri o de integridade n o h impedimentos execu o da segunda opera o Ap s a realiza o das correc es s viola es s restri es de integridade a execu o das OD reinicia se mas considera apenas os tuplos onde anteriormente tinham sido detectados PQD Todos os outros tuplos nos quais n o se detectou a exist ncia de problemas aquando da itera o anterior s o exclu dos da execu o das OD nesta nova itera o As correc es entretanto efectuadas ao tuplos com PQD n o os afectam da que n o se justifique voltarem a ser submetidos s OD Ao submeter novamente os tuplos nos quais tinham sido identificados PQD as OD pretende se garantir que estes foram efectivamente solucionados com as correc es efectuadas Na execu o de cada OD s o considerados al m dos tuplos onde anteriormente tinham sido identificados os problemas em causa tamb m os tuplos em que a execu o das opera es precedentes da sequ ncia j n o detectou a exist ncia de PQD Esta abordagem permite a continua o da execu o da sequ ncia de O
328. er Inserir Formatar Ajuda Del 66 amp LenB DETECT Uniqueness Violation ON Telef FROM Customers OF Menagerie DETECT Domain Violation ON Local FROM CodPost OF Menagerie CORRECT Misspelling Errors ON Name FROM Customers OF Menagerie CORRECT Overloaded Attribute ON Local FROM CodPost OF Menagerie USING DOMAIN Localidades CORRECT Incomplete Value ON Local FROM CodPost OF Menagerie USING CLOSEST VALUE DETECT Syntax Violation ON Telef FROM Customers OF Menagerie WHERE Telef NOT LIKE 9 AND Telef NOT LIKE 22 CORRECT Missing Value ON Value FROM Products OF Menagerie DETECT Functional Dependency Violation ON City FROM Customers2 OF Menagerie SET Value 10 DEPENDENT ON zipcode street CORRECT Syntax Violation ON Name FROM Customers OF Menagerie BY TRANSFORMING s INTO 2 11 DETECT Integrity Constraint Violation AT LEVEL OF ROW ON Quant PUnit Valor FROM Produtos OF Menagerie WHERE Quant PUnit lt gt Valor CORRECT Syntax Violation ON Mobile FROM Customers OF Menagerie BY TRANSFORMING 931 d 7 INTO 91 1 BY TRANSFORMING 933 d 7 INTO ashi BY TRANSFORMING 936 d 7 INTO 96 1 DETECT Referential Integrity Violation ON Zipcode Street FROM Customers OF Menagerie DEPENDENT ON Cp Rua FROM CodigosPostais REMOVE Misspelling Errors ON Name FROM Supplyers OF Menagerie DETECT Integrity Constraint Violation AT LEVEL OF COLUMN ON PercValor FROM Produtos OF Menagerie WHERE SELECT SUM PercValo
329. era es de LD ficou a cargo do autor desta disserta o Antes da realiza o de qualquer opera o de LD come ou se por efectuar uma ambienta o no geral ao dom nio em causa e em particular BD em quest o 7 e a que ser objecto das opera es de LD A ambienta o ao 270 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica dom nio efectuou se fundamentalmente com base em informa o dispon vel na Internet A ambienta o BD ocorreu por interm dio da realiza o de variados inqu ritos em SQL Da ambienta o ao dom nio e BD resultou a identifica o de um conjunto de OD que faziam sentido serem executadas Estas opera es cobriam os diferentes NG desde o atributo at ao n vel que envolve m ltiplas rela es de BD diferentes A sua especifica o efectuou se de uma s vez ficando a cargo do SmartClean a sua organiza o e execu o por NG medida que os PQD foram identificados e reportados como resultado da execu o das OD efectuaram se algumas correc es manuais e especificaram se OC para solucionar automaticamente a generalidade dos problemas A execu o das opera es obedeceu abordagem ascendente Ze bottom up preconizada no modelo de LD defendido e implementada no martClean Assim come ou se pela execu o das opera es relativas ao NG mais elementar 7e atributo e terminou se no NG de maior complexidade 7 e m ltiplas re
330. era o que recorre a uma fun o externa definida pelo utilizador Seguindo esta ltima via poss vel efectuar se a correc o autom tica de qualquer PQD Mesmo aqueles para os quais se prop s e formalizou uma OC neste cap tulo podem ser solucionados por uma outra via de acordo com o implementado na FDU A formaliza o sem ntica das diversas OC foi efectuada tendo em conta os aspectos relacionados com a sua efici ncia No entanto estas preocupa es n o foram levadas ao limite pelo que poder haver margem para a introdu o de optimiza es A introdu o destas eventuais optimiza es ser objecto de an lise num futuro pr ximo De qualquer forma cada formaliza o sem ntica n o representa literalmente a forma como a OC ser implementada A t tulo de exemplo considere se o caso da actualiza o do valor de um atributo Nas formaliza es esta representada pela elimina o do tuplo respectivo e pela sua re inser o j com o valor do atributo devidamente actualizado A adop o desta abordagem prende se com a inexist ncia de um operador de actualiza o em lgebra relacional A implementa o da actualiza o ao valor do atributo corresponde simplesmente a uma instru o Update de SQL Apesar de se formalizar um conjunto apreci vel de opera es h a perfeita no o de que nem sempre estas corresponder o s necessidades de correc o Isto acontece em virtude de ser imposs vel prever t
331. eralidade dos projectos de armaz ns de dados procede integra o de dados provenientes de m ltiplas fontes eventualmente com modelos de representa o de dados diferentes e g bases de dados relacionais ficheiros de texto ficheiros bin rios Na fase de carregamento os dados transformados s o colocados no armaz m de dados Nalguns armaz ns de dados procede se meramente substitui o dos dados que possam existir pelos novos dados Noutros armaz ns de dados mais evolu dos mantido um hist rico que regista todas as altera es efectuadas suportando carregamentos incrementais peri dicos dos dados No mercado encontram se dispon veis in meras ferramentas de TD A t tulo meramente exemplificativo referem se as seguintes dfPower Quality DataFlux 2007 TS Quality Trillium Software 2007a HIQuality Human Inference 2007c e Oracle Data Integrator Oracle Data Integrator 2007 Esta ltima apresentada no Ap ndice A Sec o A 3 Os prot tipos de investiga o Ajax Galhardas et al 2001 Arktos II Vassiliadis et a 2003 e Pozter s Wheel Raman e Hellerstein 2001 constituem os representantes da comunidade acad mica que suportam a realiza o de TD Estes prot tipos encontram se descritos no cap tulo seguinte Sec o 3 5 1 2 7 4 Limpeza de Dados A LD em ingl s data cleaning data cleansing data scrubbing visa a DC dos PQ que afectam os valores dos dados Milano e a 2005 A L
332. erdo suporta o armazenamento das representa es dos diferentes dom nios ao n vel da ontologia e suporta o armazenamento das ontologias dos dom nios O quadrante inferior esquerdo tamb m permite armazenar as representa es dos diferentes dom nios mas ao n vel do esquema da BD Uma dada ontologia do dom nio pode corresponder a diferentes representa es ao n vel do esquema dos dados Em particular um elemento da ontologia 7 e dom nio conceito propriedade pode estar representado sob m ltiplas formas ao n vel do esquema dos dados 7 e BD tabela atributo g a propriedade C digo Postal pode ser representada como sendo o atributo CodigoPostal CodPostal CodigoPost CodPost CP Como explicado na sec o anterior o utilizador estabelece manualmente os mapeamentos entre os dois n veis e dos elementos do esquema de dados para os elementos da ontologia do dom nio respectiva Estes mapeamentos s o armazenados no reposit rio resultante do modelo de dados aqui proposto No futuro pretende se tirar partido da informa o existente sobre estes para estabelecer automaticamente mapeamentos entre os dois n veis perante uma nova BD O objectivo passa por reduzir o n mero de mapeamentos que o utilizador necessita de especificar manualmente Os mapeamentos s o muito importantes uma vez que baseado nestes que as opera es conceptuais de LD s o instanciadas ao n vel do esquema da BD onde v o ser executadas Por a
333. erminar a semelhan a entre strings mas tamb m para avaliar a semelhan a global entre dois registos No caso do c lculo da semelhan a entre registos necess rio combinar as semelhan as entre os valores de cada atributo A contribui o da semelhan a entre os valores de cada atributo para a semelhan a global entre os registos varia em fun o do grau informativo Como tal necess rio atribuir pesos aos atributos de acordo com a sua import ncia na determina o da semelhan a entre os registos Em fun o destes pesos e dos valores das semelhan as individuais de cada atributo calculado o valor global da semelhan a entre os registos A generalidade dos algoritmos considera dois registos duplicados se a semelhan a entre estes se encontra acima de um determinado limiar Bilenko e Mooney 2003 3 4 4 Avalia o da Efic cia da Detec o de Duplicados Alguns registos duplicados podem n o ser identificados enquanto outros registos que n o representam a mesma entidade podem ser erradamente classificados como duplicados Estes pares de registos incorrectamente classificados s o denominados de falsos positivos Lee et al 1999 As m tricas abaixo apresentadas s o vulgarmente usadas e g em Hern ndez e Stolfo 1995 54 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Lee et al 20004 e Scannapieco 2004 para estimar a efic cia das estrat gias de detec o de duplic
334. ers o para a unidade de medida y e devolve este resultado Sejam a e a os nomes de dois atributos representativos da mesma propriedade do mundo real Sejam t e t dois tuplos representativos da mesma entidade do mundo real Existe heterogeneidade de unidades de medida entre as rela es n e n sse V t E ria e RIA ap E R A t E r converi vt a ta O Exist ncia de sin nimos Seja synonyms uma fun o que recebe dois fokens e um dicion rio de sin nimos d verifica se os tokens s o sin nimos com base no dicion rio e devolve um valor l gico Seja tokenize uma fun o que recebe um valor e devolve os tokens que o comp em Sejam a e a os nomes de dois atributos representativos da mesma propriedade do mundo real Sejam Se T conjuntos de wens assim definidos ftokenize Mt a ter A a e R A e U ttokenize vt a t Em Aa 98 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica RA Diz se que se est perante a exist ncia de sin nimos entre as rela es ne n sse 3 se Sue U synonyms s u d verdadeiro Exist ncia de hom nimos Sejam a e a os nomes de dois atributos representativos da mesma propriedade do mundo real Diz se que se est perante a exist ncia de hom nimos entre as rela es r e n se J t E t t E n a4 E R A a E RAA tra Uta Diferentes granularidades de representa o Sejam a e a os nomes de dois atri
335. es s opera es anteriores da sequ ncia tenham sido corrigidos Como h depend ncias entre os valores poderiam n o ser identificados certos problemas ou erradamente serem reportados outros Na Figura 7 12 encontra se esquematizado graficamente o processo respectivo de execu o das OD As linhas a tracejado ilustram a separa o existentes entre as tr s fases de execu o das OD Circularidade entre Tuplos Tuplos Duplicados Em Viola o de Restri o de Integridade E Viola o de Depend ncia Funcional Figura 7 12 Processo de execu o das OD no NG da rela o Sempre que s o efectuadas correc es no seguimento dos PQD detectados a OD respectiva executada novamente Na figura anterior isto corresponde s itera es representadas em cada tipo de PQD Independentemente dos tuplos onde tenham sido detectados PQD na nova itera o de execu o da OD todos os tuplos t m de ser novamente considerados A realiza o de uma correc o pode introduzir inadvertidamente um outro PQD do mesmo tipo eg a correc o de uma viola o de depend ncia funcional pode introduzir uma outra viola o de depend ncia funcional S tendo em conta a totalidade dos tuplos existentes poss vel garantir que de facto n o existem problemas do tipo em quest o 244 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica No caso da sequ ncia envolver mais do que uma
336. es a um dado erro ortogr fico detectado Isto ocorre quando n o h qualquer semelhan a entre o erro ortogr fico e as palavras que constam do dicion rio 176 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Algoritmo Correc o Erro Ortogr fico E seja pal err o atributo de Z1 onde se encontram as palavras nas quais foram detectados erros ortogr ficos seja pal semelh o atributo de Z1 onde se encontram as palavras lexicalmente similares s que se encontram no atributo pal err mas que n o cont m erros ortogr ficos seja grau semelh o atributo de Z1 que cont m o grau de semelhan a existente entre pal err e pal semelh Este valor resulta da OD tendo sido gerado pela m trica de avalia o de semelhan a utilizada in cio T lt Dy 505d pal _err Y count pal _err Sond Z1 t de tuplo T repetir enquanto t null UXT grau semelh z pal semelh grau semelh o Pi Nias Rp ta A ue de tuplo U se u pal semelh null ent o prim grau semelh u grau semelh prim pal semelh u pal_semeth ue de tuplo U se u null ou ugrau semelh lt prim grau semelh ent o ve O acta DouP ag the R R R v v atr substitui_substring v atr t pal err prim pal semelh R RU DA Velm Vem ty 5V Omtn fim se fim se t lt de tuplo T fim repetir fim Nota Na express o em lgebra relacional assinalada com um asterisco a ordena o
337. es consideradas A metodologia sugere algumas m tricas simples para a medi o da QD O resultado da fase de avalia o 7 e um conjunto de medidas da QD referentes s diferentes dimens es serve de base fase de an lise Nesta fase analisa se o processo de manufactura de informa o para 7 identifica o de configura es problem ticas 77 detec o das causas das falhas a n vel de qualidade e 777 avalia o de pol ticas alternativas para a melhoria da qualidade Por ltimo a fase de melhoramento corresponde as iniciativas que procuram eliminar as causas dos problemas e assim melhorar a QD 2 5 1 Avaliar a Qualidade dos Dados A avalia o da QD efectuada no contexto da metodologia GTQD ou de uma qualquer outra metodologia de gest o essencial Para que tal seja poss vel necess rio seleccionar se um conjunto de dimens es e estabelecer se os relacionamentos entre estas Bovee ef al 2003 A avalia o da qualidade definida como o processo de atribuir valores num ricos ou categ ricos a cada dimens o usando para o efeito m tricas da QD Gertz ef al 2004 A avalia o da QD envolve dois tipos de avalia es objectiva e subjectiva Ambas as avalia es s o necess rias para quantificar a QD De um modo geral a QD pode ser definida como sendo o valor combinado resultante dos valores das medi es efectuadas no conjunto de dimens es da qualidade consideradas Naumann 2002 A avalia o ob
338. escesscceseseeesseeeeneceesneeeesseeseeeens 10 CAP TULO 2 QUALIDADE DE DADOS 13 21 TINTRODUGAO wi 2e2ededccetitelstededetedetatedadedsdededetuceladedsdeteaesdeocececessstousacdeee coast teousasceeecesst teoer eones 13 2 2 PERSPECTIVAS DIFERENTES DE QUALIDADE DOS DADOS sccsssccesesceeseeessseeeseceeencceneeeeenees 15 22 1 PERSPECTIVA ESTRITA PD RO DER OR ORNE RR DU 15 2 2 2 PERSPECTIVA LATA cia eia SA 16 2 2 2 1 A Multi Dimensionalidade da Qualidade de Dado eeeesssssssesseseseseseseeeseseseeeseeeeeeeeeeeeeeeees 17 D2 2 2 DS TO DAE E EAE 19 2 3 CONTEXTOS DE PREOCUPA O COM A QUALIDADE DOS DADOS sscsseseeeseeeeeseeeeseeeeeseeeeees 20 2 4 A FRACA QUALIDADE DOS DADOS cccssccsssscsesseeeeseceessscesscceessceeesecesscceeensceeseeeeseeseeeesneeeeenees 21 DAM GAUSAS aneno ia RAA AAAA ARREA AAEE AE 21 xii DA CONSEODENGIAS te um cura aca a a A A Ai cd pr 22 2 5 GEST O DA QUALIDADE DOS DADOS cccssscsesecceesccesssceescceeensceescecescceesncceesseeseseceseseesseneeenees 23 DS LAV ALIAR QUALIDADE DOS DADOS lean ened ceaesa E E E 24 2 5 2 MELHORAR A QUALIDADE DOS DADOS ita aiii 26 2 6 PROBLEMAS DE QUALIDADE DOS DADOS csssccesescesssceesceeensceesscceesccecensceesseesenenesensceesseeenees 27 2 7 PROCESSO DE MELHORIA DA QUALIDADE BASEADO NOS DADOS ccssesceeseceeeseeeeeseeeeneeeeees 29 25491 DATA PROFILING ieir entei pandas dE PAR vaca den dE TEE OE eta TEMA cap ira seo Cai copia ng aaa 29 D
339. esentadas nas subsec es seguintes s o baseadas na informa o t cnica dispon vel sobre as ferramentas nos sites das empresas propriet rias e na experimenta o das pr prias vers es de demonstra o quando tal foi poss vel 66 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 3 5 2 1 WinPure Clean amp Match A ferramenta WinPure Clean and Match WinPure 2007 suporta a realiza o de um conjunto de opera es de LD das quais se destaca a detec o e elimina o de duplicados Al m de permitir o acesso a ficheiros de texto a ferramenta permite aceder a dados armazenados nos formatos Microsoft Access e Microsoft Excel As opera es de limpeza podem ser efectuadas numa FD ou em duas FD diferentes em simult neo Neste ltimo caso poss vel a detec o e elimina o dos duplicados existentes entre estas A ferramenta permite ao utilizador visualizar e navegar nos dados de uma ou duas tabelas em simult neo As opera es suportadas pela ferramenta s o a Detec o de valores em falta poss vel obterem se estat sticas sob a forma textual e gr fica que auxiliam a identificar os valores em falta nos atributos seleccionados O Limpeza no atributo Permite corrigir todos os valores incorrectos de um atributo com base na exemplifica o da correc o a efectuar num dos seus valores O Limpeza de texto Permite remover caracteres indesej veis
340. estes estabelecer a ordem pela qual ser o executadas Neste trabalho defende se a detec o e de imediato a correc o dos PQD por NG come ando no mais elementar 7 e o atributo e terminando no de maior complexidade z e m ltiplas rela es de diferentes fontes de dados Al m desta abordagem ascendente tamb m se advoga que em cada NG os PQD devem ser manipulados 7 e detectados e corrigidos seguindo uma determinada sequ ncia Compete a este m dulo efectuar todo este trabalho de organiza o e sequencia o das opera es Uma vez agrupadas por NG e sequenciadas as opera es s o submetidas ao m dulo motor de execu o incremental das OD A semelhan a do anterior pela sua import ncia na arquitectura este m dulo tamb m merece uma aten o especial A sua apresenta o ser efectuada em pormenor na Sec o 7 4 sendo aqui fornecida apenas uma descri o sucinta Como o pr prio nome o indica este m dulo respons vel pela execu o de cada OD Naturalmente estas opera es s o executadas sobre a Base de Dados BD alvo de LD Apesar da pan plia de OD que se disponibilizam de raiz apresentadas e formalizadas no Cap tulo 5 e que este m dulo permite 17 O termo utilizador empregue com o sentido de algu m que possui os conhecimentos necess rios para efectuar LD e de especificar as OD adequadas e caso sejam identificados PQD especificar as OC apropriadas ou corrigir manualmente esses
341. esultado de cada fun o respons vel por gerar um valor sobrevivente obrigatoriamente um valor at mico Na formaliza o a seguir apresentada estes correspondem aos valores que se encontram nas atribui es que envolvem os atributos da rela o R i e Ao dy dz De referir que semelhan a da anterior esta opera o tamb m tem em conta a n o viola o da integridade referencial Para tal necess rio que as respectivas restri es tenham sido definidas na BD em quest o Algoritmo Remo o Tuplos Duplicados Baseada em FDU amp seja A am 1 4m n O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja k o n mero de atribui es existentes na sequ ncia de atribui es da OC sejam x ye z n meros inteiros compreendidos no intervalo m 1 m n sejam o p e q n meros inteiros compreendidos no intervalo 1 in cio T lt Tideluster Cond Z1 t de tuplo T repetir enquanto t null Ue Ray sR AR Ants Redon tn T idehister tidelister R Rs Z1 v fdu p Pio Py v lt fdu 27 Py ss 192 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica v fdu EA Pes saber ue de tuplo U ve Oq u An n U Am R RR P v a V v a Vy V dz Vq R RU V t Velm Andes VA ue de tuplo U repetir enquanto u null repetir para i 1 at w X lt Oc U dy A C py U dy 655 S S X x lt de tuplo X
342. evados e nao h qualquer proveito A abordagem apropriada consiste em especificar as opera es de LD somente ao n vel do esquema de dados Caso a generalidade das opera es sejam gen ricas o suficiente para serem aplicadas em diferentes BD ent o justifica se o desenvolvimento da ontologia e a especifica o das opera es a este n vel Nestes casos os ganhos que adv m da reutiliza o das opera es conceptuais de LD s o superiores aos custos Algumas opera es de LD envolvem a invoca o de fun es definidas pelo utilizador e g para verificar se dois registos s o duplicados Alguns ajustamentos aos par metros destas fun es e g limiar de detec o de duplicados podem ser necess rios para os ajustar BD espec fica na qual a opera o vai ser executada Estes ajustamentos s o efectuados pelo utilizador O objectivo da abordagem consiste em identificar e instanciar automaticamente as opera es que devem ser executadas numa BD em fun o dos mapeamentos estabelecidos apresentando as ao utilizador Este pode aceitar algumas destas opera es sem lhes efectuar altera es enquanto outras podem necessitar de alguns ajustamentos nos par metros das fun es No entanto mais f cil analisar as opera es apresentadas e efectuar os ajustamentos que se mostrem necess rios do que especificar na ntegra todas as opera es a efectuar ou pesquisar e efectuar as necess rias altera es ao n vel do esquema e
343. execu o das diversas OC Com intuito de ilustrar esta independ ncia de execu o das OC considere se o exemplo a seguir apresentado A Tabela 7 5 exibe o conte do da rela o utilizada no exemplo Nesta rela o o utilizador definiu as seguintes OD que incidem sobre o atributo NomeFuncion rio viola o de sintaxe 7 e tem de ser composto por duas palavras separadas por um espa o erro ortogr fico e viola o de dom nio 7 e tem de pertencer ao conjunto de nomes de funcion rios da empresa 256 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 7 5 Rela o para exemplifica o da execu o das OC NomeFuncion rio Justino Oliveira Celeste Machado Susana Loureiro ngelo Barrozo V tor Ramalho Carvalho Ant nio Jorge Orlando Da execu o destas opera es resultou a identifica o de uma viola o de sintaxe em Carvalho Ant nio um erro ortogr fico em ngelo Barrozo e uma viola o de dom nio em Celeste Machado Confrontado com os problemas detectados admita se que o utilizador especificou tr s OC para a sua resolu o A OC de viola o de sintaxe coloca o valor do atributo de acordo com a sintaxe pretendida A OC de erro ortogr fico substitui a palavra errada por aquela que lexicalmente mais pr xima se encontra A OC de viola o de dom nio recorre a uma fun o definida pelo utiliz
344. executadas sequencialmente Em primeiro lugar a OC de heterogeneidade de unidades de medida seguida da opera o de remo o de tuplos duplicados excep o destas em todas as outras situa es n o h depend ncias de execu o entre as OC pelo que se optou por efectuar a sua execu o em simult neo Desta forma minimiza se o tempo necess rio sua execu o Note se que nos NG da rela o e multi rela o de uma ou de diferentes fontes de dados na grande maioria das situa es a detec o de um PQD obriga sua resolu o antes de se avan ar para a detec o do problema seguinte da sequ ncia de OD Naturalmente nestas situa es apenas h uma OC para execu o 7 5 2 Controlo das Correc es Efectuadas Imediatamente antes da execu o de qualquer OC actualizada ou criada caso n o exista uma rela o tempor ria auxiliar que armazena o estado da rela o Estas rela es s o criadas em cada NG sendo eliminadas quando se passa ao NG seguinte ou conclui a LD Existe uma rela o auxiliar para cada rela o envolvida em OC Como se ver mais adiante uma rela o auxiliar pode conter apenas os atributos da rela o original envolvidos nas OC do NG em causa ou conter todos os atributos Igualmente a rela o auxiliar pode replicar apenas os tuplos cujas OD do NG em quest o identificaram PQD ou conter todos os tuplos da rela o respectiva A exist ncia de rela es auxiliares justifica se por dois
345. experimentou os efeitos adversos de decis es baseadas em dados de m qualidade Huang cf al 1999 Num n mero cada vez maior de organiza es acredita se mesmo que a QD condi o essencial para o seu sucesso Wang e al 1998 Normalmente as preocupa es com a QD surgem fundamentalmente nos contextos referidos e an lise multi dimensional de dados minera o de dados e gest o de relacionamento com o cliente No entanto o contexto de maior relev ncia diz respeito aos pr prios dados quando considerados isoladamente De facto mesmo que os dados n o sejam utilizados nesses contextos ie sejam apenas usados no contexto dos sistemas de informa o que os armazenam a necessidade de dados com qualidade constitui sempre um requisito No entanto constata se que uma boa parte dos dados na generalidade das fontes apresenta problemas de qualidade Oliveira et al 2004 luz da perspectiva adoptada neste trabalho estes Problemas de Qualidade dos Dados PQD correspondem falta de completude correc o ou consist ncia dos valores dos dados Entre outras possibilidades estes PQD correspondem a valores em falta em atributos de 2 Nesta disserta o o termo fonte de dados significa base de dados ou conjunto de ficheiros 3 Os PQD est o a ser abordados de acordo com uma perspectiva estrita que considera apenas estas tr s vertentes ou dimens es Existe uma outra perspectiva de mbito lato que considera muita
346. fdu 27 PoovPo v fiu PiP JW se avalia _condi o p pPgoPgz verdadeiro ent o Z1 Z1 VU td tdp tatn fim se t lt le_tuplo T fim repetir fim Cap tulo 5 Formaliza o das Opera es de Detec o 119 Nota O esquema de Z1 igual ao que se encontra apresentado na formaliza o da detec o de viola o de sintaxe dom nio baseada em SQL No caso de se tratar da detec o de viola o de dom nio com base num dom nio de refer ncia armazenado numa rela o X a opera o envolve identificar as chaves prim rias dos tuplos e os respectivos valores de atr que n o se encontram nesse dom nio Ambos os resultados s o armazenados na rela o que resulta da OD z e ZI Neste caso a formaliza o a que a seguir se apresenta Algoritmo Detec o Viola o Dom nio Baseada Dom nio Refer ncia seja Xa rela o que armazena o dom nio de valores v lidos com o seguinte esquema X id dom em que id constitui a chave prim ria e dom o atributo onde se encontram os valores considerados v lidos para atr in cio se existe rela o Z1 falso ent o P Z1 Ty ty at Fond RE Ty ag BIJ Fe pn EEDE Hate R Ftom XY i 1 sen o Z1 asa atn O cond REIZIDIM a R M dom X fim se fim Nota O esquema de Z1 igual ao que se encontra apresentado na formaliza o da detec o de viola o de sintaxe dom nio baseada em SQL 5 3 1 2 1 Valor incompleto
347. fere todas as regras que se encontram subjacentes a um conjunto de dados Estas regras permitem detectar os valores que constituem excep es Sobre estes valores recaem suspeitas de constitu rem problemas de qualidade dos dados o que justifica uma an lise cuidada por parte do utilizador O utilizador necessita apenas de seleccionar a tabela que pretende analisar sendo todo o trabalho de an lise efectuado automaticamente O utilizador pode ajustar alguns par metros de an lise como a probabilidade m nima das regras se ent o e 0 n mero m nimo de casos de uma regra O utilizador Ap ndice A Ferramentas Comerciais de Melhoria da Qualidade de Dados 355 tamb m pode alterar o tipo de regras que pretende que sejam geradas A ferramenta permite a obten o dos seguintes tipos de regras Q regras formula Um exemplo deste tipo de regras A B C em que A total B quantidade e C pre o unit rio O numero de vari veis diferentes que podem integrar a f rmula encontra se limitado a um m ximo de cinco Este tipo de regras acompanhado pelo seu n vel de precis o resultante do r cio entre o n mero de registos em que a regra se verifica e o n mero total de registos regras se entao Um exemplo deste tipo de regras Se Cliente Loja dos PC s e FamiliaProdnto Port til Ent o Desconto 0 07 A ferramenta permite obter todas as regras existentes independentemente do n mero de condi es que estas po
348. filer que possui mais limita es Q H diversos PQD que as ferramentas de data profiling fruto da sua natureza intr nseca e g produzir meta dados com base nos dados existentes n o t m capacidade de detectar e g exist ncia de sin nimos Na realidade s o mais os problemas que n o t m cobertura do que aqueles que t m Os problemas que n o t m cobertura manifestam se especialmente nos n veis multi rela o de uma ou m ltiplas FD Cap tulo 4 Problemas de Qualidade dos Dados 107 O Alguns PQD encontram se cobertos pelas ferramentas de data profiling de forma indirecta A determina o autom tica dos meta dados com base nos dados existentes contribui para a identifica o dos problemas mas n o os detecta por si s Por exemplo a determina o autom tica do valor m ximo e m nimo dos atributos permite ao utilizador identificar viola es de dom nio No entanto localizar os tuplos onde estas de facto ocorrem da responsabilidade do utilizador Em certos PQD as potencialidades de navega o at aos tuplos ze de drill down oferecidas pelas ferramentas de data profiling simplificam esta tarefa 4 7 Conclus o Neste cap tulo foram identificados exaustivamente os diversos problemas de qualidade que afectam dados relacionais A identifica o foi efectuada por NG onde estes ocorrem designadamente atributo tuplo rela o m ltiplas rela es e m ltiplas FD A an lise realizada seguiu u
349. fontes dE Ads dia cria pa qo 85 Figura 4 11 rvore de decis o para identifica o dos problemas que ocorrem ao n vel de ATU PIAS TEAC OSS ui stasis Fe sain heath Gs ca Ai na nathan a ain ubgea idle Aa a aaae ana aai Rea o 86 Figura 7 1 Arquitectura proposta para alld aerial onan 213 Figura 7 2 Sequ ncia de DC dos POD pot ING apar ara rente asse Su 219 Figura 7 3 Sequ ncia de depend ncias das OD no contexto do valor individual do atributo 222 Figura 7 4 Sequ ncia de depend ncias das OD no contexto multi valor do atributo 224 Figura 7 5 Grafo dirigido de depend ncias correspondente s tr s OD consideradas no ob cia a jo o PRP ERR ERR a ON a a a RO RR RP Re ORE RR 226 Figura 7 6 Sequ ncias de depend ncias das OD no NG da rela o see 227 XX Figura 7 7 Exemplo de um grafo de depend ncias de OD no NG da relagao cesses 229 Figura 7 8 Sequ ncias de depend ncias das OD no NG multi rela o da fonte multi fonte d edado Spore a ante eats 230 Figura 7 9 Processo de execu o das OD no contexto do valor individual do atributo 236 Figura 7 10 Processo de execu o das OD no contexto multi valor do atributo 239 Figura 7 11 Processo de execu o das OD no contexto do NG do tuplo sees 242 Figura 7 12 Processo de execu o das OD na NG da rela o 243 Figura 7 13 Processo de execu o das OD
350. gem que se consegue detectar todos os PQD existentes e evitar a detec o de falsos problemas e os que surgem como um mero reflexo de outros A Figura 7 13 esquematiza graficamente o processo de execu o das OD que fazem parte das sequ ncias de depend ncias As linhas a tracejado representam o requisito de todos os PQD do tipo anterior estarem solucionados antes de se prosseguir com a detec o dos problemas do tipo seguinte da sequ ncia Heterogeneidade de Sintaxes E Exist ncia de Sin nimos u Viola o de Integridade Referencial NE Exist ncia de Hom nimos Diferentes Granularidades Representa o i Tuplos Duplicados E Heterogeneidade de Unidades Medida E Viola o de Restri o de Integridade Figura 7 13 Processo de execu o das OD no NG multi rela o da fonte multi fonte de dados Ap s terem sido realizadas correc es aos PQD a opera o respons vel pela sua detec o volta a ser executada As itera es representadas na figura anterior representam esta situa o No caso da viola o de integridade referencial apenas s o considerados os tuplos das rela es envolvidas nos quais o problema tinha sido detectado As correc es efectuadas n o s o pass veis de introduzir este tipo de problema nos outros tuplos nos quais j se confirmou que este n o existe na execu o anterior da OD Em todos os outros tipos de problemas considerada novamente a
351. gin rios de um conjunto reduzido de pa ses 7 e Holanda Alemanha B lgica Fran a e Reino Unido Isto acontece em virtude do vasto conhecimento que existe na base de conhecimento do m dulo sobre os dados destes pa ses O processo de detec o de duplicados pode ser configurado manualmente de modo a responder s necessidades espec ficas de detec o de duplicados A configura o efectuada pelo utilizador recorrendo a uma interface gr fica de f cil utiliza o na qual s o especificadas as regras que conduzem identifica o dos duplicados O m dulo Hquality Merge Human Inference 2007g procede consolida o de dados possibilitando a fus o dos registos identificados pelo m dulo anterior como duplicados O m dulo permite que os grupos de duplicados possam ser automaticamente consolidados num s registo com base em crit rios especificados pelo utilizador e regras de sobreviv ncia Estas regras definem com exactid o a forma como os registos duplicados s o consolidados o que permite efectuar esta tarefa de forma totalmente autom tica Assim as decis es tomadas na consolida o dos registos s o consistentes entre si uma vez que obedecem s regras de sobreviv ncia estipuladas O m dulo disponibiliza de base um conjunto apreci vel de regras de sobreviv ncia que cobrem in meras situa es Entre estas encontram se as seguintes considerar Cap tulo 3 Limpeza de Dados 73 o valor do atribu
352. gnifica que n o conseguem cobrir outros problemas para al m daqueles que suportam de raiz Comercialmente uma boa parte da responsabilidade de detectar os PQD colocada nas ferramentas de data profiling No entanto fruto da natureza destas ferramentas de identificar os PQD com base nos metadados gerados o leque de problemas coberto acaba por ser reduzido Quer isto dizer que mesmo recorrendo a ferramentas de data profiling as potencialidades de detec o dos PQD inclu dos na taxionomia s o escassas Como coment rio final salienta se o facto das actuais solu es evidenciarem uma cobertura deficiente a n vel de DC face ao vasto leque de problemas de qualidade que afectam os dados No mbito deste trabalho procura se explorar e suprir as defici ncias de cobertura identificadas FORMALIZA O DAS OPERA ES DE DETEC O Neste cap tulo apresenta se a formaliza o sint ctica e sem ntica das opera es que conduzem detec o dos Problemas de Qualidade dos Dados PQD que comp em a taxionomia apresentada no cap tulo anterior Assim come a se por expor as defini es de car cter geral a n vel sint ctico e sem ntico necess rias generalidade das formaliza es apresentadas nas sec es seguintes A formaliza o das Opera es de Detec o OD efectuada seguindo a forma de organiza o dos PQD estabelecida pela taxionomia Como tal come a se pela formaliza o das OD dos PQD que ocorrem ao n vel
353. gora a abordagem baseia se exclusivamente em mapeamentos manuais No futuro perspectiva se a inclus o de an lises de semelhan a l xica Rahm e Bernstein 2001 entre o esquema da BD que ser objecto de LD e a informa o existente sobre esquemas de dados no reposit rio de conhecimento e meta dados A t tulo exemplificativo suponha se que existe informa o neste reposit rio sobre um mapeamento anteriormente estabelecido entre o atributo codpost e a propriedade c digo postal Como o atributo codpostal de uma nova BD que ir ser sujeita a LD lexicalmente similar a codpost automaticamente pode estabelecer se um mapeamento entre o primeiro e a propriedade c digo postal O quadrante superior direito suporta o armazenamento das opera es de LD representadas ao n vel conceptual e ao n vel da ontologia Por fim o quadrante inferior esquerdo permite armazenar as opera es de LD ao n vel do esquema das pr prias BD As opera es de LD efectivamente efectuadas em cada BD s o armazenadas a este n vel Caso seja necess rio as opera es podem ser facilmente re executadas repetindo todo o processo de LD O reposit rio de opera es de LD considerado na arquitectura apresentada no Cap tulo 7 Sec o 7 2 corresponde a este ltimo quadrante A Figura 9 8 detalha o modelo de dados atrav s de um diagrama Unified Modelling Language UML em nota o simplificada O quadrante superior esquerdo cont m as classes neces
354. hactvssdacovertea sapo Uso reitet kien n aieea ea ud sab stun la sl alba colas A a A 304 Bi ARA DEJA ZA NALIS ES o torto uo eUe EMER UE Ue ENE MEE paca cada rar te aetna nn a RE aaa et 305 8 6 LIMPEZA DE DADOS AO N VEL MULTI RELA O DA BASE DE DADOS ccssssssessssesessesesenees 305 8 6 1 VIOLA O DE INTEGRIDADE REFERENCIAL ssssssesssssssssssssessecssssessscsssvessecssuvessucssuvessecsanvessessanverse 306 8 6 2 VIOLA O DE RESTRI O DE INTEGRIDADE evsescssecssscssesssuscssecssuscssecssuessucssuessucssaessecssusesseessusense 308 8 7 LIMPEZA DE DADOS AO N VEL MULTI RELA O DE DIFERENTES BASES DE DADOS 310 8 8 CONCLUS O csssssesssecsssesenseesenseevessescnsuessssesseseessnseesessesessesessescecussensussessesensuesensessessssonsneseness 314 CAP TULO 9 INTEROPERABILIDADE DAS OPERA ES DE LIMPEZA DE DADOS 317 DA INTRODUCA O vai vcsccacessisseccecececsizssesnseccccesescdesnscecsecesessbesnsseesea ot nn lr voa wi ani E vio oro va 317 9 2 DESCRI O DA ABORDAGEM PROPOSTA scsssesceessccessseeessceesncceescecesccecsnseeecseesnceeeseeseneeeeens 319 9 3 GRANULARIDADE DAS OPERA ES ONTOL GICAS DE LIMPEZA DE DADOS 323 9 4 HERAN A E SOBREPOSI O DAS OPERA ES ONTOL GICAS DE LIMPEZA DE DADOS 324 9 5 MODELO DE DADOS DE SUPORTE INTEROPERABILIDADE DAS OPERA ES DE LIMPEZA 327 9 6 CONCLUS O ss css selsisca desc cds cabs ceeds cade ds dsca dada elo dida d is dedo d
355. ia se numa arquitectura interactiva simples para a transforma o e LD A arquitectura integra simultaneamente transforma o e detec o dos PQD Os utilizadores procedem gradualmente especifica o e an lise do efeito das transforma es num interface gr fico do tipo folha de calculo A principal originalidade consiste na altern ncia entre DC dos problemas Com base numa amostra de dados s o inferidas automaticamente as sintaxes subjacentes aos diversos atributos As sintaxes inferidas s o ent o usadas na detec o de problemas sint cticos A detec o efectuada em segundo plano na ltima vers o transformada dos dados O utilizador desenvolve e refina transforma es para os problemas medida que estes lhe s o assinalados A especifica o das transforma es efectuada interactivamente sob a forma de transforma es simples aplicadas sobre uma amostra de dados O utilizador pode observar imediatamente o efeito de uma transforma o nos registos vis veis no ecr Caso o seu efeito n o seja o pretendido pode ser anulada facilmente N o necess rio aguardar pela transforma o de todos os registos da tabela para se analisar as consequ ncias A arquitectura deste prot tipo inclui um mecanismo gen rico e extens vel que permite a incorpora o de algoritmos dependentes do dom nio para detec o de problemas sint cticos e sem nticos Alguns algoritmos simples de car cter geral encontram se j implement
356. ias apresentado na Figura 7 5 armazenado de acordo com o que se encontra representado na Tabela 7 1 Tabela 7 1 Representa o do grafo de depend ncias da Figura 7 5 NrOpera o NrOpera oPrecedente Como as OD 1 e 2 n o possuem opera es precedentes n o s o representadas na tabela Como ambas se encontram na mesma situa o a sua execu o efectuada em simult neo 7 3 2 4 Rela o A Figura 7 6 ilustra graficamente as duas sequ ncias de execu o das OD dos PQD que ocorrem no NG da rela o Viola o de Depend ncia Funcional Circularidade entre Tuplos Tuplos Duplicados Viola o de Restri o de Integridade Figura 7 6 Sequ ncias de depend ncias das OD no NG da rela o 228 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Contrastando com o exposto at ao momento neste NG h duas sequ ncias de depend ncias como consequ ncia da possibilidade de execu o alternativa das OD de viola o de depend ncia funcional e circularidade entre tuplos num auto relacionamento Estas alternativas originam n o uma mas duas sequ ncias de execu o das OD 7 viola o de depend ncia funcional tuplos duplicados e viola o de restri o de integridade ou 77 circularidade entre tuplos tuplos duplicados e viola o de restri o de integridade Isto acontece em virtude das duas OD iniciais possu rem contextos de
357. ibutos que s o iguais O objectivo da OD da exist ncia de diferentes granularidades de representa o envolve a identifica o dos valores dos atributos que s o diferentes Como tal os objectivos das duas opera es s o completamente antag nicos da que nunca envolvam os mesmos atributos Ao n o envolver os mesmos atributos estas opera es nunca podem existir ao mesmo tempo na mesma sequ ncia de execu o de OD A exist ncia de hom nimos entre os valores de dois atributos pode 2 contribuir para a detec o de falsos tuplos duplicados e tuplos identificados como duplicados mas que na realidade n o o s o 77 impedir a detec o de heterogeneidade de unidades de medida em virtude de terem sido identificados falsos duplicados que afectam a correcta execu o da opera o e 711 resultar na detec o da viola o de uma determinada restri o de integridade que surge meramente como uma consequ ncia da exist ncia dos hom nimos A exist ncia de diferentes granularidades de representa o pode 7 impedir que dois tuplos sejam identificados como duplicados 77 ao n o permitir a identifica o de tuplos duplicados impedir a detec o de heterogeneidade de unidades de medida e 717 impedir a detec o da viola o de uma determinada restri o de integridade O pr ximo PQD a ser detectado consiste na identifica o dos tuplos duplicados existentes Os resultados produzidos por esta opera o s
358. ica o de qualquer PQD 7 7 Prot tipo Desenvolvido Nesta sec o apresentam se de forma sucinta os aspectos considerados de maior relev ncia relacionados com o prot tipo desenvolvido no mbito deste trabalho de doutoramento O prot tipo baptizado com a denomina o SmartClean materializa a arquitectura proposta e consequentemente o modelo que se defende para a LD bem como as OD e OC formalizadas nos dois cap tulos anteriores O SmartClean foi desenvolvido integralmente usando a linguagem de programa o Java Uma vez que da taxionomia elaborada no Cap tulo 4 resultou uma organiza o hier rquica dos PQD por NG a adop o de uma linguagem de programa o que permitisse implementar mecanismos de heran a e polimorfismo tornou se um requisito Estes mecanismos s o t picos de linguagens que suportam programa o orientada a objectos Entre as v rias hip teses dispon veis a linguagem Java foi aquela que evidenciou ter um melhor balanceamento entre facilidade de desenvolvimento e performance de execu o Face ao enorme volume de dados que o prot tipo pode ter de manipular as quest es relacionadas com a performance s o importantes Por falar em dados a linguagem Java tamb m obedeceu a um outro requisito essencial e fornecer um suporte adequado ao acesso e manipula o de dados armazenados em BD relacionais de tipos diferentes eg SOL Server Oracle MySQL Este suporte fornecido na linguagem Java por uma API
359. ica inerente situa o mencionada Quando se especificam OD ao n vel do atributo a linguagem proposta suporta que se defina numa nica opera o e g detec o de valor em falta m ltiplos atributos de uma dada rela o e g nome morada localidade Isto significa que a OD deve ser executada em cada um destes atributos Assim ainda que seja especificada uma s OD esta corresponde a m ltiplas opera es uma vez que a sua execu o efectuada individualmente em cada atributo As formaliza es apresentadas na sec o seguinte reflectem a sem ntica subjacente execu o da OD num atributo individual 116 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 5 3 Problemas ao N vel do Atributo Nesta sec o apresenta se a formaliza o das OD dos PQD que ocorrem ao n vel do atributo Seguindo a organiza o dos PQD proposta na taxionomia come a se por formalizar as OD dos problemas que ocorrem no contexto do valor individual do atributo De seguida s o apresentadas as formaliza es das OD dos PQD que se manifestam no contexto dos v rios valores de um atributo 5 3 1 Contexto do Valor Individual Comega se ent o por apresentar a formaliza o das OD dos PQD que ocorrem ao n vel do valor individual do atributo 5 3 1 1 Valor em falta Formaliza o Sint ctica DETECT MISSING VALUE ColunasAlvo DasTabelas DasBasesDados UsandoCondi o Formaliza o S
360. icamente a tem tica da QD As duas interpreta es que o termo suscita foram apresentadas Estas interpreta es foram identificadas na literatura existente e resultam fundamentalmente de perspectivas de abordagem diferentes uma estrita e a outra lata Quando o conceito abordado de forma estrita a QD significa completude correc o e consist ncia dos valores dos dados Quando o conceito abordado de forma lata QD significa muito mais do que estas tr s vertentes 7e s o consideradas outras dimens es que se advogam tamb m importantes na QD e g actualidade acessibilidade interpretabilidade e que lhe conferem um car cter muito mais multi dimensional A esta perspectiva falta ainda alguma maturidade cient fica o que se pode comprovar nas in meras propostas de dimens es da QD e na falta de uniformiza o terminol gica que existe entre estas A isto n o ser alheio certamente a sua relativa juventude Nesta disserta o o conceito de QD corresponde perspectiva estrita do mesmo e cinge se correc o completude e consist ncia dos valores Mesmo assim entendeu se que a tem tica da QD n o ficaria completa sem a inclus o da perspectiva lata at porque o seu n mero de defensores bastante significativo Neste cap tulo foram tamb m expostas e comparadas tr s taxionomias que abarcam os PQD ao nivel dos valores dos dados A principal conclus o alcan ada que nenhuma das taxionomias completa Esta conclus
361. ico da execu o das OD ap s a execu o das OC O outro fluxo tem origem no utilizador e termina no motor de execu o incremental das OD Este fluxo representa a capacidade que o utilizador tem de despoletar a execu o incremental das OD Em circunst ncias normais a execu o das OD desencadeada ap s a execu o do m dulo seguenciador de OD ou do m dulo motor de execu o das OC No entanto uma vez que o utilizador pode efectuar correc es manualmente na pr pria BD este tamb m tem a possibilidade de despoletar a re execu o das OD Desta forma o utilizador certifica se que os problemas foram efectivamente solucionados e 218 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica d continuidade execu o de outras eventuais OD que estivessem pendentes da resolu o desses PQD Nas tr s sec es seguintes descrevem se com o devido detalhe que merecem os principais m dulos da arquitectura que acabou de ser apresentada 7 3 Sequenciador de Opera es de Detec o Este m dulo da arquitectura respons vel por colocar as OD definidas pelo utilizador de acordo com a ordem de execu o preconizada neste trabalho Assim as opera es come am por ser organizadas por NG As primeiras a serem executadas s o as que envolvem o valor individual dos atributos As ltimas a executar s o as que envolvem rela es de diferentes fontes de dados Em cada um dos NG est
362. idade Viola o restri o referencial referencial referencial de integridade Heterogeneidade de J sintaxes Heterogeneidade de Dif significados dos Diferentes unidades unidades de medida valores de medida A compara o entre os PQD existentes nas taxionomias relacionadas e os que fazem parte da taxionomia proposta permite concluir o seguinte O Nem sempre as designa es usadas para classificar os PQD s o as mesmas Na taxionomia proposta procurou se que as designa es estivessem de acordo com a terminologia usada na rea das BD eg o problema viola o de depend ncia funcional corresponde ao problema valores mutuamente inconsistentes na taxionomia de Kim cf al 2003 O Alguns problemas inclu dos na taxionomia proposta sao mais gen ricos e abrangentes do que os seus equivalentes nas taxionomias relacionadas Desta forma tem cobertura um maior n mero de situa es eg o problema viola o de sintaxe engloba o problema transposi o de valores usado na taxionomia de Rahm e Do 2000 uma viola o de sintaxe representa muitas mais situa es do que uma mera transposi o de valores 92 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Q Todos os PQD existentes nas taxionomias relacionadas possuem um PQD equivalente na taxionomia proposta Em virtude do seu elevado grau de detalhe a taxionomia de Kim e al 2003 ap
363. igam K e Ungar L 2000 Efficient Clustering of High Dimensional Data Sets with Application to Reference Matching In Proceedings of the 6th International Conference on Knowledge Discovery and Data Mining Boston EUA Agosto de 2000 pp 169 178 Mellisa Data 2007 MatchUp Dispon vel em _http www melissadata com products matchup htm no dia 07 04 2007 as 23 25 Metais E Kedad Z Comyn Wattiau I e Bouzeghoub M 1997 Using Linguistic Knowledge in View Integration Toward a Third Generation of Tools Data and Knowledge Enginnering 23 1997 pp 59 78 Milano D Scannapieco M e Catarci T 2005 Using Ontologies for XML Data Cleaning Lecture Notes on Computer Science 3762 2005 pp 562 571 Refer ncias Bibliogr ficas 377 Missier P Lalk G Verykios V Grillo F Lorusso T e Angeletti P 2003 Improving Data Quality in Practice A Case Study in the Italian Public Administration Distributed and Parallel Databases 13 2003 pp 135 160 Monge A E 2000 Matching Algorithms Within a Duplicate Detection System Bulletin of the Technical Committe on Data Engineering Special Issue on Data Cleaning 23 4 2000 pp 14 20 Monge A E e Elkan C P 1997 An Efficient Domain Independent Algorithm for Detecting Approximately Duplicate Database Records In Proceedings of the SIGMOD Workshop on Research Issues on Data Mining and Knowledge Discovery Arizona EUA Ma
364. im repetir fim repetir RR cuannancua R ue de tupl U fim repetir t le tuplo T fim repetir fim Cap tulo 6 Formaliza o das Opera es de Correc o 191 No caso de cada c uster de duplicados n o ser constitu do por duplicados rigorosamente iguais o que na realidade corresponde situa o mais comum a opera o de remo o anterior n o suscept vel de ser aplicada Nestes casos necess rio identificar o tuplo que sobrevive e por consequ ncia quais os que ser o eliminados Muitas vezes o tuplo sobrevivente resulta de uma combina o dos valores dos atributos dos diversos duplicados existentes Daqui resulta um novo tuplo que substitui os duplicados que estiveram na sua g nese Nestas situa es o utilizador necessita de definir o crit rio de sobreviv ncia dos tuplos ou dos valores dos atributos e g o valor mais completo em cada cluster de duplicados Estes crit rios necessitam de estar implementados em FDU Cada fun o dependendo dos seus requisitos espec ficos pode receber como par metros os valores de um ou mais atributos resultantes de cada cluster de duplicados identificado Al m dos valores dos atributos as fun es podem receber outros par metros como vari veis eg contendo o resultado da execu o de uma outra fun o e constantes Como resultado da sua execu o cada fun o retorna um valor at mico ou uma estrutura de dados e g um vector uma matriz O r
365. imens es da qualidade subjectivas n o podem ser avaliadas automaticamente e g acessibilidade interpretabilidade obrigando realiza o de inqu ritos aos utilizadores 26 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O Em fontes com volumes de dados muito elevados a avalia o objectiva da qualidade pode ter de ser efectuada numa amostra dos dados o que condiciona a precis o dos resultados obtidos Em Pipino e a 2002 Shankaranarayanan e Watts Sussman 2003 e Wang 1998 s o apresentadas ferramentas de software espec ficas que permitem avaliar a QD 2 5 2 Melhorar a Qualidade dos Dados A melhoria da QD efectuada no mbito da metodologia GTQD ou de qualquer outra metodologia do g nero pode ser alcan ada por duas abordagens distintas Redman 1996 O Baseada nos dados Esta abordagem envolve a detec o autom tica dos PQD e a sua correc o autom tica ou manual O principal inconveniente reside no facto de constituir apenas uma solu o tempor ria n o evitando problemas futuros Assim necess rio repetir periodicamente todo o processo de melhoria da QD A consequ ncia disto o aumento cont nuo dos custos operacionais uma vez que s o necess rios recursos humanos e computacionais para detectar e corrigir os problemas Por outro lado a abordagem baseada nos dados frequentemente n o soluciona satisfatoriamente certos PQD e g valores em falta
366. impedir que dois tuplos sejam identificados como duplicados 717 pode impedir a detec o de heterogeneidade de unidades de medida em virtude de n o terem sido identificados os duplicados existentes e W pode impedir a detec o da viola o de uma determinada restri o de integridade Na Figura 7 8 a execu o da OD de hom nimos depende da execu o da OD de sin nimos Esta depend ncia foi introduzida para optimizar a detec o de hom nimos uma vez que os pares de valores identificados como sin nimos podem ser exclu dos da OD de hom nimos Esta depend ncia assim diferente das mencionadas no par grafo anterior Na realidade a exist ncia de sin nimos 7 n o impede que sejam detectados hom nimos 77 n o resulta na identifica o 232 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica de hom nimos que surgem como um reflexo daquele problema Se n o tivesse sido introduzida a referida optimiza o estas duas opera es seriam executadas em paralelo O contexto de execu o das OD de exist ncia de hom nimos e de diferen as ao n vel da granularidade de representa o totalmente diferente N o faz qualquer sentido executar uma OD de hom nimos aos valores de dois atributos e simultaneamente efectuar uma OD da exist ncia de diferentes granularidades de representa o O objectivo da OD de hom nimos consiste em identificar os valores dos atr
367. individual dos atributos da tabela Hospitais Valorem Viola o de Erro falta sintaxe ortogr fico Atributo CodHospital DesHospital Da execu o da OD de valor em falta em ambos os atributos da tabela Hospitais e da execu o da OD de viola o de sintaxe n o resultou a identifica o de qualquer PQD A Tabela 8 6 apresenta os erros ortogr ficos identificados pela OD respectiva executada no atributo DesHospital Tabela 8 6 Resultados da OD de erro ortogr fico no atributo DesHospital ID Erro Ortogr fico Valores Similares Grau de Semelhan a Psiquiatrico Psiqui trico 0 9777778 Reynaldo Reinaldo 0 93333334 Saude Sa de 0 8933333 O significado de cada coluna desta tabela o mesmo do que o fornecido no momento da apresenta o da Tabela 8 3 O grau de semelhan a resulta novamente da m trica Jaro Winkler Opera es de Correc o A semelhan a da correc o efectuada no atributo DesignacaoConclusao da tabela Conclusoes neste atributo DesHospital a correc o dos erros ortogr ficos tamb m envolveu a sua substitui o pelos valores que relativamente a estes possuem o maior grau de semelhan a A especifica o sint ctica desta OC id ntica apresentada anteriormente para o atributo DesignacaoConclusao 8 3 1 4 Tabela Brigadas Opera es de Detec o Na Tabela 8 7 encontram se as OD efectuadas no contexto do valor individual dos atributos da tabela Briga
368. informa o e conhecimento obtidos a partir de dados afectados por PQ Low et al 2001 Normalmente a insufici ncia de qualidade nos dados leva tomada de m s decis es M s decis es podem causar desde pequenos inconvenientes operacionais passar pela diminui o dos lucros e ir at completa paragem das actividades da empresa Ballou e a 2003 Chengalur Smith et al 1999 Huang e al 1999 Estas m s decis es conduzem a uma perda de credibilidade no sistema de informa o Por outro lado a fraca QD tem s rias implica es na satisfa o do cliente e como tal na sua manuten o Em Olson 2003 aponta se a falta de QD como causa para o aumento dos custos e g na implementa o de novos sistemas inform ticos Globalmente estes custos econ micos cifram se em milh es de d lares Strong e a 1997 o mesmo dizer milh es de euros Estes custos reflectem apenas aqueles que s o mensur veis resultantes do esfor o de DC dos problemas Redman 2004 No entanto os custos da fraca QD n o se cingem meramente aos que s o tang veis Ainda que de forma indirecta a fraca QD tamb m compromete a capacidade de compreender novas din micas e novos contextos de neg cio novos requisitos dos clientes e a forma de responder a novas oportunidades Lee ef a 2000b A fraca QD tamb m contribui para a degrada o da imagem p blica da organiza o Todas estas situa es acabam por representar custos pata
369. inha armazena uma chave de ordena o Nas colunas impares da matriz encontram se as posi es dos caracteres a extrair e nas colunas pares o nome respectivo do atributo seja Z1 a rela o que armazena as chaves prim rias dos tuplos de R identificados como sendo duplicados bem como o respectivo cluster de duplicados a que pertencem O esquema de Z1 o seguinte Zi a am cluster duplicados seja Zempi rela o auxiliar que armazena a chave de ordena o para cada tuplo de R com o seguinte esquema Zempi M Am gt Chaveord seja Zmp gt rela o auxiliar usada na detec o dos tuplos duplicados possuindo um esquema iguala Z1 Cap tulo 5 Formaliza o das Opera es de Detec o 139 in cio idcluster lt 1 repetir para i lt 1 at numlinhas mat chvord Zrempt Zremp2 TH yee mat _chvord i 2 mat _chvord i 4 mat_ chvord i numcolnas mat _ chvord cond R t lt de tuplo T repetir enquanto t null chaveord lt repetir para j 1 at numcolunas mat chvord incremento 2 chaveord lt chaveord o extrai_caracteres mat_chvord i j mat_chvord i j 1 fim repetir Zrempt Zrempt V taj 5tdmsv chaveord t lt de tuplo T fim repetir US atol ei nrtuplos 0 u lt de tuplo U repetir enquanto u null e nrtuplos lt dimjanela nrtuplos nrtuplos 1 WE E RD iT ve de tuplo w repetir para j lt 1 at n mat_valores
370. io de 1997 pp 23 29 M ller H e Freytag J C 2003 Problems Methods and Challenges in Comprehensive Data Cleansing Technical Report HUB IB 164 Humboldt Universitat zu Berlin Institut fur Informatik 2003 Naumann F 2002 Quality Driven Query Answering for Integrated Information Systems Springer Verlag 2002 ISBN 978 3 540 43349 1 Naumann F e Haussler M 2002 Declarative Data Merging With Conflict Resolution In Proceedings of the 7 International Conference on Information Quality Boston EUA Novembro de 2002 pp 212 224 Newcombe H e Kennedy J 1962 Record Linkage Making Maximum Use of the Discriminating Power of Information Communications of the ACM 5 1962 pp 563 567 Newcombe H Kennedy J Axford S e James A 1959 Automatic Linkage of Vital Records Science 130 1959 pp 954 959 Oliveira P Rodrigues F e Henriques P 2004 Limpeza de Dados Uma Vis o Geral In Proceedings of the Data Gadgets 2004 Workshop Bringing Up Emerging Solutions for Data Warehousing Systems em conjunto com a JISBD 04 M laga Espanha Novembro de 2004 pp 39 51 378 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Oliveira P Rodrigues F e Henriques P 2005b A Framework for Detection and Correction of Data Quality Problems In Proceedings of the Data Gadgets 2005 International Workshop Bringing Up Emerging Solutio
371. iola o de restri o de integridade ser efectuada com base numa opera o suscept vel de ser traduzida num inqu rito SQL a opera o envolve uma das seguintes situa es identificar as chaves prim rias dos tuplos e os respectivos valores do atributo que constituem uma viola o de restri o de integridade ou identificar apenas o valor ou valores agregados que materializam a exist ncia de uma viola o de restri o de integridade A sem ntica inerente a esta opera o a seguir apresentada Algoritmo Detec o Viola o Restri o Integridade Baseada em SQL E seja func agrega uma fun o de agrega o existente em SQL e g count sum avg seja Z1 a rela o que armazena o valor que constitui viola o restri o de integridade com o seguinte esquema Z1 d d 4tN 128 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica in cio Z1I lt ay sam atr Gena atr Y func _agrega atr 8 fim Notas A formaliza o apresentada o mais gen rica poss vel e abarca todas as situa es poss veis de serem expressas numa OD deste tipo No entanto dependendo da OD em concreto algumas das partes que constituem a express o em lgebra relacional podem n o se aplicar Assim o operador de agrega o 7 y pode n o existir Caso exista pode n o existir a fun o de agrega o i e func agrega assim como pode tamb m n o existir o operador
372. ional As tabelas Colheitas Dadores e Analises possuem um n mero consider vel de tuplos pelo que a realiza o de um produto Cartesiano de compara es entre estes mesmo que parcial sempre morosa Por outro lado as OD de viola o de depend ncia funcional tamb m evidenciaram ser de execu o demorada Em todos os outros NG face ao n mero de OD executadas os tempos acabaram por ser reduzidos O tempo total despendido na execu o das OD foi de uma hora sete minutos e cinquenta segundos Tendo em conta o n mero de opera es executadas este valor afigura ser perfeitamente aceit vel V rios factores influenciam o tempo de execu o das opera es de LD Entre estes encontram se o desempenho 316 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica do motor da BD e as caracter sticas do computador onde estas foram executadas Neste estudo de caso de LD utilizou se um computador com potencialidades medianas Pentium IV 3 0 GHz 2 GBytes de RAM Num computador com outras potencialidades o tempo de execu o seria ainda inferior O tempo global despendido na DC dos PQD engloba n o s este tempo de execu o das opera es mas tamb m a ambienta o ao dom nio e BDD a identifica o das OD que faziam sentido serem executadas e respectiva especifica o a defini o das estrat gias de correc o para os PQD detectados e respectiva especifica o das opera es bem com
373. ipular simultaneamente v rios PQD Face sua abrang ncia estes s o classificados como sendo de mbito gen rico Oliveira et al 2004 No contexto deste trabalho de doutoramento pretende se desenvolver um modelo de LD que suporte globalmente os v rios PQD Como tal nas sec es seguintes apresentam se apenas os prot tipos de investiga o de mbito gen rico ilustrativos do actual estado da arte 3 5 1 1 Ajax Na base do Ajax Galhardas et al 2000a Galhardas et al 2001 encontra se uma arquitectura flex vel e extens vel que separa os n veis l gico e f sico de um processo de transforma o de dados O n vel l gico suporta a especifica o das opera es enquanto que o n vel f sico respons vel pela sua implementa o O seu principal objectivo consiste em transformar dados de 56 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica uma ou varias fontes integra o de dados para um determinado esquema alvo Os eventuais PQD s o solucionados durante o processo de transforma o eg elimina o de registos duplicados O processo de transforma o recebe um conjunto de fluxos de dados possivelmente errados ou inconsistentes e origina um conjunto de fluxos de dados formatados correctos e consistentes A l gica de um processo de transforma o ou LD representada sob a forma de um grafo dirigido de transforma es sobre fluxos de dados Cada transforma o
374. itu a a viola o ao dom nio Em ambos os casos os valores do atributo Altura existentes nos demais tuplos apenas foram considerados quando n o representavam uma viola o de dom nio O resultado retornado pela fun o actualizou o valor do atributo Na correc o das viola es de dom nio identificadas no atributo TensaoMax executou se uma opera o similar s duas anteriores envolvendo a invoca o de uma fun o definida pelo utilizador no caso TensaoMaxMediaDador A sem ntica impl cita a esta fun o com as devidas adapta es id ntica j descrita para a correc o da viola o de dom nio ao peso do dador Basicamente os valores do atributo TensaoMax que violavam o dom nio foram substitu dos pelo valor m dio da tens o m xima existente noutros tuplos para o mesmo dador Na aus ncia desta 290 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica informa o actualizou se o atributo com a m dia dos valores da tens o m xima dos indiv duos do mesmo sexo e idade No atributo TensaoMin executou se uma OC semelhante anterior para resolu o das viola es de dom nio detectadas mais uma vez envolvendo o recurso a uma fun o definida pelo utilizador no caso TensaoMinMediaDador Com as necess rias adapta es a sem ntica que se encontra subjacente a esta fun o similar descrita para a fun o TensaoMaxMediaDador Na resolu o dos PQ
375. itui o ltimo passo da abordagem proposta Ap s terem sido instanciadas as opera es de LD s o executadas de acordo com a sequ ncia de manipula o preconizada no modelo proposto de LD apresentado no Cap tulo 7 Nas opera es de LD ao n vel do esquema dos dados as cl usulas FROM e OF definem gt respectivamente a tabela e a BD onde a opera o ser executada De acordo com o definido no Representa o do Mundo Real Opera es de LD I I I I S 1 ne I T I g I DETECT Syntax Violation i ON C digo Postal k Conceito 1 E WHERE C digo Postal NOT LIKE T Z SZE DETECT Domain Violation Propriedade a ON C digo Postal WHERE C digo Postal NOT IN DETECT Syntax Violation ON cp FROM Segurados OF Seguros WHERE zc NOT LIKE Mapeamento Tabela_1 Atributo_a DETECT Domain Violation ON cp FROM Segurados OF Seguros WHERE zc NOTIN N vel do Esquema de Dados Figura 9 4 Instancia o das opera es conceptuais de LD 322 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Cap tulo 5 Sec o 5 2 1 e Cap tulo 6 Sec o 6 2 1 ao n vel do esquema de dados estas cl usulas s o sempre obrigat rias Ao n vel da ontologia as mesmas cl usulas n o surgem nas OD apresentadas no exemplo o que significa que o seu mbito de aplica o gen rico o suficiente para ser aplicado em diferentes conceitos de
376. ivo do novo segmento em que r o nico elemento A prioridade deste novo conjunto a mais elevada Caso o limite m ximo do n mero de conjuntos da lista de prioridades seja excedido o conjunto com a menor prioridade removido da fila de prioridades A defini o do n mero m ximo de segmentos representados na fila de prioridade bem como o desenvolvimento de heur sticas que permitam seleccionar o representativo de cada segmento constituem responsabilidades do utilizador Ambos os aspectos influenciam fortemente a identifica o dos registos duplicados 3 4 1 5 Record Linkage Em Fellegi e Sunter 1969 apresentado um modelo formal probabil stico para o conceito de record linkage anteriormente introduzido em Newcombe e al 1959 Newcombe e Kennedy 1962 Nestes trabalhos definiu se o record linkage como o problema probabil stico de decidir que pares resultantes do produto Cartesiano devem ser classificados como duplicados apesar dos PQD que possam existir nos seus atributos Fellegi e Sunter formalizaram esta ideia atrav s da defini o de regras que dividem as compara es efectuadas em tr s conjuntos de pares de registos duplicados n o duplicados e possivelmente duplicados O trabalho de Fellegi e Sunter permitiu estimar par metros chave Suponha se que se pretende identificar os duplicados que existem numa tabela ou entre duas tabelas Considere se que as tabelas se encontram simbolicamente representadas
377. ivo passa por manipular os PQD que afectam as v rias rela es da fonte de dados quando consideradas conjuntamente e cuja resolu o depende exclusivamente destas e n o de rela es existentes noutras fontes de dados Nesta fase da sequ ncia os poss veis problemas existentes nos NG atributo tuplo e rela o individual j foram detectados e corrigidos A detec o dos PQD existentes no NG m ltiplas rela es de m ltiplas fontes de dados encontra se dependente da resolu o dos problemas que ocorrem ao n vel multi rela o de cada fonte de dados individual Por exemplo a exist ncia de sin nimos entre rela es de uma fonte de dados pode impedir a detec o de uma viola o de restri o de integridade ao n vel de m ltiplas rela es de diferentes fontes de dados Por ltimo s o manipulados os problemas que ocorrem ao n vel de m ltiplas rela es de diferentes fontes de dados O objectivo consiste em manipular os PQD que afectam v rias rela es de diferentes fontes de dados quando consideradas conjuntamente Note se que nesta ltima fase da sequ ncia os eventuais problemas existentes nos NG atributo tuplo rela o e multi rela o de cada fonte de dados j foram detectados e corrigidos da que estejam reunidas as condi es para a manipula o dos problemas deste NG Este m dulo come a por separar as OD especificadas pelo utilizador organizando as por NG A sua execu o ficar a cargo do m dulo respe
378. iza es s o apresentadas por n vel de granularidade obedecendo forma de organiza o estabelecida pela pr pria taxionomia No Cap tulo 6 Formaliza o das Opera es de Correc o apresenta se a formaliza o sint ctica e sem ntica do outro tipo de opera es que faz parte da LD z e as opera es de correc o cuja finalidade solucionar os PQD identificados pelas opera es de detec o Para cada problema da taxionomia em que poss vel conceder lhe desde logo um suporte automatizado sua resolu o apresenta se a formaliza o da respectiva opera o de correc o Esta pode envolver altera es aos valores dos atributos ou mesmo a elimina o de tuplos Tal como no cap tulo anterior as formaliza es destas opera es tamb m se encontram organizadas por n vel de granularidade No Capitulo 7 Modelo Proposto para a Limpeza de Dados da se continuidade aos dois cap tulos anteriores atrav s da apresenta o do modelo que se defende para a LD O modelo proposto articula a execu o alternada dos dois tipos de opera es formalizadas 7 e detec o e correc o por e em cada n vel de granularidade A execu o das opera es obedece a uma determinada sequ ncia preestabelecida A arquitectura que materializa este modelo descrita nomeadamente os componentes ou m dulos que a integram e a forma como estes interactuam entre si O prot tipo que esta arquitectura originou designado
379. jectiva ou imparcial diz respeito avalia o da QD que obtida a partir dos pr prios dados e sem considerar outros factores como os utilizadores ou a finalidade para que v o ser usados Este tipo de avalia o pode ser independente ou dependente do contexto Pipino e al 2002 A avalia o independente do contexto reflecte o estado dos dados sem necessitar de qualquer conhecimento adicional sobre o seu dom nio podendo ser directamente efectuada em qualquer Cap tulo 2 Qualidade de Dados 25 conjunto de dados e g percentagem de valores nulos no atributo A avalia o dependente do contexto obriga a que sejam explicitadas as restri es espec ficas do conjunto de dados em quest o e do dominio da organiza o e g percentagem de valores que violam o dom nio do atributo A avalia o subjectiva ou contextual considera a utilidade dos dados na satisfa o das necessidades dos utilizadores ou para a finalidade que v o ser usados Shankaranarayan 2005 Esta avalia o efectuada com base no feedback dos indiv duos que usam os dados e dos consumidores dos dados Este feedback recolhido atrav s de inqu ritos aos consumidores dos dados A avalia o subjectiva da qualidade reflecte as necessidades dos consumidores dos dados Wang e al 1998 Na avalia o da QD as m tricas desenvolvidas podem resultar de tr s abordagens distintas Pipino ef al 2002 O Racio simples Divers
380. justifica se que sejam efectuadas as seguintes observa es Q Nem todas as rela es existentes no modelo de dados respeitam a terceira forma normal Sempre que h uma d diva registada informa o redundante sobre o dador na rela o Dadores Independentemente do n mero de vezes que um dador tenha dado sangue sempre registado o sexo data de nascimento a altura o grupo sangu neo atributo Abo e o factor Rh e se o sangue do tipo positivo ou negativo Estes elementos n o s o suscept veis de sofrer altera es ao longo do tempo pelo que s deveriam ser 272 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica armazenados uma nica vez pata cada dador Ao serem registados m ltiplas vezes h a possibilidade de serem introduzidas inconsist ncias e viola es de depend ncia funcional Por outro lado a rela o Dadores s deveria conter informa o sobre os dadores quando tamb m cont m informa o sobre cada d diva e g local da d diva n mero da colheita hora de inscri o hora de triagem Q Na rela o Colheitas existem atributos como o grupo sangu neo atributo Abe e o factor Rd que s o intr nsecos ao dador da que n o se justifique que sejam armazenados sempre que se efectua uma colheita para um dado dador Mais uma vez isto constitui uma abordagem redundante que no limite pode propiciar a introdu o de inconsist ncias nestes
381. l identificador LadoDireito Atribui o Vari vel Constante Express oAritm tica NomeColuna Fun oDefUtilizador inqu rito sql Constante string valor num rico Express o Aritm tica Par ntesisEsq Operando Operador Operador Par ntesisDir Par ntesisEsq gt e C Operando valor num rico Vari vel Express o Aritm tica Operador opera o aritm tica Par ntesisDir e 9 Fun oDefUtilizador NomeFun o ArgumentoFun o Restantes ArgumentosFun o ArgumentoFun o NomeColuna Vari vel Constante Cap tulo 6 Formaliza o das Opera es de Correc o 165 Restantes ArgumentosFun o gt Argumento AdicionalFun o Argumento AdicionalFun o ArgumentoFun o RestantesAtribui es Atribui o Adicional cc Atribui o Adicional Atribui o UsandoFun o Void e USING FUNCTION Fun oDefUtilizador UsandoTransforma es Defini o Transforma es Defini o Transforma es BY TRANSFORMING Transforma o Restantes Transforma es Transforma o FormatoOrigem INTO FormatoDestino FormatoOrigem identificador FormatoDestino identificador Restantes Transforma es e Transforma oAdicional Transforma o Adicional Transforma o Usando ValorPr ximo e USING CLOSEST VALUE Usando TermosUniformiza o Defini o Termo
382. la es de diferentes BD Sempre que da execu o de uma OD resultou a identifica o de PQD que obrigaram realiza o de correc es por via autom tica ou manual isso redundou numa nova execu o da OD em causa Esta uma das caracter sticas do modelo proposto de LD Na generalidade dos problemas alvo de ac es correctivas a nova execu o das OD j n o resultou na identifica o do PQD Nas sec es seguintes relativas aos PQD detectados apenas se apresentam os resultados da nova execu o quando desta ainda resultaram PQD 8 2 Apresenta o do Caso O estudo de caso de LD efectuado no mbito deste trabalho de doutoramento incide sobre uma BD que cont m informa o sobre d divas colheitas de sangue respectivos dadores e as correspondentes an lises efectuadas a essas d divas Em torno destas tr s tabelas principais existem outras que armazenam informa o adicional e g profiss es dos dadores estado civil dos dadores tipo de d diva e com as quais se estabelecem relacionamentos Na totalidade a BD composta por 12 tabelas Esta BD propriedade de uma institui o que se dedica a colheitas de sangue A informa o existente na BD diz respeito ao per odo compreendido entre 01 01 2000 e 31 06 2002 Doravante esta BD ser designada de BD de D divas BDD Na Figura 8 1 A resolu o manual significa que n o poss vel executar uma OC que solucionasse automaticamente os PQD detectados Assim estes f
383. les que mais sofreram com a realiza o deste trabalho o meu filho David e a minha esposa Susana Ao meu filho David que na sua infinita inoc ncia nunca percebeu a raz o pela qual o pai tinha de estar quase sempre a tabalhar e nunca tinha o tempo que gostaria para bincar Por ter aguentado as minhas aus ncias mantendo sempre uma alegria nos olhos quando dizia o pai Sem o saber deu me sempre o necess rio incentivo para que terminasse aquilo que a dada altura me parecia um infind vel trabalho leal amiga e companheira Susana expresso os meus maiores agradecimentos Nunca esquecerei todo o apoio emocional que me concedeu todas as condi es que me proporcionou todas as minhas aus ncias que suportou e de tudo aquilo que abdicou em meu favor ao longo destes quatro anos para que eu pudesse realizar este trabalho Sem d vida que esta mais uma prova de amor Por todo este amor e carinho por todos os incentivos pela confian a transmitida e pela amizade e ajuda concedida aqui fica o meu muito muito obrigado Uma vez que estas s o as pessoas mais importantes da minha vida pois a elas que dedico este trabalho Tamb m gostaria de destacar os meus pais a quem expresso toda a minha gratid o pelo facto de sempre me terem incutido a import ncia de estudar e terem proporcionado a possibilidade de obter uma licenciatura Estou ciente que se n o fossem voc s nunca teria conseguido chegar at aqui Um
384. lguns outros n o h mesmo outra alternativa que n o seja a implementa o da l gica que conduz detec o do problema numa fun o definida pelo pr prio utilizador Quando se iniciou a realiza o deste trabalho j havia a perfeita no o de que n o seria poss vel fornecer suporte de raiz detec o de todo e qualquer PQD No entanto existia a convic o de que poderia ser concedido esse suporte para a grande maioria dos PQD o que n o acontecia na generalidade das solu es de limpeza de dados at ent o existentes Esta convic o tornou se uma realidade neste cap tulo com a formaliza o na totalidade e de forma 160 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica expl cita da sem ntica inerente generalidade das OD Para os restantes problemas e aqueles cuja detec o obriga ao uso de fun es definidas pelo pr prio utilizador a sem ntica subjacente n o pode ser totalmente especificada a priori uma vez que n o conhecida na ntegra Ainda assim nestes casos foi identificado e formalizado o tronco comum a qualquer OD do tipo em causa e g viola o de restri o de integridade A especificidade de cada opera o reside na FDU n o podendo ser representada explicitamente nas formaliza es produzidas em virtude da sua diversidade De referir que a especifica o de opera es com base em FDU permite virtualmente detectar qualquer PQD Mesmo aqueles p
385. licados t cnicas de preenchimento de valores em falta 3 2 Contextos de Aplica o A realiza o de LD faz sentido em qualquer contexto em que a inexist ncia de PQD seja um requisito Em particular a LD justifica se nos mesmos contextos gen ricos em que surgem preocupa es com a QD ver Cap tulo 2 Sec o 2 3 e 2 Detec o e Correc o DC de erros e anomalias existentes ao n vel da Fonte de Dados FD individual 7 migra o de dados pouco estruturados ou n o estruturados para uma FD estruturada e 777 integra o de dados provenientes de m ltiplas fontes numa nova FD H no entanto dois contextos espec ficos em que a LD se reveste de uma especial import ncia armaz ns de dados e descoberta de conhecimento em BD Esta import ncia reflecte se no facto da LD ser parte integrante de cada um destes processos A LD integra o primeiro passo designado de pr processamento do processo de descoberta de conhecimento em BD ou minera o de dados Neste contexto a LD efectuada para que o princ pio lixo entra lixo sai n o se verifique Lee e al 1999 No contexto dos armaz ns de dados a LD antecede a fase de carregamento e constitui um importante passo de prepara o que assegura um elevado n vel de QD Feekin e Chen 2000 Um estudo efectuado pelo Mezagronp revela que 41 dos projectos de armaz ns de dados falham apontando a QD como a principal causa identificada Luebbers e a 2003
386. lidade do que o que se encontra no atributo respectivo da tabela Analises Assim o atributo NuwmColh desta tabela actualizado com o valor do atributo NwmColh da tabela Dadores Note se que para a mesma combina o de valores dos atributos Data e Dador o valor do atributo NumColh tem de ser for osamente o mesmo em ambas as tabelas 8 7 Limpeza de Dados ao N vel Multi Rela o de Diferentes Bases de Dados Por ltimo s o apresentadas as opera es de LD envolvendo simultaneamente tabelas da BDD e tabelas de uma outra BD Opera es de Detec o Na execu o destas opera es de LD recorreu se BD que no SwmartCkan suporta o armazenamento dos diversos dom nios de valores v lidos dos atributos denominada de Dom nios Estes dom nios encontram se armazenados sob a forma de tabelas Em particular tirou se partido da tabela que armazena o dom nio dos c digos postais denominada de Codigos Postais para efectuar as verifica es de integridade dos valores do atributo LocPostal das tabelas CodigosPostais e Dadores Assim em qualquer uma destas tabelas o valor do atributo LocPostal tem de pertencer ao conjunto de valores do atributo Localidade da tabela Codigos Postais para o c digo postal em quest o 7 e valor do atributo CodPostal da tabela CodigosPostais ou Dadores igual ao valor do atributo CP da tabela Codigos Postais Caso isto n o aconte a est se perante uma viola o de restri o de integridade Por exemplo
387. lidades est o dispon veis nome de pessoa nome de empresa e linha de endere o Esta informa o importante para a ferramenta seleccionar automaticamente os algoritmos mais adequados detec o dos duplicados N o foi Cap tulo 3 Limpeza de Dados 67 poss vel recolher qualquer informa o adicional sobre estes algoritmos Os registos duplicados s o identificados em fun o da igualdade ou semelhan a dos seus valores Os registos que supostamente representam a mesma entidade do mundo real e que s o duplicados s o apresentados agrupadamente Ao utilizador permitido 7 excluir registos dos grupos de duplicados o que significa que n o concorda com a sua inclus o no grupo 7 eliminar registos duplicados manualmente ou automaticamente com base num determinado crit rio e g crit rio aleat rio 77 proceder consolida o dos duplicados dando origem a um s registo que agrega os v rios valores e efectuar a filtragem dos registos duplicados A ferramenta tamb m permite que o utilizador filtre e g registos duplicados registos n o duplicados e exporte dados para outro ficheiro com o mesmo ou outro formato Os formatos permitidos s o os j referidos 3 5 2 2 ETI Data Cleanser A ferramenta ETI Data Cleanser E TI 2007a possui um conjunto de funcionalidades de LD bastante completo Estas funcionalidades permitem a realiza o das seguintes tarefas separar os valores dos atributos
388. limita es inerentes ao trabalho efectuado s o enunciadas de seguida Por fim s o perspectivados alguns desenvolvimentos futuros que pretendem dar continuidade ao trabalho realizado 10 1 Objectivos Alcan ados No cap tulo inicial desta disserta o de doutoramento foram enunciados os objectivos que estiveram na g nese do trabalho efectuado Sec o 1 3 Estes objectivos foram identificados no seguimento dos problemas e limita es encontrados nas solu es de LD data existentes Nos par grafos seguintes procura se demonstrar pela mesma ordem com que foram apresentados que cada um dos objectivos foi concretizado com sucesso Relativamente ao primeiro objectivo na realidade formalizou se a sem ntica operacional inerente a cada Opera o de Detec o OD ou Opera o de Correc o OC em que foi poss vel perspectivar partida uma poss vel implementa o Estas formaliza es foram usadas no prot tipo desenvolvido na implementa o da Detec o e Correc o DC dos Problemas de Qualidade dos Dados PQD Uma vez que o prot tipo disponibiliza estas opera es de base n o necess rio recorrer sua implementa o em fun es definidas pelo utilizador como acontece nos prot tipos de investiga o anteriormente existentes No caso das ferramentas comerciais normalmente nem sequer possuem esta potencialidade de extensibilidade As formaliza es s o fornecidas para a generalidade dos PQD inclu dos na
389. liza os valores do atributo necess rios resolu o do PQD em fun o dos valores existentes noutros atributos Cada atribui o representada em fun o de uma express o que envolve exclusivamente atributos vari veis e g contendo o resultado de uma atribui o anterior e ou constantes e g um determinado valor num rico Algoritmo Correc o Viola o Restri o Integridade amp seja dnit 5dm n O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos assim definido C fc c usado na correc o da viola o da restri o de integridade em atn A ce As ie CCA Este conjunto resulta da especifica o da OC seja e a cardinalidade de C in cio se existem atribs na rela o vec atribs chave prim R ZI verdadeiro ent o Tem cond RDIZI Ms sAms50oesle sen o T amp Ta ie OR fim se t de tuplo T repetir enquanto t null v atrib V atrib Vk atrib U amp Og t n m tam R 184 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Re R u uatr V R RU ua UAU A eU Amd t lt de tuplo T fim repetir fim Notas As atribui es atrib s o expressas em fun o dos atributos de C A ltima atribui o no caso atrib define o novo valor de atn Na correc o de viola o de restri o de integridade ao n vel da coluna pode ser neces
390. lmente o novo esquema de dados n o adequado finalidade que se pretende e g ao esquema de dados utilizado no sistema de informa o de onde originam pelo que os dados t m de ser sujeitos a um novo processo de transforma o e g concatena o da rua e do n mero de policia em morada N o claro como este novo processo de transforma o suportado pelas ferramentas de LD pelo que muito provavelmente ter de ser o utilizador a efectu lo de alguma forma e g recorrendo a programa o expl cita usando uma ferramenta comercial de TD Tal como nos prot tipos de investiga o n o poss vel proceder melhoria da QD directamente na pr pria fonte onde estes se encontram Cap tulo 1 Introdu o 7 Por outro lado a sequ ncia r gida preconizada pelas ferramentas comerciais n o parece ser a mais adequada para manipular certos PQD A t tulo de exemplo considere se o caso das restri es de integridade A verifica o de certas restri es s deve ser efectuada ap s a detec o e elimina o de duplicados Caso contr rio podem ser reportadas falsas viola es motivadas pela exist ncia dos registos duplicados Na sequ ncia apresentada este tipo de verifica es efectuado antes da detec o e elimina o de registos duplicados 7e na fase de valida o Ainda que em certas situa es a sequ ncia se mostre adaptada h outras situa es em que claramente n o o Ainda a prop sito deste
391. lo Sintaxe e Sem ntica x lt de tuplo X se x null ent o flag_encontrado verdadeiro sen o i 1 1 fim se fim repetir retorna flag encontrado fim No caso de cada cluster de duplicados n o ser composto por duplicados exactamente iguais trata se de uma situa o comum dificilmente faz sentido a aplica o da opera o anterior Nestes casos frequentemente pretende se consolidar e g completar os valores dos atributos dos tuplos que sobrevivem com os valores dos atributos dos tuplos a eliminar A forma como a consolida o dos valores efectuada necessita de ser implementada numa FDU Cada fun o dependendo dos seus requisitos espec ficos pode receber como par metros os valores de dois atributos um de Re o outro de resultantes de cada duster de duplicados identificado Al m destes as fun es podem receber outros par metros como vari veis e constantes Como resultado cada fun o retorna um valor at mico ou uma estrutura de dados e g um vector uma matriz O resultado de cada fun o respons vel por produzir um valor consolidado obrigatoriamente um valor at mico Na formaliza o a seguir apresentada estes correspondem aos valores presentes nas atribui es que envolvem os atributos das rela es R e dy dy az Sie bo by bi Note se que semelhan a da anterior esta opera o tamb m garante a n o viola o da integridade referencial Para tal basta que as
392. localidade em substitui o do lugar 8 3 1 6 Tabela Profissoes Opera es de Detec o A Tabela 8 10 apresenta as OD efectuadas no contexto do valor individual dos atributos da tabela Profissoes Tabela 8 10 OD executadas no contexto do valor individual dos atributos da tabela Profissoes Valorem Viola o de Erro Atributo falta sintaxe ortogr fico CodProfissao DesProfissao A OD de viola o de sintaxe efectuada sobre o atributo CodProfissao apresentada de seguida DETECT SYNTAX VIOLATION ON CodProfissao FROM Profissoes OF BDD WHERE CodProfissao NOT LIKE 0 9 0 9 0 9 0 9 0 9 0 9 Cap tulo 8 Estudo de Caso de Limpeza de Dados 281 A execu o das OD de valor em falta em cada um dos atributos n o redundou na detec o de qualquer PQD Na Tabela 8 11 apresentam se os PQD identificados na sequ ncia da execu o da OD de viola o de sintaxe Tabela 8 11 Resultados da OD de viola o de sintaxe no atributo CodProfissao CodProfissao 00 00 05 00 00 06 01 01 2001 02 02 1999 03 60 00 05 05 2005 resultado da execu o da OD respectiva 07 07 2007 Na Tabela 8 12 apresentam se os erros ortogr ficos identificados no atributo DesProfissao como Tabela 8 12 Resultados da OD de erro ortogr fico no atributo DesProfissao Erro Ortogr fico METEREOLOGISTA Valores Similares METEOROLOGISTA Grau de Semelhan a 0
393. los diferentes Esta inusitada correc o introduziu intencionalmente uma viola o de unicidade no atributo meramente para ilustrar a forma de execu o das opera es N o fosse esta correc o e ambos os problemas identificados numa itera o de execu o das OD teriam sido solucionados em simult neo pelo utilizador No caso da OD de viola o de restri o de integridade esta s executada ap s os eventuais PQD de sin nimos e de viola o de unicidade terem sido solucionados Se assim n o fosse na detec o das viola es de restri o de integridade podiam ser identificados problemas que n o eram mais do que um mero reflexo dos dois anteriores Para que tal n o aconte a a DC desses problemas tem de preceder a detec o das viola es de restri o de integridade Sempre que h uma nova itera o de execu o de uma OD de viola o de restri o de integridade todos os valores do atributo s o considerados novamente raz o a mesma do que a j mencionada no pen ltimo par grafo No caso da sequ ncia conter mais do que uma opera o de viola o de restri o de integridade s se passa execu o da OD seguinte quando da execu o da opera o actual n o resultar a detec o de qualquer problema Por outras palavras todos os problemas identificados por uma OD de viola o de restri o de integridade t m de ser solucionados antes de se passar detec o da seguinte Como pode haver depen
394. los representando clientes constituem uma viola o de depend ncia funcional chente 4415 206 Pedroso e ckente 4415 206 Vila Nova de Gaia O Circularidade entre tuplos num auto relacionamento Representa uma situa o de ciclo entre dois circularidade directa ou mais tuplos circularidade indirecta de uma rela o na qual existe um auto relacionamento e g considerando que um produto pode ser subproduto num outro produto e que esta informa o se encontra armazenada na rela o produtos com o seguinte esquema produtos cod produto cod subproduto dos tuplos produtos xpto ypto e produtos ypto xpto resulta uma circularidade directa 84 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Os valores dos atributos entre os tuplos violam alguma depend ncia funcional existente n S Existe circularidade entre os tuplos de uma Viola o de rela o na qual h um auto relacionamento depend ncia funcional s Os valores de um conjunto de atributos Circularidade entre tuplos identificadores da entidade s o iguais ou num auto relacionamento equivalentes entre os tuplos s Os valores dos atributos entre os tuplos Tuplos violam alguma restri o de integridade duplicados Inexist ncia Viola o de restri o de PQD de integridade Figura 4 9 rvore de decis o para identifica o dos PQD que ocor
395. lta desta OD e Z1 armazena as chaves prim rias dos tuplos identificados como duplicados assim como o cluster que estes formam Nesta rela o um dado tuplo apenas armazenado uma nica vez apesar das m ltiplas situa es em que possa ser identificado como duplicado de outros tuplos Todos estes tuplos pertencem ao mesmo cluster de duplicados A sem ntica subjacente a esta opera o a seguir apresentada Algoritmo Detec o Tuplos Duplicados Baseada em SQL seja Z1 a rela o que armazena as chaves prim rias dos tuplos de R identificados como sendo duplicados bem como o respectivo cluster de duplicados a que pertencem O esquema de Z1 o seguinte ZI a Am cluster duplicados in cio 1 PER SGC POR DA cone x PS 61 pln gt tnam een 2 idcluster 1 t ke tuplo T repetir enquanto t null UZ ideluster ond L Am 1 Ve idetuster O gj t cjA Aa t cm Z1 ue de tuplo U ve de tupl V se u nulle v null ent o Cap tulo 5 Formaliza o das Opera es de Detec o 137 idcluster idcluster 1 Z1 Z1 VU t d t d idclusten Z1 Z1 VU t q t Gn tdcluster sen o se u nulle v null ent o Z1 Z1 VU t c t Cn U idclusten sen o se u nulle v null ent o Z1 Z1 VU t d t d 0 idclusten fim se t lt de tuplo T fim repetir fim Nota Na formaliza o anterior cond al m de representar uma eventual condi o de selec o que
396. lucionados A detec o dos PQD nos restantes NG est condicionada resolu o dos problemas que ocorrem no contexto dos m ltiplos valores do atributo Por exemplo a exist ncia de valores sin nimos num atributo pode impedir a detec o de uma determinada viola o de restri o de integridade NG tuplo 77 conduzir detec o de uma viola o de depend ncia funcional NG rela o 777 impedir a detec o de uma determinada viola o de restri o de integridade NG multi rela o mono fonte de dados e 7 impedir a detec o da exist ncia de tuplos duplicados NG multi rela o multi fonte de dados A seguir s o manipulados os problemas que ocorrem no NG do tuplo neste n vel h apenas um tipo de problemas viola o de restri o de integridade O objectivo consiste em manipular os PQD que afectam cada tuplo quando considerado individualmente ze apenas uma linha da rela o e cuja resolu o depende apenas dos valores dos seus atributos e n o dos valores dos atributos de outros tuplos da rela o Note se que nesta fase da sequ ncia os poss veis problemas existentes ao n vel do atributo j foram detectados e solucionados A detec o dos PQD nos demais NG encontra se dependente da resolu o dos problemas que ocorrem ao n vel do tuplo Por exemplo a exist ncia de uma dada viola o de restri o de integridade ao n vel do tuplo pode 7 impedir a detec o de tuplos duplicados
397. m Esta corresponde ordem de especifica o das OD pelo utilizador Compete a este em fun o da sem ntica das diferentes opera es e das depend ncias que possam existir entre estas sequenci las de modo a que a sua execu o fa a sentido No entanto ainda que o utilizador especifique as OD de acordo com a ordem de execu o pretendida isso n o quer dizer que esta acabe por ser totalmente sequencial Dependendo dos atributos que s o alvo das OD que fazem parte da sequ ncia de depend ncias a execu o de algumas destas acaba por ser efectuada simultaneamente Nestes casos a sequ ncia de depend ncias corresponde a um grafo dirigido de OD Com as devidas adapta es esta situa o id ntica exemplificada na sec o anterior para o NG do tuplo A Figura 7 7 ilustra a graficamente Viola o de Depend ncia Funcional 3 Tuplos Duplicados OD 4 Viola o de Restri o de Integridade Figura 7 7 Exemplo de um grafo de depend ncias de OD no NG da rela o Compete ao presente m dulo a cria o das sequ ncias de depend ncias das OD especificadas ao n vel da rela o As OD come am por ser agrupadas em fun o do tipo de PQD que visam preservando se a ordem pela qual foram especificadas pelo utilizador Seguidamente estes grupos de OD s o colocados de acordo com a ordem que se defende para a sua execu o Em cada um dos grupos as OD s o novamente agrupadas agora em fun o da exist ncia de
398. m Esta ordem designada de sequ ncia de detec o O modelo defendido para a limpeza de dados ser apresentado detalhadamente no Cap tulo 7 Por agora suficiente ter se a no o de que as OD s o executadas obedecendo a uma sequ ncia preestabelecida Cap tulo 5 Formaliza o das Opera es de Detec o 115 seja _fuplo R uma fun o que l sequencialmente e devolve o pr ximo tuplo de R Quando o final de R alcan ado i e n o existem mais tuplos a fun o devolve o valor null seja existe opera o detec o viola o dom nio at uma fun o que recebe um atributo atr e verifica se na sequ ncia de OD existe uma OD de viola o de dom nio sobre atr devolvendo um valor booleano como resultado seja dimensao vec uma fun o que recebe um vector vec determina o n mero de elementos que o comp em e devolve este valor como resultado seja numlinhas mat uma fun o que recebe uma matriz mat determina e devolve o n mero de linhas que a comp em seja numcolunas mat uma fun o que recebe uma matriz mat determina e devolve o n mero de colunas que a comp em seja fdu p p p uma Fun o Definida pelo Utilizador FDU que recebe um conjunto de par metros p p Py Cada um destes representa uma constante o valor de um atributo o conjunto de valores de um atributo ou uma vari vel que cont m o resultado de uma fun o anterior Como resultado a fun o retorna um valor
399. m nio Formaliza o Sint ctica CORRECT PQD ColunasAlvo DasTabelas DasBasesDados Usando T cnica UsandoAtribui es UsandoT ransforma es UsandoCondi o PQD MISSING VALUE SYNTAX VIOLATION DOMAIN VIOLATION Formaliza o Sem ntica As abordagens usadas na correc o dos PQD valor em falta e viola o de dom nio s o as mesmas Assim a formaliza o da correc o destes problemas apresentada conjuntamente Em fun o de se tratar de valor em falta ou viola o de dom nio a correc o do PQD no atributo em causa envolve respectivamente a coloca o de valores nos tuplos onde se detectou a sua inexist ncia ou a substitui o dos valores nos tuplos onde se detectou que estes violam o dom nio As t cnicas de preenchimento substitui o consideradas na correc o destes problemas s o m dia limitada a atributos do tipo num rico moda e o valor que ocorre mais frequentemente mediana e o valor que ocupa a posi o interm dia num conjunto ordenado de valores num ricos valor probabil stico 7 e valor gerado a partir de uma distribui o probabil stica e valor express o de preenchimento substitui o definida pelo utilizador Neste ltimo caso a express o envolve exclusivamente atributos vari veis e ou constantes As quatro primeiras t cnicas quando utilizadas na correc o de valores em falta apenas consideram os valores dos atributos que se encontram preenchidos Por outro lado a
400. m ntica fins empresariais comerciais por sistemas de apoio decis o e sistemas de minera o de dados Este tipo de sistemas permite adquirir conhecimento a partir dos dados Por sua vez o DP permite adquirir conhecimento acerca dos pr prios dados e sobre as suas caracter sticas e a padr es Estes meta dados s o essenciais para a identifica o dos PQD Na sua gera o s o usadas t cnicas anal ticas e de descoberta O DP deve ser a primeira actividade a executar no processo de melhoria da QD Qualquer iniciativa baseada nos dados e g cria o de um armaz m de dados projecto de minera o de dados projecto de integra o de dados deve iniciar se com DP O DP gera meta dados precisos e completos efectuando a sua reengenharia com base nos dados existentes O outro resultado produzido pelo DP consiste na identifica o dos registos e valores que violam os meta dados correctos As discrep ncias identificadas constituem um ponto de partida para a investiga o das causas subjacentes As ferramentas de DP possuem capacidades interactivas de navega o que permitem analisar os dados e visionar as inst ncias onde ocorrem os problemas Os principais passos efectuados no DP s o Olson 2003 O An lise das propriedades do atributo A cria o do perfil do atributo auxilia a verificar se os dados que nele se encontram correspondem s expectativas Neste passo s o analisados os valores que se encontram em ca
401. m default aspPpwin 7 amp winsub 31 no dia 06 04 2007 s 23 45 WizSoft 2007b WizRule White paper Dispon vel em http www wizsoft com default aspPpwin 8 amp winsub 35 no dia 06 04 2007 as 23 55 WizSoft 2007c WizSame White Paper Dispon vel em http www wizsoft com default asp win 9 amp winsub 37 no dia 07 04 2007 as 22 55 Wohed P 2000 Schema Quality Schema Enrichment and Reuse in Information Systems Analysis Disserta o de Doutoramento em Inform tica Universidade de Stockholm 2000
402. m opera es de LD especificadas no passado Isto particularmente verdade naquelas opera es especificadas in meras vezes em diferentes BD Al m de poder efectuar ajustamentos o utilizador tamb m pode eliminar as opera es instanciadas cuja execu o n o pretenda efectuar e g n o se efectuar uma determinada OD porque esse problema em concreto garantidamente n o existe H a consci ncia de que a aproxima o apresentada neste cap tulo ainda necessita de muito trabalho at alcan ar um estado em que possa ser implementada e integrada no prot tipo SmartClean Entre outras tarefas h que formalizar como s o identificadas e instanciadas automaticamente as opera es conceptuais de LD em fun o dos mapeamentos estabelecidos pelo utilizador Apesar do cariz inacabado o interesse e originalidade da abordagem j mereceu reconhecimento em confer ncias cient ficas internacionais da rea e g Oliveira ef al 2006c Este o motivo pelo qual se procedeu sua inclus o nesta disserta o de doutoramento CONCLUS O Neste cap tulo come a se por procurar demonstrar que todos os objectivos que estiveram na origem deste trabalho de doutoramento foram cumpridos Seguidamente efectuada uma compara o entre o resultado mais vis vel do trabalho realizado 2 e o prot tipo SartClean e as ferramentas de Limpeza de Dados LD usadas como referencial com o intuito de clarificar as semelhan as e diferen as As
403. ma aproxima o ascendente bottom up desde o NG mais elementar z e atributo at ao de maior complexidade e m ltiplas FD de que resultou uma taxionomia de PQD Os crit rios que conduziram identifica o dos PQD em cada NG foram devidamente apresentados A compara o com trabalho relacionado evidencia que a taxionomia desenvolvida cobre um conjunto maior de problemas No mbito deste trabalho de doutoramento o facto de ser mais completa assume especial import ncia uma vez que se pretende desenvolver um modelo de LD que suporte a DC autom ticas do maior n mero poss vel de PQD A aproxima o usada na identifica o dos problemas foi rigorosa e sistem tica o que sustenta a convic o de que n o est a faltar qualquer PQD Os PDQ que fazem parte da taxionomia foram tamb m especificados atrav s de defini es matem ticas Esta caracter stica diferencia a taxionomia das anteriormente propostas uma vez que nestas apenas s o usadas defini es textuais A defini o formal dos PQD revela se importante pelos seguintes motivos 7 a nica forma de garantir uma defini o clara e precisa do significado de cada PQD 77 til porque define tudo aquilo que necess rio para detectar automaticamente o problema 2 e 4 os meta dados necess rios b a express o matem tica que define o PQD e que pode ser entendida como a regra que permite automatizar a sua detec o e c uma eventual fun o necess ria
404. malizada nesta disserta o para todas aquelas situa es em que esta pode ser fornecida O modelo proposto de LD e as formaliza es sint cticas e sem nticas das opera es de DC constituem a base do prot tipo desenvolvido baptizado com a denomina o SmartClean O SmartClean constitui mais uma contribui o que resulta do trabalho realizado provavelmente a que possui maior visibilidade Tendo como objectivo testar o S artClan e consequentemente demonstrar a validade do modelo de LD subjacente o prot tipo utilizado num estudo de caso Os resultados alcan ados confirmam a sua aplicabilidade validade e utilidade na DC dos PQD Como ltima contribui o deste trabalho nesta disserta o ainda apresentada uma aproxima o que suporta a interoperabilidade das opera es de DC entre bases de dados diferentes Isto alcan ado atrav s da especifica o das opera es a um n vel conceptual que as isola do n vel do esquema permitindo facilmente a sua reutiliza o em bases de dados diferentes ix ABSTRACT The data have a growing importance in today s information and communication society For this reason the Detection and Correction DC of their quality problems is very important The results obtained from data are negatively influenced by their quality problems This is known as the garbage in garbage out principle The taxonomy of Data Quality Problems DQP is one of the contributions that res
405. manualmente aos registos 717 copiar e colar valores dos atributos entre os registos 7 combinar os valores dos dois registos num s e 7 eliminar um dos registos O relat rio resumo de correspond ncias tamb m possibilita a visualiza o ou impress o de uma listagem geral dos registos identificados como poss veis duplicados Compete ao utilizador estabelecer o valor do limiar do grau de semelhan a a partir do qual os tuplos s o assinalados como verdadeiros duplicados entre os que foram identificados como potenciais duplicados Ap s terem sido assinalados os registos duplicados poss vel proceder se cria o de um ficheiro isento de redund ncias Ao utilizador permitido seleccionar os atributos a incluir neste ficheiro podendo este ser criado de acordo com diversos formatos e g xls dbf ASCID Os registos assinalados como duplicados tamb m podem ser armazenados em ficheiro Igualmente este ficheiro pode ser criado segundo diversos formatos suportados Al m da quest o dos duplicados a ferramenta tamb m permite uniformizar nomes e endere os em mai sculas e min sculas de forma apropriada A 6 Centrus MergelPurge A ferramenta Centrus Merge Purge Group 1 Software 2007 visa a identifica o e remo o de registos duplicados numa tabela ou entre tabelas Os seguintes tipos de fontes de dados s o suportados por esta ferramenta Oracle dBase FoxPro Clipper e ASCII de tamanho fixo ou delimitado por carac
406. mb m podem ser passados para as fun es Como resultado cada fun o fdu retorna um valor at mico A ltima fun o da sequ ncia respons vel por retornar o valor que ser objecto de compara o com o valor do atributo atr Caso os valores sejam iguais isso significa que a transforma o operada no valor de atr confirma a exist ncia de heterogeneidade de unidades de medida com o valor de atr e vice versa formaliza o anterior sofre as seguintes altera es acrescentos para reflectir a utiliza o de FDU O que permanece inalterado encontra se representado sob a forma de retic ncias Algoritmo Detec o Heterogeneidade Unidades Medida Baseada FDU Cap tulo 5 Formaliza o das Opera es de Detec o 149 in cio ue de tuplo U repetir enquanto t null e nrduplicados n oheterog lt 1 limiar Ve Ta geese Ot 500058 atr atr x P lazuan Oy HUA NO EU bA A 6 u 6 5 ve de tupl V v lt fdu p Dio rP 1 v lt fdu PaPa EELA CAE AES A se v v atn ent o heterog lt heterog 1 Z1 lt Z1 VU heterog v d 0 dm V atn Z2 Z2 VU heterog v 6 0 6 vath sen o n oheterog lt n oheterog 1 ZAnioheterog Zln oheterog ndoheterog v d U AmsV atn Z2vgohetetog Z2n oheterog V ndoheterog v b 0 6 vatn fim se ue de tuplo U fim repetir fim Nota O valor do atributo atr constitui um par metro de uma ou mais fun
407. mes de entidades em ingl s entity name clustering and matching Cohen e Richman 2002 problema da identifica o da inst ncia Maletic e Marcus 2000b identifica o da entidade em ingl s entity identification Cholvy e Moral 2001 e identifica o do objecto Tejada et al 2001 Tejada et al 2002 A exist ncia de registos duplicados pode ser uma consequ ncia directa de outros PQ nos dados como valores em falta valores incorrectos g motivados por erros de introdu o ou problemas de actualiza o inexist ncia de uma uniformidade de representa o eg acr nimos abreviaturas e valores incompletos A exist ncia de valores incompletos usual em atributos cujo tipo textual Gravano e al 2003 Os sistemas de gest o de BD relacionais n o permitem a introdu o de registos que contenham valores duplicados nas chaves prim rias No entanto como os valores dos atributos da chave prim ria podem estar afectados por PQD e g valores incorrectos devido a erros de digita o n o poss vel garantir a n o exist ncia de registos duplicados Mesmo n o existindo estes PQD a mesma entidade ou objecto do mundo real pode ter sido armazenada com valores de chave prim ria diferentes e g o mesmo cliente encontra se armazenado em dois registos com um n mero de cliente diferente Como consequ ncia destas situa es v rios registos podem representar a mesma entidade ou objecto do mundo real e serem
408. miza o Sim Sim N o Sim N o Capacidades extensibilidade Sim Sim Sim Sim Sim Suporte a excep es Sim Sim N o N o N o Interface com o utilizador N o gr fico Gr fico N o gr fico Gr fico N o gr fico Potencialidades de anula o Sim N o Execu o incremental Sim N o Sim N o N o N o Def seq exec opera es O significado de cada caracter stica considerada apresentado de seguida Utilizador Utilizador Autom tica Utilizador Utilizador Q Tipo de fontes suportadas Tipo de fontes a que o prot tipo consegue aceder 64 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Preocupa es de optimiza o Uso de t cnicas com o objectivo de diminuir o tempo de execu o das opera es Capacidades de extensibilidade Possibilidade de incorporar novas fun es definidas pelo utilizador na biblioteca de fun es existente Suporte a excep es Uma excep o ocorre quando uma opera o de limpeza falha num determinado registo A manipula o de excep es pode ser efectuada por duas vias 7 manualmente atrav s de uma interface com o utilizador adequada ou 7 automaticamente ignorando ou eliminando os registos excepcionais ou reportando os para ficheiro tabela Interface com o utilizador Tipo de ambiente
409. motivos 7 identificar que correc es foram efectuadas s rela es a que se encontram associadas e 77 permitir anular as altera es efectuadas resultantes da ltima OC efectuada De acordo com o exposto na sec o anterior pode ser necess rio mais do que uma execu o das sequ ncias de OD para se poder assegurar que todos os PQD identificados est o efectivamente solucionados necessidade de repetir a execu o das sequ ncias de OD adv m da possibilidade das correc es poderem introduzir outros PQD que por se encontrarem a montante da opera o actual no mesmo ou noutro NG j n o s o detect veis Assim necess rio voltar a executar as sequ ncias de OD desde o NG mais elementar que corresponde s opera es especificadas pelo utilizador No entanto em cada itera o apenas s o executadas as sequ ncias de OD relativas aos atributos objecto de altera es na itera o anterior Nos NG do atributo apenas no contexto do valor individual e do tuplo a execu o das opera es fica ainda mais restrita a apenas aos tuplos que sofreram modifica es na itera o anterior Para tal necess rio saber se quais foram esses atributos e tuplos O primeiro motivo que justifica a exist ncia das referidas rela es auxiliares precisamente este Por compara o entre a rela o auxiliar armazena o estado inicial e a rela o resultante das correc es efectuadas cont m o estado final poss v
410. n 1998 Naturalmente h situa es onde esta taxa ainda maior e g um gestor de uma empresa reportou que 60 dos dados transferidos para o armaz m de dados n o passaram na verifica o das regras de integridade que se julgava estarem a ser garantidas pelos sistemas inform ticos existentes Orr 1998 2 2 2 Perspectiva Lata A luz desta perspectiva a QD abarca muito mais do que a mera completude consist ncia e correc o dos valores Esta posi o tem sido defendida por diversos investigadores e g Strong 1997 English 1999 Salaun e Flores 2001 Wang e Strong 1996 Ballou ez a 1998 Orr 1998 que argumentam que a QD deve considerar outros crit rios ou dimens es Apesar de n o ignorarem a import ncia das tr s dimens es usuais classificando as mesmo como as de maior import ncia Ballou et al 1998 argumentam que estas por si s n o abarcam todas as preocupa es que os utilizadores dos dados denotam Assim consideram se outras dimens es como a actualidade a acessibilidade e a interpretabilidade de modo a que se possa caracterizar globalmente a QD Essencialmente esta perspectiva tem origem nos investigadores oriundos da rea da gest o Os in meros investigadores que defendem esta posi o procuraram definir e caracterizar o significado de QD eg Wang et al 1995 Na realidade poss vel encontrar se quase tantas defini es de QD quantos os artigos existentes sobre o assunto
411. nado A sequ ncia de OD apenas interrompida para o valor do atributo do tuplo em quest o Em todos os outros valores do atributo referentes aos demais tuplos a execu o da sequ ncia de OD prossegue com toda a normalidade S ap s a execu o de todas as OD que fazem parte da sequ ncia que os PQD identificados por cada uma destas s o reportados ao utilizador 236 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Ap s a realiza o das correc es pelo utilizador independentemente de terem sido efectuadas por via manual ou autom tica 7 e com base numa OC as OD especificadas voltam a ser executadas de acordo com a sequ ncia de depend ncias de execu o Na execu o de cada opera o que comp e a sequ ncia s o considerados somente os PQD anteriormente identificados Desta forma assegura se que estes foram de facto solucionados pelas ac es correctivas efectuadas Cada OD da sequ ncia considera al m destes tamb m os valores do atributo em que a execu o das opera es precedentes j n o detectou a exist ncia de PQD O processo de execu o repete se continuamente at que das correc es efectuadas n o resulte a identifica o de qualquer PQD Este processo de execu o das OD que comp em a sequ ncia encontra se esquematicamente representado na Figura 7 9 i Viola o de Sintaxe Viola o de Dom nio Valor Sobrecarregado t Figura 7 9 P
412. nados com o principal Problema de Qualidade dos Dados PQD que a LD enfrenta os duplicados No contexto desta problem tica descreve se os m todos de detec o de duplicados considerados mais relevantes o mbito dos m todos de detec o as m tricas utilizadas na avalia o da semelhan a entre valores a avalia o da efic cia dos m todos de detec o e as abordagens suscept veis de serem utilizadas na elimina o de duplicados Por fim descreve se o actual estado da arte a n vel de solu es inform ticas que permitem um tratamento automatizado LD Para o efeito exposto um conjunto de ferramentas representativas oriundas de duas comunidades distintas acad mica investiga o e empresarial comercial Em ambos os casos as ferramentas s o comparadas tendo por base um conjunto de caracter sticas seleccionadas para o efeito 3 1 Introdu o A solu o natural para os Problemas de Qualidade PQ que possam existir passa por analisar os dados com o objectivo de os identificar e solucionar Maletic e Marcus 2000b Efectuar esta tarefa atrav s da an lise visual dos dados fastidioso moroso e prop cio n o identifica o dos PQD Guyon et al 1996 Obviamente n o uma tarefa praticavel em grandes volumes de dados Como tal esta tarefa tem de ser automatizada o mais poss vel Foi neste contexto que surgiu a LD em ingl s data cleaning data cleansing data scrubbing A LD tem sido objecto de um in
413. nal em que ocorrem A taxionomia desenvolvida mais gen rica e abrangente do que as existentes anteriormente obedecendo ao requisito que despoletou o seu desenvolvimento Ao contr rio do que acontece nas taxionomias anteriores um conjunto de defini es formais acompanha a taxionomia proposta eliminando poss veis subjectividades quanto ao significado de cada problema que a comp e Apesar da sua elabora o n o constituir um objectivo inicial do trabalho no decurso deste a taxionomia revelou se uma condi o para a sua continuidade Nesta perspectiva ainda que a Cap tulo 10 Conclus o 337 taxionomia de PQD se apresente como um resultado lateral obtido na persecu o do objectivo principal ze conceber e desenvolver um modelo de LD n o deixa de constituir uma contribui o do presente trabalho como se comprova pela receptividade que mereceu em confer ncias internacionais da rea e g Oliveira e al 2005c Note se que a import ncia da taxionomia no contexto do trabalho realizado vai al m da mera identifica o dos PQD A organiza o por NG estabelecida pela taxionomia acabou por estar na base da tese defendida e da sequ ncia de manipula o dos PQD e tamb m do mecanismo que permite a execu o incremental das opera es de DC Como tal a taxionomia acaba por estar presente em diversas vertentes do modelo proposto de LD O Abordagem que suporta a interoperabilidade das opera es de DC Ind
414. nam as altera es efectuadas 7 5 Motor de Execu o das Opera es de Correc o Como resultado da execu o das sequ ncias de OD podem ser reportados PQD ao utilizador Cada problema pode ser solucionado por uma das seguintes vias manualmente 7 e O utilizador efectua a correc o directamente na pr pria tabela recorrendo a instru es em Structured Query Cap tulo 7 Modelo Proposto para a Limpeza de Dados 255 Language SQL ou automaticamente Ze a correc o efectuada com base numa OC especificada pelo utilizador A sem ntica das OC que a arquitectura suporta de base encontra se formalizada no cap tulo anterior Outras opera es s o suscept veis de corrigir automaticamente os problemas detectados tendo por base fun es definidas pelo utilizador No mbito desta sec o apresenta se a forma como este m dulo da arquitectura procede execu o das OC especificadas pelo utilizador Um outro aspecto que tamb m exposto nesta sec o prende se com o controlo das correc es ou altera es efectuadas aos valores Esta informa o importante por dois motivos 7 no reinicio de execu o das sequ ncias de OD necess rio saber se quais as altera es realizadas na ltima itera o e 77 suporta a anula o dos efeitos das OC caso estas n o produzam os resultados desejados 7 5 1 Modo de Execu o O modelo de LD que se defende assenta na detec o e imediata correc o do
415. nas dois campos c digo e descritivo vulgarmente utilizado em BD Frequentemente existe mais do que um tuplo com a mesma informa o o que constitui uma viola o unicidade do descritivo eg o pa s Portugal encontra se em dois tuplos com c digos diferentes Nestes casos pode manter se apenas um dos tuplos removendo todos os outros Quando se procede remo o dos tuplos a n o viola o da integridade referencial da BD tida em considera o por esta opera o o significado desta afirma o encontra se explicado na parte final da descri o da opera o anterior de remo o de sin nimos Noutros enquadramentos que n o do tipo concreto referido em que se verifiquem viola es de unicidade num atributo de uma determinada tabela s a interven o manual do utilizador as pode solucionar Algoritmo Remo o Viola o Unicidade amp in cio T lt Tatr ge atr Ccond z1 t de tuplo T flag_eof falso repetir enquanto flag cof falso primeiro valor t atr proximo valor lt t atr u lt t repetir enquanto flag eof falso e proximo valor primeiro valor t lt de tuplo T 182 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica se t null ent o flag cof verdadeiro sen o proximo valor t atr se proximo valor primeiro valor ent o repetir para i lt 1 at w Ve O cj tajA Acm t Am S SG S V ve de tuplo V repetir e
416. nce on Information Quality Boston EUA Novembro de 2006 pp 499 510 Batini C e Scannapieco M 2006 Data Quality Concepts Methodologies and Techniques Springer 2006 ISBN 978 3 540 33172 8 Batini C Lenzerini M e Navathe S 1986 A Comparative Analysis of Methodologies for Database Schema Integration Computing Surveys 18 4 1986 pp 323 364 368 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Bilenko M e Mooney R J 2003 Adaptive Duplicate Detection Using Learnable String Similarity Measures In Proceedings of the 9 ACM SIGKDD International Conference on Knowledge Discovery and Data Mining Washington EUA Agosto de 2003 pp 39 48 Bovee M Srivastava R P e Mak B 2003 A Conceptual Framework and Belief Function Approach to Assessing Overall Information Quality International Journal of Intelligent Systems 18 2003 pp 51 74 Brackstone G 1999 Managing Data Quality in a Statistical Agency Survey Methodology 25 2 1999 pp 139 149 Bressan S Goh C Fynn K Jakobisiak M Hussein K Kon H Lee T Madnick S Pena T Qu J Shum A e Siegel M 1997 The COntext INterchange Mediator Prototype In Proceedings of the 1997 ACM SIGMOD International Conference on Management of Data Arizona EUA Maio de 1997 pp 525 527 Calvanese D Giacomo G Lenzerini M Nardi D e Rosati R 1999 A Principl
417. ncial 7 e inexist ncia de viola es integridade referencial dos dados e do atributo e g inexist ncia de valores duplicados numa determinada coluna da tabela inexist ncia de valores que violem o dom nio do atributo As verifica es s o efectuadas atrav s de inqu ritos BD Claramente este tipo de suporte n o se mostra adequado para manipular a generalidade dos PQD Assim surgiram ferramentas que visam especificamente a LD Estas ferramentas t m origem em duas comunidades distintas acad mica cient fica e empresarial comercial Nas duas subsec es seguintes e 3 5 1 e 3 5 2 s o apresentadas as ferramentas consideradas mais representativas oriundas de cada uma das comunidades 3 5 1 Prot tipos de Investiga o Os trabalhos de investiga o efectuados pela comunidade cient fica da rea resultaram no desenvolvimento de alguns prot tipos de LD Em Barateiro e Galhardas 2005 apresentada uma lista muito completa Alguns destes prot tipos est o direccionados para a manipula o de um nico PQD Face sua especificidade em Oliveira e a 2004 estes s o classificados como sendo de dmbito especializado Exemplos deste g nero de prot tipos s o os que visam unicamente a detec o e elimina o de duplicados O Projecto Flamingo Jin et al 2005 Jin et al 2004 um exemplo de um prot tipo vocacionado apenas para o problema dos duplicados Outros prot tipos de investiga o procuram man
418. ndentes UsandoCondi o Formaliza o Sem ntica A rela o resultante da respectiva OD permite agrupar e determinar o numero de ocorr ncias associado a cada conjunto de valores envolvido em cada viola o de depend ncia funcional A OC proposta assenta no princ pio da maioria Todos os valores do atributo de cada conjunto de valores envolvidos numa viola o de depend ncia funcional cujo n mero de ocorr ncias n o seja m ximo s o substitu dos pelo valor do atributo do conjunto de valores cujo n mero de ocorr ncias m ximo No caso de n o existir um conjunto de valores que possua um n mero m ximo de ocorr ncias n o efectuada qualquer correc o uma vez que o princ pio da maioria n o aplic vel A resolu o destas viola es de depend ncia funcional fica a cargo do utilizador De modo a clarificar o modo de funcionamento desta OC suponha se que foi detectada a seguinte viola o de depend ncia funcional entre o c digo postal na sua forma abreviada e a localidade 4000 Porto 4000 Porto 4000 Porto 4000 Maia Uma vez que o n mero de ocorr ncias de 4000 Porto igual a tr s e o n mero de ocorr ncias de 4000 Maia apenas de um por aplica o do princ pio da maioria este ltimo transformado tamb m em 4000 Porto Algoritmo Correc o Viola o Depend ncia Funcional E seja C fc O conjunto de atributos de Z1 onde se encontram os valores
419. ndir segs mais mm tuplo vec segs geradas se vectores iguais vec segs geradas vec novas segs geradas verdadeiro ent o poss vel expandir falso sen o repetir para i lt 1 at dimens o vec novas segs geradas vec chaves seq lt cria vector a partir de string vec novas segs geradas i 2 se valores_duplicados_no_vector vec_chaves_seq verdadeiro ent o Cap tulo 5 Formaliza o das Opera es de Detec o 135 vec segs circulares lt insere valor em vector vec novas segs geradas il vec_seqs_circulares vec novas segs geradas remove elemento do vector vec novas segs geradas i vec novas segs geradas fim se fim repetir vec segs geradas lt vec novas segs geradas fim se fim repetir retorna vec segs circulares fim Nota A finalidade da fun o nsere valor em vector encontra se definida na fun o gerar sequ ncias Fun o expandir segs mais um tuplo vec segs geradas E seja extrai valores ultima chave seg sequ ncia uma fun o que recebe uma string com a sequ ncia de valores da chave prim ria estrangeira resultantes do auto relacionamento existente Esta fun o retorna os valores da ltima chave prim ria estrangeira desta sequ ncia in cio repetir para i lt 1 at dimens o vec segs geradas vec valores chave extrai valores ultima chave seq vec segs geradas 1 Ts presen Eai o vec _ valores _chave i a vec _ valores chavelm R t lt de tupl
420. nguage SQL A 15 No Ap ndice B desta disserta o apresentado um breve resumo sobre as opera es de lgebra relacional utilizadas nas formaliza es apresentadas neste cap tulo Cap tulo 6 Formaliza o das Opera es de Correc o 163 defini o da linguagem efectuada atrav s da gram tica em BNF estendido que a seguir se apresenta Opera o TipoOpera o ProblemaQualidadeDados N velOpera o NasColunas DasTabelas DasBasesDados Usando T cnica UsandoColunas UsandoOpera es UsandoTabelas Usando Transforma es Usando ValorPr ximo Usando TermosUniformiza o DependentesDe Fonte TermosUniformiza o UsandoCondi o TipoOpera o CORRECT REMOVE ProblemaQualidadeDados N velValorIndividual N velColuna N velTuplo N velRela o N velM ltiplasRela es NivelValorIndividual gt MISSING VALUE SYNTAX VIOLATION DOMAIN VIOLATION INCOMPLETE VALUE OVERLOADED VALUE MISSPELLING ERRORS N velColuna EXISTENCE OF SYNONYMS UNIQUENESS VIOLATION INTEGRITY CONSTRAINT VIOLATION NivelTuplo INTEGRITY CONSTRAINT VIOLATION N velRela o FUNCTIONAL DEPENDENCY VIOLATION DUPLICATE TUPLES INTEGRITY CONSTRAINT VIOLATION N velM ltiplasRela es HETEROGENEITY OF SYNTAXES HETEROGENEITY OF MEASURE UNITS EXISTENCE OF SYNONYMS DUPLICATE TUPLES INTEGRITY CONSTRAINT VIOLATION N velOpera o e AT LEVEL OF N vel N vel COLUMN ROW RELATION
421. nicia a execu o das sequ ncias de OD a partir do NG mais a montante estas incluem as pr prias sequ ncias relativas ao NG que despoletou esse rein cio Por exemplo caso o rein cio de execu o das sequ ncias de OD nos NG precedentes seja despoletado pelas correc es realizadas ao n vel da rela o as sequ ncias referentes a este n vel tamb m s o novamente executadas Desta forma qualquer problema que possa ter sido introduzido num NG por uma correc o efectuada a outro PQD do mesmo n vel a jusante na sequ ncia de OD acaba por ser detectado Cap tulo 7 Modelo Proposto para a Limpeza de Dados 249 Este o motivo que justifica que as sequ ncias de OD referentes aos problemas no contexto do valor individual do atributo sejam novamente executadas ap s a realiza o de correc es aos PQD identificados neste contexto Na Figura 7 14 isto traduz se graficamente na primeira itera o de execu o das OD Naturalmente que neste contexto apenas se justifica executar novamente as sequ ncias de OD caso estas sejam compostas por mais do que uma opera o Quando se reinicia a execu o das sequ ncias de OD no NG mais a montante fruto das correc es efectuadas aos problemas noutro NG os atributos e tuplo alterados condicionam essa execu o Em fun o destes certas OD que integram cada sequ ncia podem nem sequer ser alvo de execu o No caso de o serem dependendo do NG a que pertencem o seu mbito de e
422. nificados dos dados compreens o representa o concisa representa o consistente Contextual Dimens es relativas ao contexto Relev ncia valor acrescentado actualidade de manipula o dos dados completude volume de dados Acessibilidade Dimens es relativas seguran a Acessibilidade seguran a de acesso e acessibilidade dos dados O Proposta de Wand e Wang Em Wand e Wang 1996 s o propostas as seguintes dimens es da QD correc o completude consist ncia actualidade e credibilidade O Proposta de Redman Em Redman 1996 as dimens es da QD est o distribu das por tr s categorias vis o conceptual dos dados cinco dimens es valores dos dados quatro dimens es e formatos dos dados oito dimens es O Proposta de Jarke Em Jarke 1999 as dimens es da QD est o organizadas em fun o dos pap is dos intervenientes num ambiente de armaz m de dados qualidade de desenho e administra o seis dimens es qualidade da implementa o do software seis dimens es qualidade de uso dos dados cinco dimens es e QD armazenados cinco dimens es Cap tulo 2 Qualidade de Dados 19 O Proposta de Bovee Em Bovee 2003 s o propostas quatro dimens es para a QD acessibilidade interpretabilidade relev ncia e credibilidade O Proposta de Naumann Em Naumann 2002 s o propostas 21 dimens es distribu das pelas seguintes categorias conte do t
423. nio identificador UsandoCondi o Defini oCondi o Defini oCondi o WHERE Condi o Condi o express o where sal AgupandoPor e Defini o Agrupamento Defini o Agrupamento GROUP BY Crit rioAgrupamento FiltrandoPor Crit rio Agrupamento expressao group by sql FiltrandoPor e Defini oFiltro Defini oFiltro HAVING Crit rio Filtragem Crit rioFiltragem express o having sql UsandoDicion rio gt Defini oDicion rio 114 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Defini oDicion rio USING DICTIONARY NomeDicion rio NomeDicion rio identificador UsandoM trica gt e Defini oM trica Defini oM trica USING METRIC NomeM trica NomeMe trica identificador A linguagem de especifica o das OD que acabou de ser definida na sua globalidade ser novamente apresentada na Sec o 5 3 e seguintes devidamente instanciada a cada OD em concreto 5 2 2 Sem ntica das Opera es de Detec o As defini es de car cter espec fico necess rias formaliza o sem ntica das OD s o apresentadas imediatamente antes da formaliza o do problema a que dizem respeito Nos par grafos seguintes apresentam se apenas as defini es de car cter geral usadas em diversas formaliza es seja Ruma rela o com o seguinte esquema R d dm 4m 15 4m4n gt CM
424. no NG multi rela o da fonte multi fonte de DADOS io RR Tp a E Ta 245 Figura 7 14 Processo de execu o das OD por NG vestsiisesasiarstuctsieneatonivetnetnertertesduvtasmpennautontontveyees 248 Figura 7 15 Altera o ao valor do atributo a no tuplo Lapas amistosa rasteira ae aii og 249 Figura 7 16 Processo de execu o das OD por NG ss sssssessssssesressressresseeeseesseesnresnreesnresnresrreseresere 254 Figura 7 17 Modelo de dados de suporte ao armazenamento das altera es efectuadas 259 Figura 7 18 Diagrama de sequ ncia do modelo proposto de LD 263 Figura 7 19 Exemplifica o da especifica o de OD lado esquerdo e OC lado direito 266 Figura 7 20 Consulta dos PQD resultantes da execu o das OD metes 267 Figura 8 1 Diagrama entidade rela o da BDD s s iss siniiser aisineaiediiepidoittuea Dei ita again ini andas 271 Figura 9 1 Representa o da realidade atrav s de ontologias teens 319 Figura 9 2 Especifica o conceptual das opera es de LD nsesssessssssssressresseesseesseesrressresressreeseeeseee 320 Figura 9 3 Estabelecimento de um mapeamento entre um atributo e uma propriedade 321 Figura 9 4 Instancia o das opera es conceptuais de LD eretas 321 Figura 9 5 Heran a na instancia o das opera es conceptuais de LD 325 Figura 9 6 Sobreposi o na instancia o das opera es concep
425. nome atr a fun o usual de SQL que recebe o nome de um atributo e devolve a m dia dos seus valores seja int valor uma fun o que recebe um valor num rico do tipo real e devolve a sua parte inteira seja gera nr aleatorio uma fun o que efectua a gera o de um n mero real compreendido no intervalo 0 1 de forma aleat ria in cio Te TER poi R reso Rint Coon x Pa 6 A Adn m Pzi 6 lt a bm Am 21 se t cnica correc o m dia ent o se pgd valor em falta ent o u Yavg atr R senao U lt VYavg atr r B 7a ENA R usam 21 fim se novo valor u avg atr mm 06 sen o se t cnica correc o moda ent o se pqd valor em falta ent o Se w O count atr atr Y count atr R senao Ve Teount atr a Vcount atr x pis za olm R EA z1 x fim se ue de tuplo U prim nr ocor u count atr 170 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ue de tuplo U seg nr ocorr lt u count atr se prim nr ocorr gt seg nr ocorr ent o novo valor prim nr ocorr sen o novo valor null fim se f sen o se t cnica_correc o mediana ent o se pqd valor em falta ent o Vey count atr O atr null R Ve Tatr e Caem 2 sen o VP condain Camema RPA Ea an R Ea an Z V lt Tatr E x gt lt 7a ssa R sm z1 fim se u lt de tu
426. nos seus componentes at micos proceder uniformiza o dos valores verificar a validade dos valores identificar a exist ncia de duplicados e consolidar cada grupo de duplicados num nico registo A ferramenta extrai automaticamente os diversos elementos e g tua n mero de pol cia porta localidade que se encontram num determinado atributo e g morada em fun o do seu conte do sem ntico Estes elementos s o armazenados em novos atributos A separa o dos elementos efectuada com base num conjunto de regras predefinidas na ferramenta Al m de lhes ser poss vel efectuar altera es tamb m permitida a introdu o de novas regras de modo a cobrirem situa es espec ficas A separa o dos valores em componentes at micos permite obter uma representa o mais manuseavel e adequada realiza o de outros tipos de opera es de limpeza e g detec o e elimina o de duplicados A ferramenta tamb m suporta opera es de uniformiza o e formata o dos valores e g abreviaturas sintaxe de representa o As opera es de uniformiza o s o efectuadas de acordo com as regras definidas pelo utilizador ou com base em dados de refer ncia adquiridos a entidades externas Estas opera es tamb m contribuem para aumentar o n mero de duplicados identificados 68 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A ferramenta suporta a realiza o de ta
427. nquanto v null V C uam VC UA G S VU 0 6 0 6 0 bett e eV Bets ve de tuplo V fim repetir fim repetir R eR o A 2 fim se fim se fim repetir fim repetir fim Nota O significado da vari vel w e dos atributos encontra se definido na formaliza o anterior 6 3 2 3 Viola o de restri o de integridade Formaliza o Sint ctica CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF COLUMN ColunasAlvo DasTabelas DasBasesDados Defini o Atribui es UsandoTabelas UsandoCondi o Cap tulo 6 Formaliza o das Opera es de Correc o 183 Formaliza o Sem ntica A rela o resultante da OD respectiva e Z1 al m de conter os valores que constituem viola es restri o de integridade ao n vel da coluna pode conter tamb m informa o sobre os tuplos onde estas ocorrem No caso desta informa o n o existir isso significa que a viola o da restri o de integridade resulta dos valores do atributo na globalidade de tuplos existentes e g O somat rio de uma distribui o percentual armazenada num atributo n o igual a 100 A OC aqui proposta assenta na altera o aos valores do atributo nos tuplos especificados pelo utilizador entre os que se encontram envolvidos no PQD ze todos os tuplos de R ou apenas aqueles que constam de Z1 Assim para cada um desses tuplos e com base num conjunto de atribui es especificadas pelo utilizador a OC actua
428. ns for Data Warehousing Systems em conjunto com a JISBD 05 Granada Espanha Setembro de 2005 pp 59 74 Oliveira P Rodrigues F e Henriques P 2005c A Formal Definition of Data Quality Problems In Proceedings of the 10 International Conference on Information Quality MYT Boston EUA Novembro de 2005 pp 13 26 Oliveira P Rodrigues F e Henriques P 2006a Data Profiling versus Data Quality Problems In Proceedings of the 2 International Workshop on Data and Knowledge Quality em conjunto com a EGC 06 Lille Fran a Janeiro de 2006 pp 9 15 Oliveira P Rodrigues F e Henriques P 2006b Data Cleaning by Reusing Domain Knowledge In Knowledge and Decision Technologies pp 67 74 ISBN 972 8688 39 3 Oliveira P Rodrigues F e Henriques P 2006c An Ontology Based Approach for Data Cleaning In Proceedings of the 11 International Conference on Information Quality MIT Boston EUA Novembro de 2006 pp 307 320 Oliveira P Rodrigues F e Henriques P 2006d A Taxonomy of Instance Level Quality Problems on Relational Data In Proceedings of the 4 German Information Quality Management Conference Frankfurt Alemanha Novembro de 2006 Oliveira P Rodrigues F Henriques P e Galhardas H 20054 A Taxonomy of Data Quality Problems In Proceedings of the 2 International Workshop on Data and Information Quality em conjunto com a CAISE 05 Porto Portugal Junho
429. nsasouscovessavsusnssvavovncunsssavsusvsavavatetssuseetsssseustss 278 9 9 13G Tabela POSO as aceitas sept RER RRE REER E RER E RRR RNE RA A Gita 280 BiB SET R Tel EE E7117 EEEE AEE EEEE EEEE EEEE 282 BSS WO Wa Cla Dador s se essiwavexasvaususvst NE da dd pag cf cd eta 284 8 9 1 9 Tabela Anaye ss sisssshstessstendbsss ieni sio in ei a si irisa SR ESS ESSE aS odds sas eSEE SESSE aE TaSi 290 8 3 2 CONTEXTO MULTEVALOR a aa a aaa aa Na rae aa A EA RE PEREA Eaa aie ia AE ERa 291 8 39 21 VabelaConclusoes xira s costs su ra go lo Bl l do dd Su du dd E pd St E RS 291 8 3 2 2 Tabela TamiiligatoeS cniri EEEE EASE EEE EE EEEE 293 RSA AT a E E 7 A EII AET convi 293 SO AT apeli Badas EKEREN E ARR tee id O dcerdos acusava teats 294 8 3 2 5 Tabela Profiss es srserisssireirinirni airaa aE aE aE AEA i S E R das aa 295 8 4 LIMPEZA DE DADOS AO NIVEL DO TUPLO ssssssessssssssseeeossssssseeccossssssseecooesssssseeeosssssesseeeoessssess 296 8 4 TABELA COLHEITAS aeto eE E REEE ER E EE E R a 296 842 FABELA ANALISE Seren aeae cit Rae Cae Ri A A A A E EE a 297 84 3 TABELA DADORES serinin i oe a G GE E C TOE E REE dana os Ra 297 8 5 LIMPEZA DE DADOS AO N VEL DA RELAGCAO ssssssccccsssssssssseecceesescssssseeeceesessssssseeeeeeseseees 300 8 5 TABELA CGODICOS POSTAI i i n a a ennaa neea 301 8 5 2 TABELA COLHEITAS sida tieussastecvacaveceve custam adoram Cu SL cu Conta n ea daN cap eu C an de dm pda aged cu and aaa 301 8 5 3 TABBLA DADORES ius s
430. nsteeessxs 162 6 2 1 SINTAXE DA LINGUAGEM DE ESPECIFICA O x suja ii 162 6 2 2 SEM NTICA DAS OPERA ES DE CORRECGAO vesssesessssesssesscscsesesssscsesesescsesesesussesesescsseseseseseeseseaeeees 166 6 3 PROBLEMAS AO N VEL DO ATRIBUTO seinleccteiclndctecctelaieiciale pitada dad Jada talos ssa ia 167 0 3 CONTEXTO DO VALOR INDIVIDUA Dirree eide araarida dia aaa ann da nda paes padece 168 6 3 1 1 Valor em falta Viola o de sintaxe Viola o de dom nio ss ssssssssrssssrssssresssreessreesseeess 168 6 3 1 1 1 Valor incompleto Valor sobrecarregado s s s 173 O12 Erro ortogr fico arsen orea ae eE a a E uima ali alo na db etapa EE EA E AE ana pera Transa 175 63 2 CONTEXTO IMI VORA a id cad cd hs 177 632I Exist ncia d SIN NIMOS kenna tee ee ee 178 6 3 2 2 Niol o AE d ES a ANNAA NAOR 181 6 3 2 3 Viola o de restri o de integridade isssensussssnsannsrainanisnninrinininnai i 182 64 PROBLEMAS AO N VEL DO TUPLO seccteiecedetateticeliialsdalatsiacdacedoataidaddeldd avin 185 6 4 1 VIOLA O DE RESTRI O DE INTEGRIDADE sspanananonanandncadasdasasannanandaAna das 185 6 5 PROBLEMAS AO N VEL DA RELAGAO sesvecsisssnsnsctacevessivoasacadatevessivousncadetevesectacesecteusueustaasessceessnes 187 6 5 1 VIOLA O DE DEPEND NCIA FUNCIONAL wisccsssssssscscscscscscscscscscscevesavessvevavsvavavavesasasasaveacesessseseceeseaes 188 6 5 2 PUPLOS DUPLICADOS pedinane do cuaid dera abdica dd dela dad ad dt cc Do ir End 189 6 5 3 VIOLA
431. ntada No caso de sobre o atributo incidir apenas um subconjunto de OD e g viola o de sintaxe viola o de dom nio a sua execu o obedece na mesma sequ ncia apresentada 7 e em primeiro lugar a detec o de viola o de sintaxe seguida da detec o de viola o de dom nio primeira opera o a ser executada a de detec o de valores em falta A exist ncia de um valor em falta num atributo de preenchimento obrigat rio obriga a que este problema seja identificado e imediatamente solucionado Ap s ter sido fornecido o valor poss vel executar as restantes opera es da sequ ncia de OD Desta forma verifica se se o valor fornecido possui qualquer outro PQD A OD de viola o de sintaxe a seguinte da sequ ncia A exist ncia de uma viola o de sintaxe pode influenciar negativamente a detec o de erros ortogr ficos e viola es de dom nio Uma viola o de sintaxe pode causar a detec o redundante de um erro ortogr fico ou de uma viola o de dom nio Como tal a DC das viola es de sintaxe tem de preceder a detec o de erros ortogr ficos e viola es de dom nio pr xima opera o a ser executada envolve a detec o de erros ortogr ficos A exist ncia de um erro ortogr fico origina a detec o redundante de uma viola o de dom nio Para que tal n o aconte a necess rio come ar por detectar e solucionar os erros ortogr ficos existentes A OD de viola o de
432. nte este pressuposto parece ser realista As opera es de LD especificadas ao n vel da ontologia s o aquelas suscept veis de reutiliza o noutras BD Naturalmente se uma opera o espec fica de uma BD e g uma OD que identifica os c digos de produto que violam uma sintaxe muito espec fica utilizada numa dada empresa n o deve ser representada ao n vel da ontologia A possibilidade de reutiliza o da opera o muito reduzida sen o mesmo inexistente Nestes casos as opera es devem ser especificadas directamente ao n vel do esquema dos dados complementando as instanciadas automaticamente A decis o de especificar uma opera o ao n vel da ontologia ou apenas ao n vel do esquema da BD depende desta poder ser ou n o reutiliz vel noutras BD Esta avalia o compete nica e exclusivamente ao utilizador Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 323 9 3 Granularidade das Opera es Ontol gicas de Limpeza de Dados As opera es ontol gicas ou conceptuais de DC podem ser especificadas a diferentes n veis de granularidade Em particular as opera es podem ser especificadas ao n vel da 7 propriedade independentemente do conceito e dom nio envolvidos 7 da propriedade num conceito independentemente do dom nio envolvido e 717 da propriedade num conceito num dom nio O primeiro n vel o que apresenta o cariz mais gen rico uma vez que as opera es ontol gi
433. nte interpretado como qualidade do modelo que se encontra subjacente aos dados e g qualidade do modelo de dados na representa o fiel do mundo real qualidade do modelo de dados relacional face teoria da normaliza o O termo que caracteriza este tipo de preocupa es qualitativas qualidade do modelo de dados Genero et al 2002 O termo QD tamb m pode ser erradamente interpretado como qualidade do esquema subjacente aos dados e g qualidade do esquema em assegurar a unicidade dos valores do atributo qualidade do esquema em assegurar a integridade referencial O termo qualidade do esquema dos dados Wohed Cap tulo 2 Qualidade de Dados 15 2000 o que corresponde a este tipo de preocupa es qualitativas Naturalmente a fraca qualidade do modelo de dados ou do esquema dos dados reflecte se na qualidade dos pr prios dados i e dos valores Por exemplo 7 a exist ncia de viola es de depend ncias funcionais s acontece em modelos de dados que n o respeitam a teoria da normaliza o 7 e n o est o na terceira forma normal 7 podem ocorrer viola es de integridade referencial em esquemas de dados relacionais que n o asseguram a manuten o da integridade A qualidade do modelo de dados e a qualidade do esquema de dados n o fazem parte do mbito deste trabalho de doutoramento Normalmente quando se fala em QD associa se o conceito a dados do tipo estruturado Apesar deste trabalho de doutoramen
434. ntegridade referencial para posterior an lise e correc o Os dados apenas s o carregados na tabela de destino se estas verifica es forem bem sucedidas Quando a opera o de transforma o estiver devidamente especificada o utilizador pode despoletar a sua execu o Os resultados obtidos da transforma o podem ser analisados z e os registos que transitaram para a tabela de destino e os registos que n o passaram nas verifica es as restri es de integridade Os valores destes registos podem ser objecto de altera o manual podendo a opera o de transforma o ser novamente executada agora apenas para estes registos Ap ndice A Ferramentas Comerciais de Melhoria da Qualidade de Dados 357 A ferramenta permite ao utilizador sequenciar e automatizar a execu o simult nea de v rias destas opera es de transforma o de dados A 4 WizSame WizSame WizSoft 2007c uma ferramenta que identifica registos duplicados exactos ou aproximados A detec o de duplicados pode ser efectuada nos registos de uma tabela ou entre os registos de duas tabelas Para que seja poss vel detectar duplicados necess rio que o utilizador especifique o significado de duplicado Por defeito todos os atributos s o considerados na detec o dos duplicados Desta forma para que dois registos sejam considerados duplicados necess rio que os valores de todos os seus atributos sejam iguais ou semelhantes O utilizador pode
435. num atributo do tipo textual e g espa os em branco repeti es de certos caracteres e caracteres num ricos em atributos exclusivamente textuais O Conversor de caracteres Permite converter os valores que se encontram no atributo seleccionado para mai sculas min sculas ou para a representa o adequada e g no caso de serem nomes ou endere os O Limpeza de e mail Permite identificar endere os de e mail incorrectos no atributo seleccionado apresentando sugest es de correc o quando poss vel Ap s a realiza o das opera es anteriores procede se detec o e elimina o dos registos duplicados que possam existir Para o efeito o utilizador come a por especificar se a manipula o de duplicados para ser efectuada ao n vel da tabela ou a um n vel entre tabelas De seguida o utilizador define os atributos a usar na detec o dos registos duplicados No caso da manipula o de duplicados ser efectuada entre tabelas necess rio estabelecer mapeamentos entre os atributos seleccionados das duas tabelas Caso os nomes dos atributos sejam iguais estes mapeamentos podem ser automaticamente estabelecidos Caso contr rio o utilizador tem de os estabelecer manualmente No passo seguinte o utilizador escolhe o tipo de an lise que deve ser efectuada i e exacta ou aproximada definindo qual o conte do sem ntico de cada atributo usado na identifica o dos duplicados Actualmente apenas tr s possibi
436. o a LD ainda que possa ser efectuada durante a TD perfeitamente independente desta Pode querer melhorar se somente a QD mas sem realizar qualquer transforma o no seu esquema de representa o Neste caso os dados s o limpos directamente na pr pria fonte onde residem Os prot tipos existentes possuem diversas potencialidades intr nsecas a n vel de transforma o mas s o limitados a n vel de potencialidades de limpeza Por vezes estas potencialidades resumem se detec o e elimina o de registos duplicados e que representam a mesma entidade ou objecto do mundo real As potencialidades de que aqui se falam s o as reais e n o as virtuais uma vez que a materializa o destas implica a inclus o de fun es definidas pelo utilizador Esta caracter stica comum dos prot tipos de investiga o conhecida por extensibilidade Se para a DC de alguns PQD e g viola o de uma restri o de integridade espec fica do dom nio n o h alternativa que n o seja suportar a inclus o de fun es definidas pelo utilizador na generalidade dos problemas tal n o acontece Quer isto dizer que para estes problemas a DC pode ser suportada de base raiz Contudo isto n o acontece nos prot tipos de investiga o Apenas virtualmente permitem a DC dos PQD devidamente escudados nas suas potencialidades de extensibilidade Note se que o desenvolvimento das fun es implica o disp ndio de recursos e n o est ao alcance d
437. o desenvolvimento de uma interface gr fica na qual seja poss vel efectuar todas estas opera es de forma integrada constitua mesmo uma prioridade O Implementa o da abordagem que suporta a interoperabilidade das opera es de DC A abordagem foi descrita no cap tulo anterior mas devido s limita es temporais que caracterizam um trabalho deste g nero n o foi poss vel proceder sua implementa o e consequente integra o no prot tipo SartClean A implementa o da abordagem permitir demonstrar na pr tica as potencialidades de sugest o autom tica das opera es de LD a efectuar em fun o dos mapeamentos manualmente estabelecidos pelo utilizador entre o n vel do esquema de dados e o n vel da ontologia e reutiliza o autom tica das opera es de LD O Especifica o e implementa o do mecanismo de mapeamento autom tico entre o n vel do esquema de dados e o nivel ontol gico No estado actual da abordagem todos os mapeamentos entre os elementos do esquema de dados e BD tabelas atributos e os elementos da ontologia e dom nios conceitos propriedades s o estabelecidos manualmente pelo utilizador O modelo subjacente a esta abordagem de suporte interoperabilidade das opera es de LD permite que se tire partido de t cnicas existentes de an lise de semelhan a l xica O objectivo identificar automaticamente semelhan as l xicas entre os elementos do esquema de dados em causa
438. o T repetir enquanto t null vec novas segs geradas insere valor em vector vec segs geradas il 0 o tqo o 0 o EC Vec novas segs geradas seg actual tao o 0 o0 ta o Ss otgo o 0 0 LG se existe_valor_em_vector_ordenado seq_actual vec_seq_iniciais falso ent o vec seg iniciais insere valor em vector ordenado seg actual vec seg iniciais fim se t lt de tuplo T fim repetir vec novas segs geradas insere valor em vector vec segs geradas i vec novas segs geradas fim repetir retorna vec novas segs geradas fim 136 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Nota A finalidade das fun es existe valor em vector ordenado insere valor em vector ordenado e insere valor em vector encontra se definida na fun o gerar sequ ncias 5 5 3 Tuplos duplicados Formaliza o Sint ctica DETECT DUPLICATE TUPLES DasTabelas DasBasesDados Defini oColunas UsandoChavesOrdena o Usando Atribui es Defini oCondi o Formaliza o Sem ntica No caso da detec o de tuplos duplicados com base numa condi o suscept vel de ser expressa em SQL efectuado um produto cartesiano parcial i e o mesmo par de tuplos apenas comparado uma nica vez sobre os tuplos da rela o em quest o 7 e R para identificar os que respeitam a condi o definida pelo utilizador e que assim s o considerados duplicados A rela o que resu
439. o a implementa o de certas fun es na linguagem de programa o Java O tempo global despendido na LD da BDD rondou os dois dias de trabalho sensivelmente 20h Ainda que a exposi o deste caso n o o evidencie a realiza o do processo de LD envolveu m ltiplas itera es Esta uma caracter stica diferenciadora do modelo de LD que se prop e e que se encontra impl cito no SyzartClean Assim sempre que efectuada uma correc o como consequ ncia de um PQD identificado a detec o reinicia se com a execu o da OD que o originou No caso de estudo as correc es efectuadas no seguimento dos PQD detectados pela primeira itera o das OD no geral solucionaram todos esses problemas de imediato Apenas em tr s situa es a segunda itera o das OD voltou novamente a identificar a exist ncia de PQD A resolu o dos PQD relativos a uma destas situa es envolveu a especifica o de uma nova OC Nas outras duas situa es a resolu o dos PQD respectivos obrigou a uma interven o manual Este caso de LD permitiu confirmar aquilo que partida j se sabia Por mais OC que possam ser disponibilizadas em certos PQD n o h outra alternativa sua resolu o que n o seja uma manipula o individualizada 7 e caso a caso pelo ser humano Quando todos os PQD est o solucionados num NG a execu o das OD reinicia se novamente desde o n vel mais elementar para os valores que entretanto sofreram altera es
440. o atributo Abo s sssssssessssissessesreseseesesses 283 Tabela 8 15 OD executadas no contexto do valor individual dos atributos da tabela Dadores 284 Tabela 8 16 Resultados da OD de viola o de dom nio no atributo CodPostal e 285 Tabela 8 17 Resultados da OD de viola o de dom nio no atributo Peso 286 Tabela 8 18 Resultados da OD de viola o de dominio no atributo Altura ecient 286 Tabela 8 19 Resultados da OD de viola o de dom nio no atributo TensaoMasx 287 Tabela 8 20 Resultados da OD de viola o de dom nio no atributo TensaoMin 287 Tabela 8 21 Resultados da OD de viola o de sintaxe no atributo Profiss o esmeeee 288 Tabela 8 22 OD executadas no contexto do valor individual dos atributos da tabela Analises 291 Tabela 8 23 OD executadas no contexto dos m ltiplos valores dos atrib da tab Conclusoes 291 Tabela 8 24 Resultados da OD de viola o de unicidade no atributo DesignacaConcinsao 292 Tabela 8 25 OD executadas no contexto dos m ltiplos valores dos atrib da tab Inutilizacoes 293 Tabela 8 26 OD executadas no contexto dos m ltiplos valores dos atrib da tab Hospitais 293 Tabela 8 27 OD executadas no contexto dos m ltiplos valores dos atrib da tab Brigadas 294 Tabela 8 28 Resultados da OD de viola o de dominio no atributo DesignacaBrigada wc 295 Tabela 8 29 OD executadas no contexto dos m ltiplos valore
441. o de cada opera o De acordo com o modelo proposto de LD as OD e OC s o executadas por NG Em cada NG as opera es que n o possuem depend ncias entre si s o executadas em simult neo ou paralelo Quando h depend ncias as opera es s o executadas em sequ ncia Actualmente o SmartClean n o fornece informa o sobre o instante de tempo em que uma terminou e se iniciou a seguinte Assim o nico tipo de an lise que pode ser efectuado aos tempos de execu o considerando o conjunto de opera es em cada NG Apenas foi efectuada an lise s OD uma vez que as OC t m um campo de aplica o limitado 7 e apenas aos tuplos onde se detectaram PQD da que o seu tempo de execu o em cada NG nunca tenha ido al m de uns breves segundos 7 e menos de cinco segundos Os resultados apresentados na Tabela 8 44 dizem respeito a primeira execu o das OD e itera o que implica o maior tempo de execu o em virtude de todos os tuplos das rela es serem considerados Tabela 8 44 Tempo necess rio execu o das OD em cada NG Tempo execu o mm ss Atributo valor individual Atributo multi valor Tuplo Rela o Multi rela o da BD Multi relacao de diferentes BD Claramente o NG da rela o foi aquele em que as OD demoraram mais tempo a serem executadas Note se que neste NG foram executadas quatro OD de tuplos duplicados e duas de viola o de depend ncia func
442. o deste trabalho de doutoramento Cap tulo 2 Qualidade de Dados 27 Na melhoria da QD ambas as abordagens s o necess rias Umar e al 1999 Ferramentas e t cnicas devem ser usadas para solucionar os PQ que existem nos dados conjuntamente com altera es ao processo que erradiquem as verdadeiras causas da sua exist ncia Apesar da import ncia de que se reveste a melhoria da QD recorrendo a qualquer uma das abordagens e dados ou processo constitui uma tarefa de elevado grau de dificuldade Naumann 2002 2 6 Problemas de Qualidade dos Dados Neste trabalho de doutoramento a QD cinge se correc o completude e consist ncia dos valores armazenados o significado de cada uma destas dimens es encontra se na Sec o 2 2 2 2 Assim contextualizado o conceito de QD corresponde literalmente ao sentido estrito do termo Estando definido o significado de QD no mbito deste trabalho importa conhecer os problemas que afectam os dados A exist ncia de dados com qualidade n o a regra mas sim a excep o Normalmente os dados est o afectados por diversos PQ Entre outros PQD os dados podem conter viola es de dom nio sin nimos viola es de restri o de integridade registos duplicados e viola es integridade referencial Na literatura da rea foi poss vel encontrar tr s taxionomias de PQD ao n vel dos valores dos dados A forma como os PQD se encontram organizados em cada uma destas taxionomia
443. o este PQD podem ser passados como par metros de acordo com os requisitos de cada Cap tulo 6 Formaliza o das Opera es de Correc o 187 FDU que consta da sequ ncia de atribui es As fun es tamb m podem receber outros par metros como vari veis e constantes Como resultado as fun es retornam um valor at mico A formaliza o anterior objecto das altera es apresentadas de seguida de modo a reflectir a correc o da viola o de restri o de integridade baseada em FDU As retic ncias representam aquilo que permanece inalterado relativamente formaliza o anterior Algoritmo Correc o Viola o Restri o Integridade Baseada em FDU in cio t de tuplo T repetir enquanto t null v fau p Pio Py 2 lt flu Py sp pa fdu Ppa Deore US Oq t a n m t a R R R u v UC u c Vp U C V R RU um UAU A Ulmin te le tuplo T fim repetir fim Nota Os valores dos atributos de C podem constituir par metros de uma ou mais fun es fdu 6 5 Problemas ao N vel da Rela o Nesta sec o apresentam se as formaliza es das OC dos PQD que ocorrem ao n vel da rela o 188 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 6 5 1 Viola o de depend ncia funcional Formaliza o Sint ctica CORRECT FUNCTIONAL DEPENDENCY VIOLATION ColunasAlvo DasTabelas DasBasesDados Defini oColunasDepe
444. o foram identificados duplicados 7 duplicados mestre registos seleccionados em cada grupo de duplicados 777 duplicados subordinados registos preteridos em cada grupo de duplicados e aqueles que n o s o duplicados mestre e 77 registos consolidados registos que resultam da Ap ndice A Ferramentas Comerciais de Melhoria da Qualidade de Dados 361 combina o dos valores que se encontram nos v rios tuplos duplicados que comp em cada grupo Os tipos de fontes nos quais estas tabelas podem ser criadas s o os mesmos j mencionados anteriormente A ferramenta tamb m permite a elabora o de relat rios sobre os diversos tipos de resultados obtidos e g registos nicos registos consolidados Al m de poderem ser visualizados e impressos estes relat rios tamb m podem ser armazenados sob a forma de um ficheiro ASCI LGEBRA RELACIONAL Neste ap ndice apresenta se uma descri o muito sucinta sobre lgebra relacional e algumas das opera es que esta disponibiliza O crit rio usado na selec o destas baseou se na sua utiliza o na formaliza o sem ntica das opera es de detec o e correc o apresentadas respectivamente nos Cap tulos 5 e 6 desta disserta o B 1 Conceito A lgebra relacional uma linguagem composta por opera es que incidem sobre uma ou mais rela es para dar origem a uma outra rela o Da execu o das opera es n o resulta qualquer altera o
445. o multidisciplinar O termo QD possui significados diferentes consoante a perspectiva de abordagem Na literatura poss vel encontrar duas perspectivas uma estrita 2 e mais espec fica e a outra lata 2 e mais abrangente A perspectiva estrita come a por ser apresentada em primeiro lugar sendo depois efectuada a exposi o da perspectiva lata De seguida s o apresentados os principais contextos onde as preocupa es com a QD se tornam particularmente not rias As causas e consequ ncias da fraca QD s o descritas posteriormente A gest o da QD objecto de aten o especial na sec o seguinte sendo apresentada uma metodologia que visa a melhoria cont nua da QD No mbito da gest o da QD s o ainda apresentadas as formas de avaliar objectivamente e subjectivamente a qualidade bem como as abordagens empregues na sua melhoria Seguidamente s o apresentadas e comparadas tr s taxionomias de Problemas de Qualidade dos Dados PQD ao n vel dos valores dos atributos Por ltimo s o descritas as diversas actividades suscept veis de serem efectuadas durante um processo de melhoria da qualidade centrado nos dados e que designadamente s o data profiling an lise de dados transforma o de dados limpeza de dados e enriquecimento de dados 2 1 Introdu o A informa o e o conhecimento de extraordin rio valor que se podem extrair dos dados evidenciam a import ncia destes Os dados constituem o principal suporte na
446. o na Figura 4 7 Cap tulo 4 Problemas de Qualidade dos Dados 83 Os valores dos atributos do tuplo violam alguma restri o de integridade Inexist ncia Viola o de restri o de PQD de integridade Figura 4 7 rvore de decis o para identifica o do PQD que ocorre ao n vel do tuplo O significado do nico PQD identificado a seguir apresentado O Viola o de restri o de integridade Uma restri o de integridade ao n vel dos valores dos atributos do tuplo n o respeitada e g num determinado tuplo o valor do atributo Zotal produto n o igual ao valor resultante da multiplica o entre os valores dos atributos pre o unit rio e quantidade violando assim uma restri o existente 4 2 3 Problemas ao N vel da Rela o Nesta sec o apresentam se os PQD que envolvem valores de v rios atributos em m ltiplos tuplos de uma rela o quando considerados conjuntamente como se ilustra na Figura 4 8 Figura 4 8 Valores dos atributos em m ltiplos tuplos A Figura 4 9 representa o crit rio utilizado na identifica o dos PQD que ocorrem a este n vel O significado de cada PQD identificado clarificado de seguida O Viola o de depend ncia funcional Uma depend ncia funcional envolvendo dois ou mais atributos violada pelos valores de um tuplo e g considerando que existe uma depend ncia funcional entre os atributos c digo postal e localidade os seguintes dois tup
447. o outro 717 correspond ncia de nomes identifica correspond ncias entre diferentes representa es do mesmo nome e g devido ao uso de abreviaturas 77 compara o num rica determina se dois valores num ricos s o iguais ou n o e 7 soundex os valores dos atributos s o comparados em fun o do som resultante da sua pron ncia O crit rio de identifica o de duplicados aplicado por cada chave de ordena o existente Sempre que dois registos s o identificados como duplicados esta informa o armazenada com base nesta informa o que os diversos grupos de registos duplicados s o formados Em cada um destes grupos ser eleito um registo mestre em fun o de um determinado crit rio de prioridade e g prioridade atribu da a cada atributo presen a de valor no atributo escolha aleat ria A ferramenta tamb m permite efectuar consolida o de dados 7 e os valores dos atributos dos registos que fazem parte de cada grupo de duplicados s o consolidados dando origem a um novo registo Em cada atributo dos registos consolidados o utilizador define o crit rio de consolida o que estabelece como surgem estes valores A ferramenta permite a cria o de m ltiplas tabelas onde s o colocados os diferentes tipos de resultados obtidos do processo de manipula o dos duplicados Entre estas encontram se as tabelas que suportam o armazenamentos dos A registos nicos registos para os quais n
448. o para a Limpeza de Dados 253 eventualmente possam ter sido introduzidos pelas correc es efectuadas neste pr prio n vel cuja detec o efectuada pelas opera es que se encontram a montante da que as desencadeou Isto resulta da possibilidade de uma correc o no NG do tuplo poder introduzir um outro problema ao mesmo n vel Caso a sequ ncia de OD no NG do tuplo fosse composta por uma nica opera o assuma se que n o o caso n o se justificava uma nova execu o uma vez que n o foi efectuada qualquer correc o ao n vel do atributo A execu o das OD respeitantes ao NG do tuplo n o identifica qualquer problema Assim sendo a detec o dos PQD continua com a execu o das opera es referentes ao NG da rela o Atendendo a que no NG da rela o foi especificada uma nica OD a sua execu o apenas efectuada caso algum dos atributos que esta envolve tenha sido alterado pelas correc es efectuadas nos NG do atributo e do tuplo Estas altera es existem tendo surgido como uma consequ ncia das correc es efectuadas ao n vel da rela o que introduziram PQD ao n vel do atributo e ao n vel do tuplo Da execu o da OD n o resulta a identifica o de qualquer problema Caso a sequ ncia neste NG fosse composta por mais do que uma opera o tamb m os valores alterados no mbito das correc es efectuadas aos problemas identificados neste n vel ie rela o seriam inclu dos na execu o da
449. o que c digo Java gerado dinamicamente cuja execu o resulta na DC dos PQD existentes Da arquitectura apresentada na Figura 7 1 faz parte uma biblioteca de fun es de LD definidas pelo utilizador Estas fun es cuja necessidade de desenvolvimento adv m dos requisitos espec ficos de LD existentes em cada dom nio concreto tamb m s o implementadas em Java no caso sob a forma de m todos est ticos e organizados em packages Um problema que obriga frequentemente o utilizador a proceder ao desenvolvimento de fun es o das viola es de restri o de integridade Por natureza este tipo de problema espec fico de cada dom nio de aplica o Mesmo assim nas viola es de restri o de integridade que ocorrem nos diferentes NG foram identificados aspectos comuns tendo estes sido formalizados nos dois cap tulos anteriores O que comum nas viola es de restri o de integridade em cada NG foi implementado num template de c digo Java Assim o utilizador apenas tem de implementar numa fun o aquilo que espec fico e necess rio detec o ou correc o das viola es restri o de integridade em causa Desta forma procura se minimizar o esfor o de implementa o a que o utilizador sujeito Actualmente a principal limita o do SmartCkan a inexist ncia de uma interface gr fica Da que n o seja poss vel apresentar imagens que ilustrem o prot tipo desenvolvido No estado actual a especifica
450. o real de melhoria da QD permitindo os resultados validar a arquitectura e consequentemente o modelo de LD subjacente Simultaneamente os resultados demonstram a aplicabilidade do SyartClean na DC dos PQD 10 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O Aproxima o que suporta a interoperabilidade das opera es de DC A especifica o das opera es de LD ao n vel do esquema foi a abordagem empregue at aos dias de hoje No entanto diversas altera es s o necess rias para reutilizar as mesmas opera es noutra BD com um esquema diferente Na realidade muitas opera es s o gen ricas o suficiente para serem aplicadas noutras BD Estas opera es podem estar limitadas a BD pertencentes ao mesmo dom nio ou podem ser t o gen ricas que at s o independentes deste Nesta disserta o apresenta se uma aproxima o que suporta a interoperabilidade das opera es de DC entre BD diferentes Isto alcan ado atrav s de um n vel ontol gico que suporta a especifica o conceptual das opera es ao n vel de dom nios conceitos e propriedades Este n vel de abstrac o isola as opera es do esquema de dados e permite facilmente a sua reutiliza o noutras BD Em fun o dos mapeamentos definidos pelo utilizador entre os elementos do esquema de uma BD e os elementos da ontologia automaticamente s o identificadas e instanciadas ao n vel do esquema dos dados as ope
451. o reflexo dos sin nimos existentes O facto destas OD serem efectuadas em conjunto permite a introdu o da optimiza o j mencionada na Sec o 7 3 2 5 Os pares de valores identificados como sin nimos ficam desde logo exclu dos da execu o da OD de hom nimos No caso da OD de heterogeneidade de unidades de medida esta efectuada conjuntamente com a OD de tuplos duplicados Em primeiro lugar executada esta imediatamente seguida da OD de heterogeneidade de unidades de medida Esta opera o tira partido dos resultados produzidos pela OD de tuplos duplicados para verificar se existe ou n o heterogeneidade de unidades de medida entre os valores dos atributos A execu o da OD de heterogeneidade de unidades de medida encontra se inclusive dependente da exist ncia da OD de tuplos duplicados Como tal estas duas opera es s o executadas em conjunto Cap tulo 7 Modelo Proposto para a Limpeza de Dados 245 Em todas as outras OD n o poss vel proceder sua execu o enquanto existirem PQD resultantes de uma opera o pr via da sequ ncia de depend ncias A execu o destas opera es apenas efectuada quando todos os PQD referentes s opera es anteriores tenham sido solucionados semelhan a do NG da rela o neste n vel h depend ncias de execu o entre as OD que obrigam a que cada problema seja manipulado isoladamente antes de se avan ar para o seguinte Apenas adoptando esta aborda
452. o verdadeiras na maioria dos casos mas n o o s o sempre Normalmente isto indica a exist ncia de um PQD ae viola o de depend ncia funcional As chaves prim rias tamb m s o identificadas durante este Cap tulo 2 Qualidade de Dados 31 passo A an lise de estrutura tamb m permite criar um perfil de redund ncias atrav s da compara o dos valores entre tabelas da mesma ou de fontes diferentes Da compara o resulta a identifica o dos atributos que cont m a mesma informa o mas nomes diferentes 7 e sin nimos e atributos que apesar de terem o mesmo nome cont m dados com significados diferentes 7 e hom nimos A an lise de estrutura tamb m auxilia a identificar quais os atributos redundantes e que podem ser eliminados bem como os que s o necess rios para conectar os dados entre as tabelas e as chaves estrangeiras necess rias manuten o da integridade referencial O An lise das restri es de integridade regras de neg cio Uma restri o de integridade especifica uma condi o que tem de ser verdadeira envolvendo um ou mais atributos de uma ou mais tabelas e g os funcion rios tem de ter pelo menos 16 anos de idade Estas regras s o recolhidas a partir do perito do dom nio convertidas para uma l gica execut vel e testadas nos dados Uma restri o de integridade pode envolver verifica es de dom nio valida es usando tabelas de pesquisa ou f rmulas espec ficas
453. obedecer para que os valores dos atributos nos tuplos sejam correctamente actualizados A formaliza o anterior alvo das altera es que a seguir se apresentam de modo a reflectir a correc o da viola o de restri o de integridade com base em FDU O que permanece inalterado relativamente formaliza o anterior encontra se representado sob a forma de retic ncias Algoritmo Correc o Viola o Restri o Integridade Baseada em FDU in cio fim se v fdu p Pio Pia v fdu gt PoovP gt Pa fdu E Perr Er g lt 9 te ke tuplo T repetir enquanto t null g g t1 se vgl 1 tc ou vg t c ou ou vdgl A tc ent o UW Og a A Ananta R R R u uc vda u c vg 2 u c vg A R RU ua UAU A Ulmin fim se te de tuplo T fim repetir fim Nota Os valores dos atributos de C podem constituir par metros de uma ou mais fun es fdu 196 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 6 6 Problemas ao N vel de M ltiplas Rela es Fontes de Dados Nesta sec o apresentam se as formaliza es das OC dos PQD que ocorrem ao n vel multi rela o independentemente destas pertencerem a uma s ou a m ltiplas BD 6 6 1 Heterogeneidade de sintaxes Formaliza o Sint ctica CORRECT HETEROGENEITY OF SYNTAXES ColunasAlvo DasTabelas DasBasesDados DefinicaoAtribuicdes UsandoCondi o Formaliza o Sem ntica A
454. odas as necessidades poss veis e imagin veis de correc o e apresentar a respectiva formaliza o Mesmo que o fosse isso tamb m n o seria exequ vel Como tal por vezes ser necess rio proceder ao desenvolvimento de fun es externas que executem as correc es pretendidas As restri es de integridade constituem um bom exemplo face sua diversidade e depend ncia do dom nio subjacente Nestes casos a solu o passa por recorrer a uma fun o externa definida pelo utilizador na qual se encontra implementada a l gica que conduz correc o do PQD em causa Mesmo assim nas OC de viola o de restri o de integridade que ocorrem em cada n vel de granularidade da taxionomia e atributo tuplo 210 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica rela o e multi rela o de uma ou diferentes BD foi poss vel identificar um tronco comum tendo este sido devidamente formalizado A especificidade de cada OC fica para a FDU Por outro lado nem sempre ser vi vel a realiza o de correc es autom ticas e ser necess ria interven o humana para caso a caso solucionar os problemas detectados Num determinado PQD a necessidade de interven o manual poder ser parcial 7 e apenas alguns casos entre os que foram detectados sendo os restantes solucionados por via autom tica ou total 7 e todos os casos detectados resolu o de uma circularida
455. odos os PQD do n vel actual estiverem solucionados 2 e quando as OD n o detectarem a exist ncia de problemas Ainda que a execu o das OD decorra de acordo com a sequ ncia preconizada podem ser necess rias m ltiplas itera es que obrigam a que esta se reinicie novamente Este rein cio ocorre no n vel mais elementar associado as opera es especificadas pelo utilizador normalmente o NG do atributo Para que este aconte a suficiente que da execu o de uma determinada OD respeitante a um qualquer NG resulte a identifica o de um PQD Ap s a realiza o das correc es aos PQD detectados a abordagem descrita na sec o anterior por NG envolve executar novamente as OD respectivas para confirmar se os problemas foram efectivamente solucionados No entanto ainda que n o seja muito comum a cotrec o de um PQD pode introduzir outro cuja detec o j tenha sido dada como conclu da Na realidade a correc o de um problema num NG pode introduzir involuntariamente outro PQD noutro n vel que o precede Com o intuito de ilustrar a possibilidade que acabou de ser referida considere se o exemplo seguinte Suponha se que o utilizador especificou a execu o de duas OD referentes a NG diferentes erro ortogr fico n vel do atributo e viola o de depend ncia funcional n vel da rela o Ambas as opera es possuem um atributo em comum e g localidade Face sequ ncia preconizada de execu o das OD po
456. omes das tabelas nomes dos atributos das diferentes BD sobre as quais se executaram opera es de DC Como j se referiu futuramente pretende se explorar esta informa o de modo a estabelecerem se automaticamente mapeamentos entre os n veis ontol gico e do esquema de dados H tr s classes que conectam estes dois n veis do modelo de dados surgindo no diagrama na fronteira dos respectivos quadrantes O quadrante inferior direito inclui as classes necess rias manipula o das opera es de LD efectivamente executadas nas BD objecto de melhoria da QD Estas opera es encontram se representadas ao n vel do esquema de cada BD 9 6 Conclus o Neste cap tulo apresentou se uma extens o ao modelo de LD proposto no Cap tulo 7 baseada numa abordagem que suporta a interoperabilidade das opera es de LD entre BD diferentes Esta interoperabilidade alcan ada custa da especifica o conceptual das opera es de LD ao n vel da ontologia do dom nio Estas opera es tornam se independentes de um qualquer esquema de BD As opera es s o especificadas com base nas linguagens declarativas definidas para a DC dos PQD mas sendo substitu dos os elementos relativos ao esquema dos dados e BD tabelas e atributos pelos elementos referentes ontologia e dom nio conceitos e propriedades Cada opera o de limpeza possui uma granularidade de especifica o indo esta do gen rico ao espec fico A granularidade de esp
457. on 5 0 Dispon vel em http helpit com assets brochure_pdfs matchitsuite pdf no dia 07 04 2007 s 23 10 Hernandez M A e Stolfo S J 1995 The Merge Purge Problem for Large Databases In Proceedings of the ACM SIGMOD International Conference on Management of Data San Jose California EUA May 1995 pp 127 138 Hernandez M A e Stolfo S J 1998 Real World Data is Dirty Data Cleansing and The Merge Purge Problem Data Mining and Knowledge Discovery 2 1998 pp 9 37 Hipp J Guntzer U e Grimmer U 2001 Data Quality Mining Making a Virtue of Necessity In Proceedings of the 6th ACM SIGMOD Workshop on Research Issues in Data Mining and Knowledge Discovery California EUA 2001 pp 52 57 Huang K Lee Y e Wang R Y 1999 Quality Information and Knowledge Prentice Hall Inc 8 8 by iB 1999 Refer ncias Bibliogr ficas 373 Human Inference 20074 The Power of Knowledge Dispon vel em http www humaninference com filebank originals original_1394 pdf no dia 02 04 2007 s 22 30 Human Inference 2007b HIQuality Inspect Data Quality Profiling Dispon vel em http www humaninference com filebank originals original_1275 pdf no dia 02 04 2007 as 22 50 Human Inference 2007c HIquality Transform Data Filtering and Transformation Disponivel em http www humaninference com filebank originals original_864 pdf no dia 02 04 2007 s 23 50 Human Inference
458. onimos i atr not like Yovec _ sin onimos i A A atr not like vec _ sin onimos i Yo A atr not like Yovec _ sin onimos i Z1 u lt k_tuplo V repetir enquanto u null repetir para i 1 at w WG aan eae Si S S V ve de tupl V repetir enquanto v null voa La VC tam G S I 0 6 0 6 0 6 415 50 6 45 ve de tuplo V fim repetir fim repetir RR Ea u Am R u de tuplo U fim repetir fim se fim repetir fim Nota O significado dos atributos idcluster e sin encontra se definido na formaliza o anterior correc o da exist ncia de sin nimos Cap tulo 6 Formaliza o das Opera es de Correc o 181 6 3 2 2 Viola o de unicidade Formaliza o Sint ctica REMOVE UNIQUENESS VIOLATION ColunasAlvo DasTabelas DasBasesDados UsandoCondi o Formaliza o Sem ntica A rela o resultante da respectiva OD z e Z1 permite agrupar os tuplos em fun o dos valores das viola es de unicidade que ocorrem no atributo A opera o aqui proposta efectua esse agrupamento e em cada conjunto de tuplos resultante excep o de um elimina todos os outros Esta elimina o pressup e que os tuplos onde se verifica a viola o de unicidade constituem duplicados entre si A exist ncia de viola es de unicidade que no fundo traduzem a exist ncia de tuplos redundantes comum em tabelas auxiliares e g tabela de pa ses Este tipo de tabelas composto por ape
459. ontextos entre os quais se destacam a descoberta de conhecimento em BD os armaz ns de dados e a integra o de dados O termo LD muitas vezes interpretado com o sentido de detec o e elimina o de duplicados Se no passado esta interpreta o at era v lida actualmente possui um significado mais vasto abrangendo os diversos PQ que afectam os dados Ainda assim a detec o e elimina o de duplicados bem como tudo aquilo que com esta se relaciona e g m tricas de avalia o da semelhan a tem centrado a maioria dos esfor os de investiga o na rea da LD Esta realidade Cap tulo 3 Limpeza de Dados 75 reflecte se nesta disserta o como se pode comprovar pela dimens o da sec o dedicada ao tema Neste cap tulo foi descrito o actual estado da arte das ferramentas inform ticas que suportam a realiza o de opera es de LD Para o efeito foram seleccionadas ferramentas representativas origin rias de duas comunidades distintas acad mica e empresarial As descri es foram efectuadas com um certo grau de detalhe para evidenciar as suas potencialidades de LD Os prot tipos de investiga o propostos pela comunidade acad mica ainda que possuam potencialidades de LD na sua ess ncia encontram se direccionados para a transforma o de dados Estes prot tipos transformam dados que se encontram sob um determinado esquema X para um outro esquema Y em fun o de um grafo de transforma es esp
460. opera es de LD O objectivo deste reposit rio de funcionar como um hist rico onde ficam registadas todas as opera es efectuadas O utilizador pode aceder a este reposit rio e entre os diversos conjuntos de opera es armazenados ao longo do tempo seleccionar um destes para execu o integral e todas as opera es ou apenas parcial 7 escolhendo apenas algumas opera es para execu o O utilizador tamb m pode definir as opera es a executar seleccionando as a partir de diferentes conjuntos de opera es armazenados ao longo do tempo H um requisito a que todas as rela es envolvidas em opera es de LD t m de obedecer ter uma chave prim ria definida Esta chave prim ria utilizada na detec o para assinalar os tuplos que se encontram afectados por PQD A mesma chave prim ria utilizada na correc o para solucionar os PQD nos tuplos anteriormente identificados Assim se n o existir uma chave prim ria numa tabela acrescentado um atributo identificador num rico que cumpre essa finalidade Esta tarefa n o foi representada no diagrama da arquitectura para n o o sobrecarregar em demasia Al m dos fluxos de dados no diagrama da arquitectura apresentado na Figura 77 1 encontram se representados dois fluxos de controlo a tracejado Um dos fluxos tem in cio no m dulo motor de execu o das OC e fim no m dulo motor de execu o incremental das OD Este fluxo representa o desencadear autom t
461. optar por excluir um ou mais atributos da detec o Por outro lado o utilizador tamb m pode estabelecer por atributo que os seus valores t m de ser exactamente iguais para que os registos sejam classificados como duplicados A ferramenta tamb m permite ao utilizador definir v rias condi es ligadas pelos operadores And e Or estipulando ele pr prio as situa es em que h duplicidade Entre dois registos diferentes conclui se que h semelhan a nos valores de um atributo quando Q H diferen a de apenas um caracter entre os valores do atributo seja este num rico ou textual Esta diferen a corresponde a tr s situa es distintas 7 um caracter do valor do atributo num registo substitu do por outro caracter no valor do atributo noutro registo e g Susana e Suzana i um caracter do valor do atributo num registo encontra se ausente no valor do atributo noutro registo eg David e Davide dois caracteres adjacentes do valor do atributo num registo encontram se pela ordem inversa no valor do atributo noutro registo e g Paulo e Pualo Q Sao usados sin nimos nos valores do atributo eg num registo o valor do atributo profiss o docente enquanto que noutro registo o valor do mesmo atributo docente A ferramenta WizSame cont m um dicion rio de sin nimos ao qual o utilizador pode adicionar os termos sin nimos que quizer para al m daqueles que j existem de ra z Q H transposi es nos valores do a
462. oram corrigidos directamente pelo utilizador no caso o autor da disserta o caso a caso Cap tulo 8 Estudo de Caso de Limpeza de Dados 271 apresenta se o diagrama entidade rela o referente BDD No diagrama constam tamb m os atributos que caracterizam cada entidade Brigadas CodigoBrigada DesignacaoBrigada Codigo EstadoCivil CodEstadoCivil DesEstadoCivil Profissoes CodProfissao DesProfissao CodigosPostais CodPostal LocPostal Conclusoes CodigoConclusao DesignacaoConclusao Nn Q ba o DN 0 mK CodHospital DesHospital Data Dador Local Dadiva Tipo de Dadiva Sexo DtNasc EstCivil Profissao CodPostal ZIN LocPostal TotDadivas Data TotDadivasIPS Externa Horalnscricao Dador HoraTriagem AnoColh Peso NumColh Altura CompColh TensaoMax TipColh TensaoMin Abo Hemoglobina Rh Abo Inut Rh Hospital Trd Devolucao1 Colh Devolucao2 Lab Devolucao3 VY NV Inutilizacoes Hospitais CodHospital DesHospital Figura 8 1 Diagrama entidade rela o da BDD AnoColh CodigoDadiva NumColh S DesignacaoDadiva Analises Data Dador AnoColh NumColh ALT ALTN AgHBs AgHBsN Anti HCV Anti HCVN Anti HBc Anti HBcN Anti HIV1 2 Anti HIV1 2N Anti HTLV1 2 Anti HTLV1 2N VDRL VDRLN WBC WBCN RBC RBCN HGB HGBN HCT HCTN MCV MCVN MCH MCHN MCHC MCHCN PLT PLIN NEU NEU N Na sequ ncia da apresenta o do diagrama
463. organizados por atributo Cada atributo surge como linha de uma tabela contendo as colunas os resultados das diversas an lises efectuadas Entre outras informa es nesta tabela poss vel encontrar informa o sobre os atributos que est o definidos como constituintes da chave prim ria a unicidade dos valores que se encontram nos atributos a percentagem de valores que se encontram preenchidos em cada atributo o intervalo de valores existente nos atributos num ricos o que permite identificar valores que violam o dom nio e os diferentes padr es sint cticos que existem nos valores Os resultados apresentados na tabela s o extremamente teis para a identifica o dos problemas de qualidade dos dados Em qualquer 354 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica atributo poss vel efectuar uma an lise de frequ ncia dos seus valores em valor absoluto e percentual A ferramenta permite visualizar os registos em que estes valores se encontram opera o de drill down Uma potencialidade interessante da ferramenta consiste na identifica o dos padr es formatos que existem nos valores dos atributos A exist ncia de padr es estranhos nos valores representa problemas de qualidade dos dados Os registos onde um determinado padr o ocorre tamb m podem ser visualizados Os registos afectados por problemas de qualidade podem ser exportados para um ficheiro de texto ou para um ficheiro
464. ormente existentes a taxionomia proposta encontra se alicer ada numa abordagem s lida que conduziu identifica o dos diferentes problemas Cap tulo 1 Introdu o 9 que afectam os dados evidenciando ser mais gen rica e abrangente nos PQD inclu dos Esta taxionomia foi inicialmente apresentada em Oliveira e al 2004 tendo sofrido posteriores desenvolvimentos que foram apresentados em Oliveira et al 2005a e Oliveira et al 2006d A taxionomia permitiu analisar a cobertura das ferramentas existentes orientadas para a DC dos PQD o que conduziu identifica o de algumas lacunas exploradas neste trabalho de doutoramento Entre outras a taxionomia proposta serviu pata analisar a cobertura de algumas ferramentas de data profiling Os resultados desta an lise foram apresentados em Oliveira e a 20064 Um outro aspecto que tamb m a diferencia em rela o s taxionomias anteriormente existentes prende se com o fornecimento de defini es formais para cada PQD gt gt eliminando poss veis subjectividades t picas das defini es textuais As defini es formais fruto do seu rigor possuem mais elementos informativos do que as textuais evidenciando o que necess rio para seja poss vel automatizar a detec o de cada problema A formaliza o dos PQD que comp e a taxionomia foi inicialmente apresentada em Oliveira ef al 2005 Q Modelo para a DC dos PQD Nesta disserta o concebe se e
465. os atributos do tipo string nos seus v rios componentes at micos preparando os para os passos seguintes e g separa o da morada em nome da rua e numero de pol cia 17 uniformiza o que consiste em colocar os valores de acordo com um standard comum 777 valida o que consiste em identificar valores inv lidos e g por compara o com outros valores com base em restri es de integridade a que os valores t m de obedecer 77 detec o de duplicados que consiste em identificar registos que representam a mesma entidade ou objecto do mundo real e 1 consolida o de duplicados que consiste em agrupar os conjuntos de duplicados identificados num s registo O utilizador n o tem possibilidade de efectuar qualquer tipo de altera o a esta sequ ncia semelhan a do que acontece com os prot tipos de investiga o a realiza o de LD efectuada num contexto que implica TD A TD est presente desde logo no primeiro passo da sequ ncia i e atomiza o Os dados s o colocados de acordo com um esquema de representa o predefinido S ap s a realiza o deste passo que os demais passos da sequ ncia podem ser executados A TD resultante da atomiza o s n o efectuada caso os dados j estejam de acordo com o esquema predefinido o que normalmente n o acontece Ap s a realiza o da sequ ncia de passos que conduzem melhoria da qualidade os dados ficam representados segundo esse novo esquema Norma
466. os a dois supostos problemas mencionados nalguma literatura da rea O A exist ncia de valores consideravelmente diferentes dos restantes e que n o se enquadram no padr o normal designados de desvios classificada como sendo um PQD No mbito desta disserta o PQD tudo aquilo que de facto constitui um erro anomalia redund ncia ou inconsist ncia Um desvio n o corresponde necessariamente a uma destas situa es Um desvio representa um potencial PQD mas que na pr tica pode n o o ser Assim se um valor n o viola o dom nio do atributo mesmo que substancialmente diferente dos restantes considera se que este n o constitui um PQD Um desvio pode ser classificado como sendo uma viola o de restri o de integridade caso esta possa ser enunciada e g o peso de um individuo n o pode exceder em mais de 200 a m dia dos pesos de todos os indiv duos Em conson ncia com a decis o de n o considerar os desvios como PQD e assim de n o os incluir na taxionomia proposta est o as outras tr s taxionomias relacionadas publicadas em Rahm e Do 2000 Kim ef al 2003 e Muller e Freytag 2003 onde estes tamb m n o surgem como PQD 90 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Q A exist ncia de diferen as aleat rias nos valores de um atributo entre dois tuplos diferentes mas respeitantes mesma entidade do mundo real designada de ru do Entre o
467. os cinco primeiros atributos constitui a chave prim ria desta rela o Al m destes h ainda outros tr s 262 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica atributos O atributo ChavePrim riaTuplo cont m a chave prim ria do tuplo cujos valores foram objecto de altera es Este atributo do tipo textual pelo que no caso da chave prim ria ser formada por mais do que um atributo os valores respectivos s o armazenados neste atributo devidamente separados pelos caracteres No caso de todos os tuplos da rela o terem sido alterados neste atributo usa se mnem nica A P para o representar Assim dispensa se que o armazenamento dessa informa o seja efectuado para cada tuplo O atributo NrOpera oDetec o armazena informa o sobre o n mero da OD subjacente presente correc o aos valores do tuplo Tal como na rela o anterior esta informa o utilizada na reposi o do estado anterior realiza o das correc es efectuadas Por ltimo o atributo T7poOperacdo armazena o tipo de opera o efectuada no tuplo 7 e correc o dos valores ou remo o elimina o do pr prio tuplo e g resultante de uma opera o de remo o de sin nimos 7 6 Diagrama de Sequ ncia Tendo sido descrita a arquitectura e expostos detalhadamente os principais m dulos que a comp em a descri o do modelo proposto de LD finda com a apresenta o do diagrama
468. os duplicados Considera se que um tuplo duplicado de outro quando simultaneamente os valores dos atributos relativos data dador e componente colhido atributo CompColh s o iguais A execu o da OD n o detectou a exist ncia de qualquer PQD deste tipo Opera es de Correc o Na correc o destas viola es de depend ncia funcional executou se a opera o que a seguir se apresenta CORRECT FUNCTIONAL DEPENDENCY VIOLATION ON Abo FROM Colheitas OF BDD DEPENDENT ON Dador 304 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica De acordo com a sem ntica apresentada no Cap tulo 6 para este tipo de OC a resolu o das viola es de depend ncia funcional baseia se na aplica o do princ pio da maioria Na correc o das viola es de depend ncia funcional no atributo Abo o valor do grupo sangu neo dos dadores 60370 e 77660 passa a ser O em todos os tuplos que a estes se referem Na correc o das viola es de depend ncia funcional no atributo Rh executou se uma opera o id ntica efectuada no atributo Abo 8 5 3 Tabela Dadores Opera es de Detec o Ao n vel do PQD viola o de depend ncia funcional efectuaram se cinco OD nesta tabela 2 a um determinado dador tem de corresponder sempre o mesmo sexo 77 a um determinado dador tem de corresponder sempre a mesma data de nascimento 717 a um determinado dador tem de corresponder sempre a mesma altura
469. os nesta actividade de LD n o merecendo tal destaque A pr pria defini o de LD adoptada e DC dos PQ que afectam os valores dos dados justifica a op o tomada Afinal de contas os duplicados s o apenas mais um PQD que deve ser adequadamente manipulado pela LD No mercado h in meras ferramentas comerciais que efectuam LD Entre estas encontram se as seguintes WinPure Clean and Match WinPure 2007 ETI Data Cleanser ETI 2007a dfPower Quality Data Flux 2007a TS Quality Trillium Software 2007a e HIQuality Human Inference 2007a Estas ferramentas s o apresentadas no cap tulo seguinte Sec o 3 5 2 Al m destas foram tamb m analisadas as seguintes ferramentas de LD WizSame WizSoft 2007c matchIT helpIT 2007 e Centrus Merge Purge Group 1 Software 2007 Por n o terem sido consideradas t o representativas e relevantes quanto as anteriores foram remetidas para o Ap ndice A respectivamente Sec o A 4 Sec o A 5 Sec o A 6 e Sec o A 7 A comunidade acad mica tamb m contribuiu para a LD com alguns prot tipos Entre estes poss vel encontrar os seguintes Ajax Galhardas et al 2001 Arktos II Vassiliadis e a 2003 IntelliClean Low et al 2001 Potter s Wheel Raman e Hellerstein 2001 e FraQL Sattler e Schallehn 2001 Estes prot tipos de investiga o s o apresentados no cap tulo seguinte Sec o 3 5 1 Cap tulo 2 Qualidade de Dados 35 2 7 5 Enriq
470. os problemas mono fonte e multi fonte a taxionomia de Rham e Do 2000 efectua uma divis o entre os PQD que se relacionam com o esquema dos dados e os que se relacionam com os valores Na taxionomia proposta nesta disserta o n o feita esta separa o uma vez que est direccionada unicamente para os PQD que ocorrem ao n vel dos valores dos dados A abordagem usada na elabora o da taxionomia proposta foi exaustiva e sistem tica Ainda assim n o poss vel provar formalmente que a taxionomia completa e que cobre garantidamente todos os problemas que afectam os dados No entanto a compara o com trabalho relacionado evidencia que todos os problemas apresentados nas taxionomias anteriores possuem equivalente na taxionomia proposta Por outro lado a taxionomia proposta apresenta novos PQD que n o possuem correspond ncia em nenhuma dessas taxionomias Estas duas constata es permitem concluir que se trata de uma taxionomia mais completa do que as anteriormente existentes Isto contribui para aumentar a convic o de que n o est a faltar nenhum PQD e que a taxionomia proposta cobre todos os problemas suscept veis de afectar os dados Cap tulo 4 Problemas de Qualidade dos Dados 93 4 4 Defini o Formal dos Problemas de Qualidade dos Dados semelhan a do efectuado na Sec o 4 2 os PQD apresentados nas tr s taxionomias relacionadas Rahm e Do 2000 Kim e al 2003 Muller e Freytag 2003
471. os s o suscept veis de vir a ser objecto de altera es No entanto a execu o de algumas OD e g viola o de restri o de integridade pode n o produzir informa o espec fica dos tuplos que se encontram afectados com o PQD Quando isto acontece a rela o que armazena os PQD Cap tulo 7 Modelo Proposto para a Limpeza de Dados 259 detectados n o cont m informa o sobre a chave prim ria dos tuplos respectivos Isto significa que o problema existe mas n o se sabe exactamente qual o tuplo ou tuplos respons veis e g O somat rio de uma coluna que armazena valores percentuais n o igual a 100 Nestas situa es na rela o auxiliar armazena se informa o relativa a todos os tuplos da rela o S assim se consegue identificar os valores alterados pelas OC e anular os seus efeitos caso necess rio Ao procura se que a rela o auxiliar contenha apenas os atributos e tuplos indispens veis ao controlo das altera es h duas preocupa es de minimiza o impl citas 7 o espa o em disco necess rio 77 o tempo necess rio sua cria o Note se que n o s no contexto das correc es efectuadas por meios autom ticos que se justifica a exist ncia das rela es auxiliares mas tamb m no contexto das correc es efectuadas manualmente pelo utilizador Neste caso assume uma import ncia ainda maior visto ser o nico meio de identifica o das correc es efectuadas Al m das rela
472. os sobre as caracter sticas dos dados em quest o e em particular dos potenciais PQD que os podem afectar e das ac es correctivas a efectuar para os solucionar 7 Um prot tipo constitui um sistema inform tico de car cter experimental Cap tulo 1 Introdu o 5 verdadeiramente vocacionados para a Transforma o de Dados TD certo que na literatura estes dois termos s o muitas vezes usados de forma indiferenciada ou mesmo em conjunto Ainda que relacionados em rigor o seu significado n o o mesmo Sendo o significado de LD o apresentado ze DC dos PQD a TD visa colocar os dados segundo um outro esquema de representa o consent neo com a finalidade pretendida A transforma o faz com que os dados que se encontram segundo o esquema X fiquem de acordo com o esquema Y Normalmente a TD tem como objectivo permitir que se explore melhor os dados existentes e g permitindo a realiza o de novas an lises de dados Nesta perspectiva a realiza o da transforma o tamb m uma actividade que conduz melhoria da QD Naturalmente pode aproveitar se o momento em que os dados s o transformados para detectar e corrigir os problemas existentes nos pr prios valores 7 e efectuar LD No entanto a TD pode n o incluir opera es de limpeza i e apenas efectua a migra o dos valores de um esquema para outro Neste caso considera se que n o existem PQD que mere am ser identificados e solucionados No entant
473. ou a rela o de homogeneiza o tamb m utilizada na actualiza o dos valores do atributo da rela o seleccionada com os valores que se encontram no atributo da outra rela o Cap tulo 6 Formaliza o das Opera es de Correc o 199 Algoritmo Correc o Heterogeneidade Unidades Medida seja nrseq o atributo de Z1 e Z2 que permite associar cada heterogeneidade de unidades de medida detectada entre os valores de atr e ath seja ZlIniohcerog Z2ndoheterog aS rela es que armazenam as chaves prim rias dos tuplos respectivamente de Re onde n o se verifica a heterogeneidade de unidades de medida entre atr e atn bem como os respectivos valores destes atributos in cio T lt ME a gooey py atr sD gooey By atra Cond z1 PAU 2 1 nrseq Z 2 nrseq z2 t de tuplo T repetir enquanto t null se flag_actualiza_valores_rela o_R verdadeiro ent o actualiza tuplo rela o R t sen o actualiza tuplo rela o S t fim se te e_tuplo T fim repetir se Z1nioheterog ent o Ver Z1 P gt lt Z2i Ay y Am sat b 56 atra ndoheterog Z Indoheterog MSEG Z2n o feterog sea ndoheterog ue de tuplo U repetir enquanto u null se flag actualiza valores rela o R verdadeiro ent o actualiza tuplo rela o R u sen o actualiza tuplo rela o S u fim se ue de tuplo U fim repetir fim se fim Procedimento actualiza tuplo rela o R x E in cio ve O m x aA Aam
474. p et al 2001 por vezes tamb m s o usados como sin nimos de AD Esta ltima designa o tem origem no facto da AD poder ser vista como uma variante da minera o de dados A AD envolve duas tarefas infer ncia de estrutura e detec o de anormalidades Luebbers e al 2003 32 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Na infer ncia de estrutura s o usados m todos estat sticos e g regress o linear e algoritmos de minera o de dados e g rvores de decis o redes neuronais indu o de regras Luebbers ef al 2003 Por estrutura entende se qualquer forma de regularidade ie padr o regra ou relacionamento que possa ser encontrado e g um conjunto de regras ou rvores de decis o que criem uma decomposi o estat stica v lida em subclasses Para que se possa inferir uma estrutura no entanto necess rio que a QD seja a suficiente Por outro lado a infer ncia da estrutura tamb m depende da adequa o dos algoritmos de minera o de dados ao dom nio em quest o Na detec o de anormalidades s o identificadas todas aquelas situa es que s o excepcionais e g valores inconsistentes valores em falta Tudo aquilo que n o se enquadra no padr o normal assinalado como potencial PQD e com base naquele proposta uma prov vel correc o e g valor que elimina uma inconsist ncia previs o de um valor em falta Luebbers ef al 2003 Nem
475. par de registos corresponde ou n o mesma entidade do mundo real A fase de pesquisa procura efectuar o menor n mero de compara es poss veis mas procurando garantir a identifica o de todos os duplicados existentes Por exemplo uma parte dos m todos de detec o existentes efectua compara es apenas entre registos vizinhos ap s estes terem sofrido uma ordena o Mesmo assim a n vel do tempo de execu o a detec o de duplicados constitui uma opera o computacional dispendiosa A fase de decis o procura concluir se dois registos correspondem ou n o mesma entidade tendo em conta as semelhan as e diferen as existentes entre os valores dos seus atributos O m todo tradicional de detectar registos duplicados exactos numa tabela passa por efectuar a sua ordena o e de seguida verificar se registos consecutivos s o iguais Monge 2000 Os registos duplicados garantidamente ficam pr ximos uns dos outros independentemente do atributo usado na ordena o Na literatura poss vel encontrar diversas propostas de m todos de detec o mais sofisticados que suportam n o s duplicados exactos mas tamb m duplicados aproximados Um outro aspecto comum a todos estes m todos prende se com a exist ncia de optimiza es que visam reduzir o n mero Cartesiano de compara es necess rio detec o dos Cap tulo 3 Limpeza de Dados 43 duplicados Nas subsec es seguintes apresentam se os m todos de detec
476. para os mesmos atributos da tabela Colheitas A execu o das OD de viola o de dom nio nos atributos TotDadivas e TotDadivasInst em ambos os atributos o total de d divas tem de ser igual ou superior a zero n o redundou na detec o de qualquer PQD A execu o da OD de viola o de dom nio no atributo Abe culminou na identifica o da exist ncia do valor 47 em dois tuplos cujos valores das chaves prim rias atributo ID respectivamente s o 31369 e 39177 Na Tabela 8 16 apresentam se algumas das 101 viola es de dom nio identificadas no atributo CodPostal como consequ ncia dos respectivos valores n o pertencerem ao dom nio Tabela 8 16 Resultados da OD de viola o de dom nio no atributo CodPostal CodPostal Na Tabela 8 17 apresentam se algumas das 312 viola es de dom nio detectadas no atributo Peso o peso n o pode ser inferior a 50 kg um peso igual ou superior a 50 kg uma das condi es para se ser dador nem superior a 250 kg Na Tabela 8 18 apresentam se algumas das 59 viola es de dom nio detectadas no atributo Altura a altura n o pode ser inferior a 1 3 nem superior a 2 5 286 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 8 17 Resultados da OD de viola o de dom nio no atributo Peso Tabela 8 18 Resultados da OD de viola o de dom nio no atributo Altura
477. pecifica o de qualquer OC autom tica dos PQD que fazem parte da taxionomia exposta no Cap tulo 4 e cujo modelo de limpeza de dados a apresentar no cap tulo seguinte concede o necess rio suporte A n vel sem ntico formalizou se as opera es consideradas teis e importantes na correc o dos problemas e que s o suscept veis de serem disponibilizadas de base numa implementa o computacional do referido modelo Estas opera es cobrem a generalidade dos problemas que Cap tulo 6 Formaliza o das Opera es de Correc o 209 fazem parte da taxionomia Nalguns problemas e g erro ortogr fico exist ncia de sin nimos foram at formalizadas duas OC distintas Comparativamente taxionomia apenas em quatro problemas n o s o apresentadas as respectivas formaliza es que suportam a sua correc o autom tica Os PQD em causa s o 7 circularidade entre tuplos num auto relacionamento 77 exist ncia de hom nimos 717 diferentes granularidades de representa o e w viola o de integridade referencial Nestes problemas n o foi poss vel perspectivar qualquer OC racional que possa ser fornecida partida e cuja l gica subjacente mere a ser formalizada Na realidade a sua correc o parece condenada a uma interven o manual por parte do utilizador Se n o for o caso sempre poss vel especificar se a correc o atrav s de uma opera o baseada em SQL na clausula Set da OC ou especificar se uma op
478. perceber se do seu real valor Os dados passaram a ser vistos como um recurso importante que possibilita o aumento da produtividade efici ncia e competitividade da organiza o Oliveira ef al 2004 Na vis o anterior os dados n o eram mais do que um mero hist rico de actividades Como consequ ncia da nova vis o a explora o dos dados passou a assumir um papel cada vez mais importante Por exemplo a consolida o de dados a partir de fontes de dados dispersas num armaz m de dados permite s organiza es executarem opera es de an lise multi dimensional de dados e assim obterem informa es que s o de import ncia estrat gica e t ctica para as suas actividades Ballou e Tayi 1999 Inmon et al 1998 Al m das ferramentas de an lise multi dimensional existem outras que procuram tirar partido dos dados existentes como as que efectuam minera o de dados em ingl s data mining e gest o do relacionamento com o cliente em ingl s customer relationship management Todas estas ferramentas requerem um elevado grau de QD uma vez que estes influenciam a qualidade dos resultados produzidos Se os dados forem de m qualidade isso reflecte se nos resultados produzidos principio lixo entra lixo sat Sattler e Schallehn 2001 Os resultados s o usados como suporte para a tomada de decis o logo se forem de m qualidade isso influencia de forma negativa as decis es tomadas Um elevado n mero de organiza es j
479. plo U posi o mediana lt int u count atr 2 0 5 repetir para i lt 1 at posi o mediana ve le_tuplo V fim repetir se u count atr 2 posi o mediana ent o novo valor v atr sen o primeiro valor v atr ve le_tuplo V segundo valor v atr novo valor primeiro valor segundo valor 2 fim se us kE sen o se t cnica correc o valor probabil stico ent o se pqd valor em falta ent o UR Y count atr R Ue atr Ycount atr v count atr Taciak R sen o Cap tulo 6 Formaliza o das Opera es de Correc o 171 ve Y count atr x gt lt 7a EON E R Ta psam 21 VE at count atr v count atr RE Pausa 8 Zea 20 fim se sen o v atrib V atrib novo valor lt atrib fim se t de tuplo T repetir enquanto t null se t cnica_correc o valor probabil stico ent o nr_aleatorio gera nr aleatorio soma probabilidades 0 repetir enquanto soma probabilidades lt nr aleat rio u lt ke tuplo U soma probabilidades soma probabilidades u count atr v count atr fim repetir novo valor u atr reinicializa leitura tuplos U fim se se novo valor null ent o R R t tatr novo valor R RU ta sb OnsteAmtiy st dntn fim se t lt de tuplo T fim repetir fim Nota Nas express es em lgebra relacional assinaladas com um asterisco a ordena o efectuada sob a fo
480. plo das duas rela es 7 e Re e os valores dos atributos envolvidos na detec o de duplicados definidos pelo utilizador referentes a cada tuplo podem ser passados como par metros de acordo com os requisitos de cada FDU que consta da sequ ncia de atribui es especificadas na OD Al m destes as fun es tamb m podem receber outros par metros como vari veis e constantes Caso a detec o de duplicados seja efectuada com base em FDU a formaliza o anterior sofre as seguintes altera es acrescentos O que permanece inalterado representado sob a forma de retic ncias Algoritmo Detec o Tuplos Duplicados Baseada em FDU amp seja A d dmsOm iy 54Im n O conjunto de atributos de R seja C o conjunto de atributos de R envolvidos na detec o de duplicados assim definido C c c usado na detec o dos tuplos duplicados entre Re SA c A ie CCA seja o a cardinalidade de C seja B 6y 6 6 41 56 4 O conjunto de atributos de S seja Do conjunto de atributos de S envolvidos na detec o de duplicados assim definido D td d usado na detec o dos tuplos duplicados entre Re SA de Bh ie DCB seja k a cardinalidade de D in cio Das 1Co 0b dd gerry k Cond RXS idcluster 1 156 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica t de tuplo T repetir enquanto t null v lt fdu p PiP v lt fdu PoovPo v f
481. por A e B No caso de se tratar de uma s Cap tulo 3 Limpeza de Dados 49 tabela A e B representam a mesma tabela O objectivo classificar os pares resultantes do produto Cartesiano A xX Be coloc los em D que representa simbolicamente o conjunto de verdadeiros duplicados ou em N que simboliza o conjunto dos verdadeiros n o duplicados Dando rigor aos conceitos introduzidos em Newcombe ef al 1959 foram introduzidos r cios de probabilidade do tipo _ P y eT D R ETIN Na express o y representa um padr o arbitr rio de concord ncia no espa o de compara o T Por exemplo I pode consistir de padr es representando concord ncias simples no maior componente do nome e no maior componente da morada Cada y El pode conter a frequ ncia relativa com que determinados componentes do nome e g Jos Silva ZZZ ocorrem O r cio R representa o grau de equival ncia ou correspond ncia entre os pares O resultado da compara o dado pelas seguintes regras O Se R gt L ent o classificar os pares como duplicados a Se lt R lt L ent o classificar os pares como poss veis duplicados ficando a aguardar a an lise do utilizador Q Se R lt L ent o classificar os pares como n o duplicados Os limiares e L s o determinados pelas fronteiras de erro conhecidas a priori na identifica o de falsos duplicados e falsos n o duplicados Frequentemente os limiares s o designados de graus de admi
482. pos essa responsabilidade fica a cargo do utilizador No entanto no InteliClean o tipo de opera es de LD suportado encontra se muito orientado para a detec o e elimina o de duplicados 3 5 2 Ferramentas Comerciais H diversas ferramentas comerciais de LD dispon veis no mercado semelhan a do que acontece com os prot tipos de investiga o h ferramentas comerciais que est o vocacionadas para a manipula o de um nico PQD Estas ferramentas designam se de mbito especializado Oliveira et a 2004 As ferramentas que visam somente a detec o e elimina o de registos duplicados constituem um exemplo deste tipo de ferramentas espec ficas As ferramentas WizSame WizSoft 2007c matchIT helpIT 2007 e Centrus Merge Purge Group 1 Software 2007 consultar Ap ndice A s o exemplos de ferramentas vocacionadas apenas para o problema dos duplicados H outras ferramentas comerciais que procuram manipular um conjunto alargado de PQD e dizem se de mbito gen rico Oliveira et al 2004 Como no mbito deste trabalho de doutoramento se pretende desenvolver um modelo que d suporte aos v rios problemas que afectam a QD nas subsec es seguintes apresentam se apenas as ferramentas de LD de mbito gen rico Entre as v rias alternativas dispon veis no mercado seleccionou se um conjunto de cinco ferramentas representativo das potencialidades de LD que estas ferramentas actualmente oferecem As descri es apr
483. posto nas tr s sec es anteriores da que n o haja coment rios a efectuar Cap tulo 7 Modelo Proposto para a Limpeza de Dados 267 a MySQL Query Browser root localhost 3306 pad File Edit View Query Script Tools Window Help OO DU Ow Orn 0220220 TIO Resultset1 Schemata SOL Query Area a ijselect 2 fron dolo b 8 menagerie b 8 mysql f CustNr F Name 114 Wilson Peter J PUREE tee elit do 317 Saylor Cheryl Data Manipulation Data Definition E MySQL Utility Transactional and Locking 2 rows fetched in 0 0219s 0 006 f Edt 1 1 Figura 7 20 Consulta dos PQD resultantes da execu o das OD 7 8 Conclus o Neste capitulo expds se com o necess rio pormenor o modelo que se defende para a DC dos PQD Esta exposi o efectuou se por interm dio da arquitectura proposta desenvolvida de acordo com esse modelo de LD A principal originalidade do modelo reside na sequ ncia proposta de manipula o dos PQD Esta sequ ncia resultou das depend ncias de manipula o i e DC identificadas entre os diversos tipos de PQD O modelo baseia se nos NG dos PQD que resultaram da taxionomia desenvolvida no mbito deste trabalho de doutoramento Assim os problemas s o manipulados gradualmente por NG desde o mais elementar e atributo at ao de maior complexidade 2 e m ltiplas rela es de diferentes fontes de dados A detec o de um P
484. pr pria fonte e de forma aut noma da transforma o de dados Por outro lado a sequ ncia de passos adoptada tamb m evidencia n o ser a mais adequada para manipular certos PQD No Cap tulo 1 Sec o 1 2 exemplificou se a inadequa o desta sequ ncia na verifica o da viola o de certas restri es de integridade Ainda a prop sito da verifica o da viola o de restri es de integridade as ferramentas analisadas suportam a defini o de novas restri es em fun o das necessidades espec ficas de LD No entanto a defini o destas restri es baseada em linguagens limitadas sob o ponto de vista da expressividade da que n o suportem l gicas subjacentes complexas Nestes casos a nica solu o seria recorrer a uma linguagem de programa o O problema que nas ferramentas comerciais analisadas nenhuma evidenciou potencialidades de extensibilidade Por outro lado ainda que de mbito gen rico estas ferramentas aparentam ser limitadas na cobertura que d o a n vel de DC aos diversos PQ que podem afectar os dados De facto este um aspecto importante que fica a faltar analisar A avalia o da cobertura dada n o s pelas ferramentas comerciais mas tamb m pelos prot tipos de investiga o s pode ser efectuada ap s a apresenta o da taxionomia de PQD proposta Estes dois assuntos ser o abordados no cap tulo seguinte As raz es que justificam a cria o de uma nova taxionomia j fo
485. pular os problemas que ocorrem no NG mais elementar 7 e atributo e s se passa ao n vel seguinte quando todos os problemas estiverem solucionados Adoptando uma abordagem ascendente ze bottom up todos os NG s o sucessivamente manipulados at se chegar ao que envolve os problemas de maior complexidade e m ltiplas rela es de diferentes fontes de dados A necessidade de solucionar de imediato os PQD adv m da possibilidade de ocultarem ou induzirem outros problemas Esta sequ ncia permite estabelecer automaticamente a ordem de execu o da generalidade das opera es de DC sendo apenas necess rio que o utilizador proceda sua especifica o A sequ ncia considera todos os PQD que fazem parte da taxionomia contrariamente ao que acontece nas ferramentas comerciais actualmente existentes em que o n mero de problemas coberto pela sua sequ ncia de execu o diminuto As opera es apenas necessitam de ser sequenciadas pelo utilizador quando num NG h mais do que uma opera o do mesmo tipo e g viola o de restri o de integridade Nos prot tipos de investiga o anteriormente existentes as opera es de LD s o efectuadas num contexto de transforma o de dados competindo ao utilizador especificar manualmente as depend ncias entre estas sob a forma de um grafo dirigido de transforma es Esta sequ ncia de execu o das opera es de DC resulta na tese defendida nesta disserta o de doutoramento D
486. quando existe um mapeamento entre um atributo e a propriedade e mail e simultaneamente um mapeamento entre a tabela a que pertence o atributo e o conceito fornecedor Por ltimo no n vel de granularidade mais espec fico as opera es ontol gicas de LD s o especificadas para uma propriedade de um conceito de um determinado dom nio A sua instancia o autom tica obriga exist ncia simult nea de mapeamentos para as suas propriedades conceitos e dom nios A t tulo exemplificativo considere se a exist ncia de uma OD de valor em falta para a propriedade e mail do conceito fornecedor no dom nio do com rcio electr nico O e mail opcional na generalidade dos dom nios mas no caso do com rcio electr nico 324 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica obrigat rio uma vez que o meio de comunica o utilizado para as transac es comerciais A opera o de LD em causa apenas instanciada quando existe um mapeamento entre um atributo e a propriedade e mail e ao mesmo tempo existem mapeamentos entre a tabela e o conceito fornecedor e entre a BD e o dom nio do com rcio electr nico A Tabela 9 1 sumaria os tr s n veis de granularidade de especifica o das opera es ontol gicas de LD e os mapeamentos necess rios para que possam ser instanciadas ao n vel do esquema dos dados Tabela 9 1 Mapeamentos necess rios instancia o das opera es
487. que constam de Z Assim para cada um desses tuplos de cada rela o presente no conjunto de atribui es definidas pelo utilizador a OC actualiza os valores dos atributos necess rios resolu o do PQD em fun o dos valores resultantes das opera es de atribui o Cap tulo 6 Formaliza o das Opera es de Correc o 207 Cada atribui o representada em fun o de uma express o que envolve exclusivamente atributos vari veis e ou constantes Algoritmo Correc o Viola o Restri o Integridade E seja vec atribs chave prim um vector que cont m os nomes dos atributos que constituem a chave prim ria de S e b1 seja amt amint O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos assim definido C fc c usado na correc o da viola o da restri o de integridade A ce As ie CCA Este conjunto resulta da especifica o da OC seja e a cardinalidade de C seja kJ o n mero de atribui es existentes na sequ ncia de atribui es da OC referentes aos atributos da rela o R sejam x1 y1 e z1 n meros inteiros compreendidos no intervalo 1 e sejam 01 p1 e q1 n meros inteiros compreendidos no intervalo 1 kJ seja B 6 41 4 4 O conjunto de atributos de que n o fazem parte da sua chave prim ria seja D o conjunto de atributos assim definido D fd d usado na correc o da viola o da restri
488. que o atributo a assume nos tuplos existentes s o representados por Ta 4 4 2 Problemas ao N vel do Atributo Nesta sec o apresenta se a defini o formal dos PQD identificados ao n vel do atributo A forma de apresenta o anteriormente usada na Sec o 4 2 1 novamente seguida Assim come a se por expor as defini es dos problemas que ocorrem no contexto do valor individual do atributo De seguida s o expostas as defini es dos problemas que resultam do conjunto dos seus valores 4 4 2 1 Contexto do Valor Individual De seguida s o apresentadas as defini es formais dos problemas que ocorrem no valor individual do atributo a Valor em falta Seja S um conjunto de nomes de atributos definido como fa a e RA A a de preenchimento obrigat rio ze Sc RA Existe um valor em falta no atributo ae S se e s se ss d ter v ta null O Viola o de sintaxe Seja G a a sintaxe do atributo a dada por uma gram tica ou express o regular Seja L G a a linguagem gerada pela gram tica ou express o regular Ha uma viola o de sintaxe no atributo ae RA sse 3 ter ta L Ga Q Erro ortogr fico Seja spelluma fun o de verifica o ortogr fica que recebe um Zoken e pesquisa a sua exist ncia num dicion rio d Caso a palavra conste do dicion rio a fun o devolve a pr pria palavra No caso contr rio a fun o efectua uma an lise de semelhan a e devolve a mais pr xima Ca
489. quer sequ ncia de execu o das opera es permitida Em certas situa es pode tirar se partido desta flexibilidade para optimizar a execu o das opera es Por exemplo ao come ar se por detectar e corrigir as viola es restri o de integridade ao n vel do tuplo que obriga a que o valor do atributo valor seja igual ao produto entre os valores dos atributos quant e pre o unit pode aproveitar se tamb m para solucionar eventuais valores em falta no atributo valor Ao conceber se um modelo de LD assente numa sequ ncia de manipula o dos PQD que sempre a mesma independentemente do dom nio e da BD n o se tira partido de certas especificidades que poderiam optimizar a sua manipula o Ainda que este problema de efici ncia de manipula o dos PQD possa ocorrer em contrapartida o utilizador apenas necessita de centrar os seus esfor os na especifica o das opera es a realizar e n o nas depend ncias de execu o que possam existir entre estas Apenas perante opera es do mesmo tipo e g viola o de depend ncia funcional que possuam atributos em comum necess rio que o utilizador as coloque segundo a ordem de execu o pretendida Q De acordo com o modelo proposto as OD relativas aos diferentes NG s o especificadas na ntegra no in cio do processo de LD Uma vez iniciada a execu o destas no NG mais elementar que corresponde s opera es especificadas n o poss vel proceder se especifica
490. r FROM Produtos lt gt 100 lt Figura 7 19 Exemplifica o da especifica o de OD lado esquerdo e OC lado direito trabalho de implementa o em particular como todo este trabalho de doutoramento no geral esteve sujeito a restri es temporais Perante estas restri es e no caso concreto da implementa o optou se por dar primazia aquilo que foi considerado essencial na arquitectura proposta Tudo o resto que n o impede que se possa demonstrar a validade da arquitectura n o foi intencionalmente implementado A interface gr fica foi o aspecto preterido uma vez que o seu desenvolvimento sempre moroso O inconveniente que a sua inexist ncia dificulta a utiliza o do prot tipo O incremento da sua usabilidade ser objecto de trabalho no futuro pr ximo Perspectiva se que o desenvolvimento futuro da interface seja pac fico uma vez que a camada gr fica a desenvolver sob a forma de um conjunto de classes Java assentar sobre a camada de processamento entretanto j implementada Desta forma consegue se uma clara separa o entre as duas camadas o que simplifica a manuten o de ambas Nos m dulos de sequ ncia o das OD execu o incremental das OD e execu o das OC centraram se os principais esfor os de implementa o uma vez que representam o n cleo da arquitectura proposta e consequentemente do modelo de LD subjacente Estes m dulos foram implementados seguindo fielmente o que foi ex
491. r metros sangu neos Brigadas 535 Locais onde se efectuam colheitas d divas CodigosPostais 1987 C digo postal dos dadores Colheitas 246208 Colheitas d divas efectuadas Conclusoes 122 Conclusoes da aceitabilidade ou nao dos dadores Dadores 98341 Dadores de sangue EstadoCivil 7 Estado civil dos dadores Hospitais Hospital de recolha devolu o da d diva Inutilizza oes Motivo pata a inutiliza o da d diva Profissoes Profiss o dos dadores Sexo Sexo dos dadores TipoDadiva Tipo de dadiva efectuada pelos dadores Como nao existiam chaves primarias definidas nas tabelas acrescentou se um atributo num rico adicional que cumpre essa finalidade de identificador unico Este um requisito de funcionamento do SmartClean Assim sendo todas as tabelas da BDD passaram a conter um atributo adicional aos que se encontram representados na Figura 8 1 Naturalmente os atributos que constituem a tabela Dadores da BDD n o revelam as identidades dos dadores mantendo os em anonimato absoluto Neste caso de estudo essa informa o n o 274 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica tem qualquer interesse da que nem sequer tenha sido fornecida pela institui o que gentilmente cedeu a BDD 8 3 Limpeza de Dados ao N vel do Atributo As opera es de LD efectuadas ao n vel do atributo das diversas tabelas da BDD em conson n
492. r NG come a se pela que diz respeito ao atributo Ae Cap tulo 7 Modelo Proposto para a Limpeza de Dados 247 detec o de erro ortogr fico Da execu o desta opera o n o resulta a detec o de qualquer problema Como n o existem problemas no n vel do atributo prossegue se para a detec o dos PQD do NG seguinte 7 e rela o A execu o desta opera o culmina na detec o de uma viola o de depend ncia funcional resultante da exist ncia de localidades diferentes para o mesmo valor de c digo postal Suponha se que o utilizador procede correc o deste problema substituindo uma localidade por outra Quando se reinicia a execu o da OD confirma se que a viola o de depend ncia funcional foi solucionada No entanto a correc o efectuada acabou por introduzir um erro ortogr fico no atributo ocalidade que anteriormente n o existia Face ao exposto ao inv s de se executar unicamente as opera es do NG em quest o justifica se a execu o das OD referentes aos n veis que o antecedem na sequ ncia 7 e que se encontram a montante Na realidade para se garantir que uma determinada correc o de um tipo de problema e g viola o de depend ncia funcional n o introduz um outro tipo de problema e g erro ortogr fico num NG a montante necess rio executar novamente todas as OD relativas a esses n veis Face ao volume de dados que pode estar envolvido a adop o de uma abordagem t o
493. r que os nomes se ajustam ao espa o f sico que lhes est destinado e g num envelope ou ao tamanho do atributo onde ser o armazenados e 71 valida o de nomes valida os diversos componentes do nome de uma pessoa e g nome pr prio apelido de acordo com as regras espec ficas do pa s a que este pertence ou de acordo com as regras espec ficas da organiza o O m dulo HIquality Address Human Inference 2007e efectua opera es de limpeza em atributos que armazenam endere os postais Este m dulo permite validar uniformizar corrigir e completar endere os colocando os de acordo com o pretendido Todos os tipos de elementos que constam de um endere o e g nome do edif cio nome da localidade c digo postal s o validados sendo assegurado que se encontram segundo a ordem adequada Caso algum problema seja detectado os valores s o 7 corrigidos sempre que poss vel onde for necess rio 7 completados caso se encontrem apenas parcialmente preenchidos e 717 uniformizados os seus formatos Entre outras possibilidades isto envolve a correc o de erros ortogr ficos a substitui o de c digos postais incompletos ou a inclus o de c digos postais em falta O m dulo tamb m permite a introdu o 72 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica de configura es espec ficas o que lhe permite responder a necessidades particulares de limpeza nos endere os po
494. ra es conceptuais de LD suscept veis de serem executadas nessa BD Este aproxima o foi genericamente apresentada em Oliveira ef a 2006b Posteriormente foi apresentada com mais detalhe em Oliveira e a 2006c Ainda assim esta vertente do trabalho merece ser melhor explorada pelo que ser objecto de novos desenvolvimentos num futuro pr ximo 1 6 Estrutura da Disserta o Al m da apresenta o da estrutura da disserta o no actual cap tulo efectuado o enquadramento dos PQD Os problemas e limita es das actuais solu es de LD s o evidenciados uma vez que constituem a raz o de ser deste trabalho Os objectivos que nortearam a sua realiza o s o enunciados tese que se encontra subjacente tamb m apresentada assim como as contribui es que resultaram da realiza o do trabalho No Cap tulo 2 Qualidade de Dados dada uma panor mica geral sobre a tem tica Como o pr prio t tulo da disserta o o indica o trabalho desenvolvido no mbito do doutoramento enquadra se genericamente no tema da QD da que seja importante conceder lhe uma aten o especial Neste cap tulo apresentam se todos os aspectos considerados relevantes para a sua compreens o e enquadra se o trabalho desenvolvido No Cap tulo 3 Limpeza de Dados dado destaque a esta actividade do processo de melhoria da QD O trabalho reportado nesta disserta o centra se especificamente sobre esta actividade Assim j
495. ra es de Correc o Na resolu o das viola es de unicidade detectadas no atributo DesginacaoBrigada executou se uma opera o id ntica executada para a resolu o do mesmo tipo de problema no atributo DesignacaoConclusao da tabela Conclusoes Para que todas as altera es necess rias que garantem a manuten o da integridade referencial entre as tabelas Brigadas atributo CodigoBrigada e Dadores atributo Local fossem efectuadas automaticamente pela opera o em quest o estabeleceu se o relacionamento entre estas tabelas na BDD uma vez que este n o existia 8 3 2 5 Tabela Profissoes Opera es de Detec o Na Tabela 8 29 apresenta se as OD efectuadas no contexto dos m ltiplos valores de cada atributo da tabela Profissoes Tabela 8 29 OD executadas no contexto dos m ltiplos valores dos atributos da tabela Profissoes Viola o de Atributo es unicidade CodProfissao DesProfissao Da execu o das OD de viola o de unicidade em ambos os atributos n o resultou a identifica o da exist ncia deste tipo de PQD 296 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 8 4 Limpeza de Dados ao N vel do Tuplo As viola es de restri o de integridade constituem o unico PQD suscept vel de ocorrer ao nivel do tuplo Seguidamente apresentam se as opera es de LD efectuadas nas diversas tabelas da BDD com o intuito de detectar e solucionar e
496. ra es de Detec o Na Tabela 8 13 apresentam se as OD efectuadas no contexto do valor individual dos atributos da tabela Colheitas Tabela 8 13 OD executadas no contexto do valor individual dos atributos da tabela Colheitas Valor em Viola o de Atributo pe falta dominio Data x x Dador x x AnoColh x NumColh x x Cap tulo 8 Estudo de Caso de Limpeza de Dados 283 Das diversas OD efectuadas na tabela Colheitas ilustra se a de viola o de dom nio que incide sobre o atributo Abo DETECT DOMAIN VIOLATION ON Abo FROM Colheitas OF BDD WHERE Abo NOT IN A O B AB Da execu o das OD de valor em falta em cada um dos atributos assinalados n o resultou a detec o de qualquer PQD A execu o das OD de viola o de dom nio nos atributos Data os valores t m de estar compreendidos entre 01 01 2000 e 30 06 2002 Dador os valores t m de ser superiores a zero NumColh os valores t m de ser superiores a zero e R os valores t m de ser iguais a ou 3 tamb m n o redundou na detec o de qualquer PQD A Tabela 8 14 apresenta as viola es de dom nio identificadas no atributo Abo pela OD respectiva que precede este par grafo Tabela 8 14 Resultados da OD de viola o de dominio no atributo Abo 4155 4177 4178 4179 4186 4187 4188 33940 33941 104252 104253 Opera es de Correc o
497. ram criadas 7 e comprovar a utilidade e validade do SmartClean na DC dos PQD A situa o ideal era que o presente caso de LD tivesse permitido demonstrar todas as potencialidades de DC dispon veis no SmartClean resultantes da implementa o das respectivas opera es formalizadas nos Cap tulos 5 e 6 No entanto num caso real esta aspira o n o realista Dependendo da BD h opera es que justificam serem executadas enquanto outras n o Na BDD foi precisamente isso que aconteceu e nem todas as OD e OC dispon veis puderam ser executadas e g na BD em quest o n o fazia o m nimo sentido a execu o da OD de circularidade entre tuplos Como consequ ncia algumas potencialidades do SmartClean na DC de certos PQD n o puderam ser demonstradas Ainda assim o n mero de opera es executadas foi significativo o que permitiu ilustrar as capacidades da ferramenta de identificar e solucionar diferentes tipos de PQD A demonstra o de todas as potencialidades do SyartClean s seria poss vel de alcan ar considerando outros casos de LD No futuro este um dos trabalhos que ser efectuado de modo a certificar que a ferramenta suporta diferentes requisitos de LD existentes em variadas BD Cap tulo 8 Estudo de Caso de Limpeza de Dados 315 Um aspecto que n o se referiu ao longo do cap tulo prende se com o tempo de execu o das OD e OC No geral n o h informa o individualizada sobre o tempo de execu
498. ram enunciadas no cap tulo anterior O estudo do estado da arte da LD apresentado neste cap tulo influenciou decisivamente o trabalho desenvolvido no mbito deste doutoramento Em particular as lacunas e defici ncias identificadas contribu ram para a formula o dos objectivos do trabalho enunciados no Cap tulo 1 Sec o 1 3 PROBLEMAS DE QUALIDADE DOS DADOS Este cap tulo debru a se detalhadamente sobre os problemas de qualidade que afectam dados relacionais Assim come a se por propor uma taxionomia de Problemas de Qualidade dos Dados PQD na qual os problemas est o agrupados por N vel de Granularidade NG de ocorr ncia Os diferentes NG considerados s o atributo tuplo rela o m ltiplas rela es e m ltiplas Fontes de Dados FD Seguidamente a taxionomia comparada com os trabalhos relacionados evidenciando ser mais gen rica e abrangente que estes na cobertura dos PQD Posteriormente para cada problema da taxionomia s o apresentadas defini es formais que eliminam poss veis subjectividades inerentes s defini es textuais Por outro lado como s o mais rigorosas possuem mais informa o do que as defini es textuais especificando tudo aquilo que necess rio para automatizar a sua detec o Finalmente a taxionomia proposta usada para avaliar a cobertura a n vel de Detec o e Correc o DC que as actuais solu es de Limpeza de Dados LD d o aos PQD A avalia o efe
499. ransforma o e Carregamento FD Fonte de Dados FDU Fun o Definida pelo Utilizador GTQD Gest o Total da Qualidade dos Dados LD Limpeza de Dados NG N vel de Granularidade OC Opera o de Correc o OD Opera o de Detec o PQ Problema de Qualidade PQD Problema de Qualidade dos Dados QD Qualidade de Dados SI Sistema de Informa o SQL Structured Query Language TD Transforma o de Dados INTRODU O Neste cap tulo come a se por efectuar o enquadramento da rea em que se situa o presente trabalho de doutoramento Seguidamente s o apresentados os problemas e limita es das actuais solu es de melhoria da Qualidade dos Dados QD que motivam e justificam a realiza o do trabalho Na sequ ncia destes problemas e limita es s o apresentados os objectivos que se pretendem atingir com a sua realiza o Ap s a apresenta o destes enunciada a tese defendida nesta disserta o As contribui es alcan adas com a realiza o do trabalho s o enumeradas de seguida Por ltimo apresentada a estrutura da disserta o o que inclu uma descri o sucinta do conte do de cada cap tulo 1 1 Enquadramento As organiza es actuais operam e competem numa sociedade dominada pelas tecnologias da informa o e comunica o Os dados armazenados em formato digital constituem um dos pilares em que assenta esta sociedade Os dados representam propriedades de entidades ou objectos do mundo real num forma
500. real efectuada sob a forma de ontologias dos dominios e g seguros compostas por conceitos de cada dominio e g segurado propriedades de cada conceito do dom nio e g c digo postal e relacionamentos entre os conceitos do dom nio e g segurado possui ap lice Figura 9 1 Representa o da realidade atrav s de ontologias Apesar da cria o da ontologia do dom nio constituir o primeiro passo da abordagem proposta as dificuldades inerentes a essa cria o n o constituem preocupa o no mbito da abordagem embora se reconhe a a sua import ncia O objectivo consiste apenas em detalhar a ideia de usar ontologias como forma de alcan ar a interoperabilidade das opera es de LD em BD diferentes A interoperabilidade das opera es de DC alcan ada mediante a sua especifica o abstracta ou conceptual 7 e ao n vel da ontologia do dominio em causa Para o efeito s o usadas as mesmas 21 Uma ontologia uma teoria de conte do sobre os conceitos propriedades dos conceitos e relacionamentos entre conceitos existentes num determinado dom nio de conhecimento Chandrasekaran 1999 320 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica linguagens declarativas definidas no Cap tulo 5 Sec o 5 2 1 e Cap tulo 6 Sec o 6 2 1 apenas com as seguintes diferen as de modo a permitir a especifica o conceptual das opera es a BD substitu d
501. recebe fluxos de dados de uma ou mais transforma es precedentes e origina um fluxo de dados que alimenta uma ou mais transforma es subsequentes Uma linguagem declarativa inspirada em Structured Query Language SQL permite especificar as transforma es de dados de forma compacta e simplifica a sua manuten o A linguagem composta pelo seguinte conjunto de operadores l gicos Q SQL view Equivale a um inqu rito SQL t pico com potencialidades adicionais de verifica o de restri es de integridade Tamb m suporta a realiza o de joins e unions Q Map Ao n vel do registo permite expressar mapeamentos entre um fluxo de dados de entrada e um ou mais fluxos de dados de sa da Q Match Efectua um join aproximado entre dois fluxos de dados de entrada atribui um valor de semelhan a a cada par de registos resultante do produto Cartesiano e origina um s fluxo de dados de sa da Os registos s o comparados usando fun es de semelhan a nos valores de um ou mais atributos Esta opera o essencial para a detec o de registos duplicados Q Cluster Agrupa os registos com elevados valores de semelhan a em dusters tendo por base um determinado crit rio e g transitividade Q Merge Subdivide o fluxo de entrada de dados em fun o de um conjunto de atributos de agrupamento De seguida cada subdivis o agregada num nico registo recorrendo a uma fun o de agrega o definid
502. refas de valida o correc o dos valores Estas tarefas baseiam se em dados de refer ncia adquiridos a terceiros Estes dados s o usados para corrigir suprir a aus ncia e completar os valores da FD em causa Na identifica o dos registos que nas duas FD se referem as mesmas entidades do mundo real s o usadas t cnicas de detec o de duplicados aproximados A detec o de registos duplicados na FD ou entre FD tamb m suportada por esta ferramenta O utilizador define o crit rio que conduz identifica o dos duplicados Para o efeito a ferramenta disponibiliza uma interface gr fica de f cil utiliza o Na identifica o dos registos duplicados s o utilizadas t cnicas de correspond ncia equival ncia aproximada Isto significa que s o toleradas diferen as n o sendo necess rio que os registos sejam rigorosamente iguais para que possam ser classificados como duplicados Por ltimo a ferramenta tamb m possibilita a consolida o de cada grupo de duplicados num nico registo Esta consolida o pode ser efectuada manualmente pelo utilizador 7 e caso a caso ou automaticamente com base num crit rio de sobreviv ncia dos valores eg o valor mais completo o valor mais recente definido para cada atributo De cada grupo de duplicados resulta um novo registo que substitui todos os outros 3 5 2 3 TS Quality A ferramenta TS Quality Trillium Software 2007a composta por tr s m dulos cada um dos quai
503. referentes a esta propriedade A Figura 9 3 ilustra um mapeamento entre o atributo cp e a propriedade c digo postal O estabelecimento dos mapeamentos constitui a terceira etapa na abordagem proposta Em fun o dos mapeamentos estabelecidos automaticamente s o identificadas as opera es conceptuais de LD que podem ser executadas sendo instanciadas ao n vel do esquema da BD em causa No exemplo considerado as opera es de LD associadas propriedade c digo postal s o automaticamente instanciadas em resultado do mapeamento estabelecido 7 e s o transformadas do n vel da ontologia ou n vel ontol gico para o n vel do esquema da BD em quest o Supondo que no exemplo considerado o nome da tabela Segurados e o nome da BD Seguros s o automaticamente instanciadas as duas OD apresentadas na Figura 9 4 Estas opera es s o Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 321 Representa o do Mundo Real Dom nio X Opera es de LD DETECT Syntax Violation ON C digo Postal WHERE C digo Postal NOT LIKE N vel da Ontologia E D lt gt DETECT Domain Violation Propriedade a ON C digo Postal WHERE C digo Postal NOT IN Mapeamento Tabela 1 N vel do Esquema de Dados Figura 9 3 Estabelecimento de um mapeamento entre um atributo e uma propriedade propostas ao utilizador para execu o na BD A instancia o das opera es const
504. regado a partir do site dos CTT que cont m todos os c digos postais e respectivas localidades existentes em Portugal Como os c digos postais armazenados na tabela CodigosPostais se encontram no Cap tulo 8 Estudo de Caso de Limpeza de Dados 279 formato usado no passado composto por apenas quatro d gitos na constru o do dom nio de valores v lidos suprimiram se os tr s d gitos adicionais referentes rua que totalizam os sete d gitos actualmente utilizados em Portugal Da execu o das OD de valor em falta em cada um dos atributos da tabela CodigosPostais n o resultou a detec o de qualquer PQD A execu o da OD de viola o de dom nio resultou na identifica o de 56 valores do atributo CodPostal que violam o dominio Na Tabela 8 9 ilustram se alguns desses valores Tabela 8 9 Resultados da OD de viola o de dom nio no atributo CodPostal CodPostal Opera es de Correc o Com o objectivo de solucionar automaticamente o maior n mero poss vel de viola es de dom nio executou se a OC que a seguir se apresenta CORRECT DOMAIN VIOLATION ON CodPostal FROM CodigosPostais T1 OF BDD SET CodPostal CP FROM Codigos Postais DO18 T2 WHERE LocPostal Localidade AND T1 CodPostal T2 CodPostal A l gica que se encontra impl cita a esta OC a seguinte Para os valores do atributo CodPostal identificados como constituindo viola es ao dom nio dos c digos pos
505. rela es que armazenam respectivamente as chaves prim rias dos tuplos de R e S identificados como sendo duplicados bem como o respectivo cluster de duplicados que formam Os esquemas de Z1 e Z2 s o ZI a an cluster duplicados e Z2 6 6 cluster duplicados in cio TEA obec bi yeahs Cisne RXS idcluster 1 te ke tuplo T repetir enquanto t null UZ ideluster O t ajA Aam t am Z1 VT ideluster o 6 88 1 A5 86 22 ue de tuplo U ve de tupl V se u nulle v null ent o idcluster lt idcluster 1 Z1 Z1 UJ ta t aidoluster Cap tulo 5 Formaliza o das Opera es de Detec o 155 Z2 Z2 UJ t 6 t 6 idclusten sen o se u nulle v null ent o Z2 Z2 J tby t buideluster sen o se u nulle v null ent o Z1 Z1 VU t d t dp 0 idclusten fim se te de tuplo T fim repetir fim Nota Na formaliza o anterior cond al m de representar uma eventual condi o de selec o que delimita a execu o da OD tamb m representa a condi o de que resulta a detec o dos tuplos duplicados O conte do de cond resulta do que se encontra especificado na cl usula where da OD A detec o de tuplos duplicados pode implicar o recurso a FDU e g como consequ ncia da complexidade do crit rio de detec o de duplicados n o ser exprim vel numa condi o SQL Neste caso os valores dos atributos que constituem a chave prim ria de cada tu
506. rem ao n vel da rela o O Tuplos duplicados A mesma entidade ou objecto do mundo real encontra se representada em mais do que um tuplo A classifica o de dois tuplos como sendo duplicados pode ainda ser mais detalhada de acordo com o que a seguir se apresenta Para ilustrar cada situa o de duplicidade suponha se a exist ncia de uma rela o centes com o seguinte esquema clientes nr cliente nome morada nr identifica o fiscal Duplicados iguais Os tuplos s o rigorosamente iguais diferindo apenas nos valores dos atributos que constituem a chave prim ria da rela o caso esta exista e g o tuplo chentes 10 Ant nio Carlos Carvalho Rua do Sol 123 205723467 um duplicado exacto do tuplo chentes 72 Ant nio Carlos Carvalho Rua do Sol 123 205723467 Duplicados aproximados Os tuplos s o aproximadamente iguais n o sendo as diferen as nos valores dos atributos significativas que impe am a sua classifica o como tal eg o tuplo c entes 10 Ant nio Carlos Carvalho Rua do Sol 123 205723467 um duplicado aproximado do tuplo clientes 72 Ant nio C Carvalho Rua do Sol 123 205723467 Os atributos que integram a chave prim ria da rela o caso esta exista n o s o considerados na avalia o das diferen as Duplicados inconsistentes Ainda que os tuplos sejam duplicados um do outro um ou mais atributos que n o fazem parte d
507. resenta um n mero superior de problemas do que a aqui proposta Contudo todos os PQD que se encontram nesta taxionomia possuem um equivalente na taxionomia proposta o que permite concluir que esta ltima mais gen rica e abrangente Por exemplo o PQD viola o de dom nio da taxionomia proposta equivale aos problemas viola o do intervalo de valores e viola o do conjunto de valores na taxionomia de Kim e al 2003 Nestes casos apenas um dos problemas foi apresentado na Tabela 4 2 para n o a sobrecarregar excessivamente com informa o taxionomia proposta apresenta novos PQD que n o constam nas taxionomias relacionadas designadamente valor incompleto circularidade entre tuplos num auto relacionamento e heterogeneidade de sintaxes O A taxionomia de Rham e Do 2000 a que cobre o maior n mero de PQD entre as taxionomias relacionadas Comparativamente a esta a taxionomia proposta apresenta quatro problemas adicionais valor incompleto circularidade entre tuplos num auto relacionamento exist ncia de hom nimos e heterogeneidade de sintaxes A forma de organiza o dos PQD na taxionomia proposta similar da taxionomia de Rham e Do 2000 Assim semelhan a da taxionomia proposta na taxionomia de Rham e Do 2000 feita uma distin o entre PQD mono fonte e multi FD No entanto ao n vel de uma FD n o feita uma separa o entre os problemas que ocorrem na rela o e entre rela es N
508. respectivas restri es se encontrem definidas na BD em quest o Algoritmo Remo o Tuplos Duplicados Baseada em FDU amp seja A dar sIm ny O Conjunto de atributos de R que n o fazem parte da sua chave prim ria seja k o n mero de atribui es existentes na sequ ncia de atribui es da OC sejam x ye z n meros inteiros compreendidos no intervalo m 1 m n sejam o p e q n meros inteiros compreendidos no intervalo 1 in cio Te idcluster Coons z1 D lt Z 1 idcluster Z 2 idcluster Z2 t ke tuplo T repetir enquanto t null Cap tulo 6 Formaliza o das Opera es de Correc o 205 se flag actualiza valores rela o R verdadeiro ent o Us FER yon Roy es Reet zero fito x PR ap Z La A AR dn Zta z1 V lt CES Bric Das o Z2 ideluster t idcluster s PAU 6 2 2 6 A S 6 22 6 Z2 sen o U amp TS b paS 505 Borg o Z2 ideluster t idefuster s PAU 5 6 22 6 r A8 6 226 22 V S TR a yp R Am eo R Am n O zitticer fuer x gt A R ay Z Lay A AR a Z 1am 21 fim se v fau j Pio Py v lt fdu Dog e fdu gt Deore ue de tuplo U repetir enquanto u null se flag actualiza valores rela o R verdadeiro ent o R R u ua x Do U dy Vp u a R RU ua UAU UAn y sen o S S u u b lt v u b v u b v SHS L u 6 U6 U 6 41 5U bt fim se ue de tuplo U fim repetir ve de tupl V
509. rini M Vassiliou Y e Vassiliadis P 1995 Fundamentals of Data Warehouses Springer Verlag 1995 Jaro M 1989 Advances in Record Linkage Methodology as Applied to Matching the 1985 Census of Tampa Florida Journal of American Statistical Association 84 406 1989 pp 414 420 Jin L Koudas N e Li C 2004 NNH Improving Performance of Nearest Neighbor Searches Using Histograms In Proceedings of 9 International Conference on Extending Database Technology Creta Gr cia Marco de 2004 pp 385 402 Jin L Koudas N Li C e Tung A 2005 Indexing Mixed Types for Approximate Retrieval In Proceedings of the 31 International Conference on Very Large Databases Trondheim Norway Setembro de 2005 pp 793 804 Kahn B Strong D e Wang R Y 2002 Information Quality Benchmarks Product and Services Performance Communications of the ACM 45 4 2002 pp 184 192 Kilss B e Alvey W 1985 Record Linkage Techniques In Proceedings of the Workshop on Exact Matching Methodologies Virginina EUA Maio de 1985 pp 1 4 Kim W Choi B J Hong E K Kim S K e Lee D 2003 A Taxonomy of Dirty Data Data Mining and Knowledge Discovery 7 2003 pp 81 99 Kimbal R Reeves L Ross M e Thornthwaite W 1998 The Data Warehouse Lifecycle Toolkit John Wiley amp Sons Inc 1998 Refer ncias Bibliogr ficas 375 Koronios A Lin S e Gao J 2005
510. rma descendente No caso da viola o de sintaxe a correc o envolve efectuar altera es sint cticas aos valores do atributo nos quais o PQD foi detectado O objectivo consiste em colocar os valores segundo a sintaxe pretendida Nesta opera o h uma fun o no caso efectua correc o sint ctica que 172 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica suporta de raiz a realiza o das altera es mais comuns ao formato do valor de um atributo e g alterar o formato de dd mm aaaa pata aaaa mm dd com base em express es regulares Na especifica o da OC o utilizador define um conjunto de express es regulares e os respectivos formatos a que o valor deve passar a obedecer A fun o verifica a concord ncia entre o valor do atributo e cada express o regular que faz parte do conjunto definido Caso se verifique concord ncia numa express o regular o valor alterado para o formato correspondente No caso contr rio n o efectuada qualquer altera o ao valor do atributo Algoritmo Correc o Viola o Sintaxe in cio T lt FE Ay josey py atr Peas Z1 t de tuplo T repetir enquanto t null novo valor efectua_correc o_sint ctica t atr mat_transf_sintdcticas se novo valor t atr ent o UT Oq t a tam R R R u u atr novo valor R R U ua UAU MU mtn fim se t lt de tuplo T fim repetir fim Na correc o dos P
511. rmaliza o das Opera es de Detec o 133 relacionamento com qualquer outro tuplo e o seu valor encontra se a null ou inclu do um tuplo na sequ ncia que j existia nesta o que significa que se est perante uma situa o de circularidade No desenvolvimento das sequ ncias utilizada uma abordagem em profundidade 1e todas as sequ ncias poss veis de se estabelecerem a partir do tuplo que constituiu o ponto de partida s o geradas na procura da exist ncia de circularidades Apenas quando j n o poss vel proceder expans o de mais nenhuma sequ ncia que se passa expans o das sequ ncias relativas a outro tuplo que constitua ponto de partida medida que as sequ ncias v o sendo desenvolvidas s o armazenadas numa s ring ficando as chaves prim rias estrangeiras dos tuplos que as constituem separadas por ponto e v rgula As sequ ncias circulares identificadas s o armazenadas na rela o respectiva 7 e ZI tamb m neste formato Algoritmo Detec o Exist ncia Circularidade E seja an 1 5Imtn O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos que formam a chave estrangeira que define o auto relacionamento em R assim definido C c c faz parte da chave estrangeira que define o auto relacionamento A ce A ie CCA seja Z1 a rela o que armazena as sequ ncias de tuplos nas quais se detectou circularidade com o seguinte
512. rnal of American Statistical Association 64 1969 pp 1183 1210 Refer ncias Bibliogr ficas 371 Fisher C W e Kingma B R 2001 Criticality of Data Quality as Exemplified in Two Disasters Information and Management 39 2001 pp 109 116 Fox C Levitin A e Redman T 1994 The Notion of Data and Its Quality Dimensions Information Process Management 30 1 1994 pp 9 19 Galhardas H Florescu D Shasha D e Simon E 2000 AJAX An Extensible Data Cleaning Tool In Proceedings of the ACM SIGMOD on Management of Data Dallas EUA Maio de 2000 pp 590 Galhardas H Florescu D Shasha D e Simon E 2000 Declaratively Cleaning your Data Using AJAX In 16 mes Journ es Bases de Donn es Avanc es Blois France October 2000 Galhardas H Florescu D Shasha D Simon E e Saita C A 2001 Declarative Data Cleaning Language Model and Algorithms In Proceedings of the 27 Very Large Databases Conference Roma Italia Setembro de 2001 pp 371 380 Genero M Poels G e Piattini M 2002 Defining and Validating Measures for Conceptual Data Model Quality In Proceedings of the 14 International Conference on Computer Advances in Software Engineering Toronto Canada Maio de 2002 pp 724 727 Gertz M Ozsu M T Saake G e Sattler K U 2004 Report on the Dagstuhl Seminar Data Quality on the Web SIGMOD Record 33 1 2004 pp 127 132 Giovani
513. rocesso de execu o das OD no contexto do valor individual do atributo Para melhor ilustrar o processo atr s descrito considere se o exemplo seguinte que se inicia com a apresenta o da rela o que consta da Tabela 7 2 Suponha se que o utilizador especificou tr s OD que incidem sobre o atributo CodigoPostal valor em falta viola o de sintaxe e viola o de dom nio A sequ ncia de execu o destas opera es precisamente esta 7 e em primeiro lugar valor em falta depois viola o de sintaxe e por ltimo viola o de dom nio A primeira opera o a ser executada a de detec o de valor em falta Da execu o desta opera o resulta a identifica o de um valor em falta no tuplo identificado com o ID 2 Como consequ ncia as restantes opera es da sequ ncia n o s o executadas neste valor at que o PQD seja solucionado Nos restantes valores do atributo n o detectado qualquer valor em falta Nestes a sequ ncia de execu o das OD continua com toda a normalidade Cap tulo 7 Modelo Proposto para a Limpeza de Dados 237 Tabela 7 2 Rela o para exemplifica o da execu o das OD no contexto do valor individual do atributo CodigoPostal 4000 123 null 4415 206 4415 4445 235 1000 111 3770 255 A opera o seguinte a ser executada a de detec o de viola o de sintaxe Esta opera o considera todos os valores
514. ros casos o suporte detec o ou correc o dos PQD concedido pela opera o que se fornece de raiz As potencialidades de extensibilidade do SmartClean tamb m existentes nos outros prot tipos foram introduzidas para colmatar necessidades espec ficas de LD que n o poss vel prever de antem o No entanto esta potencialidade permite que qualquer PQD possa ser detectado ou corrigido por interm dio de FDU mesmo aqueles para os quais j se fornece suporte Na tabela anterior esta possibilidade nem sequer se encontra representada e g a detec o de valores em falta ser efectuada atrav s de uma FDU uma vez que n o foi para esta finalidade que se incluiu as potencialidades de extensibilidade do SvartClean 10 2 2 Ferramentas Comerciais Nesta sec o apresenta se a compara o entre o S artClean e as ferramentas comerciais descritas no Cap tulo 3 Sec o 3 5 2 ze WinPure Clean and Match 2007 ETI Data Cleanser Trillium Quality dfPower Quality e HIQuality Mantendo a coer ncia com a sec o anterior a an lise comparativa efectuada de acordo com as mesmas perspectivas 7 e caracter sticas intr nsecas e cobertura de manipula o dos PQD 10 2 2 1 An lise das Caracter sticas A Tabela 10 3 possibilita a compara o das caracter sticas do SmartClean relativamente as ferramentas comerciais de LD estudadas Esta tabela constitui uma evolu o da Tabela 3 3 Comparativamente a esta a Tabela 10 3 in
515. rrec o semelhan a do efectuado no atributo Abo da tabela Colbeitas a correc o das duas viola es de dom nio detectadas no atributo Abo da tabela Dadores envolveu a substitui o dos respectivos valores pelo valor 4 Para o efeito executou se uma OC equivalente j apresentada na tabela Colhettas Na correc o autom tica das viola es de dom nio no atributo CodPostal executou se a OC que a seguir se apresenta Esta opera o id ntica efectuada na tabela CodigosPostais j apresentada para solucionar o mesmo tipo de problema CORRECT DOMAIN VIOLATION ON CodPostal FROM Dadores T1 OF BDD SET CodPostal CP FROM Codigos Postais DO45 T2 WHERE LocPostal Localidade AND T1 CodPostal T2 CodPostal Na correc o das viola es de dom nio identificadas no atributo Peso executou se a opera o que a seguir se apresenta CORRECT DOMAIN VIOLATION ON Peso FROM Dadores OF BDD SET Peso PesoMedioDador ID Dadores ID Peso Cap tulo 8 Estudo de Caso de Limpeza de Dados 289 Como se pode observar esta OC envolveu a invoca o de uma fun o definida pelo utilizador no caso PesoMedioDador Esta fun o foi desenvolvida especificamente para manipular o PQD em quest o Assim para cada valor que constitu a viola o de dom nio utilizou se o valor do atributo ID chave prim ria da tabela Dadores para identificar na tabela Dadores o respectivo dador Se a tabela continha o
516. rrec o do problema numa das rela es igualando um dos valores ao outro valor A Tabela 7 4 exibe o conte do da rela o ap s a realiza o da correc o efectuada no atributo Profiss o O valor alterado pelo utilizador encontra se assinalado a sombreado s e Professor 250 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 7 4 Rela o para exemplifica o da repeti o da execu o das OD Profiss o Electricista Mec nico Canalizador M dico Professor Advogado Carpinteiro Assuma se que se encontram definidas OD para todos os outros NG Assim sendo as sequ ncias de OD de PQD relativas a cada um desses n veis voltam a ser executadas na procura dos eventuais problemas que possam resultar da correc o efectuada 7 e altera o de Docente para Professor O rein cio da execu o destas sequ ncias ocorre com as que dizem respeito ao NG do atributo em particular as que se referem ao contexto do seu valor individual No contexto do valor individual do atributo NG do atributo apenas se justifica repetir a execu o das sequ ncias de OD que envolvam atributos cujos valores tenham sido objecto de correc o Al m disto o mbito de execu o fica ainda mais restringido a apenas aos tuplos cujos valores tenham sido alterados Em todos os outros tuplos e em todos os outros atributos em que n o se tenham verificados
517. rrec o manual de cada um destes problemas O rein cio da execu o das OD que comp em a sequ ncia ocorre com a opera o de valor em falta A execu o desta opera o considera unicamente o valor do atributo CodigoPostal no tuplo identificado com o ID igual a 2 Constata se que o problema foi de facto solucionado A execu o das opera es da sequ ncia prossegue com a detec o das viola es de sintaxe Esta 238 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica opera o considera n o s o valor do atributo no qual anteriormente foi identificada a viola o de sintaxe 7 e tuplo identificado com o ID 4 mas tamb m o valor do atributo que j n o est em falta z tuplo identificado com o ID 2 Suponha se que ambos os valores n o constituem viola es de sintaxe Por fim executada a OD de viola o de dom nio Esta opera o considera nao s o valor do atributo no qual anteriormente foi detectada a viola o de dom nio 7 e tuplo identificado com o ID 6 mas tamb m os valores do atributo que n o constituem viola o de sintaxe 7 e tuplos identificados com os ID 2 e 4 Assim como n o foram detectados problemas este processo de detec o correc o dos PQD finda No caso de ter sido detectado algum problema aquando desta segunda execu o da sequ ncia de OD seria necess rio efectuar as necess rias correc es e proceder a mais uma itera o
518. rsas ci ncias das quais se salientam a estat stica a gest o e a inform tica Os investigadores das ci ncias estat sticas foram os primeiros a debru ar se sobre esta problem tica nos finais da d cada de cinquenta tendo apresentando uma teoria probabil stica denominada de record linkage Newcombe et al 1959 para a identifica o de duplicados em conjunto de dados estat sticos No in cio da d cada de oitenta os investigadores das ci ncias da gest o abordaram o problema numa perspectiva de gest o da qualidade do sistema de manufactura de dados estabelecendo uma analogia com os sistemas de manufactura de produtos Apenas no in cio da d cada de noventa os investigadores de diversas reas das ci ncias inform ticas come aram a debru ar se sobre o problema de melhorar a QD armazenados electronicamente e g em bases de dados em armaz ns de dados Ao longo das ltimas d cadas estas ci ncias desenvolveram modelos e metodologias para a QD por vezes com algumas sobreposi es Todas estas propostas contribu ram para que a QD se afirmasse como rea de investiga o A QD tamb m tem merecido aten o comercial o que se comprova pelo elevado numero de empresas que centram as suas actividades nesta rea Estas empresas t m contribu do para o desenvolvimento da rea propondo variadas ferramentas inform ticas que suportam as diversas actividades envolvidas no processo de melhoria da QD O termo QD pode ser erradame
519. s apresentada nos pontos seguintes Uma compara o entre as tr s taxionomias efectuada imediatamente a seguir sua apresenta o O Taxionomia de Rahm e Do Nesta taxionomia Rahm e Do 2000 feita uma distin o entre PQD mono fonte e multi FD Os problemas mono fonte e multi fonte encontram se divididos nos que se relacionam com o esquema dos dados e nos que se relacionam com as inst ncias Os problemas relacionados com o esquema podem ser evitados melhorando o seu desenho a sua transforma o ou a sua integra o Os problemas nas inst ncias correspondem a erros e inconsist ncias nos dados que n o podem ser evitados atrav s do esquema Nos problemas mono fonte efectuada uma distin o entre os problemas que ocorrem no 7 atributo eg valor em falta erro ortogr fico 77 registo e g viola o de depend ncia funcional 777 tipo de registo e g registos duplicados e 4 FD e g refer ncia errada N o s o fornecidas informa es sobre a abordagem usada na identifica o dos problemas O Taxionomia de Kim et al Nesta taxionomia Kim e al 2003 apresentada uma rela o bastante completa de PQD sendo descrita a l gica subjacente sua elabora o Os seus autores adoptam uma abordagem hier rquica descendente aumentando sucessivamente o grau de detalhe dos problemas O ponto de partida consiste numa 28 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sint
520. s rias para Cap tulo 9 Interoperabilidade das Opera es de Limpeza de Dados 329 Hierarquia Dom nios DomConcPropOperLimp Hicrarquia Conceitos Relacionamentos Conceitos Propriedades do Conceito Propriedades do Relacionamento DomConcProp ConcPropEnvolvidos Propriedades ConcPropOperLimp PropEnvolvidas e 1 i PropOperLimp L xicos Atributos L xicos Tabelas l 1 i 1 BDTabAtribEnvolvidos Figura 9 8 Diagrama UML em nota o simplificada do modelo de dados suportar a manipula o dos dom nios dos conceitos envolvidos das propriedades dos conceitos e dos relacionamentos entre conceitos Outras tr s classes encontram se inclu das para suportar a 330 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica manipula o das poss veis hierarquias existentes ao n vel de dom nios conceitos e propriedades O quadrante superior direito inclui as classes necess rias para suportar a manipula o das opera es de LD definidas ao n vel da ontologia do dom nio H classes para suportar a manipula o das opera es ontol gicas definidas ao n vel da 7 propriedade 17 propriedade do conceito e 711 propriedade do conceito do dom nio O quadrante inferior esquerdo cont m as classes necess rias para suportar a manipula o dos elementos referentes ao esquema 2 e nome da BD n
521. s rio recorrer a fun es definidas implementadas pelo utilizador e g devido complexidade das opera es envolvidas na correc o Nesta situa o o conjunto de valores de cada atributo necess rio correc o do PQD pode ser passado como par metro de acordo com os requisitos de cada FDU que consta da sequ ncia de atribui es especificada na OC O conjunto de valores de cada atributo prov m dos tuplos envolvidos no PQD detectado e todos os tuplos de R ou apenas os que constam de Z1 As fun es tamb m podem receber outros par metros como vari veis e constantes Como resultado da sua execu o cada fun o retorna um valor at mico ou uma estrutura de dados e g um vector uma matriz A ltima fun o da sequ ncia de atribui es na formaliza o seguinte representada por fdu obrigatoriamente retorna uma estrutura de dados unidimensional e um vector de um dado tipo eg inteiro real Cada elemento do vector cont m um valor que actualiza o valor do atributo nos diferentes tuplos em quest o A ordem destes valores necessita de ser a mesma da considerada na extrac o dos valores do atributo Este um requisito a que o vector tem de obedecer para que o valor do atributo nos tuplos seja correctamente actualizado A formaliza o anterior sofre as altera es a seguir apresentadas de modo a reflectir a correc o da viola o de restri o de integridade baseada em FDU O que permanece inalterado rel
522. s OD O objectivo consistiria em identificar os problemas que pudessem ter sido introduzidos a montante com as correc es efectuadas No caso de todas as altera es efectuadas no contexto de um determinado NG surgirem como consequ ncia da primeira OD da sequ ncia n o se justifica a execu o de qualquer opera o nesse NG A justifica o encontra se no facto das correc es efectuadas n o serem suscept veis de introduzirem outros problemas a montante no pr prio NG No entanto se os tuplos e atributos envolvidos nessa primeira OD da sequ ncia tiverem sido objecto de altera es fruto dos problemas encontrados por opera es de outros NG ent o j se justifica a sua execu o bem como das demais opera es que fa am parte da sequ ncia do n vel em quest o Regressando ao exemplo uma vez que n o foi identificado qualquer problema ao n vel da rela o a detec o avan a para os POD do NG seguinte 7 e m ltiplas rela es de uma fonte de dados Assuma se que da execu o das sequ ncias de OD relativas ao NG multi rela o de uma fonte de dados n o resulta a detec o de qualquer problema Uma vez que este constitui o ltimo NG ao qual pertencem as opera es especificadas pelo utilizador o processo de detec o dado por conclu do Neste momento como j n o se justifica a exist ncia das rela es auxiliares criadas com a finalidade de armazenar as altera es efectuadas aos atributos e tuplos estas s
523. s PQD Como se viu na sec o anterior a execu o das OD efectuada de forma ascendente por NG Como a correc o acompanha a detec o a execu o das OC tamb m segue a mesma sequ ncia gradual e ascendente por NG No entanto contrariamente ao que acontece nas OD em que a sua execu o feita de acordo com uma sequ ncia predefinida em cada NG tal n o acontece nas OC Confrontado com os PQD resultantes de uma itera o das sequ ncias de OD respeitantes a um determinado NG o utilizador especifica um conjunto de OC que visam a sua resolu o A ordem pela qual estas opera es s o executadas perfeitamente irrelevante uma vez que n o h depend ncias na sua execu o Assim sendo a sua execu o efectuada em paralelo Uma excep o a esta regra ocorre quando existe mais do que uma OC para o mesmo tipo de PQD e g o utilizador especificou duas opera es para a correc o do mesmo problema de viola o de sintaxe Nestes casos pode fazer sentido que as opera es sejam executadas segundo uma determinada ordem Assim quando o utilizador especifica mais do que uma OC para o mesmo PQD independentemente de existir ou n o depend ncia na execu o destas a sua execu o feita seguindo a ordem de especifica o Caso a OC Y dependa da execu o pr via da OC X compete ao utilizador colocar esta ltima antes daquela na especifica o das OC a executar Em todas as outras situa es n o relevante a ordem de
524. s com as seguintes finalidades complementares de LD uniformiza o valida o de endere os postais e detec o e elimina o de duplicados Em cada m dulo a ferramenta disponibiliza de base raiz um conjunto de regras de LD cuja utiliza o pode ser efectuada de imediato O utilizador pode efectuar altera es a estas regras bem como introduzir novas regras de modo a corresponderem s suas necessidades espec ficas Por motivos de facilidade de compreens o e edi o por parte do utilizador as regras s o especificadas sob a forma de tabelas textuais O m dulo de uniformiza o visa uniformizar os valores dos atributos Esta uniformiza o pode ser efectuada de forma totalmente autom tica e n o obrigando a que o utilizador especifique previamente as tarefas a efectuar Para o efeito s o usadas as regras de uniformiza o que existem de base no m dulo tendo em conta o pa s de origem dos dados As potencialidades de uniformiza o autom tica s o especialmente not rias em dados sobre clientes designadamente ao n vel de nomes e endere os e tamb m ao n vel de dados sobre produtos como c digos de produtos marcas e modelos Apesar de existir no m dulo um conhecimento aprofundado sobre Cap tulo 3 Limpeza de Dados 69 este g nero de dados uma especifica o apropriada das regras de uniformiza o permite uniformizar qualquer outro g nero de dados De facto permitida a especifica o manual de regr
525. s de Qualidade dos Dados Modelo Sintaxe e Sem ntica sen o Ee Ta omy 58 56 ath atra r P ay uajA A am U Ab U 6 A 6 u 6 A cond s ve de tupl V se v null ent o ndoheterog lt ndoheterog 1 ZIn ohererog Zln oheterog U aohererog V d V dm V atn ZApioheterog Zln oheterog U naohererog v 6 0 6 vatn fim se fim se ue de tuplo U fim repetir t lt de tuplo T fim repetir se nrduplicados n oheterog gt 1 limiar ent o se n o h heterogeneidade de unidades Z1 lt de medida entao ha que eliminar os Z2 lt tuplos que eventualmente tenham sido fim se colocados nas duas rela es de output fim Nota Na detec o da exist ncia de heterogeneidade de unidades de medida s o considerados todos os tuplos de cada c uster de duplicados N o poss vel delimitar a execu o da OD apenas a um subconjunto destes tuplos existir heterogeneidade de unidades de medida esta deve verificar se em todos os tuplos dos clusters ou pelo menos num n mero elevado de tuplos que supere o limiar estipulado pelo utilizador A detec o da exist ncia de heterogeneidade de unidades de medida pode envolver a utiliza o de FDU Neste caso o valor do atributo atr pode ser passado como par metro de acordo com os requisitos espec ficos de cada FDU que consta da sequ ncia de atribui es especificada na OD pelo utilizador Outros par metros como vari veis e constantes ta
526. s dos atrib da tab Profissoes 295 Tabela 8 30 Resultados da OD de viola o de restri o de integridade na tabela Colheitas 296 Tabela 8 31 Resultados da OD de viola o da 2 restri o de integridade na tabela Dadores 297 xx iii Tabela 8 32 Resultados da OD de viola o da 3 restri o de integridade na tabela Dadores 298 Tabela 8 33 Resultados da OD de viola o da 4 restri o de integridade na tabela Dadores 298 Tabela 8 34 OD executadas no NG da rela o usas empire dao ai lata nd 300 Tabela 8 35 Resultados da execu o da 1 OD de viola o da depend ncia funcional na tabela Coe ui a a dd ae 302 Tabela 8 36 Resultados da execu o da 2 OD de viola o da depend ncia funcional na tabela CONCH GL RR RR RARO IRRITA a RR RR OND PR PAP 303 Tabela 8 37 Resultados da execu o da 3 OD de viola o da depend ncia funcional na tabela Diagonal 304 Tabela 8 38 OD executadas no NG multi rela o da BDD rear 306 Tabela 8 39 Resultados da OD de viola o de integr referencial entre Dadores e Brigadas 307 Tabela 8 40 Resultados da OD de viola o de integr referencial entre Colheitas e Inutilizacoes 307 Tabela 8 41 Resultados da OD de viola o de restri o de integr entre Colheitas e Analises 309 Tabela 8 42 Resultados da OD de viola o de restri o de integridade entre CodigosPostais e COGIC P
527. s duplicados A primeira designada de exacta ou determin stica sendo usada quando h um identificador na tabela ou tabelas que permite identificar os duplicados existentes e g o numero de contribuinte A segunda estrat gia de identifica o de registos duplicados designa se de aproximada A principal dificuldade na detec o de duplicados surge quando n o existe um atributo que possa ser usado na identifica o dos duplicados Mesmo quando este existe os seus valores podem estar afectados por PQD resultantes de variadas situa es e g erros de digita o erros de transcri o Verykios ef al 2003 Como tal a identifica o dos registos duplicados poder n o ser poss vel atrav s de uma opera o de igualdade 2 e join sobre os valores desse atributo Assim s o usados m todos que estabelecem equival ncias aproximadas entre os valores O procedimento de equival ncia pode tornar se mais robusto pela inclus o de v rios atributos o que atenua os PQD que possam existir ao n vel dos atributos individuais As duas principais fases envolvidas na identifica o de registos duplicados de um qualquer m todo aproximado de identifica o de duplicados s o 2 pesquisa dos potenciais duplicados o que envolve uma s rie de compara es registo a registo com base em crit rios de igualdade ou semelhan a entre os valores de determinados atributos g nome morada numero de contribuinte e 77 decidir se um determinado
528. s mesmas t cnicas quando usadas na correc o de viola es de dom nio apenas t m em conta os valores v lidos do atributo A aplica o da t cnica moda implica que um dos valores possua um n mero de ocorr ncias superior a todos os outros Caso isto n o aconte a n o efectuada qualquer correc o Quando o numero de valores envolvidos na aplica o da t cnica mediana n o impar considerada a m dia resultante dos valores que se encontram nas duas posi es interm dias Cap tulo 6 Formaliza o das Opera es de Correc o 169 Naturalmente o preenchimento de um valor inexistente ou a substitui o de um valor inv lido baseado nas t cnicas apresentadas sempre uma solu o de recurso a que se recorre quando n o h alternativa Ainda que o PQD em causa seja solucionado normalmente o novo valor n o traduz a realidade e g do preenchimento da altura de um indiv duo com a m dia das alturas dos outros indiv duos muito dificilmente resulta a sua altura real Apesar das limita es estas s o as t cnicas que mais vulgarmente surgem na literatura como solu o para o problema de valores em falta Neste trabalho as mesmas t cnicas s o empregues na substitui o dos valores que violam o dom nio do atributo Algoritmo Correc o Valor em Falta Viola o Dom nio amp seja t cnica correc o a t cnica de correc o do valor em falta viola o de dom nio especificada na OC seja avg
529. s outras dimens es a generalidade das Cap tulo 1 Introdu o 3 preenchimento obrigat rio viola es de sintaxe ou dom nio erros ortogr ficos ou representa es diferentes dos mesmos valores 7 e utiliza o de sin nimos ou entidades do mundo real 7 e exist ncia de duplicados Nas suas formas mais simples os PQD manifestam se quotidianamente nas mais diversas actividades Muitos e variados exemplos poderiam ser dados mas considere se apenas as seguintes situa es 7 uma carta que n o chega ao destinat rio devido a erros existentes nos dados que comp em o endere o e g na rua no n de pol cia ou no c digo postal 7 o envio de correspond ncia ou e mails em duplicado como consequ ncia da exist ncia de redund ncia na BD subjacente Os PQD acarretam custos elevados s organiza es Eckerson 2002 Estes custos resultam dos preju zos causados e g envio de correspond ncia em duplicado e dos valores monet rios que necess rio despender para proceder sua Detec o e Correc o DC No entanto o impacto da fraca QD n o apenas quantific vel em termos de custos Na realidade o efeito da fraca QD pode afectar as organiza es ao n vel operacional t ctico e estrat gico Redman 1996 Ao n vel operacional a fraca QD tem reflexo negativo na satisfa o do cliente Os clientes esperam que os seus dados sejam correctamente mantidos pelo que a exist ncia de erros sistem ticos
530. s pelas correc es efectuadas inicialmente ao n vel da rela o e posteriormente ao n vel do atributo Suponha se que a execu o destas opera es redunda na identifica o de novos PQD O utilizador procede correc o dos PQD detectados sendo as altera es efectuadas a n vel de atributos e tuplos armazenadas nas rela es auxiliares respectivas Da execu o da sequ ncia de OD constata se a inexist ncia de problemas neste NG Uma vez que j n o existem problemas neste n vel o processo de detec o volta a reiniciar se desde o n vel do atributo O objectivo novamente garantir que as correc es efectuadas ao n vel do tuplo n o resultam em problemas ao n vel do atributo Na execu o das OD que dizem respeito a este NG s o apenas considerados os atributos e tuplos que sofreram altera es fruto das correc es efectuadas no seguimento dos problemas detectados no NG do tuplo Note se que as correc es efectuadas ao n vel da rela o e como consequ ncia destas as realizadas ao n vel do atributo j foram objecto de execu o das OD deste NG Da execu o das OD respeitantes ao NG do atributo n o resulta a detec o de qualquer PQD Assim a detec o dos PQD prossegue com as opera es relativas ao NG do tuplo Uma vez que n o foram detectados novos problemas ao n vel do atributo a execu o das sequ ncias de opera es do NG do tuplo visa identificar os problemas que Cap tulo 7 Modelo Propost
531. s pelo utilizador apresenta inconvenientes designadamente e Obriga a que seja efectuado um esfor o na sua implementa o o que significa disp ndio de valores monet rios e As fun es t m que ser desenvolvidas por utilizadores altamente especializados e programadores impedindo que a LD possa ser realizada por pessoal menos especializado e O desenvolvimento de certas fun es n o trivial e g detec o da exist ncia de circularidade entre tuplos num auto relacionamento podendo n o ser adoptada a melhor forma de o fazer o que se reflecte negativamente no desempenho da LD 4 5 2 Ferramentas Comerciais Na Tabela 4 4 apresenta se a cobertura dada aos PQD que fazem parte da taxionomia pelas cinco ferramentas comerciais apresentados na Sec o 3 5 2 do Cap tulo 3 cujas designa es s o WinPure Clean and Match 2007 WinPure 2007 ETI Data Cleanser E TI 2007a Trillium Quality Trillium Software 2007a dfPower Quality DataFlux 2007a e HIQuality Human Inference 2007a Esta ltima ferramenta altamente modular tendo sido considerados os seguintes m dulos na an lise efectuada Cleanse Name e Address Identify e Merge A identifica o da cobertura ou n o dos PQD pelas ferramentas foi efectuada com base na informa o t cnica dispon vel nos ses das empresas propriet rias e nos casos em que foi poss vel na pr pria experimenta o das vers es de demonstra o Tabela 4 4
532. s postais Portugueses Caso exista um mapeamento entre um atributo e esta ltima sub propriedade ilustrado na Figura 9 6 a OD de viola o de sintaxe definida ao n vel da sub propriedade opera o C sobrep e se OD de viola o de sintaxe definida ao nivel do c digo postal opera o A sendo automaticamente instanciada opera o C Al m desta a OD de viola o de dom nio Opera o D tamb m instanciada opera o D Opera es de LD Representa o do Mundo Real ON C digo Postal WHERE C digo Postal NOT LIKE i DETECT Syntax Violation DETECT Domain Violation B Conceito 1 ON C digo Postal Portugu s lt gt gt ESA WHERE C digo Postal Portugu s NOT IN ae C digo Postal DETECT Syntax Violation ON C digo Postal E U A a WHERE C digo Postal E U A NOT LIKE C digo Postal Codigo Postal DETECT Domain Violation Portugu s E U A ON C digo Postal E U A WHERE C digo Postal E U A NOT IN BaseDados Y DETECT Syntax Violation C ON zc OF Tabela_Y2 FROM BaseDados_Y WHERE zc NOT LIKE Tabela Y1 Tabela Y2 Tabela Yn DETECT Domain Violation D ON zc OF Tabela_Y2 FROM BaseDados_Y Propriedade b Propriedade a Nivel da Ontologia Nivel do Esquema de Dados Figura 9 6 Sobreposi o na instancia o das opera es conceptuais de LD instancia o autom tica das opera es conceptuais d
533. s que fazem parte de cada uma das tr s taxionomias Cap tulo 2 Qualidade de Dados 29 2 7 Processo de Melhoria da Qualidade Baseado nos Dados A melhoria da QD centrada exclusivamente nos dados constitui um processo que envolve a realiza o de actividades de detec o e actividades de correc o As actividades de detec o t m como objectivo auxiliar a identificar alguns PQD sem ser necess ria qualquer interven o humana Esta caracter stica importante nas seguintes situa es 7 o utilizador n o est disponivel interessado em especificar as opera es de detec o a efectuar 77 ainda que o pretenda o utilizador n o tem capacidades conhecimentos para efectuar essa especifica o As actividades suscept veis de serem efectuadas para detec o dos PQD s o Data Profiling DP e an lise de dados AD As actividades de correc o visam solucionar os PQD detectados ou previamente j conhecidos As actividades suscept veis de serem efectuadas para correc o dos PQD s o transforma o de dados TD limpeza de dados LD e enriquecimento de dados ED No caso particular da LD a detec o dos PQD tamb m suportada mas com um cariz diferente da efectuada no DP e na AD A LD obriga a que as opera es a realizar sejam especificadas pelo utilizador Na realidade a generalidade dos PQD apenas pode ser identificada com base em conhecimento espec fico do dom nio em causa Um processo de melhoria da
534. s r cios das probabilidades associados aos atributos individuais 7e probabilidades marginais s o designados de pesos de concord ncia individual Estes pesos representam a contribui o de cada atributo comum na classifica o dos pares de registos As probabilidade de D e N s o tamb m designadas de par metros de correspond ncia Winkler 2003 Um dos inconvenientes deste m todo consiste na necessidade de conhecimento a priori sobre os valores das probabilidades marginais Em Jaro 1989 s o apresentados dois algoritmos que permitem estimar os seus valores de forma autom tica O m todo tamb m parte do pressuposto que os registos podem ser armazenados em mem ria prim ria e que a realiza o do produto Cartesiano entre estes exequ vel Gravano et al 2003 Em BD de elevada dimens o este pressuposto pode n o ser realista 3 4 2 mbito dos M todos de Detec o de Duplicados Quanto ao mbito os m todos de detec o de duplicados podem ser classificados como sendo O Dependentes do dominio Estes m todos obrigam exist ncia de conhecimento espec fico do dom nio para que a detec o de duplicados possa ser levada a cabo Uma abordagem muito usada na detec o de duplicados consiste em especificar um conjunto de regras que definem as situa es perante as quais dois registos s o considerados duplicados em Hern ndez e Stolfo 1998 este conjunto de regras designado de Zeoria equacional Estas regras
535. s rela es para representar a mesma propriedade de sin nimos s H igual grau de detalhe dos valores usados entre as Exist ncia rela es para representar a mesma propriedade de hom nimos D Diferentes granularidades Os valores de uma chave estrangeira existem como chave de representa o prim ria na rela o com a qual h um relacionamento Viola o de Os valores de um conjunto de atributos integridade referencial identificadores da entidade s o iguais ou equivalentes entre tuplos de rela es diferentes Os valores dos atributos dos tuplos das v rias Tuplos rela es violam alguma restri o de integridade duplicados S Inexist ncia Viola o de restri o de PQD de integridade Figura 4 11 rvore de decis o para identifica o dos problemas que ocorrem ao n vel de m ltiplas rela es O Diferentes granularidades de representa o A mesma propriedade do mundo real encontra se representada com diferentes n veis de detalhe entre as rela es e g para representar a propriedade estado civil na rela o Pacientes da FD 1 s o usados os valores casado solteiro vi vo e divorciado enquanto que na rela o Doentes da FD 2 s o usados os valores casado solteiro e ontro O Viola o de integridade referencial Os valores dos atributos que formam uma chave estrangeira numa rela o n o surgem como valores de chave prim ria na rela o com a qual existe um relacionamento e g um
536. s se recorrer ao m todo da vizinhan a ordenada com multi passagem e 7 implementa o eficiente das OD e OC a n vel algor tmico seguindo se as formaliza es expostas respectivamente nos Cap tulos 5 e 6 Apesar destas naturalmente que h margem para a introdu o de outras optimiza es na execu o das opera es de DC Este aspecto ser objecto de trabalho futuro a O suporte concedido pelo SmartClean ocorr ncia de excep es muito simples O mecanismo concebido baseia se nas potencialidades de manipula o de excep es existentes na linguagem de programa o Java Sempre que ocorre uma situa o n o prevista que implicaria a interrup o da execu o da opera o esta ignorada sendo o tuplo ou tuplos causadores e o respectivo motivo da excep o registados numa tabela auxiliar criada na BD que armazena os PQD identificados Assim a execu o da opera o 340 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica em causa continua com toda a normalidade Compete ao utilizador analisar o conte do destas tabelas e solucionar estas situa es an malas ou adaptar a opera o de LD respectiva para que esta manipule devidamente as situa es excepcionais Como j se referiu no Cap tulo 7 Sec o 7 7 a inexist ncia de uma interface gr fica uma limita o que ser suprida no futuro Na maioria dos prot tipos analisados esta limita o tamb
537. s seus problemas de qualidade Isto conhecido como o princ pio do lixo entra lixo sai Uma taxionomia de Problemas de Qualidade dos Dados PQD constitui uma das contribui es que resulta do trabalho de doutoramento apresentado nesta disserta o Os problemas encontram se organizados pelo N vel de Granularidade NG do modelo relacional em que ocorrem e g atributo tuplo rela o O mbito do trabalho encontra se restrito a este tipo de dados Outra contribui o constitui a defini o de um modelo concebido exclusivamente para a DC dos PQD e para a Limpeza de Dados LD O modelo encontra se em total conson ncia com a tese defendida de que os PQD t m de ser identificados e de imediato solucionados seguindo uma sequ ncia predefinida baseada numa aproxima o ascendente 7 e bottom up por NG Os primeiros PQD manipulados ze detectados e corrigidos s o os que ocorrem no NG mais elementar do modelo relacional e o atributo A sequ ncia termina com os problemas que ocorrem no NG de maior complexidade 2 e m ltiplas rela es de diferentes fontes de dados O utilizador especifica as opera es de DC dos PQD inclu dos na taxionomia com base em duas linguagens declarativas especialmente desenvolvidas para esse efeito A sintaxe de cada linguagem formalizada nesta disserta o A sem ntica operacional inerente opera o que conduz detec o ou correc o de cada PQD encontra se tamb m for
538. s suas solu es as mesmas potencialidades do que as existentes nas solu es concorrentes Esta constata o permite inferir que solu es de outras empresas dar o aproximadamente a mesma cobertura aos PQD da taxionomia Nalguns PQD o suporte que dado a nivel de DC encontra se limitado a dados de um determinado tipo e g nomes de pessoas endere os postais endere os de e mail pelo que se pode considerar que este apenas parcial Nestas ferramentas n o existem potencialidades de extensibilidade e de incorporarem fun es definidas pelo utilizador para a detec o ou correc o de PQD espec ficos Nem sequer poss vel ao utilizador a execu o de instru es SQL As ferramentas analisadas est o muito orientadas para o utilizador n o perito O suporte dado correc o dos PQD maior do que o dado detec o A generalidade das ferramentas analisadas a excep o a ferramenta WinPure faz parte de um pacote que integra outras ferramentas eg data profiling enriquecimento de dados que em conjunto visam a melhoria da qualidade dos dados As ferramentas de data profiling geram automaticamente um conjunto de resultados que permitem a detec o de v rios PQD por este motivo que a detec o de certos problemas mesmo triviais e g valor em falta n o suportada nas ferramentas analisadas Importa ent o conhecer a cobertura que as ferramentas comerciais de data profiling d o detec o dos
539. sUniformiza o Defini o TermosUniformiza o OF VALUES Termo RestantesTermos Termo identificador Restantes Termos TermoAdicional TermoAdicional Termo DependentesDe Defini oColunasDependentes Defini oColunasDependentes DEPENDENT ON Coluna RestantesColunas FonteTermosUniformizacao Defini oFonteTermos DefinicaoFonteTermos USING VALUES OF NomeColuna DasTabelas NaBaseDados UsandoTabelas gt FROM Tabelas Tabelas expressao from sql UsandoCondi o e WHERE Condi o Condi o condi o where sal 166 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A linguagem de especifica o das OC que acabou de ser definida na sua globalidade ser novamente apresentada na Sec o 6 3 e seguintes devidamente instanciada a cada opera o que se prop e 6 2 2 Sem ntica das Opera es de Correc o As defini es sem nticas de car cter espec fico necess rias formaliza o de algumas OC s o apresentadas na formaliza o a que dizem respeito As defini es que a seguir se apresentam possuem um car cter geral uma vez que s o utilizadas em diversas formaliza es seja R uma rela o com o seguinte esquema R a dm Im 1 gt sImtn CM que m Am representam os atributos que formam a sua chave prim ria seja atr um atributo que n o pertence chave prim
540. se Australian Computer Journal 30 4 1998 pp 122 128 Simitsis A Vassiliadis P e Sellis T 2005 Optimizing ETL Processes in Data Warehouses In Proceedings of the 21 International Conference on Data Engineering T quio Jap o Abril de 2005 pp 564 575 Strong D M 1997 IT Process Designs for Improving Information Quality and Reducing Exception Handling A Simulation Experiment Information and Management 31 1997 pp 251 263 Strong D M Lee Y W e Wang R Y 1997 Data Quality In Context Communications of the ACM 40 5 1997 pp 103 110 Tejada S Knoblock C A e Minton S 2001 Learning Object Identification Rules for Information Integration Information Systems 26 2001 pp 607 633 Tejada S Knoblock C A e Minton S 2002 Learning Domain Independent String Transformation Weights for High Accuracy Object Identification In Proceedings of the 8 ACM SIGKDD International Conference on Knowledge Discovery and Data Mining Alberta Canada Julho de 2002 pp 350 359 Trillium Software 2007a TS Quality Version 10 0 Enterprise Services Edition Dispon vel em http www trilliumsoftware com site content resources library pdf_detail asprid 147 amp pdfRecorded 1 no dia 03 04 2007 as 22 15 Trilltum Software 2007b TS Discovery Version 5 0 Product Overview Dispon vel em http www trilliumsoftware com site content resources library pdf_detail asprid 14 8
541. seguida s o apresentadas sucessivamente as v rias opera es de LD efectuadas em cada N vel de Granularidade NG de acordo com a sequ ncia de manipula o dos Problemas de Qualidade dos Dados PQD defendida no modelo proposto Assim come a se por expor as opera es efectuadas ao n vel do atributo e termina se com as que envolvem rela es de BD diferentes 8 1 Introdu o Nos Cap tulos 5 e 6 apresentaram se as formaliza es respectivamente das Opera es de Detec o OD e Opera es de Correc o OC dos diversos tipos de PQD No cap tulo anterior apresentou se o modelo proposto para a LD que articula a execu o de ambas as opera es Estes tr s cap tulos materializaram se num prot tipo baptizado com a designa o SmartClean O presente cap tulo surge na sequ ncia natural dos tr s anteriores Ap s as formaliza es efectuadas ap s a sua concretiza o numa ferramenta inform tica apenas faltava demonstrar o interesse e validade de todo o trabalho desenvolvido numa situa o real de LD O objectivo deste cap tulo justamente esse O caso eleito para testar o interesse e validade do S7zartClean e do modelo de LD que se encontra subjacente do dom nio das d divas de sangue concedidas a uma determinada institui o an nima que procede a colheitas Uma vez que n o houve a possibilidade de aceder a um indiv duo com conhecimentos sobre o dom nio e os dados em quest o a realiza o das op
542. sesssssssesseeeeeeeeseeseeeeeeseeeeeseeeeeeeseeeseeeeeaeaeaeas 222 7 3 2 2 Atributo Contexto Multi Valor ccccsccovscusscavscnescovsenas cuvscnsscnssinan nus nen doado nus nun nerve do dad 224 1 323 TUpl cs stsstinscrsitionsensttsashatitsastarsaasstancanctuatunrsnas A A ease RERE 226 TDD AOR OLA CAO PAETAI te aa a ead cado dai es doen a e ta 227 7 3 2 5 Multi Rela o Mono Fonte Multi Fonte de Dados eceesessssessesessesesseseesereeseseeeseeeneens 230 7 4 MOTOR DE EXECU O INCREMENTAL DAS OPERA ES DE DETEC O sssessserreeeeeeeees 234 7 4 1 EXECU O EM CADA NIVEL DE GRANULARIDADE sceccssssssssescseesscecsesesscecsesesscecsesessescscsensseecseaes 235 7 4 1 1 Atributo Contexto do Valor Individual oo ccecsesssssesesseeseseseseeeseeeseseseeeseseseeeeeseseeeeeaeaeaees 235 TAI Atributo Contexto Multi Valot ainsi sevasevevesavesavenavevevenavesavenavesevenavenavenasetincs 238 TANI TU PIO corta paca dj la cu cega saat cada es O 241 TA ASA CR CLA CAO uni cede cwes exde auth coda ewes tuts wth duds cuts GATE doq quis eoth AE ents eas Alda Asa aaa 243 7 4 1 5 Multi Rela o Mono Fonte Multi Fonte de Dados ccessessssessesessesessesesseseeeseeeseeseaeens 244 7 4 2 EXECU O POR N VEL DE GRANULARIDADE vicccecscssscssscscscscscscscscscscscscscscscscscscacsvsvssavacacscscsssceeeseeees 246 7 5 MOTOR DE EXECU O DAS OPERA ES DE CORREC O ssssccccscsssssssseeccesesssssssseeeeeseseees 254 TSL MOD
543. seus autores merecem ser analisados e medidos As dimens es da QD representam propriedades dos dados e g correc o Scannapieco ef al 2004 18 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A escolha de um conjunto de dimens es sobre as quais ser efectuada a avalia o da QD constitui o passo inicial de qualquer iniciativa de melhoria da qualidade Frequentemente a QD expressa sob a forma de uma hierarquia de categorias sendo estas refinadas nas dimens es da qualidade Luebbers ef al 2003 Um PQD definido como uma qualquer defici ncia encontrada numa ou mais dimens es da qualidade o que torna os dados impr prios para a finalidade pretendida Baskarada e Koronios 2006 Nos pontos seguintes referem se sucintamente seis propostas de dimens es da QD vulgarmente encontradas na literatura da rea O Proposta de Wang e Strong Em Wang e Strong 1996 s o propostas quinze dimens es para a QD distribu das por quatro categorias de acordo com o apresentado na Tabela 2 1 Entre as v rias propostas de dimens es da QD esta a mais referenciada Tabela 2 1 Dimens es da QD propostas em Wang e Strong 1996 Categoria Dimens es Intr nseca Dimens es referentes Correc o objectividade credibilidade natureza dos pr prios dados reputa o Representa o Dimens es relativas ao formato Interpretabilidade facilidade de e sig
544. sh que simplesmente transfere os dados para a tabela de sa da e as usuais actividades de agrega o e aplica o de fun o Encontram se tamb m dispon veis as seguintes actividades respons veis por transforma es espec ficas para a cria o de armaz ns de dados atribui o de chave de substitui o normaliza o e desnormalizagao Transforma es bin rias Neste grupo encontram se as actividades de join union e difference O Instancia o O modelo conceptual suporta a instancia o e reutiliza o das actividades template A instancia o destas actividades ocorre neste n vel originando actividades adaptadas a cada processo espec fico de ETC Estas actividades s o aplicadas sobre os dados em quest o Novos desenvolvimentos deste trabalho encontram se em Simitsis e a 2005 no qual apresentada uma proposta te rica para a optimiza o l gica do processo de ETC 3 5 1 3 IntelliClean Na base do IntelliClean Lee et al 20002 Low et al 2001 encontra se uma arquitectura baseada em conhecimento para a LD com especial nfase na elimina o de duplicados As opera es s o especificadas sob a forma de regras sendo a sua aplica o efectuada pelo motor de infer ncia de um sistema pericial A arquitectura decomp e o processo de LD nas seguintes fases distintas O Pr processamento Nesta fase s o corrigidos os problemas sint cticos existentes nos dados Entre estes
545. sim estas OD s o executadas segundo a ordem pela qual foram especificadas pelo utilizador Mediante a sem ntica subjacente a estas opera es ao utilizador a quem compete coloc las pela ordem de execu o adequada O presente m dulo respons vel pela cria o das sequ ncias de depend ncias das OD especificadas no contexto dos m ltiplos valores do atributo Para cada atributo de cada rela o de cada BD que se encontre envolvido em opera es ao n vel dos m ltiplos valores do atributo elaborada uma sequ ncia de depend ncias Na elabora o de cada sequ ncia de depend ncias de 226 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica execu o das OD recorre se mesma abordagem descrita no ltimo par grafo da sec o anterior contexto do valor individual do atributo 7 3 2 3 Tuplo O NG do tuplo composto apenas por um tipo de PQD viola o de restri o de integridade Assim neste nivel parece n o fazer sentido falar se em sequ ncia de OD No entanto tal como no contexto multi valor do atributo o utilizador pode especificar m ltiplas OD de viola o de restri o de integridade Estas opera es podem incidir sobre atributos diferentes ou sobre os mesmos atributos Na primeira situa o as OD s o executadas em paralelo uma vez que pertencem a sequ ncias de depend ncias diferentes Na segunda situa o em que h atributos comuns nas opera
546. smo dador tem de corresponder sempre o mesmo factor Rh atributo Rh De seguida ilustra se a primeira OD de viola o de depend ncia funcional DETECT FUNCTIONAL DEPENDENCY VIOLATION ON Abo FROM Colheitas OF BDD DEPENDENT ON Dador Da execu o desta OD resultou a identifica o das viola es de depend ncia funcional que se apresentam na Tabela 8 35 302 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 8 35 Resultados da execu o da 1 OD de viola o da depend ncia funcional na tabela Colheitas 68474 68475 68476 54078 54079 54080 205622 205623 205624 206718 206719 206720 231860 191203 191204 QUO e O SD GE O O CO O DE DO a A ae 191205 A execu o da segunda OD de viola o de depend ncia funcional redundou na identifica o de 10 PQD deste tipo Na Tabela 8 36 apresenta se os valores envolvidos numa dessas viola es de depend ncia funcional Cap tulo 8 Estudo de Caso de Limpeza de Dados 303 Tabela 8 36 Resultados da execu o da 2 OD de viola o da depend ncia funcional na tabela Colheitas 38106 38107 88364 88365 88366 136650 136651 136652 231471 231472 231473 182214 182215 182216 Nesta tabela efectuou se uma OD que visou identificar a exist ncia de tupl
547. smo ou de outros atributos Por outro lado a detec o dos PQD nos restantes NG depende da resolu o dos problemas que ocorrem no contexto do valor individual do atributo Por exemplo a exist ncia de um erro ortogr fico pode 2 impedir a detec o da exist ncia de sin nimos NG atributo contexto multi valor 77 impedir a detec o da viola o de uma determinada restri o de integridade NG tuplo 717 resultar na detec o de uma viola o de depend ncia funcional NG rela o 7 resultar na 220 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica detec o de uma viola o de integridade referencial NG multi rela o mono fonte de dados e 7 impedir a detec o da exist ncia de tuplos duplicados NG multi rela o multi fonte de dados Os pr ximos problemas a serem manipulados continuam a ser os que se manifestam no NG do atributo mas agora os que se verificam no contexto dos seus m ltiplos valores quando analisados conjuntamente e g viola o de unicidade exist ncia de sin nimos O objectivo consiste em manipular os PQD que afectam cada atributo quando considerado isoladamente 7 e apenas uma coluna da rela o e cuja resolu o depende apenas dos seus valores e n o dos valores de outros atributos da rela o Nesta fase da sequ ncia os eventuais problemas existentes ao n vel do valor individual do atributo j foram detectados e so
548. so a an lise de semelhan a n o permita a obten o de um resultado a fun o nada devolve Seja tokenize uma fun o que recebe um valor e devolve os tokens que o comp em Seja o conjunto de fokens assim definido S tokenize v t a ter sae RA Existe um erro ortogr fico no atributo a e RA sse ds sS spells d s O Viola o de dom nio Diz se que h uma viola o de dom nio no atributo a R A sse 3 t e r Uta Dom a Cap tulo 4 Problemas de Qualidade dos Dados 95 Uma viola o de dom nio num atributo cujo dom nio do tipo enumerado textual pode corresponder a um e Valor sobrecarregado Seja v t uma substring de v ta e S um conjunto de nomes de atributos assim definido a a e RNA A Dom a enumerado textual Existe um valor sobrecarregado no atributo a S ss 3 te r vta Dom a A v ta E Dom a e Valor incompleto Seja v t a uma substring de v t a e Sum conjunto de nomes de atributos assim definido fa ae R A Dom a enumerado textual Existe um valor incompleto no atributo a e S sse 3 ter v ta Dom a A v ta e Dom a 4 4 2 2 Contexto Multi Valor Seguidamente apresentam se as defini es formais dos problemas que ocorrem quando se consideram os v rios valores de um atributo O Viola o de unicidade Seja S o conjunto de nomes de atributos assim definido a ae RA Aa um atributo de valor unico Existe uma viola
549. spondem a uma s localidade Nestes casos o valor respectivo do atributo Localidade Cap tulo 8 Estudo de Caso de Limpeza de Dados 313 utilizado na actualiza o do atributo LocPostal Nos restantes casos 7 e mais de uma localidade para o mesmo valor de c digo postal o valor deste atributo permanece inalterado uma vez que h mais do que uma possibilidade de correc o Na correc o das viola es de restri o de integridade detectadas entre as tabelas Dadores BDD e Codigos Postais BD Dom nios executou se uma OC id ntica anterior Opera es de Detec o nova itera o Da nova execu o da OD de viola o de restri o de integridade entre as tabelas de CodigosPostais BDD e Codigos Postais BD Dom nios resultou a identifica o de 37 problemas deste tipo Assim sendo a OC solucionou 92 viola es de restri o de integridade Ap s uma an lise s viola es detectadas constatou se que nos valores do atributo LocPostal se encontravam lugares em vez de localidades e g Carvalhos um lugar da localidade de Pedroso A OC n o solucionou estes problemas em virtude de existir mais do que uma localidade poss vel para o mesmo valor de c digo postal Uma vez que n o se conseguiu encontrar uma BD que contivesse informa o sobre os lugares e as respectivas localidades a que estes pertencem n o foi poss vel continuar a solucionar os PQD por via autom tica Como o n mero de viola es ain
550. ss o RD lt 7 a R Z1 No caso de existir a rela o que armazena os PQD isso significa que j se verificou uma execu o anterior da OD Nesta situa o apenas s o sujeitos execu o da opera o de detec o os valores do atributo onde foram anteriormente identificados PQD Todos os restantes valores s o ignorados uma vez que j foram previamente verificados e n o se detectou o PQD em quest o 5 3 1 2 Viola o de sintaxe dom nio Formaliza o Sint ctica DETECT PQD ColunasAlvo DasTabelas DasBasesDados UsandoAtribui es BaseadoEm PQD SYNTAX VIOLATION DOMAIN VIOLATION BaseadoEm Defini oDom nio Defini oCondi o Formaliza o Sem ntica No caso de se tratar da detec o de viola o de sintaxe dom nio com base numa condi o suscept vel de ser expressa em SQL a opera o envolve identificar as chaves prim rias dos tuplos e os respectivos valores de atr que obedecem condi o especificada 7 e que representam uma viola o de sintaxe ou dom nio Estes resultados s o armazenados na rela o que resulta da OD 2 e Z1 A sem ntica que se encontra subjacente opera o a seguir apresentada Algoritmo Detec o Viola o Sintaxe Dom nio Baseada em SQL amp seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de R onde existem viola es de sintaxe dom nio em atr com o seguinte esquema Z1 d dm ath in cio
551. ss o superior e inferior Winkler 2004 Se y eT consistir essencialmente de concord ncias ent o as possibilidades de ocorrer entre os duplicados s o bem maiores do que ocotrer entre os n o duplicados Isto faz com que o valor do r cio R seja elevado Por outro lado se y El composto essencialmente de discord ncias ent o o valor do r cio R reduzido As regras acima apresentadas separam o conjunto y I em tr s reas disjuntas A rea lt RS L corresponde a uma rea de indecis o que obriga a uma an lise do utilizador Os pares com um valor de R superior ao limiar superior s o considerados duplicados Os pares com um valor de R inferior ao limiar inferior s o considerados n o duplicados Os restantes pares s o considerados como potenciais duplicados Se L ent o as regras decis o podem ser usadas para separar os registos que est o num conjunto daqueles que n o est o As probabilidades P concord ncia nome D P concord ncia morada D P concord ncia nome Nj e concord ncia morada Nj s o designadas de probabilidades marginais Em fun o da concord ncia entre atributos comuns esta teoria baseia se nestas probabilidades marginais para 50 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica determinar se h correspond ncia ou n o entre dois registos A D e Pf N s o designadas respectivamente de probabilidades de D e M Os logaritmos do
552. ssam ter Este tipo de regras acompanhado pela sua probabilidade resultante do r cio entre o n mero de registos em que o antecedente e consequente da regra verdadeiro e o n mero total de registos em que o antecedente verdadeiro independentemente do consequente o ser ou n o Este tipo de regras tamb m acompanhado pelo n vel de signific ncia das regras representativo do seu grau de validade A signific ncia resulta da subtrac o unidade do erro de probabilidade sendo este uma quantifica o da probabilidade da regra existir acidentalmente no conjunto de dados em quest o regras ortogr ficas Um exemplo deste tipo de regras O valor Loja do PC s aparece 52 vezes no atributo Cliente h 2 caso s que cont m valores similares O objectivo principal destas regras contribuir para a identifica o de erros ortogr ficos Um determinado valor considerado como erro ortogr fico se semelhante a um outro valor que conste no mesmo atributo sendo a sua frequ ncia muito baixa e a frequ ncia deste ltimo muito elevada Ap s a fase de descoberta a ferramenta WizRyle identifica as excep es s regras No entanto nem todas as excep es s o assinaladas como sendo poss veis problemas de qualidade Para evitar o reporte de falsos problemas de qualidade calculado o grau de improbabilidade de cada excep o Este valor indica em que medida a excep o improv vel relativamente ao conjunto
553. sta OD e a de detec o de valor sobrecarregado absolutamente irrelevante No caso optou se por colocar em primeiro a de detec o de valor incompleto ficando como ltima opera o da sequ ncia a detec o de valor sobrecarregado A execu o sequencial destas duas opera es importante uma vez que os valores identificados como estando incompletos j n o s o verificados pela OD de valor sobrecarregado Note se que um valor n o pode estar ao mesmo tempo incompleto e sobrecarregado No contexto do valor individual do atributo o presente m dulo respons vel pela cria o das sequ ncias de depend ncias das OD especificadas Para cada atributo de cada rela o de cada BD que se encontre envolvido em opera es ao n vel do valor individual do atributo criada uma sequ ncia de depend ncias de execu o As OD especificadas pelo utilizador come am por ser agrupadas por atributo A cada OD relativa ao mesmo atributo atribu do um n mero sequencial inteiro que corresponde ordem que esta ocupa na sequ ncia de execu o proposta Seguidamente as OD que incidem sobre o atributo em quest o s o seriadas em fun o desse n mero sequencial o que permite estabelecer a ordem pela qual s o executadas 7 3 2 2 Atributo Contexto Multi Valor Na Figura 7 4 apresenta se a sequ ncia de execu o das OD dos problemas que ocorrem ao n vel do atributo mas agora no contexto dos seus m ltiplos valores 7 e colun
554. stais Uma interface gr fica suporta e simplifica este processo de configura o Uma base de conhecimento fornece conhecimento sobre os standards formatos e sistemas de c digos postais usados nos endere os espec ficos de cada pa s De modo a garantir a fiabilidade do processo a base de conhecimento espec fica de cada pa s actualizada frequentemente pela empresa propriet ria da ferramenta O grau de funcionalidades oferecidas pelo m dulo varia de pa s para pa s Os formatos de uniformiza o poss veis em cada pa s est o dispon veis sob a forma de templates O m dulo Hlquality Identify Human Inference 20071 identifica potenciais registos duplicados mesmo que os seus valores n o sejam exactamente iguais e g devido exist ncia de erros ortogr ficos abreviaturas acr nimos sequ ncias diferentes de palavras Uma base de conhecimento armazena o conhecimento necess rio identifica o dos registos duplicados e g conhecimento lingu stico sob a forma de regras e factos O conhecimento crucial n o s para a identifica o dos registos verdadeiramente similares como para a correcta identifica o do seu grau de semelhan a As compara es s o efectuadas envolvendo os diversos atributos dos registos e g nomes pr prios apelidos nomes de empresas datas Apesar do m dulo poder ser usado em dados de in meros pa ses as melhores precis es na identifica o de duplicados s o alcan adas nos dados ori
555. ste tipo de PQD 8 4 1 Tabela Colheitas Opera es de Detec o Na tabela Colheitas a seguinte restri o de integridade tem de ser respeitada o valor do atributo referente ao ano da colheita 7e AnoColh tem de ser igual ao valor do atributo relativo ao ano da data da colheita 7e Data Seguidamente apresenta se a OD executada com o objectivo de identificar as viola es a esta restri o de integridade DETECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF ROW ON Data AnoColh FROM Colheitas OF BDD WHERE YEAR data lt gt AnoColh Da execu o desta OD resultou a identifica o da viola o de restri o de integridade que se apresenta na Tabela 8 30 Tabela 8 30 Resultados da OD de viola o de restri o de integridade na tabela Colheitas Dm om mor Opera es de Correc o Uma vez que apenas se detectou um nico PQD a sua correc o efectuou se manualmente O valor do atributo AnoColh do tuplo em quest o foi actualizado para 2000 Neste caso n o fazia sentido especificar se uma OC para solucionar uma s viola o de restri o de integridade Cap tulo 8 Estudo de Caso de Limpeza de Dados 297 8 4 2 Tabela Analises Opera es de Detec o A restri o enunciada para a tabela Co heitas tamb m se verifica na tabela Analises Nesta tabela a execu o da OD correspondente n o redundou na identifica o de viola es restri o de integridade enunciada 8 4 3 Tabela
556. sticas do SmartClean As caracter sticas adoptadas como termo de compara o s o as mesmas que se encontram na Tabela 3 2 O significado de cada caracter stica encontra se definido na referida sec o Cap tulo 10 Conclus o 339 Tabela 10 1 Caracter sticas do SmartClean comparativamente aos prot tipos de investiga o de LD Intelli Potter s Clean Wheel Tipos de fontes suportadas PT gt Preocupa es de ADA A Sim Sim N o i N o Sim optimiza o Capacidades extensibilidade Sim Sim Sim Sim Sim Suporte excep es Sim Sim N o N o N o Sim Interface com o N o N o a N o N o os Gr fico Gr fico utilizador Grafico grafico gr fico gr fico Potencialidades de E Sim N o N o i Nao Sim anula o Execu o x Sim N o N o N o Sim incremental Defin sequ ncia execu o operag Manual Os resultados exibidos na Tabela 10 1 suscitam os comentarios que a seguir se apresentam a A semelhan a do que acontece na maioria dos prot tipos de investiga o analisados o SmartClean tamb m tem em conta os aspectos relacionados com a optimiza o da execu o das opera es de DC Estas preocupa es traduzem se na 7 execu o paralela das OD que pertencem a sequ ncias de depend ncias diferentes 77 execu o em simult neo das OC especificadas para solucionar os PQD detectados 777 possibilidade de na detec o de duplicado
557. stri o de integridade Na Tabela 8 38 apresentam se as OD efectuadas entre cada par de tabelas da BDD Tabela 8 38 OD executadas no NG multi rela o da BDD Viola o integr Viola o restr Tabelas referencial Integridade Dadores Brigadas Dadores TipoDadiva Dadores Conclusoes Dadores Sexo Dadores EstadoCivil Dadores Profissoes Dadores CodigosPostais Dadores Analises Dadores Colheitas Colheitas Analises Colheitas TipoDadiva Colheitas Inutilizacoes Colheitas Hospitais De seguida apresentam se os resultados obtidos com a execu o das diversas OD efectuadas em cada um dos tipos de problemas 2 e viola o de integridade referencial e viola o de restri o de integridade 8 6 1 Viola o de Integridade Referencial Opera es de Detec o H excep o do par de tabelas Dadores Analises em que se estabelece um relacionamento de wm para um em todos os outros pares o relacionamento existente de um para muitos Com o objectivo de identificar eventuais viola es de integridade referencial entre cada par de tabelas Cap tulo 8 Estudo de Caso de Limpeza de Dados 307 efectuou se as OD respectivas A t tulo ilustrativo a seguir apresenta se uma dessas OD no caso para o relacionamento existentes entre as tabelas de Dadores e Brigadas DETECT REFERENTIAL INTEGRITY VI
558. t e atm com os seguintes esquemas Zn Anatn e Z2Ab boato in cio Z1 Ta ap atn Cont R gt lt Ean R Fate 5 Z2 T5 atr Some Sate S ary R Cap tulo 5 Formaliza o das Opera es de Detec o 153 fim 5 6 6 Viola o de integridade referencial Formaliza o Sint ctica DETECT REFERENTIAL INTEGRITY VIOLATION ColunasAlvo DasTabelas DasBasesDados Defini oColunasDependentes Defini o TabelasRefer ncia Defini oBasesDadosRefer ncia UsandoCondi o Formaliza o Sem ntica A detec o deste PQD envolve identificar os tuplos nos quais os atributos que formam a chave estrangeira em quest o possuem uma combina o de valores inexistente como chave prim ria na rela o associada A rela o resultante desta OD ze Z1 armazena os valores das chaves prim rias dos tuplos em que tal acontece assim como os respectivos valores dos atributos que constituem a chave estrangeira Algoritmo Detec o Viola o Integridade Referencial E seja air sImtn O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos que formam a chave estrangeira de R assim definido C fc c faz parte da chave estrangeira de R A ce A ie CCA seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de Re os respectivos valores que constituem viola es integridade referencial com o seguinte esquema ZA liy
559. t results from the work done and it is probably the one that has the largest visibility Having the test of SwartClean as a goal and therefore the demonstration of the validity of the underlying data cleaning model the prototype is used in a case study The results achieved confirm its applicability validity and usefulness in the DC of DQP As a last contribution of this work an approach that supports the interoperability of the DC operations among different databases is also presented in this dissertation This is achieved through the specification of the operations at a conceptual level that isolates them from the schema level allowing them to be easily used in different databases xi NDICE AGRADECIMENTOS Vv RESUMO VII ABSTRACT IX NDICE XI NDICE DE FIGURAS XIX NDICE DE TABELAS XXI LISTA DE ACR NIMOS XXV CAP TULO 1 INTRODU O 1 11 ENQUADRAMENTO verrerie cado dadacad oa dadada da decada aora ade cacos ud cado sda cuco sie raS T SES nS 1 1 2 PROBLEMAS E LIMITA ES DAS ACTUAIS SOLU ES DE MELHORIA DA QUALIDADE DOS DADO Re AR RR A DRE DR RN E DN PR PRESO RASA RAD DRE RD AR RE 4 1 3 OBJECTIVOS DO TRABALHO ooie2sgedcdsaceddsclesecesddasediscdegsdededssadasacesastzeseseschevatesstedescdeducczedateetatitaes 7 1 4 PESE DEFENDIDA PAPATET EEEE ATTE TETTETETT 8 1 5 CONTRIBUIGOES EENE E EEEE EEEE EEEE E E anima 8 1 6 ESTRUTURA DA DISSERTA O ccsssssessscesssccesssceessceeensceessecesscce
560. tabelas da BDD quando consideradas individualmente As opera es executadas encontram se representadas na Tabela 8 34 Tabela 8 34 OD executadas no NG da rela o Viola o de Tuplos Viola o restr dep funcional duplicados integridade Tabela CodigosPostais Colheitas Dadores An lises Cap tulo 8 Estudo de Caso de Limpeza de Dados 301 8 5 1 Tabela CodigosPostais Opera es de Detec o A OD de tuplos duplicados executada nesta tabela a seguir apresentada DETECT DUPLICATE TUPLES FROM CodigosPostais T1 CodigosPostais T2 OF BDD USING CodPostal LocPostal WHERE T1 CodPostal T2 CodPostal AND T1 LocPostal T2 LocPostal Nota Este tipo de opera o envolve a realiza o de um produto cartesiano sobre a tabela Para evitar a realiza o de compara es desnecess rias e diminuir ao tempo de execu o no momento de compila o da OD o martClean acrescentou a seguinte condi o cl usula Where da opera o T1 ID gt T2 ID Naturalmente isto s aconteceu porque esta n o tinha sido especificada Da execu o desta opera o n o resultou a detec o da exist ncia de tuplos duplicados na tabela CodigosPostais 8 5 2 Tabela Colheitas Opera es de Detec o Ao n vel do PQD viola o de depend ncia funcional efectuaram se duas OD nesta tabela 7 a um determinado dador tem de corresponder sempre o mesmo grupo sangu neo atributo Abo i ao me
561. tada o segmento a que pertence r combinado com o segmento correspondente ao conjunto de registos onde se detectou a semelhan a recorrendo a uma opera o de reuni o O registo r tamb m poder ser adicionado ao conjunto de registos que 48 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica representa o segmento na fila de prioridades Caso r seja muito similar ao registo com o qual foi detectada semelhan a n o necess ria a sua inclus o nesse conjunto Caso contr rio e se for apenas moderadamente similar ent o a inclus o de r auxiliar na detec o futura de outros membros do segmento Caso a compara o entre re um dos elementos de um conjunto de registos da lista de prioridades representativos de um segmento resulte num valor de semelhan a muito baixo a pesquisa avan a para o pr ximo conjunto de registos existente na lista de prioridades A filosofia a seguinte caso n o haja semelhan a na compara o efectuada ent o subsequentes compara es com os outros membros do mesmo segmento tamb m n o detectar o a exist ncia de semelhan a Por ltimo caso r seja comparado com todos os elementos de todos os conjuntos de registos existentes na fila de prioridades e n o seja detectada semelhan a ent o r deve ser membro de um novo segmento actualmente n o representado na fila de prioridades Neste caso criado um novo conjunto na lista de prioridades representat
562. tais encontram se armazenados na rela o que resultou da execu o da OD no caso DO78 da qual a Tabela 8 9 280 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica constitui uma amostra recorre se aos valores respectivos do atributo LocPostal para no dom nio dos c digos postais determinar e actualizar o valor do c digo postal que corresponde a essa localidade A realiza o das correc es encontra se dependente da exist ncia de correspond ncia entre os valores dos atributos LocPostal tabela CodigosPostais e Localidade tabela Codigos Postais serve de suporte ao armazenamento do dom nio dos c digos postais o que nem sempre sucedeu Opera es de Detec o nova itera o Nesta nova itera o apenas a OD de viola o de dom nio foi alvo de execu o Em particular apenas os 56 valores que constitu am viola es de dominio foram alvo de execu o da OD Ap s a realiza o da correc o referida a execu o da OD apenas detectou 9 viola es de dom nio no atributo CodPostal A execu o da OC anterior n o solucionou estas viola es de dom nio em virtude de estar armazenado um lugar no atributo LocPostal e n o a respectiva localidade A resolu o destes PQD efectuou se manualmente uma vez que implicou a realiza o de pesquisas na Internet para determinar a que localidade pertence cada lugar O valor do atributo LocPostal foi ent o actualizado com a
563. tar quais os tuplos objecto de correc o 186 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica mediante uma condi o Cada atribui o representada em fun o de uma express o que envolve exclusivamente atributos vari veis e ou constantes Algoritmo Correc o Viola o Restri o Integridade E seja dnit 5dm n O conjunto de atributos de R que n o fazem parte da sua chave prim ria seja C o conjunto de atributos assim definido C fc c usado na correc o da viola o da restri o de integridade A c As ie CCA Este conjunto resulta da especifica o da OC seja e a cardinalidade de C seja k o n mero de atribui es existentes na sequ ncia de atribui es da OC sejam x ye z n meros inteiros compreendidos no intervalo 1 e sejam o p e q n meros inteiros compreendidos no intervalo 1 in cio T lt aE O N S Cond R gt lt Z1 te de tuplo T repetir enquanto t null Pi atrib Vo atrib Vk S atrib us On t Away Stile R R R H u c x Do ity ev U C V R R U uam Uam A UA te le tuplo T fim repetir fim Nota As atribui es atrib s o expressas em fun o dos atributos de C Na correc o de viola o de restri o de integridade ao n vel do tuplo tamb m pode ser necess rio recorrer a FDU Neste caso os valores dos atributos de cada tuplo no qual foi detectad
564. taxionomia desenvolvida uma vez que na grande maioria das situa es poss vel disponibilizar se desde logo uma manipula o autom tica Isto especialmente verdade a n vel de detec o uma vez que em certas OC fruto da sua especificidade n o ha mesmo outra alternativa que n o seja a de recorrer interven o manual ou a fun es definidas pelo utilizador Nos casos em que se justifica o 334 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica desenvolvimento destas fun es de car cter diverso e g para a detec o de viola es de restri es de integridade foi poss vel identificar aspectos comuns na sem ntica subjacente Esta sem ntica partilhada por diferentes opera es de DC foi tamb m formalizada Para a fun o definida pelo utilizador fica apenas aquilo que espec fico para a detec o ou correc o do PQD em quest o Quanto ao segundo objectivo de facto foi concebido e desenvolvido um modelo vocacionado exclusivamente para a DC dos PQD e para a LD O modelo obedece a todos os requisitos formulados inicialmente da que se possa considerar que este objectivo tenha sido totalmente concretizado Em particular o modelo a Estabelece uma sequ ncia de execu o para as opera es de DC Os PQD s o identificados e de imediato solucionados seguindo uma sequ ncia predefinida em cada N vel de Granularidade NG da taxionomia Come a se por mani
565. ter 360 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Esta ferramenta implementa fielmente o m todo da vizinhan a ordenada na variante multi passagem ver Cap tulo 3 Sec o 3 4 1 3 O utilizador come a por especificar uma ou mais chaves de ordena o baseadas num ou em v rios atributos Estas chaves s o baseadas nos valores partes de valores e g primeiros tr s d gitos do valor do atributo ou transforma es dos valores que constam dos atributos As chaves de ordena o definem as diferentes formas de sequenciamento dos registos que ser o usadas na identifica o dos duplicados O seu objectivo colocar registos semelhantes pr ximos uns dos outros O utilizador tamb m define o crit rio que permite identificar os duplicados o que envolve especificar o atributo ou par de atributos entre os quais deve haver correspond ncia ou equival ncia nos seus valores bem como o tipo de correspond ncia que deve existir A correspond ncia entre os pares de atributos pode ser analisada a v rios n veis em virtude dos v rios algoritmos dispon veis Entre estes encontram se 7 frequ ncia de caracteres a frequ ncia de ocotr ncia dos diferentes caracteres presentes no valor de cada atributo comparada 77 dist ncia de edi o n mero de opera es de edi o necess rias 7 e inser es altera es ou elimina es de caracteres pata transformar um valor n
566. teresse crescente ao longo dos ltimos anos apesar de ser uma rea relativamente recente A defini o original de LD envolvia apenas a detec o e elimina o de duplicados Actualmente a defini o de LD tem um mbito mais lato Apesar de n o existir uma 38 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica defini o universal as v rias defini es que podem ser encontradas na literatura apresentam semelhan as Nesta disserta o adopta se a que proposta em Milano e al 2005 devido ao seu caracter gen rico e abrangente Assim a LD definida como o processo de detec o e eventual correc o autom tica dos PQ que afectam os dados Por PQ entende se erros e anomalias que existem ao n vel dos valores dos dados A defini o do que um PQD est no entanto dependente de cada caso particular e g dominio Base de Dados BD Por este motivo uma solu o de LD que suporte de forma totalmente autom tica 7 e sem interven o humana todos os PQD imposs vel de alcan ar Dasu ef a 2003 A LD vista como um processo composto pelas seguintes fases definir os tipos de PQD a pesquisar pesquisar e identificar os PQD e corrigir os problemas encontrados Cada uma das fases constitui por si s um problema complexo Os investigadores desta rea t m proposto m todos e t cnicas que se enquadram em cada uma das fases eg m todos de detec o e elimina o de dup
567. tilizador A finalidade da biblioteca de fun es de LD que se encontra na arquitectura precisamente a de permitir o armazenamento das fun es definidas pelo utilizador Dependendo do dom nio podem ser necess rias fun es espec ficas que suportem a DC de certos PQD O problema que mais frequentemente obriga ao desenvolvimento de fun es o das restri es de integridade Isto acontece em virtude da sua diversidade e depend ncia ao dom nio subjacente Arquitectar implementar e testar as fun es s o tarefas feitas pelo utilizador em separado Al m destas a inclus o das fun es na biblioteca tamb m uma tarefa a cargo do utilizador Uma vez Cap tulo 7 Modelo Proposto para a Limpeza de Dados 217 inclu da na biblioteca uma fun o pode ser usada na situa o actual de LD mas tamb m pode ser reutilizada em qualquer outra situa o futura A execu o da OD de erro ortogr fico envolve o acesso a um dicion rio de termos armazenado sob a forma de uma tabela execu o da OD de viola o de dom nio pode envolver o acesso ao dom nio de valores v lidos do atributo tamb m este armazenado sob a forma de uma tabela A finalidade do reposit rio presente arquitectura intitulado de Dom nios Dicion rios precisamente a de suportar o seu armazenamento A defini o e manuten o destes constituem tarefas que ficam a cargo do utilizador Quer as OD quer as OC s o armazenadas num reposit rio de
568. to do registo mais recente considerar o valor mais completo do atributo No entanto tamb m podem ser definidas pelo utilizador outras regras de sobreviv ncia espec ficas de cada situa o concreta Em alternativa o m dulo tamb m suporta a consolida o manual dos grupos de duplicados Neste caso da responsabilidade do utilizador especificar atributo a atributo os valores que sobrevivem A interface gr fica do m dulo permite ao utilizador visualizar os registos duplicados especificar os crit rios de sobreviv ncia dos valores e consolidar manualmente os registos duplicados 3 5 2 6 An lise Comparativa Na Tabela 3 3 apresenta se uma compara o entre as cinco ferramentas comerciais apresentadas usando pata o efeito o mesmo conjunto de caracter sticas considerado na compara o dos prot tipos de investiga o ver Sec o 3 5 1 6 Os significados dos acr nimos usados na tabela s o BDR BD Relacional FT Ficheiro de Texto e DT Diversos Tipos de FD eg BD relacionais ficheiros de texto ficheiros bin rios e fontes semi estruturadas Tabela 3 3 Compara o das caracter sticas das ferramentas comerciais ETI Data dfPower ae Cleanser Quality Tipos de fontes suportadas Preocupa es de optimiza o Capacidades de extensibilidade N o N o N o Suporte a excep es i Sim Sim Sim Interface com o utilizador Gr fico Gr fico Gr fico Potencialidades de anula
569. to que pode ser armazenado acedido elaborado por um procedimento computacional e comunicado atrav s de uma rede Batini e Scannapieco 2006 Nas ltimas d cadas assistiu se a um aumento exponencial do armazenamento de dados nas mais diversas reas da actividade humana potenciado por um conjunto de evolu es tecnol gicas Entre todas as evolu es aquela que mais contribui para esta realidade foi a Internet As tecnologias de armazenamento de dados tamb m tiveram a sua quota parte de responsabilidade neste crescimento A n vel de sofware o desenvolvimento das Bases de Dados BD relacionais veio permitir o armazenamento e acesso aos dados de uma forma f cil e eficiente o que muito justifica o seu sucesso e divulga o comercial A n vel de hardware as inova es e melhorias registadas nos dispositivos de recolha e g leitor de c digo de barras e armazenamento e g CD DVD permitiram tempos de acesso cada vez mais r pidos e capacidades de armazenamento cada vez maiores acompanhadas por uma diminui o dos custos inerentes 1 O mbito do trabalho de doutoramento retratado nesta disserta o encontra se limitado exclusivamente a este modelo de representa o de dados 2 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Apesar de armazenarem continuamente dados e cada vez mais em maiores quantidades apenas recentemente as organiza es p blicas e privadas come aram a a
570. to se cingir a este tipo de dados e mais especificamente aos que s o do subtipo relacional o conceito de qualidade transversal a todos os tipos de dados existentes como os de tipo semi estruturado e g XML e n o estruturado e g documentos textuais 2 2 Perspectivas Diferentes de Qualidade dos Dados O conceito de QD pode ser interpretado de forma diferente em fun o da perspectiva de abordagem 7 e estrita ou lata A defini o de QD a luz da perspectiva lata inclui outros aspectos n o considerados na perspectiva estrita Nas duas subsec es seguintes apresenta se cada uma das perspectivas 2 2 1 Perspectiva Estrita Quando se fala em QD o termo quase sempre mencionado de acordo com a perspectiva estrita do mesmo Assim QD significa completude consist ncia e correc o dos valores armazenados Por completude entende se a exist ncia de todos os valores considerados necess rios Por consist ncia entende se a inexist ncia de conflitos ou contradi es entre os valores Por correc o entende se a inexist ncia de erros nos valores Naturalmente o conceito de correc o est intimamente dependente de cada situa o particular Aquilo que considerado correcto numa situa o pode n o o ser noutra Estes s o os crit rios segundo os quais a QD tradicionalmente analisada Estes crit rios de an lise s o normalmente designados de dimens es da QD Estas dimens es evidenciam preocupa es com a qualid
571. tos com o mesmo significado n Q H valores repetidos sendo Exist ncia de o atributo de valor nico sin nimos Os valores do atributo violam Viola o de alguma restri o de integridade unicidade Inexist ncia Viola o de restri o de PQD de integridade Figura 4 5 rvore de decis o para identifica o dos PQD que ocorrem nos v rios valores de um atributo O significado de cada PQD identificado clarificado de seguida O Exist ncia de sin nimos No atributo s o usados valores diferentes mas com igual Q significado e g no atributo profiss o um tuplo cont m o valor Professor enquanto outro tuplo cont m o valor Docente Viola o de unicidade Um atributo de valor nico possui valores iguais em mais do que um tuplo e g dois clientes possuem o mesmo n mero de identifica o fiscal Viola o de restri o de integridade Uma restri o de integridade ao n vel dos valores do atributo n o respeitada e g o somat rio dos valores que se encontram no atributo valor percentual n o igual a 100 violando assim uma restri o existente 4 2 2 Problemas ao N vel do Tuplo Nesta sec o apresenta se o PQD que envolve os valores dos atributos de um tuplo quando considerados conjuntamente de acordo com o ilustrado na Figura 4 6 Figura 4 6 Valores dos atributos de um tuplo Na identifica o do PQD que ocorre neste n vel usou se o crit rio representad
572. tos formam a chave prim ria desta rela o O atributo Descritivo cont m o nome de cada atributo que faz parte de uma rela o A rela o Itera oDetec o armazena as itera es de execu o das sequ ncias de OD Quando todos os problemas detectados num NG se encontram solucionados a execu o das sequ ncias de OD deve reiniciar se novamente a partir do n vel mais elementar Sempre que isto acontece est se perante uma nova itera o de execu o das OD A rela o Itera oDetec o possui o seguinte esquema Itera oDetec o Nrltera o em que Nrltera o constitui um atributo de numera o autom tica representativo da itera o de detec o Sendo o nico atributo da rela o naturalmente constitui a sua chave prim ria A rela o Subltera oDetec o armazena as sub itera es de execu o das OD que ocorrem em cada itera o Ao reiniciar a execu o das sequ ncias de OD podem ser detectados novos PQD que anteriormente n o existiam Quando estiverem solucionados obrigam novamente ao rein cio de execu o das OD Como esta nova itera o deriva da itera o que ocorreu anteriormente designa se de sub itera o O esquema da rela o Subltera oDetec o o seguinte Subltera oDetec o Nrltera o NrSubltera o O atributo Nrltera o constitui a chave estrangeira para a rela o Itera oDetec o NrSubltera o constitui um n mero inteiro sequencial iniciado em 1 para
573. tr uma rela o dic que armazena um dicion rio e uma string metr com a m trica de semelhan a a usar Esta fun o identifica as diversas palavras existentes no dicion rio dic lexicalmente similares a str com base na m trica de semelhan a metr e devolve uma estrutura de dados bidimensional uma matriz Na primeira coluna desta estrutura encontra se a palavra semelhante enquanto que na segunda se encontra o respectivo grau de semelhan a gerado pela m trica utilizada No caso de n o serem identificadas palavras semelhantes a fun o retorna o valor null seja Z1 a rela o que armazena os valores das chaves prim rias dos tuplos de R onde existem erros ortogr ficos em atn a correspondente palavra errada 7 e com erro ortogr fico bem como as diversas palavras semelhantes a esta encontradas no dicion rio e os respectivos graus de semelhan a O esquema de Z1 Z1 a a pal err pal semelh grau semelh in cio se existe rela o T falso ent o P T Es Ta pon atr O cond R gt lt Ta sulm R E U Taam Z1 i 1 sen o TO Tap an ath Cond RD lt T fim se te de tuplo T repetir enquanto t null tokens lt tokenize_string t atn repetir para i lt 1 at dimensao tokens palavra toRens 1 se existe no dicion rio palavra dic falso ent o plvs semelhs identifica palavras semelhantes palavra dic meth se plus semelhs null ent o Z1 Z1U t a t a palavra senao
574. tre tuplos num auto relacio 106 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 4 5 Cobertura dada por ferramentas comerciais de data profiling aos PQD continua o Exist ncia de hom nimos Atributo Valor individual NG x M ltiplas Viola o de integridade referencial Dif granularidades de representa o Heterogeneidade de sintaxes Heterogeneidade de unidades de medida Notas 1 Compete ao utilizador definir a restri o de integridade sendo identificadas as viola es que a esta ocorrem 2 N o suporta a detec o de viola es de restri es de integridade que envolvam m ltiplas FD 3 A ferramenta disponibiliza de base um conjunto simples de restri es de integridade competindo ao utilizador definir as regras de maior complexidade As viola es s restri es de integridade s o assinaladas 4 N o suporta a detec o de viola es de integridade referencial que envolvam rela es em m ltiplas FD A an lise da tabela anterior suscipta as seguintes considera es Q Na generalidade as potencialidades de detec o de PQD das ferramentas de data profiling analisadas s o aproximadamente as mesmas concorr ncia faz com que as empresas procurem oferecer as mesmas potencialidades que as suas rivais oferecem A nica excep o a ferramenta Datiris Pro
575. tributo entre os registos 7 os tokens s o os mesmos mas a ordem pela qual aparecem diferente e g Hipermercados Modelo Continente e Modelo Continente Hipermercados A ferramenta WizSame efectua todas as compara es poss veis entre os tokens que constituem o valor de cada atributo Ap s a detec o de duplicados elaborado um relat rio que cont m todos os pares identificados Este relat rio permite ao utilizador 7 visualizar os pares de registos no ecr 77 imprimir os 358 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica pares de registos 777 criar um ficheiro de texto que cont m todos os pares de registos 71 pesquisar se um determinado registo est inclu do nalgum par de duplicados permite verificar se foram identificados duplicados para um determinado registo e 2 seleccionar um conjunto de pares de registos para ser impresso ou armazenado num ficheiro de texto Esta ltima op o til para delimitar a an lise a um conjunto de pares de registos duplicados A ferramenta permite ao utilizador eliminar os registos duplicados e criar um ficheiro de texto que n o cont m redund ncias A 5 matchIT A ferramenta matchIT helpIT 2007 focaliza se na manipula o de duplicados em dados sobre clientes permitindo 2 detectar e remover registos duplicados existentes numa tabela 77 integrar dados provenientes de m ltiplas tabelas identificando e
576. tributos que constituem a chave prim ria de R S 4 0 d 5dmy 561 56 podem n o constar no operador de projec o Naturalmente nesta situa o tamb m n o constam de Z Na formaliza o cond al m de representar uma eventual condi o de selec o que delimita a execu o da OD tamb m representa a condi o de que resulta a detec o da viola o da restri o de integridade O conte do de cond resulta do que se encontra especificado na cl usula where da OD A detec o de viola o de restri o de integridade ao n vel de m ltiplas rela es pode implicar a utiliza o de FDU Nestes casos o conjunto de valores de cada atributo das rela es envolvidas na formula o da restri o de integridade pode constituir um par metro das FDU de acordo com os seus requisitos espec ficos definidos na sequ ncia de atribui es que consta da OD Vari veis e constantes tamb m podem constituir par metros destas fun es A excep o da 158 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica ltima fun o 7e fdu que obrigatoriamente retorna um valor at mico representativo do problema detectado todas as outras podem retornar um valor at mico ou uma estrutura de dados e g um vector uma matriz A formaliza o desta OD envolvendo FDU a seguir 8 apresentada Algoritmo Detec o Viola o Restri o Integridade Baseada em FDU amp seja Z
577. tuais de LD ooo 326 Figura 9 7 Representa o conceptual do modelo de dadoS sssesssssssssesssesseessesreesrresrresreesreeseeeseee 327 Figura 9 8 Diagrama UML em nota o simplificada do modelo de dados 329 xxi INDICE DE TABELAS Tabela 2 1 Dimens es da QD propostas em Wang e Strong 1996 es 18 Tabela 3 1 Exemplo de chaves de ordena o Sesi id ea aaa ea 44 Tabela 3 2 Compara o das caracter sticas dos prot tipos de investiga o 63 Tabela 3 3 Compara o das caracter sticas das ferramentas comerciais 73 Tabela 41 POD ING oooh nei TED be Smtenaentantes 88 Tabela 4 2 Taxionomia proposta versus outras tAXIONOM AS ssesssesseesrestesstesstestesrresrresrteseeesereneee 90 Tabela 4 3 Cobertura dada pelos prot tipos de investiga o de LD aos PQD 100 Tabela 4 4 Cobertura dada por ferramentas comerciais de LD aos PQD 102 Tabela 4 5 Cobertura dada por ferramentas comerciais de data profiling aos PQD 105 Tabela 7 1 Representa o do grafo de depend ncias da Figura 7 5 227 Tabela 7 2 Rela o para exemplifica o da execu o das OD no contexto do valor individual COB LEIT O anisina ae a a a Sc 237 Tabela 7 3 Rela o para exemplifica o da execu o das OD no contexto multi valor do AEA DUTOS ena Sida a O A E EA 240 Tabela 7 4 Rela o para exemplifica o da repeti o da execu
578. tual uma viola o de dom nio pode corresponder a um Cap tulo 4 Problemas de Qualidade dos Dados 81 Valor do atributo existe s Valor respeita a sintaxe do atributo n s Viola o de Valor cont m algum sintaxe erro ortogr fico n s Valor respeita o Erro dom nio do atributo ortogr fico Viola o de Inexist ncia dom nio de PQD Figura 4 3 rvore de decis o para identifica o dos PQD que ocorrem no valor individual do atributo n Atributo de preenchimento obrigat rio n s Inexist ncia Valor em de PQD falta e Valor sobrecarregado O valor do atributo cont m informa o al m do que pretendido eg no atributo localidade al m da localidade encontra se tamb m o concelho Pedroso Vila Nova de Gaia e Valor incompleto O valor do atributo cont m informa o aqu m do que pretendido e g no atributo ocalidade encontra se o valor Feira quando deveria ser Santa Maria da Feira 4 2 1 2 Contexto Multi Valor Nesta sec o apresentam se os PQD que envolvem os valores de um atributo quando estes s o considerados conjuntamente como ilustrado na Figura 4 4 Figura 4 4 Valores de um atributo em m ltiplos tuplos A Figura 4 5 representa o crit rio utilizado na identifica o dos PQD que ocorrem neste contexto 82 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica H valores distin
579. tuplo U fim repetir fim 5 6 4 Exist ncia de hom nimos Formaliza o Sint ctica DETECT EXISTENCE OF HOMONYMS ColunasAlvo DasTabela DasBasesDados UsandoCondi o Formaliza o Sem ntica A detec o deste PQD envolve verificar se existem valores iguais entre os dois atributos e atr e atr pertencentes respectivamente a cada uma das rela es 7 Re S Na situa o de serem detectados valores iguais est se perante a exist ncia de hom nimos Da execu o desta OD podem resultar duas rela es 7 e Z1 e Z2 que armazenam os valores iguais detectados entre atr e atr bem como as respectivas chaves prim rias dos tuplos de Re S onde estes se encontram De referir que na execu o desta OD s o exclu dos os pares de valores que tenham sido identificados previamente como sin nimos pela opera o correspondente caso esta exista Algoritmo Detec o Exist ncia Hom nimos E seja Z1 e Z2 as rela es que armazenam respectivamente os valores de Re S que constituem sin nimos resultantes da execu o da OD antecedente correspondente sejam Z1 e Z2 as rela es que armazenam respectivamente os valores das chaves prim rias dos tuplos de R e S bem como os respectivos valores que traduzem a exist ncia de hom nimos com os seguintes esquemas Z1 4 4m atr e Z2 b boatr in cio T lt Ta soam b atr O cond R gt lt Tansan R T aan Ziy DD gt atm atr S gt lt gt a5 6
580. turalmente as respectivas OD e OC do PQD em causa tamb m teriam que ser formalizadas caso tal fosse desde logo poss vel e posteriormente implementadas no SyartClean O modelo de LD apresentado por natureza iterativo Por um lado estas itera es ocorrem em cada NG at que n o sejam detectados PQD Quando se verifica uma nova itera o apenas s o executadas as OD que incidem sobre atributos nos quais tinham sido identificados PQD No caso dos NG do atributo contexto do valor individual e do tuplo a execu o das OD ainda mais restrita a apenas aos tuplos nos quais os PQD tinham sido identificados Por outro lado quando se constata que todos os PQD est o solucionados num NG a sequ ncia de execu o das OD volta a reiniciar se desde o n vel mais elementar que corresponde s opera es especificadas pelo utilizador O objectivo desta itera o identificar poss veis PQD que possam ter sido involuntariamente introduzidos noutros NG a montante fruto das correc es efectuadas Nesta nova itera o apenas s o executadas as OD que incidem sobre atributos que entretanto sofreram altera es correc es Mesmo adoptando estas abordagens que procuram minimizar o custo computacional a n vel do tempo despendido nas sucessivas itera es de execu o das OD este constitui o maior problema deste modelo de LD Naturalmente quanto maior o n mero de itera es maior o custo computacional associado Caso as correc es
581. u ncias de OD relativas ao NG do atributo fica restrito aos atributos e tuplos alterados pelas correc es efectuadas ao n vel da rela o Suponha se que da execu o destas opera es resulta a identifica o de um novo PQD O utilizador procede correc o do problema identificado Esta correc o tamb m registada nas rela es auxiliares que armazenam as altera es efectuadas aos valores Ao executar se novamente a OD verifica se que o problema foi efectivamente solucionado Assumindo que a opera o n o a primeira da sequ ncia o processo de detec o volta a reiniciar se no NG do atributo O objectivo identificar potenciais problemas que possam ter sido introduzidos apenas detect veis pelas OD que se encontram a montante da actual opera o Nesta nova itera o de execu o apenas s o considerados os valores alterados com as correc es efectuadas ao n vel do atributo Os valores alterados com as correc es efectuadas para suprir os problemas detectados ao n vel da rela o j foram verificados na itera o anterior de execu o das OD deste NG e atributo Da nova itera o de execu o das sequ ncias de OD respeitantes ao n vel do atributo n o resulta a identifica o de qualquer problema Assim a detec o dos PQD prossegue com a execu o das sequ ncias de OD referentes ao NG do tuplo O mbito de execu o das OD referentes ao NG do tuplo fica restrito aos atributos e tuplos alterado
582. uanto que na rela o Y o atributo data enc representado sob a forma ano m s dia O Heterogeneidade de unidades de medida Utiliza o de unidades de medida distintas entre rela es diferentes para representar a mesma propriedade e g na rela o Facturas da FD 1 o atributo Total Factnra representa euros enquanto que na rela o Facturas da FD 2 o atributo Tot Fact representa d lares O Exist ncia de sin nimos Utiliza o de valores diferentes entre as rela es mas com igual significado e g na rela o X usado o termo Professor enquanto que na rela o Y usado o termo Docente O Exist ncia de hom nimos Uso de valores iguais entre rela es diferentes mas com significado distinto e g na rela o Produtos da FD 1 o termo vela usado com o sentido de componente autom vel enquanto que na rela o Produtos da FD 2 o mesmo termo significa material de ilumina o 86 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica A mesma propriedade representada nas rela es seguindo uma s sintaxe p S Heterogeneidade A mesma propriedade representada nas de sintaxes rela es usando a mesma unidade de medida n S Heterogeneidade de S o usados valores diferentes mas com igual significado unidades de medida entre as rela es para representar a mesma propriedade S o usados valores iguais mas com diferente significado Exist ncia entre a
583. uar o restauro por esta via Q Nas ferramentas comerciais em causa n o h a possibilidade de executar as opera es de LD incrementalmente ao inv s do que acontece no SmartClean Nestas ferramentas a execu o da sequ ncia de opera es de LD sempre efectuada na ntegra abrangendo todos os tuplos das rela es envolvidas O modelo de LD sobre o qual o SmartClean se encontra alicer ado por natureza incremental a semelhan a do que acontece no SvartClean nas ferramentas comerciais a defini o da sequ ncia de execu o das opera es de LD efectuada automaticamente No S artClean apenas necess rio que o utilizador defina a ordem de execu o das opera es quando h mais do que uma opera o de um dado tipo e g viola o de restri o de integridade cujo mbito de incid ncia comum e g o mesmo atributo Como se poder verificar na sec o seguinte as ferramentas comerciais acabam por conceder um suporte muito reduzido aos diferentes tipos de PQD Este suporte n o compar vel ao fornecido pelo SmartClean Face ao maior o numero de opera es suportadas o estabelecimento de uma sequ ncia de execu o adequada revestiu se de uma maior dificuldade 10 2 2 2 An lise da Cobertura Dada aos Problemas de Qualidade dos Dados A Tabela 10 4 a seguir apresentada representa uma evolu o da Tabela 4 4 Esta ltima tem como finalidade exibir a cobertura a n vel de DC que as cinco ferram
584. uas tabelas obviamente que n o cont m valores sin nimos Acresce ainda o facto dos tipos de dados dos atributos envolvidos em ambas as opera es serem normalmente diferentes Na detec o de sin nimos o tipo de dados dos atributos textual 7 e string Na detec o de viola es de integridade referencial o tipo de dados dos atributos chave prim ria e chave estrangeira normalmente inteiro O que acabou de se dizer tamb m valido entre a OD de viola o de integridade referencial e as OD de exist ncia de hom nimos e de diferentes granularidades de representa o Assim n o faz sentido que estas opera es existam simultaneamente na mesma sequ ncia de execu o de OD A exist ncia de um valor num atributo de um tuplo que constitui uma viola o de integridade referencial pode 7 impedir que o tuplo seja identificado como duplicado de outro tuplo noutra rela o assumindo que o atributo usado na identifica o de tuplos duplicados 77 ao n o permitir a identifica o de tuplos duplicados impedir a detec o de heterogeneidade de unidades de medida e 717 causar a detec o de uma viola o de restri o de integridade em que esta surge como uma mera consequ ncia do problema em causa A exist ncia de sin nimos entre os valores de dois atributos 7 resulta na detec o de diferentes granularidades de representa o sendo que este problema apenas um mero reflexo do anterior 1 pode
585. ucede nos prot tipos de investiga o e Suporte a execu o das opera es de LD directamente na pr pria fonte sem obrigar a realiza o de TD O Implementa o de um prot tipo de LD que materialize e permita validar o modelo proposto 1 4 Tese Defendida Nesta disserta o de doutoramento defende se a seguinte tese A adop o de uma sequ ncia de manipula o predefinida em que os PQD s o detectados e de imediato corrigidos seguindo uma abordagem ascendente 7 e bottom up em que se come a nos problemas que se manifestam no nivel de granularidade mais elementar do modelo relacional 7e ao n vel do atributo e termina nos que ocorrem no n vel de granularidade de maior complexidade 7 e ao n vel de m ltiplas rela es pertencentes a diferentes fontes de dados constitui uma forma adequada e eficaz de identificar e solucionar os PQD existentes 1 5 Contribui es O trabalho desenvolvido e apresentado nesta disserta o n o tem a pretens o de fornecer solu es definitivas mas apenas contribuir com uma pequena parcela de conhecimento que permita algum avan o t cnico cient fico na rea de estudo em quest o Como consequ ncia desse trabalho resultaram as contribui es que a seguir se apresentam O Taxionomia de PQD relacionais A taxionomia organiza os PQD em fun o do n vel de granularidade do modelo relacional e g atributo tuplo em que estes ocorrem Comparativamente s anteri
586. ue cada termo sin nimo detectado pertence seja Ta rela o onde se encontra armazenado o dicion rio de sin nimos com esquema T idsin idcluster sin em que idsin constitui a chave prim ria idcluster o cluster a que pertence o sin nimo e sin o termo sin nimo in cio se flag actualiza valores rela o R verdadeiro ent o Cap tulo 6 Formaliza o das Opera es de Correc o 201 Ve Tidcluster atr Z2 sen o US T idetuster atn 21 fim se u lt de tuplo U repetir enquanto u null se flag actualiza valores rela o R verdadeiro ent o Ve T sin O idcluster u ideluster sinzu atr A sin not like Vou atr Yo A sin not like w atry o A A sin not like uatr T A Ta s m att idetuster u ideluster Z1 senao V E T sin O idetuster u ideluster sin u at A sin not like You atr Yo A sin not like u atrYo A A sin not like You atr T iss Tansan atra idetuster u ideluster 22 fim se x de tuplo X repetir enquanto x null novo valor lt x atr ve de tupl V repetir enquanto v null e novo valor x atr novo valor substitui substring X atr v sin u atr se x atr novo valor ent o ve de tupl V fim se fim repetir se flag actualiza valores rela o R verdadeiro ent o Og xaAr tan R R R y y atr novo valor R RU nd W dee Am1 Imtn Y sen o VF Og x Ag K dyn S S S y j atr novo valor 202 Detec o e Correc o de Pro
587. ue esta tamb m seja especificada sob a forma procedimental Na sua representa o adoptou se linguagem algoritmica 7 e pseudo c digo uma vez que simples de compreender e facilmente se traduz numa qualquer linguagem de programa o O objectivo destas formaliza es precisamente o de constituir o suporte para uma subsequente implementa o das OD 5 2 Defini es Gerais Nesta sec o enunciam se as defini es de car cter geral a n vel sint ctico e sem ntico comuns generalidade das formaliza es apresentadas nas sec es seguintes para cada PQD que faz parte da taxionomia Por este motivo esta sec o de consulta obrigat ria ao longo da leitura do cap tulo 5 2 1 Sintaxe da Linguagem de Especifica o A linguagem declarativa que suporta a especifica o das OD dos PQD aqui definida na sua globalidade tendo sido inicialmente proposta em Oliveira ef al 2006c com base nesta linguagem que o utilizador define as OD que pretende efectuar A linguagem segue o esp rito da Structured Query Language SQL sendo definida atrav s da seguinte gram tica em BNF estendido 13 No Ap ndice B desta disserta o apresentado um breve resumo sobre as opera es de lgebra relacional utilizadas nas formaliza es apresentadas neste cap tulo Cap tulo 5 Formaliza o das Opera es de Detec o 111 Opera oDetec o DETECT ProblemaQualidadeDados N velOpera o NasColunas DasTa
588. uecimento de Dados Frequentemente os dados est o incompletos ou desactualizados O ED em ingl s data enrichment consiste em melhorar a sua precis o e completude com base nos dados existentes noutras fontes internas ou externas organiza o A n vel de fontes externas h diversas empresas que se dedicam comercializa o de dados principalmente sobre indiv duos e organiza es empresariais Independentemente da origem das FD de refer ncia o objectivo aumentar o valor dos dados actuais da organiza o As fontes normalmente usadas no ED s o 7 informa o postal usada na valida o e correc o de endere os 77 dados geogr ficos e g latitude longitude usados na an lise de localiza es ii os pr prios dados da organiza o se dispersos por diferentes sistemas com diferentes n veis de QD e 7 dados demogr ficos usados para melhor caracterizar os indiv duos e g sexo idade rendimento mensal O ED resulta nos seguintes benef cios O Permite identificar e corrigir valores que aparentemente est o correctos mas que na realidade n o o est o e g um endere o postal que apesar de sintacticamente correcto corresponde a uma morada inexistente Q Fornece dados complexos como a latitude e longitude geogr ficas cuja introdu o n o pode ser efectuada atrav s dos m todos tradicionais O Aumenta o valor intr nseco dos dados sem sobrecarregar o seu processo de recolha ou introdu
589. ults from the PhD work presented in this dissertation The problems are organized by Granularity Level GL of the relational model in which they occur e g attribute tuple relation The scope of the work is restricted to this kind of data Another contribution is the definition of a model exclusively designed for the DC of the DQP 1e for data cleaning The model is in total agreement with the thesis defended that the DQP must be identified and immediately solved following a predefined sequence based on an ascending 7 e bottom up approach by GL The first DQP manipulated ze detected and corrected are those occurring at the most elementary GL of the relational model ze the attribute The sequence ends with the problems occurring at the most complex GL e multiple relations from different data sources The user specifies the DC operations of the DQP included in the taxonomy based on two declarative languages specially developed for that purpose The syntax of each language is formalized in this dissertation The underlying operational semantic of the operation that leads to the detection or correction of each DQP is also formalized in this dissertation for all those situations where it can be provided The proposed model for data cleaning and the syntactic and semantic formalizations of the DC operations are the basis of the developed prototype baptized with the denomination SartClean SmartClean is another contribution tha
590. um endere o postal e g nome da rua c digo postal 2 Apenas algumas opera es sint cticas simples especialmente em atributos que armazenam endere os de e mail 3 Apenas em atributos que armazenam endere os de e mail 4 Inclui potencialidade de detec o de valores sobrecarregados 5 Inclui potencialidade de detec o de valores incompletos 6 Com especial nfase em atributos que armazenam nomes de pessoas 104 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica 7 Com especial nfase em atributos que armazenam endere os postais 8 Apenas atributos que armazenam nomes de pessoas 9 Apenas atributos que armazenam endere os postais 10 Inclui potencialidades de correc o de valores sobrecarregados 11 Inclui potencialidades de correc o de valores incompletos 12 Apenas permite efectuar a manipula o de duplicados ao n vel de uma s rela o A an lise da tabela anterior permite a obten o das seguintes conclus es Q O leque de problemas da taxionomia coberto pelas ferramentas comerciais analisadas reduzido Claramente o numero de problemas que n o possui suporte bem maior do que o n mero de problemas que possui Essencialmente os problemas cobertos pelas ferramentas analisadas s o os mesmos Certamente isto resulta da concorr ncia que existe entre as empresas que desenvolvem solu es nesta rea nomeadamente em fornecerem na
591. umas dessas viola es de restri o de integridade encontram se na Tabela 8 43 312 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 8 43 Resultados da OD de viola o de restri o de integridade entre Dadores e Codigos Postais CodPostal LocPostal MARRAZES CORTICEIRA DE CIMA CARVALHOS RATES ALVELOS VERMIL INFIAS AVIZ CALHETA Opera es de Correc o Na correc o das viola es de restri o de integridade detectadas entre as tabelas CodigosPostais BDD e Codigos Postais BD Dom nios executou se a OC que a seguir se apresenta CORRECT INTEGRITY CONSTRAINT VIOLATION AT LEVEL OF MULTIPLE RELATIONS ON CodPostal LocPostal CP Localidade FROM CodigosPostais Codigos Postais OF BDD Dom nios SET LocPostal Localidade FROM DO103 T1 SELECT T1 CP Localidade FROM Dom nios Codigos Postais TI SELECT CP COUNT FROM Dom nios Codigos Postais GROUP BY CP HAVING COUNT 1 T2 WHERE T1 CP T2 CP T3 WHERE T1 CodPostal T3 CP A sem ntica que se encontra subjacente a esta OC a seguir descrita Para cada viola o de restri o de integridade identificada encontra se na tabela resultante da OD que no caso DO703 utilizado o valor respectivo do atributo CodPostal para efectuar um join com o atributo CP tabela Codigos Postais resultante de um inqu rito que identificou os c digos postais que corre
592. un es fdu No caso da ltima fun o da sequ ncia de FDU 7 e fdu retornar uma estrutura de dados do tipo unidimensional 7 e um vector a formaliza o anterior alvo das altera es acrescentos que a seguir se apresentam O que permanece inalterado encontra se representado sob a forma de retic ncias Algoritmo Detec o Viola o Restri o Integridade amp seja Z1 a rela o que armazena os valores que constituem viola es restri o de integridade com o seguinte esquema Z1 valor O tipo de dados de valor o mesmo do que o retornado pela ltima fun o no caso fdu da sequ ncia de FDU na OD in cio ue fdu 2 PoP iy repetir para 1 lt 1 at dimensao v Z1 lt Z1U tu fim repetir fim Cap tulo 5 Formaliza o das Opera es de Detec o 145 No caso da ltima fun o da sequ ncia 7 e fdu retornar uma estrutura de dados bidimensional i e uma matriz a formaliza o inicial desta opera o sofre as seguintes altera es acrescentos Algoritmo Detec o Viola o Restri o Integridade amp seja Z1 a rela o que armazena os valores dos atributos dos tuplos que constituem viola es restri o de integridade com o seguinte esquema Z1 d d in cio repetir para he at numlinhas v Z1 lt Z1 VU vfAl vf Al namcolunas fim repetir fim Nota Entre os atributos de Z1 podem encontrar se os que constituem a chave prim ria d
593. us o pode especificar que apenas prevalece o registo com menor n mero de atributos vazios sendo os restantes eliminados Caso n o tenham sido definidas regras de fus o os registos duplicados podem ser manipulados manualmente pelo utilizador durante a pr xima fase e Actualiza o Especificam a forma como os dados s o actualizados perante a ocorr ncia de uma determinada situa o Este tipo de regras pode ser usado para definir a forma de preenchimento dos valores em falta nos atributos e Alerta Definem as situa es em que o utilizador notificado em virtude da ocorr ncia de determinado evento Este tipo de regras pode ser usado para avisar o utilizador da ocorr ncia de viola es de restri es de integridade O Verifica o e valida o humana As ac es realizadas durante as duas fases anteriores s o registadas num ficheiro documentando as opera es efectuadas Nesta fase necess ria interven o humana para o analisar A valida o da base de regras efectuada com base neste ficheiro O ficheiro permite verificar a consist ncia e precis o das ac es efectuadas o que pode resultar na introdu o de correc es O m todo da vizinhan a ordenada com multi passagem Hern ndez e Stolfo 1998 adoptado para a detec o de registos duplicados O objectivo evitar uma compara o exaustiva entre cada par de registos resultante do produto Cartesiano entre estes Em cada instante de tempo
594. ustifica se perfeitamente o relevo que lhe dado em detrimento das restantes actividades O objectivo deste cap tulo o de apresentar as diversas vertentes e g a quest o da Cap tulo 1 Introdu o 11 detec o e elimina o de duplicados consideradas relevantes para a compreens o do significado de LD e do seu actual estado da arte Por outro lado no Cap tulo 3 s o expostas de forma fundamentada as lacunas j apontadas no presente cap tulo Estas lacunas s o exploradas no ambito deste trabalho de doutoramento No Cap tulo 4 Problemas de Qualidade dos Dados apresentada pormenorizadamente uma taxonomia de PQD Esta taxionomia foi desenvolvida no mbito deste trabalho de doutoramento evidenciando cobrir um maior n mero de problemas do que as anteriormente existentes taxionomia complementada com um conjunto de defini es matem ticas que acrescentam rigor s defini es textuais dos problemas A taxionomia usada para avaliar a cobertura dada aos PQD a n vel de DC pelas actuais ferramentas inform ticas de LD Desta forma fundamentam se as defici ncias de cobertura j referidas no actual cap tulo e devidamente exploradas neste trabalho No Cap tulo 5 Formaliza o das Opera es de Detec o como o nome o indica apresenta se a formaliza o a n vel sint ctico e sem ntico da opera o de detec o de cada PQD que integra a taxionomia exposta no cap tulo anterior As formal
595. utos de acordo com as regras j enunciadas para os mesmos atributos da tabela Colheitas Cap tulo 8 Estudo de Caso de Limpeza de Dados 291 Tabela 8 22 OD executadas no contexto do valor individual dos atributos da tabela Analises Valor em Viola o de falta dom nio Atributo 8 3 2 Contexto Multi Valor Seguidamente s o apresentadas as opera es de LD efectuadas nas diversas tabelas da BDD no contexto dos m ltiplos valores dos seus atributos 8 3 2 1 Tabela Conclusoes Opera es de Detec o A Tabela 8 23 apresenta as OD efectuadas no contexto dos m ltiplos valores de cada atributo da tabela Conclusoes Tabela 8 23 OD executadas no contexto dos m ltiplos valores dos atributos da tabela Conclusoes Viola o de Atributo no unicidade CodigoConclusao DesignacaoConcinsao especifica o sint ctica de uma destas OD apresentada de seguida DETECT UNIQUENESS VIOLATION ON CodigoConclusao FROM Conclusoes OF BDD A execu o da OD de viola o de unicidade no atributo CodigoCondusdo n o originou a identifica o de qualquer PQD Por seu turno a execu o do mesmo tipo de OD no atributo DesignacaoConclusao resultou na identifica o dos PQD apresentados na Tabela 8 24 292 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica Tabela 8 24 Resultados da OD de viola o de unicidade no atributo DesignacaConclusao
596. utras possibilidades o ru do pode surgir como consequ ncia de diferen as nas medi es efectuadas ou causado por diferentes estrat gias de arredondamento dos valores Este problema n o consta da taxionomia proposta uma vez que se encontra inclu do nos PQD zuplos duplicados inconsistentes ou viola o de restri o de integridade Se a diferen a entre os valores excede um determinado limiar de toler ncia definido pelo utilizador em fun o da situa o est se perante Zuplos duplicados inconsistentes ou viola o de restri o de integridade Caso contr rio n o se considera existir PQD em virtude das diferen as entre os valores serem desprez veis semelhan a da taxionomia proposta o ru do tamb m n o surge como PQD nas taxionomias relacionadas 4 3 Compara o com Trabalho Relacionado Na Tabela 4 2 estabelece se uma correspond ncia entre os PQD da taxionomia proposta nesta disserta o primeira coluna e os PQD inclu dos nas taxionomias relacionadas restantes colunas Tabela 4 2 Taxionomia proposta versus outras taxionomias PQD Valor em falta Viola o de sintaxe Rahm e Do 2000 Valor em falta Transposi o de valores Kim et al 2003 Valor em falta Disposi es diferentes Miiller e Freytag 2003 Valor em falta Erro sintactico Erro ortografico Erro ortogr fico Erro ortogr fico x Viola o de dominio Valor ilegal Viola
597. utros tuplos referentes ao mesmo dador estes foram utilizados no c lculo da m dia dos valores do atributo Peso nesses tuplos Neste c lculo apenas se consideraram os valores que n o violavam o dom nio do atributo Na situa o contr ria calculou se a m dia dos pesos dos indiv duos do mesmo sexo e idade Utilizou se o valor resultante do c lculo da m dia para substituir o valor que violava o dom nio Na correc o das viola es de dom nio detectadas no atributo Altura executou se a opera o apresentada de seguida CORRECT DOMAIN VIOLATION ON Altura FROM Dadores OF BDD SET Altura AlturaDador ID Dadores ID Altura Esta OC tamb m envolveu a invoca o de uma fun o definida pelo utilizador no caso AlturaDador A sem ntica que se encontra subjacente a esta fun o a que se descreve a seguir Para cada valor que constitu a viola o de dom nio utilizou se o respectivo valor do atributo ID para se identificar na tabela Dadores o dador em causa Na situa o da tabela conter outros tuplos referentes ao mesmo dador utilizou se o valor do atributo A wra desses tuplos Sempre que existia diferen as nestes valores utilizou se o princ pio da maioria 7 e seleccionou se a altura que se encontrava na maioria dos tuplos Quando n o existiu uma altura com um n mero de ocorr ncias superior s restantes n o se efectuou qualquer tipo de correc o tendo sido retornado o pr prio valor que const
598. utura de dados de um dado tipo e g um vector uma matriz seja atrib uma atribui o da sequ ncia de atribui es especificadas na OC seja reinicializa leitura tuplos R um procedimento que recebe uma rela o Re re inicializa a leitura sequencial dos tuplos em Q e faz com que o pr ximo tuplo a ser lido seja novamente o primeiro seja count nome atr a fun o usual de SQL que recebe o nome de um atributo e devolve o n mero de valores n o nulos que este cont m seja ength str uma fun o que recebe uma string e devolve o n mero de caracteres que a comp em seja substitui substring str substr1 substr2 uma fun o que recebe uma string str e duas substrings substri substr2 substituindo substr1 por substr2 em str Como resultado a fun o devolve a Cap tulo 6 Formaliza o das Opera es de Correc o 167 nova string resultante No caso de substr1 n o existir em str a fun o devolve esta ltima sem qualquer altera o seja vec atribs chave prim R um vector que cont m os nomes dos atributos que constituem a chave prim ria de R 7 M Ay seja existem atribs na rela o vec atribs R uma fun o que recebe um vector com nomes de atributos vec atribs e uma rela o R verificando se todos os atributos existem na rela o Como resultado da verifica o a fun o devolve um valor booleano seja pqd o problema de qualidade de dados a corrigir de acordo com o especific
599. ve fon tica do ltimo nome juntamente com a primeira inicial juntamente com a chave fon tica da rua e 717 n mero da rua juntamente com a chave fon tica do endere o Para que dois registos sejam considerados poss veis duplicados necess rio haver correspond ncia pelo menos numa destas chaves Sempre que isto acontece gerado um valor representativo do seu Ap ndice A Ferramentas Comerciais de Melhoria da Qualidade de Dados 359 grau de semelhan a No c lculo deste valor s o usados os valores de alguns atributos relevantes Apesar da forma de c lculo do grau de semelhan a se encontrar predefinida o utilizador pode proceder sua altera o Caso o valor seja inferior ao limiar predefinido a ferramenta n o considera os registos como sendo potenciais duplicados Ap s a detec o dos poss veis duplicados s o apresentados dois relat rios resumo dos dados ilustrando a qualidade e natureza dos valores que se encontram nos atributos eg valores distintos existentes nos atributos e sua distribui o percentual e resumo de correspond ncias apresentando os duplicados encontrados na tabela O relat rio resumo de correspond ncias possibilita a visualiza o dos pares de duplicados lado a lado evidenciado as semelhan as e diferen as existentes entre os valores dos atributos Usando esta potencialidade o utilizador pode 7 classificar um determinado par como n o sendo duplicados 77 efectuar altera es
600. vec segs iniciais lt insere valor em vector ordenado seg inicial vec segs iniciais vec segs circulares lt identifica segs circulares seg inicial repetir para i 1 at dimens o vec segs circulares vec total segs circulares insere valor em vector vec segs circulares 1 svec total segs circulares fim repetir fim se t lt de tuplo T fim repetir retorna vec total segs circulares fim Fun o identifica segs circulares seq inicial E seja vectores iguais vecl vec2 uma fun o que recebe os vectores vecl e vec2 verifica se estes s o iguais e como resultado devolve o valor booleano correspondente seja cria vector a partir de string string token uma fun o que recebe uma dada string e um token efectuado a separa o da string nos diversos tokens que a comp em com base no token fornecido Cada token colocado num vector sendo este devolvido como resultado da fun o seja valores duplicados no vector vec uma fun o que recebe um vector verifica se este cont m valores duplicados e devolve o valor booleano correspondente seja remove elemento do vector elem vec uma fun o que recebe um dado elemento elem e um vector vec e procede remo o de elem em vec devolvendo este como resultado in cio vec segs geradas insere valor em vector seq inicial vec segs geradas poss vel expandir verdadeiro repetir enquanto poss vel expandir verdadeiro vec novas segs geradas expa
601. verificar se cada palavra ou zken que comp e cada valor do atributo em quest o e atr existe num dado dicion rio definido pelo utilizador Caso n o exista est se perante um erro ortogr fico Quando isto acontece procura se identificar as palavras existentes no dicion rio lexicalmente similares ao erro ortogr fico com base numa m trica de semelhan a Na situa o de serem identificadas palavras semelhantes uma ou mais estas s o acompanhadas do respectivo grau de semelhan a gerado pela m trica Al m dos valores 124 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica da chave prim ria dos tuplos onde foram encontrados erros ortogr ficos no atributo a rela o que resulta desta OD e Z1 armazena esses erros assim como as respectivas palavras similares e os graus de semelhan a associados Naturalmente estes ltimos apenas s o armazenados caso a identifica o de palavras semelhantes tenha tido sucesso def Algoritmo Detec o Erro Ortogr fico seja tokenize_string st uma fun o que recebe uma string str e devolve um vector com os diversos sokens que a comp em seja existe no dicion rio str dic uma fun o que recebe uma string str e uma rela o dic que armazena um dicion rio verifica a exist ncia de str em dic e como resultado devolve um valor booleano seja identifica palavras semelhantes str dic metr uma fun o que recebe uma string s
602. vidualizada a cada PQD detectado Pela segunda via 7 e autom tica as correc es s o efectuadas automaticamente em fun o das opera es definidas pelo utilizador Contrariamente s OD que s o especificadas ao mesmo tempo para os diversos NG as OC s o especificadas para solucionar os PQD detectados no n vel em quest o As OC s o especificadas com base na linguagem declarativa apresentada no cap tulo anterior 216 Detec o e Correc o de Problemas de Qualidade dos Dados Modelo Sintaxe e Sem ntica O processo a que as OC s o sujeitas em tudo id ntico ao das OD Assim ap s a sua especifica o s o submetidas ao compilador de OC O parse das opera es efectuado sendo reportados ao utilizador os erros sint cticos detectados para que este efectue a sua correc o Caso n o sejam detectados problemas sint cticos as OC s o convertidas para uma representa o interna e submetidas ao m dulo motor de execu o das OC Em virtude da sua import ncia na arquitectura este m dulo tamb m ser objecto de uma aten o especial corporizada na Sec o 7 5 deste cap tulo Por agora suficiente dizer que este m dulo tem por objectivo a execu o das OC especificadas As OC que sejam de tipos diferente s o executadas paralelamente uma vez que n o h qualquer tipo de depend ncia entre estas No caso de existir mais do que uma opera o de um dado tipo e g correc o de viola o de sintaxe incidindo
603. visam diminuir o tempo de execu o das opera es Todos os prot tipos evidenciam potencialidades de extensibilidade e permitem que fun es definidas pelo utilizador sejam adicionadas s respectivas bibliotecas de fun es Apenas dois dos prot tipos fornecem um suporte adequado s excep es que podem ocotrer durante a execu o das opera es Cap tulo 3 Limpeza de Dados 65 O A maioria dos prot tipos analisados recorre a interfaces com utilizador que n o s o gr ficos Q N o existem potencialidades de anula o na maioria dos prot tipos o que em certas opera es pode fazer com que se tornem irremediavelmente definitivas a excep o do Ajax nenhum outro prot tipo de investiga o evidencia potencialidades de executar incrementalmente as opera es de LD Este prot tipo permite que ap s uma primeira execu o do grafo dirigido de transforma es seja poss vel proceder novamente sua execu o mas apenas a partir de um determinado ponto Esta caracter stica revela se particularmente til na manipula o das excep es que possam ter ocorrido aquando da execu o anterior Ap s a correc o manual destas ou de se ter refinado a opera o de transforma o os tuplos envolvidos podem ser submetidos s restantes opera es que tinham ficado pendentes O Apenas o IntelliClean define automaticamente a sequ ncia de execu o das opera es de LD Em todos os outros prot ti
604. w a um determinado dador tem de corresponder sempre o mesmo grupo sangu neo e 1 a um determinado dador tem de corresponder sempre o mesmo factor Rh excep o da terceira OD ie relacionada com a altura do dador a execu o das demais opera es n o culminou na detec o de qualquer PQD do tipo em quest o Da execu o da terceira opera o resultou a detec o de 40 viola es de depend ncia funcional Na tabela 8 37 apresentam se os valores envolvidos em duas dessas viola es Tabela 8 37 Resultados da execu o da 3 OD de viola o da depend ncia funcional na tabela Dadores Cap tulo 8 Estudo de Caso de Limpeza de Dados 305 Nesta tabela efectuou se uma OD para identificar os tuplos duplicados que eventualmente pudessem existir Um tuplo diz se duplicado de outro quando simultaneamente os valores dos atributos referentes data e ao dador s o iguais A execu o da OD permitiu confirmar a inexist ncia de tuplos duplicados Ainda na Tabela Dadores efectuaram se OD com o objectivo de detectar viola es s seguintes restri es de integridade 7 um indiv duo do sexo masculino apenas pode dar sangue de tr s em tr s meses 7 e quatro vezes por ano 77 um indiv duo do sexo feminino apenas pode dar sangue de quatro em quatro meses z tr s vezes por ano De seguida apresenta se a OD referente primeira restri o de integridade DETECT INTEGRITY CONSTRAINT
605. xar de efectuar uma compara o entre o trabalho efectuado e o trabalho relacionado Esta compara o fulcral para que se possa evidenciar o que h em comum e principalmente o que h de diferente Assim nesta sec o apresenta se uma compara o entre o resultado mais vis vel do trabalho realizado 7 e o SmartClean e consequentemente do modelo de LD que lhe est subjacente e as ferramentas de LD descritas no Cap tulo 3 Sec o 3 5 Estas ferramentas t m a sua origem em duas comunidades distintas cient fica acad mica e cometcial empresarial A compara o com as ferramentas oriundas de cada comunidade efectuada nas duas subsec es seguintes 10 2 1 Prot tipos de Investiga o Nesta sec o efectua se uma compara o entre o SwartCkan e os prot tipos de investiga o apresentados no Cap tulo 3 Sec o 3 5 1 ze Ajax Arktos II IntelliClean FraQL e Potter s Wheel A an lise comparativa efectuada em duas vertentes caracter sticas intr nsecas e cobertura a n vel de DC dos PQD que constituem a taxionomia apresentada no Cap tulo 4 10 2 1 1 An lise das Caracter sticas A Tabela 10 1 permite comparar as caracter sticas do SymariClean relativamente aos demais prot tipos de investiga o de LD analisados no mbito deste trabalho de doutoramento Esta tabela constitui uma evolu o da Tabela 3 2 Em rela o a esta a Tabela 10 1 composta por uma coluna adicional relativa s caracter
606. xecu o pode ficar restrito apenas aos tuplos que foram objecto de altera es A Figura 7 15 representa graficamente uma altera o ao atributo a do tuplo t na rela o R efectuada para corrigir um PQD ao n vel multi rela o da fonte de dados Figura 7 15 Altera o ao valor do atributo a no tuplo t Assumindo que esta foi a nica altera o efectuada rela o o rein cio da execu o das sequ ncias de OD nos NG do atributo contexto do valor individual e contexto multi valor tuplo rela o e multi rela o da fonte de dados envolve unicamente as opera es que incidem sobre o atributo a Nos NG do atributo apenas no contexto do valor individual e do tuplo a execu o das OD ficam ainda mais limitadas a apenas aos valores dos atributos do tuplo t Todas as outras OD que envolvem outros atributos da rela o R n o s o executadas O comportamento a n vel de execu o das OD perante as altera es efectuadas depende do NG a que estas pertencem A apresenta o deste comportamento em cada NG efectuada nos par grafos seguintes acompanhada de um exemplo ilustrativo Come a se precisamente pela apresenta o do exemplo Suponha se que foi detectado um problema de sin nimos nos valores de dois atributos de dois tuplos pertencentes a rela es de fontes de dados diferentes Este um problema que pertence ao NG m ltiplas rela es de diferentes fontes de dados O utilizador procede co
607. ximados sse J ae U t d vta V similarity t a Uta 2 0 e Duplicados inconsistentes Caso as anteriores situa es n o se verifiquem diz se que os tuplos s o duplicados inconsistentes dado que 3 a e U similarity v t a v t d lt 0 O Viola o de restri o de integridade Seja check uma fun o que recebe valores de atributos de todos os tuplos da rela o verifica se uma determinada restri o x respeitada e devolve um valor l gico Seja o conjunto de nomes de atributos assim definido S a a e RA A a usado na formula o de x ie SC RNA Existe uma viola o de restri o de integridade na rela o r sse check VMTS falso Nota v 7TS representa os valores dos atributos que pertencem a S em todos os tuplos da rela o 4 4 5 Problemas ao N vel de M ltiplas Rela es Fontes de Dados Nesta sec o s o apresentadas as defini es formais dos PQD identificados ao n vel de m ltiplas rela es quer estas perten am a uma ou mais FD O Heterogeneidade de sintaxes Seja G a a sintaxe do atributo a dada por uma gram tica ou express o regular Sejam a e a os nomes de dois atributos representativos da mesma propriedade do mundo real Existe uma heterogeneidade de sintaxes entre as rela es n e n sse J a E R A 4 E RAA Gla Glaz O Heterogeneidade de unidades de medida Seja convert uma fun o que recebe um valor na unidade de medida x efectua a sua conv
608. xistem valores incompletos em atn os respectivos valores incompletos e as diversas alternativas v lidas que os completam O esquema de Z1 Z1 d dm atr dom in cio se existe opera o detec o viola o dom nio atr verdadeiro ent o T lt Ta nnan atr Scone a gt lt Ti Z1 sen o se existe rela o T falso ent o P T Ta slm atr Ocond R gt lt Ta sulm R SI U Taam Z1 i 1 sen o T lt Fay E atr Cond R gt lt T fim se t de tuplo T repetir enquanto t null se existe opera o detec o viola o dom nio atr OU O fom tatr X ent o Ve 7 dom Sim like t atr v dom like t atr v dom like t atr 19 ue de tuplo U repetir enquanto uF null Z1 Z1 VU t d tdp t atn udom ue de tuplo U fim repetir fim se t le tuplo T fim repetir fim Cap tulo 5 Formaliza o das Opera es de Detec o 121 5 3 1 2 2 Valor sobrecarregado Formaliza o Sint ctica DETECT OVERLOADED VALUE ColunasAlvo DasTabelas DasBasesDados Defini oDom nio UsandoCondi o Formaliza o Sem ntica A detec o deste PQD consiste em verificar se cada valor do dom nio inicia ou termina da mesma forma do que um valor do atributo em causa e atr que n o faz parte do dominio respectivo eventualmente j confirmado por uma opera o pr via de detec o de viola o de dom nio ou que composto por um n mero de caracteres inferiores
609. z es necess rio come ar por identificar e solucionar as viola es de depend ncia funcional ou as circularidades entre tuplos existentes na rela o opera o seguinte envolve a detec o dos tuplos duplicados Este tipo de problemas tem de ser identificado e solucionado antes da detec o das viola es de restri o de integridade Caso tal n o aconte a podem ser reportadas supostas viola es de restri o de integridade A resolu o pr via dos tuplos duplicados existentes faz com que estas supostas viola es j n o sejam detectadas e reportadas ao utilizador A ltima opera o ao n vel da rela o envolve a detec o de viola o de restri o de integridade Para que a detec o deste tipo de problema produza resultados fi veis necess rio que as viola es de depend ncia funcional as circularidades entre tuplos num auto relacionamento e os tuplos duplicados tenham sido identificados e solucionados Cap tulo 7 Modelo Proposto para a Limpeza de Dados 229 Em certos tipos de PQD e g viola o de depend ncia funcional viola o de restri o de integridade pode ser especificada mais do que uma OD Quando isto acontece caso as OD em causa n o possuam atributos comuns isso faz com que perten am a sequ ncias de depend ncias diferentes pelo que a sua execu o efectuada paralelamente Quando h atributos comuns a execu o das OD pode ter de obedecer a uma determinada orde

Download Pdf Manuals

image

Related Search

Related Contents

TABLE DES MATIÈRES  Maxi-Cosi® Infant Car Seat Adapter Adaptador Para  Riedel Performer manual  User`s Manual  Guía integrada de actividades  Servizi online - Università degli Studi di Bari  NEC NP4001-08ZL data projector  1 - Sentry® Safe  Bedienungsanleitung FM/DAB+/Internet Radio  King Canada KC-1632DS User's Manual  

Copyright © All rights reserved.
Failed to retrieve file