A Little History
On August 18, 1227, the well-known Mongolian emperor Genghis Khan passed. Despite numerous criticisms, based on rumors of genocide and brutality, he united Mongolia. One of his sons, Ögedei, took over the Mongol Empire and became the second Great Khan.
A little less known fact is the role one of his sons played. Cactar Khan was not of prime ascendance, as there is no trace of his mother. Cactar was non-violent, which was really rare for a Mongolian of the 13th century. Cactar’s passion for rigor and quality drove him to Data Quality. From his name, he forged the eponym acronym.
6 Key Elements
This pretty much ignored history fact needs to remind us of the 6 key elements of Data Quality, named after CACTAR.
C – Consistency
Data must be consistent across multiple data sources, servers, and platforms.
Example: You do not want two sensors to report a different level of humidity if they are placed next to one another.
A – Accuracy
The value must mean something, this something must be accurate.
Example: I was born, in France, on 05/10/1971 but I am a Libra (October). Date formats, when expressed as strings, are transformed through a localization filter. So, being born on October 5th, makes my date representation 05/10/1971 in Europe, but 10/05/1971 in the US. I feel lucky, because if you are born on March 22nd, you may violate some rules (as there are only 12 months).
C – Completeness
To make sense, your data must be complete, or, at least, for key data. Missing fields, values, or rows will harm your analysis.
Example: You are trying to geographically locate your customers based on their ZIP Code™, but you are missing 26.3% of them.
T – Timeliness
How recent and relevant is the data? If you are building an industrial system, you must have your data in time. With the growing world of IoT, you expect data to be available right away.
Fun fact: 45m Americans change address every year.
A – Accessibility
How easily can data be accessed an manipulated? One (manual) way to measure Data Quality is to be able to sample it, do you have the right tool? How representative is your sample or are you always getting the same 100 first rows of your dataset?
Fun fact: Apache Spark has a seed parameter to the sample method of its Dataset. Mica is a great tool to sample data from both Hadoop and RDBMS.
R – Reliability
This last item is about how reliable your sources are. A source can be a database system, but also a human operator inputing data on a system.
Example: If your IoT hub is supposed to send you the data between 2am and 3am, but for security reason, access to Internet is restricted to business hours, your source is definitely not reliable.
The first time I referenced Cactar publicly was during my talk at Spark Summit in June 2017.
Of course, Cactar is a completely fictitious character, but it is always a good mnemonic way to remember Data Consistency, Data Accuracy, Data Completeness, Data Timeliness, Data Accessibility, and Data Reliability, the 6 key elements of Data Quality.
Feel free to share your examples in the comment sections, to make this article richer.
Photo Credit: Honor guard members from Mongolia’s armed forces stand in formation before the opening ceremony of Khaan Quest at Five Hills Training Area, Mongolia, Aug. 3, 2013. U.S. Marine Corps photo by Sgt John M. Ewald