袁 满, 刘 峰, 曾 超, 谢 兰
(1. 东北石油大学 计算机与信息技术学院, 黑龙江 大庆 163318; 2. 华北油田 数据中心, 河北 任丘 062552)
随社会信息化进程的不断加速, 企业即将由IT时代进入DT时代, 数据在企业的发展中将扮演越来越重要的角色。然而, 目前有许多企业的数据质量达不到标准, 无法满足人们对企业的数据质量要求。因此, 数据质量问题得到社会与企业越来越多的关注, 如何管控数据, 保障企业所存储数据质量达标, 这是人们一直在研究的问题。在国内数据质量的研究者对完整性、 一致性等的称谓不同, 例如在文献[1]中称其为数据质量指标, 在文献[2]则称其为数据质量属性, 但在文献[3]则称其为数据质量特性或性质, 目前应用比较广泛的是称其为数据质量维度[4]。如果数据质量维度是研究数据质量的基础, 则数据质量框架则是研究数据质量必不可缺少的体系架构。国际和国内可用的数据质量框架有很多, 但国内比较常用的只有TDQM(Total Data Quality Management)、 DQAF(Data Quality Assessment Framework)等几种框架。对如何选择适合需求的数据质量框架可能比较迷茫, 因此笔者对数据质量框架进行研究对比, 选择适合需求的数据质量框架。
在许多文献中, 数据质量DQ(Data Quality)与信息质量IQ(Information Quality)两个术语通用[5]。目前对数据质量并没有一个明确的定义, 但是对于数据质量的一些定义可以追溯到1996年, Wang等[6]给出了一个初步的定义, 即“适合数据消费者使用的数据”。2001年Redman[7]给出了对数据质量的定义, 如果数据符合其在操作、 决策和规划中的预期用途, 则其具有高质量; 如果数据没有缺陷并且具有期望的特征, 则适合使用。2002年Strong等[8]对初步数据质量的定义进行了完善, 认为数据质量是“符合规格、 满足或超过消费者的期望”。2003年Olson[9]也给出了一个关于数据质量的定义“如果数据满足其预期用途的要求, 那么数据具有质量”。2009年国际标准化组织ISO 8000将质量定义成为“质量是一组固有特性满足要求的程度”[10]。
数据质量维度是数据质量评估的基础, 由于不同领域和不同的人对其认知差异比较大, 而目前数据质量越来越趋于规范。因此笔者从国内外最原始的数据质量维度定义出发, 对其历史演变进行了分析、 研究与总结对比。
1) 维度就是提供测量和管理信息数据的方式, 维度是由因素(factor)逐渐演变而来, 维度的提出最早追溯到1978年, 人们根据影响客户满意度提出了准确性、 可靠性、 及时性、 一致性和充分性等10条因素。1983年Bailey等[11]通过对大量文献的分析总结出38条影响用户满意度的因素。
2) 由于不同的人对影响客户满意度的因素理解不同, 1985年Bollou等[12]给出了对于准确性、 及时性、 完整性和一致性的定义。
3) Wang等[6]通过两次调查得到了消费者比较关心的数据质量属性(维度)。第1次调查得到179个属性(维度), 第2次调查得到118个属性并给出了他们1-9的重要性评分。 然后根据因素分析方法和因素的稳定性方法得出了比较重要的20个属性(维度), 这些属性后来减少到15个, 并且根据初步概念框架分为固有质量、 关联方面的质量、 代表性方面的质量和可访问性方面的质量4大类。并且Wang等[13]通过分析大量文献总结出了数据质量维度的有关定义。
① 准确性(Accuracy and Precision)。文献[13]还没有给出准确性的明确定义。
② 可靠性(Reliability)。 可靠性还没有普遍接受的定义, 不同文献对其解释也不同。
定义1 信息正确和可靠的程度。
定义2 可靠性已经被认为是衡量期望和能力之间的协议。
定义3 可靠性是指防止错误或失败的概率。
定义4 可靠性是指输出信息的一致性和可靠程度。
③ 及时性(Timeliness and Currency)
定义5 及时性是指数据是否过时。
定义6 及时性是指输出时间的有效性。
定义7 与及时性密切相关的概念是流通性, 解释为一个数据项存储的时间。
④ 完整性(Completeness)。完整性是记录某个变量的所有值。
⑤ 一致性(Consistency)。分析文献[13]发现一致性包括3方面的数据: 1) 数据的值; 2) 数据的表示; 3) 数据的物理表示。
4) Strong等[8]根据对数据质量维度的理解, 给出了一些数据质量基本维度定义, 并说明了数据质量维度如何在PSP/IQ(产品和服务信息质量的性能模型)模型中应用, 充分证明了数据质量维度的重要性。
5) Matthew等[14]通过对数据质量的理解总结了AI1RI2, 即可访问性、 可解释性、 相关性、 完整性的定义。
可访问性: 为使用必须能得到信息。
可解释性: 能了解任何信息, 并且可以获得信息的意义。
相关性: 在可访问性和可解释性的基础上, 与消费者感兴趣的领域相关联程度。
完整性: 得到可解释和相关联的信息要完整。
2009年Carlo等[15]总结出了比较全面的数据质量维度以及相关的指标。
数据质量维度是数据质量评估的基础, 为确保数据质量达到预期的目标, 一个完整的数据质量维度是必不可少的。因此研读并分析大量有关数据质量方面的文献, 可以为使用者提供可参考的数据质量维度以及数据质量管控的框架标准。
若数据质量维度为质量评估提供了基础, 则数据质量框架则为数据质量研究提供了完整的体系结构。体系结构为数据质量的研究提供核心的过程及其之间的关系, 下面就对数据质量框架的研究进行总结。
数据质量框架方法是描述数据质量的完整体系, 国内外提出的数据质量框架方法有许多种, 但使用者对框架方法在使用时如何选择往往比较迷茫, 为此, 笔者将对国内外已有的各种典型的数据质量框架方法进行研究和分类对比。
国外根据数据质量框架的适用范围, 通常划分为Web领域、 协同、 数据仓库、 分布式、 以及集中式, 下面根据这5种类别进行分类叙述。
3.1.1 Web领域
2002年Eppler等[16]提出了适合Web数据的信息质量框架IQM(Information Quality Measurement), 该方法将数据质量问题定义为4个阶段: 评估计划、 评估配置、 评估及后续活动。IQM方法有助于根据数据质量的优异支持网站管理员在创建、 管理和维护网站时个性化工具选择; 提供了确保评估所需的数据质量基本维度, 包括可达性、 一致性、 时效性、 简洁性、 可维护性、 流通性和适用性等。此外, 还包括两套准则, 即定义数据质量标准的信息质量框架准则和执行质量评估行动计划准则。
3.1.2 协同系统领域数据质量框架
适合协同系统数据质量框架包括ISTAT(ISTAT Methodology)方法、 DaQuinCIS(Data Quality in Cooperative Information Systems)方法、 DQAF方法和CDQ(Comprehensive Methodology for Data Quality Management)方法。
1) ISTAT方法。ISTAT方法是2003年Falorsi等[17]为意大利国家统计局普查收集和维护意大利公民和企业统计数据质量而提出的。该方法解决如何保证从多个地方的数据库汇集到中央数据集的质量问题。该方法定义了评估阶段、 全面改善阶段、 地方数据库的改善活动和中央协调数据库改善活动阶段, 同时提供了多种简单而有效的质量测量统计技术。此外, 它还提供了数据清洗工具, 2004年意大利国家统计局在该方法的基础之上制定了一系列规范[18]。
2) DaQuinCIS方法。2004年Scannapieco[19]提出了DaQuinCIS方法, 定义了数据质量定义、 质量分析、 质量评估, 质量认证和质量改进5个阶段。该方法涉及准确性、 完整性、 一致性、 流通性和可信性等维度, 而且其对数据质量具有很好的扩展性。DaQuinCIS方法解决了协同系统中数据质量问题: 即一个是数据质量取决于组织间的信任, 另一个是差的数据质量可能会阻碍合作。为解决第1个问题, DaQuinCIS方法引入了数据质量认证的概念, 该概念是将数据与相应的质量措施联系起来, 而且这些措施随数据在组织间进行交换; 第2个问题通过提供基于数据质量的数据选择机制得到解决, 通过这种方式, 利用协同实现提高数据质量。
3) DQAF方法。国际货币基金组织(IMF)的数据质量评估框架旨在提供一个通用的数据质量评估框架(DQAF)和一个共同的方法[20], 该通用数据质量评估框架采用级联式结构, 它能描述全部数据集中共有的数据质量维度, 其他数据集也可共享这些维度。整个评估框架包括从保障数据质量的法律和制度环境再到数据质量维度诚信保证、 方法的健全性、 准确性和可靠性、 适用性、 可获取性6个维度。DQAF具有一些鲜明特点: ① 在结构方面, 该评估框架将数据质量的评估标准按照“从共性到特性”的递进顺序进行组织, 从而增加了应用中的灵活性和可操作性; ② 在内容方面, 该评估框架不仅涵盖了反映数据质量主要维度指标, 而且还考虑了与数据质量相关的统计体系的法制环境, 拓展了对数据质量评估与管理的范围; ③ 在6个专项评估框架之间, 既保持了基本结构和内容的一致, 又充分体现了各个特定数据集的技术特色, 强化了数据质量评估规范的统一性和专业性。
4) CDQ方法。2006年Batini等[21]对数据质量的内容、 方法论、 改进技术和工具进行介绍, 并对CDQ方法有了初步的构思。2008年, Batini等[22]在前人研究的基础上提出了CDQ框架方法。该方法定义了状态重建、 评估和最佳改进过程选择3个阶段。最后, 通过执行成本效益分析选择最合适的改进过程。CDQ方法是通过考虑现有的技术和工具, 并将它们整合到一个可以在组织内和组织间工作的框架中, 并且可应用于所有数据类型, 包括结构化、 半结构化和非结构化的数据。该方法是灵活的, 因为它支持用户在每个阶段和任何上下文中选择最合适的技术和工具。并且CDQ方法对质量维度具有很好的扩展能力。CDQ框架比较简单, 主要是因为它分阶段组织, 每个阶段都具有特定目标。
3.1.3 数据仓库领域
DWQ(The Datawarehouse Quality Methodology)方法是在1998年由Jeusfeld等[23]在欧洲的数据仓库质量项目的基础上提出的, 它适合于数据仓库领域的数据质量管控。
DWQ是用于解决数据仓库中数据质量问题的, 考虑质量目标的多样性, 定义了相应的元数据。将整个过程划分为定义、 测量、 分析以及改进4个阶段。维度除了定义了一致性、 及时性和可访问性之外, 还定义了准确性(Accuracy)和完整性(Completeness)[24], 同时也包括了Wang等[25]提出的4类数据质量维度, 即固有、 关联、 代表性和可访问性的数据质量维度, 还包括其他一些维度, 例如数据验证(Data Validation)、 可追溯性(Traceability)、 可信性(Credibility)和20多个维度周期(Cycle Time)等, 该方法对维度具有很好的扩展性, 但DWQ只提供一般流程建模的步骤, 并没有提供执行的细节。
3.1.4 分布式系统领域
适合分布式系统领域的数据质量框架包括TDQM方法、 TIQM(Total Information Quality Management)方法、 AIMQ(A Methodology for Information Quality Assessment)方法、 CIHI(Canadian Institute for Health Information Methodology)方法、 DQA(Data Quality Assessment)方法、 ISTAT方法、 DaQuinCIS方法和CDQ方法。
1) TDQM方法。1998年, Wang等[26]提出全面数据质量管理(TDQM)方法。该方法根据戴明环原理建立了全面数据质量管理的循环周期, 即定义、 测量、 分析以及改进4个阶段, 并且把文献[6]提出的四大类15种维度运用到该方法中。其缺点是该方法中的质量维度是固定的, 不能得到扩展。该方法是在文献[27]提出的全面质量管理(TQM)方法的扩展, 目前, 很多企业都使用TQM方法保证产品的质量, 但它在支持决策等方面存在一些不足。
2) TIQM方法。1999年, English[28]提出了支持数据仓库项目的TIQM方法。该方法假定将数据源合并成一个特殊的一体化的数据库, 用于提供聚合构建数据仓库时所需的所有数据类型, 这种集成消除了源数据库的错误和异质性。TIQM方法从管理员的角度定义3个阶段: 评估、 改进以及改进管理和监测, 其中第3阶段提供了根据数据质量管理要求以及用于成本效益评估的经济学方法。目标是不仅实现更高的数据质量水平, 而且只在经济效益可行的情况下才采取改进行动。TIQM重点关注了负责运营数据源整合的管理活动, 并且为管理员更好地进行成本效益的分析, 提供了成本和收益的详细分类。TIQM方法的有关维度包括完整性(Completeness), 业务规则一致性(Business Rules Conformance), 准确性(Accuracy)和成本(Cost)等, 但是不足之处是数据质量维度是固定的。
3) AIMQ方法。AIMQ方法是2002年由Lee等[29]提出的。首先该方法通过调查得出一个矩阵信息质量产品和服务绩效矩阵(PSP/IQ), 以及根据用户和管理员的观点对Wang等[6]确定的数质量维度进行分类, 并且开发了信息质量评估工具(IQA)。该方法系统地把信息质量的评估和改进结合起来, 操作性比较好; 定义了评估以及评估分析和解释两个阶段, 但是其只关注评估活动, 而没有提供改进活动的指南、 技术和工具。虽然AIMQ方法是目前为止唯一关注信息质量基准方法, 但是其对应用所需的基准数据库没有提供任何描述, 只是提倡用差距分析技术作为基准和解释结果的标准方法。特别是建议两种差距分析技术: 一个是信息质量基准差距, 另一个是信息质量角色差距。前者是将一个组织的数据质量值与最佳实践组织的数据质量值进行比较。后者比较了由不同组织角色提供的数据质量评估, 即IS专业人员和信息用户。这是一个客观的和特定领域的技术数据质量评估方法。
4) DQA方法。2002年, Pipino等[30]提出了指导数据质量指标定义的一般性原则的DQA方法。该方法定义了主观和客观评估、 主观和客观评估对比以及改进3个阶段。在该方法中数据质量指标大多被定义为特定的, 即用于解决特定问题的指标, 因此数据质量指标取决于所考虑的问题。该方法是主观和客观质量指标的结合, 主观质量指标反映的是信息用户的需求, 而客观指标被划分为任务独立和任务相关两部分。
5) CIHI方法。2005年, Long等[31]为实现评估和提高加拿大健康信息研究所的数据质量, 提出了CIHI方法。CIHI方法主要解决的是数据库规模及其异质性质量。CIHI方法支持选择一个数据子集进行质量评估, 同时还定义了评估异质性指标。该方法把质量评估划分为两个阶段: 一个是质量框架的定义, 另一个是对访问频率高的数据的深入分析。其中第1阶段又包括3步: 数据质量信息的标准化、 制定数据质量评估策略和为CIHI数据管理定义一个识别数据质量优先级并实施持续数据改进程序的工作流程。第2阶段也分为3步: 数据质量分析、 评估和文件报告。
3.1.5 集中式系统领域
很多数据质量框架一般都适合在集中式系统中使用, 下面给出用于集中系统领域的COLDQ(Cost-Effect of Low Data Quality)方法和QAFD(Methodology for the Quality Assessment of Financial Data)方法。
1) COLDQ方法。2004年, Loshin[32]为对获得不良信息对业务流程影响程度的定量评估, 提出了COLDQ方法。COLDQ定义了6个阶段: 信息链映射(Mapping the Information Chain)、 分析(Analysis)、 隔离缺陷数据(Isolating Flawed Data)、 识别影响域(Identifying the Impact Domain)、 评估成本(Evalution of Costs)和聚合(Aggregating the Total), 并且提供了一个影响经济效益的分类, 而且还为每个分类赋予了一个经济值。最后, 通过评估和汇总质量改进项目的成本支持成本效益分析。COLDQ方法的基本目标是提供一个数据质量记分卡, 以支持对低数据质量的成本效应的评估, 与TIQM相似, 提供了一个成本与利益的详细分类。由于该方法采用了改进技术, 避免了低质量成本, 可获得直接效益。COLDQ方法的有关维度包括模式层的全面性(Comprehensiveness)、 灵活性等以及关于数据的冗余性(Redundancy)、 成本(Cost)等, 但数据质量维度在该方法中是固定的。
2) QAFD方法。2004年, Amicis等[33]提出了QAFD方法。QAFD方法定义了财务变量选择、 分析和数据模型支持的客观评估、 业务专家、 客户和数据质量专家的主观评估以及客观和主观评估对比的5个阶段。该方法结合了定量和定性评估的方法确定数据质量问题和选择适当的数据质量改进措施。分析阶段主要是确定语法/语义准确性、 内部/外部一致性、 完整性、 流通性和唯一性维度的规则, 但该方法的维度是固定的。QAFD方法是目前为止财务领域数据质量评估的唯一方法, 已被确定为金融业务数据的措施标准, 从而减少质量测量工具的成本。
虽然国外提出了很多数据质量框架方法, 但国内研究者根据已有研究领域也提出了一些框架方法。下面对国内的一些数据质量框架进行详细阐述。
1) AMEQ方法。2004年Su等[34]为符合组织目标的产品信息质量(PIQ)评估和改进提供严格的理论基础而提出了AMEQ(Activity-based Measuring and Evaluating of Product Information Quality Methodology)方法, 并定义了5个阶段: 建立数据质量环境、 定义、 评估、 分析和改进。该方法在第1阶段使用了信息质量管理成熟度网格评估数据质量环境, 在第4和第5阶段用于评估制造公司的数据质量, 并且提供了一种方法和方法论指导信息和生产相关流程的建模。该方法通过面向对象建模的方法对业务过程中相应的信息产品进行建模, 并且建立了8个模型: 人力资源、 信息资源、 企业活动、 资源输入、 资源流程、 资源输出、 绩效测量和企业目标。AMEQ方法的维度是根据业务活动的相关性进行定义和分类的, 具有很好的扩展能力。但是AMEQ方法不提供具体的实施方法和工具, 只是从理论上提供一般性指导。
2) 模块功能可定制的数据清洗框架。由于市场上的各种数据抽取、 转化和装载工具或多或少提供了一些数据清洗功能, 但是都缺乏扩展性。因此郭志懋等[1]较早地认识到数据质量研究的重要价值, 并开展了一系列的研究工作, 提出了一个模块功能可定制的数据清洗框架和一种基于N-Gram的相似重复记录检测方法, 在一定程度上解决了记录检测问题, 但该方法不适用于中文数据环境, 后来针对中文特性研究了一种检测多语言数据重复记录的综合方法。
3) 数据质量评估模型。杨青云等[35]使用了6元组的形式描述数据质量评估模型, 经过4个步骤构造数据质量评估模型: 确定数据集评估应用视图、 选择评估指标、 制定规则集和计算规则结果得分。该模型是一个6元组M={D,I,R,W,E,S},D需进行评估的数据集;I进行评估的指标;R与评估指标相对应的规则, 规则可使用规范化的自然语言或形式化语言书写, 以便于转换成程序脚本。W给予规则的权值, 描述了该规则在所有规则中所占的比重;E对规则R给出的期望值, 是在评估之前对该规则所期望得到的结果;S是最终的结果, 给出了构造模型的方法和如何计算指标。该模型的主要创新是对于数据质量的评估给出了量化的指标。
4) 数据清洗的框架。庄晓青等[36]对数据质量及其在数据仓库中的应用进行了研究, 他们主要是对数据质量进行分类并提出对这些分类的解决方法, 并在其基础上提出了一个数据清洗的框架。一般的数据清理被分为以下几个阶段: 数据分析, 定义清理, 执行清理和数据清理的一般框架。其框架分成清理设计工具和清理工具。清理设计工具完成清理的前两个阶段,将设计的结果保存到清理元数据库中, 清理工具根据清理元数据库中的元数据自动进行清理。清理设计工具采用图形化界面, 用户可直接读取原始数据进行原始数据分析, 然后设计清理流程。一般具有自动发现数据问题的功能, 使用数据剖析和数据挖掘的方法进行自动分析发现。清理工具一般采用批量处理的方法将输入数据清理, 然后输出到目的地。
通过上面的文献调研, 将各个模型对不同因素支持的程度列在表1中。不同的行业或企业可依据其对数据质量的需求进行参考和选择。
表1 数据质量框架比较
通过对数据质量维度和数据质量框架方法的分析与对比研究, 明确了数据质量维度的定义及其与指标的关系。同时通过对数据框架的分析、 对比研究, 明确了不同的数据质量框架的应用范围以及所包含的质量维度, 对于领域选择适合数据质量框架和数据质量维度, 对数据质量的整体评估和改进都有很重要的作用。上述研究成果为具体应用选择适合需求的数据质量框架、 维度与指标提供了科学的依据。为企业实现数据质量的管控节省大量的时间、 人力和物力。相关领域的数据质量框架相对已经比较成熟, 但是不同的领域需求会有所不同, 此外, 不同领域对数据质量维度与指标的需求也会有所差别, 但是未来不同的领域会借鉴已有的数据质量框架进行完善与补充, 必将朝着领域标准化的质量框架方向发展。