<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=Data_profiling</id>
	<title>Data profiling - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=Data_profiling"/>
	<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=Data_profiling&amp;action=history"/>
	<updated>2026-04-22T23:22:45Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.sarg.dev/index.php?title=Data_profiling&amp;diff=470855&amp;oldid=prev</id>
		<title>imported&gt;OAbot: Open access bot: url-access=subscription updated in citation with #oabot.</title>
		<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=Data_profiling&amp;diff=470855&amp;oldid=prev"/>
		<updated>2025-08-18T04:36:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/OABOT&quot; class=&quot;extiw&quot; title=&quot;wikipedia:OABOT&quot;&gt;Open access bot&lt;/a&gt;: url-access=subscription updated in citation with #oabot.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{refimprove article|date=August 2010}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Data profiling&amp;#039;&amp;#039;&amp;#039; is the process of examining the data available from an existing information source (e.g. a database or a [[computer file|file]]) and collecting [[descriptive statistics|statistics]] or informative summaries about that data.&amp;lt;ref name=&amp;quot;Johnson2009&amp;quot;&amp;gt;{{cite encyclopedia |first=Theodore |last=Johnson |date=2009 |title=Data Profiling |encyclopedia=Encyclopedia of Database Systems |editor-last=Springer |editor-first=Heidelberg}}&amp;lt;/ref&amp;gt; The purpose of these statistics may be to:&lt;br /&gt;
