Data Quality Activities

Ondanks verschillende interpretaties van data quality (DQ), wordt de term het vaakst omschreven als "fitness for use" [3, 4]. Een methodologie om DQ te optimaliseren kan in essentie worden onderverdeeld in de volgende activiteiten [7, 5, 6]:

  1. State (re)construction en dataprofiling.
  2. DQ-meting of -beoordeling.
  3. Gegevensopschoning of -verbetering.
  4. Opzetten van continue DQ-monitoring.

State (re)construction en Data Profiling: 

'State (re)construction' beschrijft het verzamelen van contextuele informatie, geobserveerde gegevens en gegevens over de organisatie waar een DQ-project wordt uitgevoerd [7].  Dataprofilering wordt beschreven als het proces van het analyseren van een dataset om data over data (d.w.z. metadata) te verzamelen met behulp van een breed scala aan technieken [8, 1, 2]. Het is dus een essentiële eerste stap voorafgaand aan elke DQ-meting of monitoringactiviteit om op die manier inzicht te krijgen in een bepaalde dataset. Voorbeelden van informatie die wordt verzameld tijdens gegevensprofilering zijn: het aantal afzonderlijke of ontbrekende (d.w.z. null) waarden in een kolom, gegevenstypen van attributen of vaak voorkomende patronen en hun frequentie (bijvoorbeeld opmaak van telefoonnummers) [1].

De vereisten voor gegevensprofilering zijn gebaseerd op de classificatie van Data profiling-taken door Abedjan et al., die oorspronkelijk is gepubliceerd in [1] en onlangs is bijgewerkt in [2]. Hierin wordt de volgende concrete onderverdeling gemaakt:

- Cardinalities: Aantal rijen, kolommen, percentage NULL waarden ( niet ingevulde data), aantal unieke waarden.

- Value Distributions: Value Distributions kunnen worden omschreven als kardinaliteiten van waardegroepen [1]. Deze worden het vaakst weergegeven in frequentiediagrammen zoals histogrammen om zo de waardeverdelingen te visualiseren in de vorm van histogrammen. Ook kwantielen (statistische maatstaf om een waardeverdeling in procentpunten op gelijke afstand te verdelen [10] ) worden gebruikt om de waardeverdelingen te visualiseren.

- Patterns & Domains: Het bieden van ondersteuning voor verschillende vereisten met betrekking tot out-of-the-box patroon- en domeindetectie. Voorbeelden hiervan zijn: ontdekking van basistypen (herkent het verschil tussen string, boolean en getal) en gebruikt deze informatie voor verdere interne verwerking; meting van waardelengte (minimum, maximum, gemiddelde, mediaan); aantal cijfers, decimalen, etc. .

- Functional Dependency Analysis: Weergeven van functionele afhankelijkheden tussen kolommen van data. Een functionele afhankelijkheid (FD) tussen kolommengroepen α en β wordt genoteerd als α → β en stelt dat alle paren records met dezelfde attribuutwaarden voor α ook dezelfde attribuutwaarden voor β moeten hebben. De α-waarden bepalen met andere woorden functioneel de β-waarden [9].

- Correlation Analysis: Correlaties zijn een statistische maatstaf tussen 1,0 en -1,0 om de (lineaire) relatie tussen twee numerieke attributen aan te geven [1, 10]. De meest gebruikte coëfficiënten die in tools worden gebruikt zijn de Pearson-correlatiecoëfficiënt of de op rang gebaseerde Spearman's of Kendall's tau-correlatiecoëfficiënten [10].

De begrippen clustering, outlier detection en duplicate detection zijn in de praktijk niet altijd duidelijk te onderscheiden. Ook Abedjan et al. [1] stellen dat clustering kan worden gebruikt om outliers in een enkele kolom te detecteren, of om vergelijkbare of dubbele records in een tabel te detecteren. Daarom beschrijven we kort de drie concepten:

- Clustering Analysis: Clustering is een vorm van ongesuperviseerd machine learning, waarbij gegevensitems (bijvoorbeeld records of attribuutwaarden) worden ingedeeld in groepen (clusters). Veelvoorkomende clusteringalgoritmen zijn k-means of hiërarchische clustering.

- Outlier Detection: Outlier detection houdt zich bezig met gegevenspunten die als afwijkingen of afwijkend worden beschouwd in vergelijking met de overige gegevens.

- Duplicate Detection: Duplicate detection heeft als doel om records te identificeren die verwijzen naar dezelfde entiteit in de echte wereld [13]. Het is een veel onderzocht veld, dat ook vaak wordt beschreven als record matching, record linkage of redundancy detection [13]. In principe selecteert de gebruiker (1) de kolommen die moeten worden vergeleken, (2) wordt er optioneel optioneel een transformatie op toegepast op die kolommen (bijvoorbeeld door een string op de eerste drie tekens af te knippen), en ten slotte (3) selecteert de gebruiker een geschikte afstandsfunctie en algoritme. Het belangrijkste verschil tussen de implementaties is de selectie van afstandsfuncties voor de attribuutwaarden.

Data Quality Measurement:

DQ wordt vaak omschreven als een concept met meerdere dimensies, zodat elke DQ-dimensie verwijst naar een specifiek aspect van de kwaliteit van data [12]. In de loop der jaren is een grote verscheidenheid aan dimensies en dimensieclassificaties voorgesteld [8, 4, 11]. Het hier gepresenteerde evaluatiekader omvat de vier meest gebruikte dimensies:  nauwkeurigheid, volledigheid, consistentie en tijdigheid.

