|
Data Quality Management
对于任何规模的信息系统应用来说,数据质量的高低都是至关重要的。但在信息系统的使用过程中,有多种原因可以导致数据质量出现问题。随着企业或组织对信息系统的使用面扩大、依赖性增强以及数据量剧增,针对数据质量的评估和提高工作变得越来越重要了。
您的ERP数据库中是否有垃圾数据?您的数据库数据质量到底如何?
数据质量问题往往被隐藏在数据库深处,一般只有在实际使用的过程中才能发现。现代ERP软件尽管在客户端提供了多种验证手段阻止用户录入垃圾数据,但受限于验证手段、成本和软件开发商实力,实际情况是客户端源源不断地向ERP系统中输入垃圾数据。并且,这种情况在系统实施初期尤甚。
ERP软件必须在企业中真正实施才能发现问题,在测试过程中,遇到一两次数据质量带来的问题往往被忽略,客户或者用户一般也能接受。但假如让您回答,测试结束后的数据质量是什么样的?是否有垃圾数据?都存在于数据库的什么地方?哪个表哪个字段存在着最多的错误数据?错误数据占总数据量的比例是多少?
这些问题,您能迅速提供详实的答案吗?您想评估这些质量问题主要由哪些原因产生?您能指出解决这些质量问题的方法吗?
数据质量的问题
数值错误的数据:包括类型错误,例如用文本字型保存的数字数值;值超限,例如文字长度超限、数值大小超限;空值;编码值不在既定范围内,例如性别限定了M/F两种值,但实际使用了T;
不准确的数据:例如邮政编码,可能长度、类型都符合要求,但一个天津企业的地址信息中邮政编码字段值使用了一个0681开头的邮政编码(天津应为300开头)。
不一致的数据:包括全局编码规则不一致,同值域中或不同值域之间重复的数据,不同值域之间间接相关值重复或超出范围的数据;表示类似信息的不同字段值不同或错误的数据。
不完整的数据:某业务流中某业务的数据是否完整,是否提前了业务状态而缺失了某些业务数据?某些值为空值而和它相关的字段值不得为空的情况。
不符合业务规则的数据:包括不符合流程规则(这也是造成不完整数据的一个重要原因)、不符合时间规则以及不符合业务逻辑规则的情况。
过时的数据:例如因不正确执行业务流或者业务操作缺失造成的留存数据,未被清除或者转移的一批数据。
数据质量问题的产生
系统维护。系统维护过程中DBA在对数据进行操作的过程中,各种不符合业务逻辑或数据逻辑的数据都有可能插入到数据记录中,也可能将有用的数据记录从系统中强行清除。这些数据记录是相互依赖才能正常工作的,后台操作因各种客观原因不能避免,但这些操作跳过了信息系统前台软件的验证和检查过程,将可能对系统造成无法恢复的更动。
系统迁升。系统迁升过程将对数据本身进行多种复杂处理,数据在被处理的过程中可能被转换、截断、连接、更改以及删除。这些操作有可能由原信息系统执行,有可能由新的信息系统的工具软件进行,与系统维护造成数据质量问题的过程类似,当这些对于数据库直接进行的操作发生错误时,数据质量问题可能立即出现,也可能被隐藏,在后续使用过程中才暴露出来。
数据整合。用户可能使用了多种不同的信息系统来管理企业信息,这些系统之间数据整合过程需要长期的验证和测试方能正确工作。数据整合过程经常是在线运行的,这样在验证和测试过程中产生的微小错误数据将会被积攒起来。可能某些数据对于自身信息系统来说是正确的,但单独将其整合到其他系统中,由于缺少必要的正确的转换和处理,数据整合过程也许能执行通过,但数据整合过程产生的错误将在日后使用过程中造成各种影响最终导致数据质量下降。
客户端软件操作失败,临时数据没有被及时清除。在比较复杂的信息系统应用中,客户端经常在服务器端创建一些临时数据或在业务流处理过程中更改一些关键记录的值域,信息系统开发过程中往往对系统崩溃等意外情况测试较少,这样在实际使用过程中将造成的垃圾数据。
数据质量问题的危害
数据质量问题会中断业务流的进行,降低业务效率甚至造成业务损失。信息系统在执行下一个业务处理过程的时候,首先会检查上一个业务节点的结果数据以防止新的处理过程崩溃或造成更多的错误。如果上一个业务节点的结果数据中存在垃圾数据,将直接导致上述检查结果为失败。优秀的信息系统将能提供明确的提示信息,有助于用户或者支持人员更正数据并分析问题,以及制定应对措施以防后患,但受限于企业信息系统成本和开发设计人员水平,这一更正、维护过程往往不能顺利进行。
数据质量问题会导致统计数据失实,造成错误的判断。源数据是报表、BI、数据挖掘的根据,这些应用往往会执行复杂的计算过程。如果不能提供高质量的数据,在应用的计算过程中,可能会导致计算失败、浪费计算时间、放大小错误或者隐藏大隐患。
数据质量问题会造成数据破损,导致信息系统升级、数据仓库建设失败。无论系统升级还是数据仓库项目建设,都需要高质量的数据支持才能做出正确的初期分析和后续实施工作。若项目组将分析建立在错误的数据基础上,一些错误可能被隐藏,这些错误在后期的实施工作中导致无法预期的结果。
数据质量管理的阻力
企业数据集成环境高度复杂,中国市场尤甚。企业信息系统随着企业的成长而逐渐升级换代,因为种种原因,企业在使用上一个开发商升级自己现有系统时要付出更高的代价,这也是很多用户选择了使用哪些带有某种新的技术亮点的新信息系统的原因之一。用户对将要面对的新信息系统的了解较少,而对老系统了解较多(对缺陷尤其清楚)。集成商或开发商在推广新系统的过程中提出的一些“对症下药”的方法有效地吸引了用户的眼球,但也隐藏了多系统并行运行和系统升级更换对接过程中可能遇到的问题。实际上,在中国用户中,这种情况尤其常见。
数据源分散,数据重复存储。重复的数据可能保存在两个数据库中,也可能保存在几个不同的服务器上,而这两个数据库服务器甚至也会采用不同的系统。尽管现代数据库技术的兼容性大幅度提高,但复杂的应用还是令IT人员伤透了脑筋。同一条记录,同一个信息,在这个系统中的字段名称和另外一个系统的字段名称可能相同,用哪个?什么样的记录是错误的?什么样的记录是有隐患的?类似的信息怎样判断才能认定为重复?这些问题必须人工介入才能有效解决。
|