# Find out whether existing data can be easily used for other purposes&lt;br /&gt;
# Improve the ability to search data by [[tag (metadata)|tagging]] it with [[Index term|keywords]], descriptions, or assigning it to a category&lt;br /&gt;
# Assess [[data quality]], including whether the data conforms to particular standards or patterns&amp;lt;ref&amp;gt;{{Cite journal|last1=Woodall|first1=Philip|last2=Oberhofer|first2=Martin|last3=Borek|first3=Alexander|year=2014|title=A classification of data quality assessment and improvement methods|url=http://www.inderscience.com/link.php?id=68656|journal=International Journal of Information Quality|language=en|volume=3|issue=4|page=298|doi=10.1504/ijiq.2014.068656|url-access=subscription}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
# Assess the risk involved in [[data integration|integrating data]] in new applications, including the challenges of [[Join (SQL)|join]]s&lt;br /&gt;
# Discover [[metadata]] of the source database, including value patterns and [[frequency distribution|distributions]], [[candidate key|key candidates]], [[inclusion dependency|foreign-key candidates]], and [[functional dependency|functional dependencies]]&lt;br /&gt;
# Assess whether known metadata accurately describes the actual values in the source database&lt;br /&gt;
# Understanding data challenges early in any data intensive project, so that late project surprises are avoided. Finding data problems late in the project can lead to delays and cost overruns.&lt;br /&gt;
# Have an enterprise view of all data, for uses such as [[master data management]], where key data is needed, or [[data governance]] for improving data quality.&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
Data profiling refers to the analysis of information for use in a [[data warehouse]] in order to clarify the structure, content, relationships, and derivation rules of the data.&amp;lt;ref name=&amp;quot;Kimball2008&amp;quot;&amp;gt;{{cite book |first=Ralph |last=Kimball |display-authors=etal |date=2008 |title=The Data Warehouse Lifecycle Toolkit |url=https://archive.org/details/datawarehouselif00kimb_924 |url-access=limited |edition=Second |publisher=Wiley |isbn=9780470149775 |pages=[https://archive.org/details/datawarehouselif00kimb_924/page/n17 376]}}&amp;lt;/ref&amp;gt; Profiling helps to not only understand anomalies and assess data quality, but also to discover, register, and assess enterprise metadata.&amp;lt;ref name=&amp;quot;Loshin2009&amp;quot;&amp;gt;{{cite book |first=David |last=Loshin |date=2009 |title=Master Data Management |url=https://archive.org/details/masterdatamanage00losh |url-access=limited |publisher=Morgan Kaufmann |isbn=9780123742254 |pages=[https://archive.org/details/masterdatamanage00losh/page/n197 94]–96}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;Loshin2003&amp;quot;&amp;gt;{{cite book |first=David |last=Loshin |date=2003 |title=Business Intelligence: The Savvy Manager&amp;#039;s Guide, Getting Onboard with Emerging IT |publisher=Morgan Kaufmann |isbn=9781558609167 |pages=110–111}}&amp;lt;/ref&amp;gt; The result of the analysis is used to determine the suitability of the candidate source systems, usually giving the basis for an early go/no-go decision, and also to identify problems for later solution design.&amp;lt;ref name=&amp;quot;Kimball2008&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==How data profiling is conducted==&lt;br /&gt;
&lt;br /&gt;
Data profiling utilizes methods of descriptive statistics such as minimum, maximum, mean, mode, percentile, standard deviation, frequency, variation, aggregates such as count and sum, and additional metadata information obtained during data profiling such as data type, length, discrete values, uniqueness, occurrence of null values, typical string patterns, and abstract type recognition.&amp;lt;ref name=&amp;quot;Loshin2009&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Rahm2000&amp;quot;&amp;gt;{{cite journal |first1=Erhard |last1=Rahm |first2=Hong |last2=Hai Do |title=Data Cleaning: Problems and Current Approaches |journal=Bulletin of the Technical Committee on Data Engineering |publisher=IEEE Computer Society |volume=23 |number=4 |date=December 2000}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;Singh2010&amp;quot;&amp;gt;{{cite journal |first1=Ranjit |last1=Singh |first2=Kawaljeet |last2=Singh |display-authors=etal |title=A Descriptive Classification of Causes of Data Quality Problems in Data Warehousing |journal=IJCSI International Journal of Computer Science Issue |volume=7 |issue=3 |series=2 |date=May 2010}}&amp;lt;/ref&amp;gt; The metadata can then be used to discover problems such as illegal values, misspellings, missing values, varying value representation, and duplicates.&lt;br /&gt;
&lt;br /&gt;
Different analyses are performed for different structural levels. E.g. single columns could be profiled individually to get an understanding of frequency distribution of different values, type, and use of each column. Embedded value dependencies can be exposed in a cross-columns analysis. Finally, overlapping value sets possibly representing foreign key relationships between entities can be explored in an inter-table analysis.&amp;lt;ref name=&amp;quot;Loshin2009&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Normally, purpose-built tools are used for data profiling to ease the process.&amp;lt;ref name=&amp;quot;Kimball2008&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Loshin2009&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Rahm2000&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Singh2010&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Kimball2004&amp;quot;&amp;gt;{{cite web |first=Ralph |last=Kimball |date=2004 |title=Kimball Design Tip #59: Surprising Value of Data Profiling |publisher=Kimball Group |url=http://www.kimballgroup.com/wp-content/uploads/2012/05/DT59SurprisingValue.pdf}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;Olson2003&amp;quot;&amp;gt;{{cite book |title=Data Quality: The Accuracy Dimension |url=https://archive.org/details/dataqualityaccur00olso_641 |url-access=limited |first=Jack E. |last=Olson |date=2003 |publisher=Morgan Kaufmann |pages=[https://archive.org/details/dataqualityaccur00olso_641/page/n159 140]–142}}&amp;lt;/ref&amp;gt; The computational complexity increases when going from single column, to single table, to cross-table structural profiling. Therefore, performance is an evaluation criterion for profiling tools.&amp;lt;ref name=&amp;quot;Loshin2003&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==When is data profiling conducted?==&lt;br /&gt;
&lt;br /&gt;
According to Kimball,&amp;lt;ref name=&amp;quot;Kimball2008&amp;quot;/&amp;gt; data profiling is performed several times and with varying intensity throughout the data warehouse developing process. A light profiling assessment should be undertaken immediately after candidate source systems have been identified and DW/BI business requirements have been satisfied. The purpose of this initial analysis is to clarify at an early stage if the correct data is available at the appropriate detail level and that anomalies can be handled subsequently. If this is not the case the project may be terminated.&amp;lt;ref name=&amp;quot;Kimball2008&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, more in-depth profiling is done prior to the dimensional modeling process in order assess what is required to convert data into a dimensional model. Detailed profiling extends into the ETL system design process in order to determine the appropriate data to extract and which filters to apply to the data set.&amp;lt;ref name=&amp;quot;Kimball2008&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, data profiling may be conducted in the data warehouse development process after data has been loaded into staging, the data marts, etc. Conducting data at these stages helps ensure that data cleaning and transformations have been done correctly and in compliance of requirements.&lt;br /&gt;
&lt;br /&gt;
=== Benefits and examples ===&lt;br /&gt;
Data profiling produces concise summaries of datasets that reveal structure and quality issues. Typical outputs include statistics and dependency findings that help analysts understand data, accelerate integration/migration, and improve data quality programs.&amp;lt;ref name=&amp;quot;eds-dp&amp;quot;&amp;gt;{{cite encyclopedia |last=Johnson |first=Theodore |title=Data Profiling |encyclopedia=Encyclopedia of Database Systems |publisher=Springer |year=2009 |doi=10.1007/978-0-387-39940-9_601 |url=https://link.springer.com/referenceworkentry/10.1007/978-0-387-39940-9_601|url-access=subscription }}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;abedjan2015&amp;quot;&amp;gt;{{cite journal |last1=Abedjan |first1=Ziawasch |last2=Golab |first2=Lukasz |last3=Naumann |first3=Felix |title=Profiling relational data: a survey |journal=The VLDB Journal |year=2015 |volume=24 |pages=557–581 |doi=10.1007/s00778-015-0389-y |url=https://link.springer.com/article/10.1007/s00778-015-0389-y|url-access=subscription }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Common profiling statistics and checks&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Completeness&amp;#039;&amp;#039;&amp;#039; (e.g., percentage of NULL/blank values).&amp;lt;ref name=&amp;quot;batini2016&amp;quot;&amp;gt;{{cite book |last1=Batini |first1=Carlo |last2=Scannapieco |first2=Monica |title=Data and Information Quality: Dimensions, Principles and Techniques |publisher=Springer |year=2016 |doi=10.1007/978-3-319-24106-7 |url=https://link.springer.com/book/10.1007/978-3-319-24106-7}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Distinctness/uniqueness&amp;#039;&amp;#039;&amp;#039; (number of distinct values; candidate keys).&amp;lt;ref name=&amp;quot;eds-dp&amp;quot; /&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Value distributions&amp;#039;&amp;#039;&amp;#039; (frequencies, histograms, ranges, outliers).&amp;lt;ref name=&amp;quot;eds-dp&amp;quot; /&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pattern/format frequencies&amp;#039;&amp;#039;&amp;#039; (e.g., regex or mask patterns for codes, emails, addresses).&amp;lt;ref name=&amp;quot;eds-dp&amp;quot; /&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Structural dependencies&amp;#039;&amp;#039;&amp;#039; such as keys, functional dependencies, and inclusion/foreign-key dependencies used for integration and schema matching.&amp;lt;ref name=&amp;quot;abedjan2015&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;How results are used&lt;br /&gt;
Profiling provides baselines and evidence for data quality dimensions (such as completeness, accuracy, consistency, timeliness) and supplies metrics for remediation; many data governance frameworks treat profiling as an input to ongoing data quality management.&amp;lt;ref name=&amp;quot;batini2016&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;dama&amp;quot;&amp;gt;{{cite web |title=DAMA Data Management Body of Knowledge (DAMA-DMBOK) |website=DAMA International |url=https://www.dama.org/learning-resources/dama-data-management-body-of-knowledge-dmbok/ |access-date=2025-08-15}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Example.&amp;#039;&amp;#039; For a column ``customer_email``, a profile may report 98.2% non-NULL values, 97.9% values matching an email pattern, top domains by frequency, and no candidate key; for a shipment table, a functional dependency such as ``order_id → customer_id`` may be discovered to support integration.&amp;lt;ref name=&amp;quot;eds-dp&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;abedjan2015&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [[Data quality]]&lt;br /&gt;
* [[Data governance]]&lt;br /&gt;
* [[Master data management]]&lt;br /&gt;
* [[Database normalization]]&lt;br /&gt;
* [[Data visualization]]&lt;br /&gt;
* [[Analysis paralysis]]&lt;br /&gt;
* [[Data analysis]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Data Profiling}}&lt;br /&gt;
[[Category:Data analysis]]&lt;br /&gt;
[[Category:Data management]]&lt;br /&gt;
[[Category:Data quality]]&lt;/div&gt;</summary>
		<author><name>imported&gt;OAbot</name></author>
	</entry>
</feed>