- Accuracy: Vormt de metriek waar wordt nagegaan waarbij het totale aantal records in de brontabel wordt vergeleken met het aantal (nauwkeurige) records in de doeltabel. Accuraatheid stelt m.a.w. het percentage correcte records voor, wat in de praktijk uiteraard moeilijk precies vast te stellen is.

- Completeness: Meet de volledigheid op attribuutniveau en kan worden berekend door het  het aantal waarden dat niet voldoet aan een bepaalde 'leegtefactor' te delen door het totale aantal waarden binnen een kolom. Deze leegtefactor is in vele gevallen of een datapunt null of leeg is. Als alle velden voor een bepaald attribuut ingevuld zijn dan is de compleetheid gelijk aan 1, wanneer slechts de helft van de velden ingevuld is dan is de compleetheid gelijk aan 1/2.

- Consistency: Meet de mate waarin aan semantische regels op attribuutniveau voldaan is. Zo'n semantische regels zijn gedefinieerd over één enkel attribuut of groepen van attributen. Semantische regels controleren bijvoorbeeld of een attribuut getallen bevat, alfabetisch is of alleen uit kleine letters bestaat.

- Timeliness: Metrieken voor 'freshness' waarbij freshness wordt gezien als de huidige tijdstempel verminderd met de tijdstempel van de laatste wijziging op een dataveld [15].

Data Cleansing:

Data cleansing beschrijft het proces van het corrigeren van foutieve gegevens of gegevensstoringen. In de praktijk omvatten geautomatiseerde opschoningstaken de standaardisatie, de de-duplicatie en matching van (klant)gegevens. Andere pogingen om de datakwaliteit  te verbeteren worden meestal handmatig uitgevoerd. Hoewel geautomatiseerde methoden voor het opschonen van gegevens zeer waardevol zijn voor grote hoeveelheden gegevens, bestaat het gevaar dat ze nieuwe fouten introduceren die zelden goed worden begrepen [5].

Data Quality Monitoring:

De term "DQ-monitoring" wordt voornamelijk impliciet gebruikt in de literatuur zonder een vaste definitie en gemeenschappelijk begrip. Er is een verschil tussen "Data-monitoring", dat het continu controleren van regels beschrijft, en "DQ-monitoring", wat een doorlopende meting van DQ is [14].

 

Referenties

[1] Ziawasch Abedjan, Lukasz Golab, and Felix Naumann. Profiling Relational Data: A Survey. The VLDB Journal, 24(4):557–581, 2015.

[2] Ziawasch Abedjan, Lukasz Golab, Felix Naumann, and Thorsten Papenbrock. Data Profiling. Synthesis Lectures on Data Management, 10(4):1–154, 2019.

[3] Nicholas R. Chrisman. The Role of Quality Information in the Long-Term Functioning of a Geographic Information System. Cartographica: The International Journal for Geographic Information and Geovisualization, 21(2):79– 88, 1983.

[4] Richard Y. Wang and Diane M. Strong. Beyond Accuracy: What Data Quality Means to Data Consumers. Journal of Management Information Systems, 12(4):5–33, March 1996.

[5] Arkady Maydanchik. Data Quality Assessment. Technics Publications, LLC, Bradley Beach, NJ, USA, 2007

[6] Larry P. English. Improving Data Warehouse and Business Information Quality: Methods for Reducing Costs and Increasing Profits. John Wiley & Sons, Inc., New York, NY, USA, 1999

[7] Carlo Batini, Cinzia Cappiello, Chiara Francalanci, and Andrea Maurino. Methodologies for Data Quality Assessment and Improvement. ACM Computing Surveys (CSUR), 41(3):16:1–16:52, 2009.

[8] Felix Naumann. Data Profiling Revisited. ACM SIGMOD Record, 42(4):40–49, 2014.

[9] Edgar F. Codd. A Relational Model of Data for Large Shared Data Banks. Communications of the ACM, 13(6):377–387, 1970.

[10] David J. Sheskin. Handbook of Parametric and Nonparametric Statistical Procedures. CRC Press, Boca Raton, FL, USA, 3rd edition, 2003.

[11] Monica Scannapieco and Tiziana Catarci. Data Quality under the Computer Science Perspective. Archivi & Computer, 2:1–15, 2002.

[12] Lisa Ehrlinger and Wolfram Wöß. A Novel Data Quality Metric for Minimality. In Hakim Hacid, Quan Z. Sheng, Tetsuya Yoshida, Azadeh Sarkheyli, and Rui Zhou, editors, Data Quality and Trust in Big Data, pages 1–15, Cham, 2019. Springer International Publishing.

[13] Ahmed K. Elmagarmid, Panagiotis G. Ipeirotis, and Vassilios S Verykios. Duplicate Record Detection: A Survey. IEEE Transactions on Knowledge and Data Engineering, 19(1):1–16, 2007.

[14] Lisa Ehrlinger and Wolfram Wöß. Automated Data Quality Monitoring. In John R. Talburt, editor, Proceedings of the 22nd MIT International Conference on Information Quality (ICIQ 2017), pages 15.1–15.9, Little Rock, AR, USA, 2017.

[15] Alexis Rolland. mobyDQ. Technical report, The Data Tourists, 2019. https://mobydq.github.io/pages/ overview.