1、1 Professional Create Value数据质量数据质量2 Professional Create Value数据质量问题的危害数据质量问题的危害Poor Data Quality or inconsistent data causes defects in the value chain and is a momentum killer for Data Alignment,Synchronisation and CollaborationCustomer ServiceLevelOOSFailed ATPCost to ServeLogisticsCall CentrePri
2、ce NegotiationsInventories levelsEmergency StockReturnsRetired products3 Professional Create Value日程日程l什么是数据质量什么是数据质量l数据质量的重要性数据质量的重要性l影响数据质量问题的因素影响数据质量问题的因素l如何才能获取高质量数据如何才能获取高质量数据lInformatica平台如何解决数据质量问题平台如何解决数据质量问题4 Professional Create Value什么是数据质量什么是数据质量-定义定义l数据质量是一个涵盖面很广的术语,涉及某条或某组数据数据质量是一个涵盖面很广
3、的术语,涉及某条或某组数据的准确性、完备性、一致性、符合性和时效性以及数据如的准确性、完备性、一致性、符合性和时效性以及数据如何进入并在整个企业内流动。不同的企业对数据质量有着何进入并在整个企业内流动。不同的企业对数据质量有着不同的定义和要求,但是数据质量最终可归结为不同的定义和要求,但是数据质量最终可归结为“符合要符合要求的数据求的数据”。并且数据质量是个持续的过程。并且数据质量是个持续的过程。5 Professional Create Value什么是数据质量什么是数据质量-符合要求的数据符合要求的数据l完全性完全性 所有必需的数据是否都存在吗?所有必需的数据是否都存在吗?l符合性符合性
4、哪些数据是以非标准格式存储的?哪些数据是以非标准格式存储的?l一致性一致性 哪些数据值提供的信息自相矛盾?哪些数据值提供的信息自相矛盾?l准确性准确性 数据准确表示真实来源还是可验证的来源?数据准确表示真实来源还是可验证的来源?l重复性重复性 哪些数据记录是重复的记录?哪些数据记录是重复的记录?l完整性完整性 哪些数据失去了重要的关系联系?哪些数据失去了重要的关系联系?l时效性时效性 数据寿命是否满足用户要求吗?数据寿命是否满足用户要求吗?l域级(字段)域级(字段)l域之间域之间l业务逻辑业务逻辑l数据传递,比如数据传递,比如etl过程过程6 Professional Create Value
5、数据质量的重要性数据质量的重要性数据质量问题是数据质量问题是IT 项目成功的最大障碍项目成功的最大障碍l76%的数据集成项目或完全的失败,或严重延迟l主要的问题是缺乏对数据和数据质量的理解l平均来看,需要10个左右的迭代过程来分析数据质量,并纠正存在的问题低质量的数据影响决策的制定和执行低质量的数据影响决策的制定和执行l低质量的数据影响对市场的反应效率l低质量的数据导致不恰当的决策l投资没价值的产品线l关注无价值的客户现代企业管理是数据质量需求的催化剂现代企业管理是数据质量需求的催化剂l知识工作者正在强烈的意识到数据是他们工作中最重要的资产l全球化的组织和全球化的数据分布,使得数据集成变得愈发
6、重要l合规性的要求使得对数据管理的粗心不能再被容忍高质量数据有利于提高客户满意度高质量数据有利于提高客户满意度l在与客户交互环节的数据质量问题更应该得到充分的关注l正确的拼写客户的名字、性别和Titlel最新的产品信息l最新的价格信息lCRM,Call Center系统中精确的客户数据有利于帮助组织提升l提供更佳的客户服务l提升交叉销售和向上销售的有效性l将更多的机会转化为真正客户确保法规遵从确保法规遵从l高质量的数据帮助实现Sarbanes-Oxley and BASEL II等法规的控制要求和对业务绩效的精确报告.l在法规遵从方面都要求数据是可信赖的,并且是可审计的低质量的数据造成资源、成
7、本的耗费低质量的数据造成资源、成本的耗费lTDWI估算由于客户数据质量问题,造成全美国$6111亿美元的人力资源,打印,邮寄等成本的浪费7 Professional Create Value影响数据质量问题的因素影响数据质量问题的因素8 Professional Create Value数据质量问题归类数据质量问题归类l业务系统源数据的质量问题业务系统源数据的质量问题l源数据信息不正确源数据信息不正确l源数据信息不完整源数据信息不完整l源数据信息不一致源数据信息不一致l标准代码问题标准代码问题l缺乏一致、完整的标准代码,如产品代码没有可执行的规范,或者缺乏一致、完整的标准代码,如产品代码没有可
8、执行的规范,或者有书面规范但执行不力等有书面规范但执行不力等l代码直接写在程序中,没有代码表维护代码直接写在程序中,没有代码表维护lETL产生的质量问题产生的质量问题l技术性问题技术性问题l非技术性问题(如业务规则理解错误)非技术性问题(如业务规则理解错误)9 Professional Create Value数据质量问题产生的环节数据质量问题产生的环节l数据生产环节数据生产环节l数据和业务规则不符数据和业务规则不符l数据产生不严谨数据产生不严谨l手工录入不规范手工录入不规范l新旧系统的切换新旧系统的切换l数据的孤立修改造成系统之数据的孤立修改造成系统之间数据不一致间数据不一致l数据使用和加工
9、环节数据使用和加工环节l数据抽取错误或遗漏数据抽取错误或遗漏l数据的时间段错误数据的时间段错误l数据的重复抽取数据的重复抽取l数据生成的时间点错误数据生成的时间点错误l数据加载转换规则错误数据加载转换规则错误10 Professional Create Value如何才能获取高质量数据如何才能获取高质量数据l访问和评估数据访问和评估数据l数据质量规划和目标数据质量规划和目标l数据质量策略选择和实施数据质量策略选择和实施l上游策略上游策略l下游策略下游策略11 Professional Create Value如何才能获取高质量数据如何才能获取高质量数据-访问和评估数据访问和评估数据l访问数据质
10、量的当前状态,以了解隐藏的数据质量问题访问数据质量的当前状态,以了解隐藏的数据质量问题l完全性完全性 所有必需的数据是否都存在吗?所有必需的数据是否都存在吗?l符合性符合性 哪些数据是以非标准格式存储的?哪些数据是以非标准格式存储的?l一致性一致性 哪些数据值提供的信息自相矛盾?哪些数据值提供的信息自相矛盾?l准确性准确性 数据准确表示真实来源还是可验证的来源?数据准确表示真实来源还是可验证的来源?l重复性重复性 哪些数据记录是重复的记录?哪些数据记录是重复的记录?l完整性完整性 哪些数据失去了重要的关系联系?哪些数据失去了重要的关系联系?l时效性时效性 数据寿命是否满足用户要求吗?数据寿命是
11、否满足用户要求吗?12 Professional Create Value如何才能获取高质量数据如何才能获取高质量数据-数据质量规划和目标数据质量规划和目标l对数据的内容和质量有了一个清晰的了解之后,下一步是对数据的内容和质量有了一个清晰的了解之后,下一步是进行规划和项目计划,以纠正当前错误和防止将来出现错进行规划和项目计划,以纠正当前错误和防止将来出现错误。有效的计划可以解决企业现有应用程序库中的数据质误。有效的计划可以解决企业现有应用程序库中的数据质量问题,并且能够确保新的应用程序从开始就融入数据质量问题,并且能够确保新的应用程序从开始就融入数据质量原则。量原则。13 Profession
12、al Create Value如何才能获取高质量数据如何才能获取高质量数据-数据质量策略选择和数据质量策略选择和实施实施l采用企业范围内的、反复的持续性方法解决数据质量问题。采用企业范围内的、反复的持续性方法解决数据质量问题。与此同时,无法一次性解决所有数据质量问题。要确保为与此同时,无法一次性解决所有数据质量问题。要确保为企业提供准确、一致和及时的数据,唯一途径是通过可最企业提供准确、一致和及时的数据,唯一途径是通过可最终涵盖所有公司数据的阶段性数据质量管理程序实现。终涵盖所有公司数据的阶段性数据质量管理程序实现。l选择用于解决长期数据质量问题的策略要求根据每个数据选择用于解决长期数据质量问
13、题的策略要求根据每个数据质量方案产生的影响平衡方案的成本。常用的策略类型有质量方案产生的影响平衡方案的成本。常用的策略类型有两种:在企业中的输入点解决数据质量问题的方法称为两种:在企业中的输入点解决数据质量问题的方法称为“上游策略上游策略”,而在消耗来自操作系统(如数据仓库)的,而在消耗来自操作系统(如数据仓库)的数据的应用程序中实施则称为数据的应用程序中实施则称为“下游策略下游策略”。14 Professional Create Value上游策略上游策略l上游策略将检验现有应用程序的逻辑、数据和流程,以便上游策略将检验现有应用程序的逻辑、数据和流程,以便获得通过探查来处理未覆盖的异常情况的
14、机会。这可能包获得通过探查来处理未覆盖的异常情况的机会。这可能包括更改应用程序逻辑、增添更好的表单验证、改进与数据括更改应用程序逻辑、增添更好的表单验证、改进与数据输入相关的流程,而且会要求对准备好的数据进行清洗。输入相关的流程,而且会要求对准备好的数据进行清洗。它还可能强迫在应用程序自身融入数据质量功能,例如,它还可能强迫在应用程序自身融入数据质量功能,例如,在数据进入企业时根据已知示例对数据进行验证。由于此在数据进入企业时根据已知示例对数据进行验证。由于此方法可以在源头上解决数据质量问题,因此它对每个从该方法可以在源头上解决数据质量问题,因此它对每个从该来源提取数据的应用程序和每个将来会从
15、该来源提取数据来源提取数据的应用程序和每个将来会从该来源提取数据的应用程序大有裨益。的应用程序大有裨益。l但是,上游策略耗费高。它们可能要求对应用程序、其逻但是,上游策略耗费高。它们可能要求对应用程序、其逻辑和数据进行更改。企业在更改现有解决方案时可能会遇辑和数据进行更改。企业在更改现有解决方案时可能会遇到阻碍。要成功实施上游策略,项目需要明确的所有权、到阻碍。要成功实施上游策略,项目需要明确的所有权、共识和来自其它团队的员工的支持。共识和来自其它团队的员工的支持。15 Professional Create Value下游策略下游策略l下游策略在目标应用程序或数据仓库中解决数据质量问题,下游
16、策略在目标应用程序或数据仓库中解决数据质量问题,而不是在数据源。由于可以迅速修改数据,因此策略可以而不是在数据源。由于可以迅速修改数据,因此策略可以在流程中得到改进,这通常是通过数据转换、清洗和查找在流程中得到改进,这通常是通过数据转换、清洗和查找验证来实现的。下游策略只对正在使用目标应用程序或数验证来实现的。下游策略只对正在使用目标应用程序或数据仓库的使用者有益,但是相比上游策略,下游策略实施据仓库的使用者有益,但是相比上游策略,下游策略实施起来要容易得多并且耗费更低。起来要容易得多并且耗费更低。16 Professional Create ValueInformatica平台如何解决数据质
17、量问题平台如何解决数据质量问题-数据质量管理流程数据质量管理流程探查和分析探查和分析多个来源多个来源数据集成数据集成将来源映射至目标将来源映射至目标结构结构业务业务数据数据构建企业数据构建企业数据质量规则质量规则部署规则交互部署规则交互/批量批量/实时实时报告数据报告数据质量指标质量指标结构分析和映射结构分析和映射对数据质量进行持续清洗和监控对数据质量进行持续清洗和监控 维持维持 监控监控实施(一次性)维持(持续不断)清洗清洗分析分析提取提取将问题报告将问题报告发送回来源发送回来源维持(持续不断)来源来源 DQ 报告和管理报告和管理来源来源 DQ 报告和管理报告和管理源数据检查员源数据检查员企
18、业数据检查员企业数据检查员数据检查员数据检查员纠正的数据和纠正的数据和改进的数据质量改进的数据质量12334517 Professional Create ValueStep 1:数据质量探查数据质量探查l数据质量探查是一种描述数据的内容、一致性和数据数据质量探查是一种描述数据的内容、一致性和数据结构的有效途径结构的有效途径l来自来自 Philip Russoms TDWI 报告报告1.所有的数据质量项目都必须从数据质量探查起步2.基于工具的数据探查比手工的方法具有更高的生产力3.数据质量探查不是一次性的工作4.数据探查,数据集成,数据质量是数据管理最佳实践的三个亲密兄弟Source:Taki
19、ng Data Quality to the Enterprise through Data Governance TDWI Report,March 2006 by Philip Russom18 Professional Create ValueApplicationsDatabasesFlat filesMainframe 问题分类完整性Conformity一致性准确性重复的数据数据相关性 数据清理规格说明书 数据转换规格说明书 数以千计的 数据属性 数以百万的纪录DiscoverDiscoverStep 1:数据质量探查数据质量探查所有发现的问题都应该向数据源系统的责任人进行报告19
20、Professional Create ValueStep 2:建立数据质量度量和定义提升目标建立数据质量度量和定义提升目标l仅仅知道仅仅知道“我的数据质量有问题我的数据质量有问题”对数据质量项目来说是对数据质量项目来说是不够的不够的l需要了解,那些数据有问题?这些问题是如何产生的?需要了解,那些数据有问题?这些问题是如何产生的?l定义数据质量度量定义数据质量度量l度量必须和业务目标一致(绑定)度量必须和业务目标一致(绑定)l在没有绑定之前,不要启动项目在没有绑定之前,不要启动项目l设定改进目标设定改进目标lHow will you know when you are done?20 Prof
21、essional Create ValueStep 2:建立数据质量度量、并定义目标建立数据质量度量、并定义目标l一旦完成初步的数据质量探一旦完成初步的数据质量探查,需要马上设定改进的目查,需要马上设定改进的目标标l针对特定的系统,制定有针针对特定的系统,制定有针对性,对性,“足够好足够好”的改进计的改进计划划l定义定义100%满足,不一定是利满足,不一定是利用资源的最佳方式用资源的最佳方式21 Professional Create ValueStep 3:设计设计&建立数据质量规则建立数据质量规则Standardize,Correct,and Enrichl数据标准化数据标准化l纠正纠正/
22、补全有问题的数据补全有问题的数据l数据增强数据增强“Once in the system,poor data quality can cost organizations vast sums in lost revenues.Defective data leads to breakdowns in the supply chain,poor business decisions,and inferior customer relationship management.”Informatica Velocity22 Professional Create ValueStep 4:建立数据质量
23、放火墙建立数据质量放火墙 CRMFinanceSupplyChainLegacyExternalSystemsData Quality Fire Wall OperationalData StoreLoadTransformExtractData Quality ETL Reconciliation Fuzzy Matching Scorecarding Cleansing Enrichment DataWarehouseERPCustomerHubProductHubSupplierHub Single ViewOfProductSingle Viewof CustomerDQReporti
24、ngDQScorecardingReporting-Basel II-IAS-SOXDataMining23 Professional Create ValueStep 4:建立数据质量放火墙建立数据质量放火墙l在数据录入时进行数据质量检测在数据录入时进行数据质量检测l实现实时的数据质量检测,例如:在数据录入时进行数据匹配和清实现实时的数据质量检测,例如:在数据录入时进行数据匹配和清理理l这个活动可以有效地阻止有问题的数据进入系统这个活动可以有效地阻止有问题的数据进入系统24 Professional Create ValuelStep 5 管理过程包含管理过程包含:l常规的基准设定常规的基准
25、设定l监控质量变化趋势监控质量变化趋势l保持和业务发现一致保持和业务发现一致Step 5:监控数据质量监控数据质量 Vs.目标目标25 Professional Create ValueCustomer ObjectMaterials ObjectVendor ObjectAsset ObjectStep 5:监控数据质量监控数据质量 Vs.目标目标26 Professional Create ValueStep 5:监控数据质量监控数据质量 Vs.目标目标Progress Over Time27 Professional Create Value数据质量管理过程管理数据质量管理过程管理 An
26、alyze1.Profile the Data2.Establish Metrics and Define Targets3.Design&Build Quality Rules5.Monitor Data Quality Versus TargetsEnhanceImplement Audit Controls4.Build a DQ FirewallTargetApplicationXML,Messaging,and Web ServicesPackaged ApplicationsRelational and Flat FilesMainframe and MidrangeSources
27、28 Professional Create Value如何保证数据使用和加工环节的数据质量如何保证数据使用和加工环节的数据质量l详细的详细的ETL设计文档设计文档l测试:测试:根据实际情况选择测试是贯穿整个开发过程还是在根据实际情况选择测试是贯穿整个开发过程还是在全部开发工作完成以后进行,并确定测试的顺序,此任务全部开发工作完成以后进行,并确定测试的顺序,此任务需在项目的开始阶段就进行考虑需在项目的开始阶段就进行考虑 l元数据管理:通过元数据管理:通过Informatica Metadata Manager,用户,用户可以清晰的了解到数据源是什么,中间做了什么转换,即可以清晰的了解到数据源是
28、什么,中间做了什么转换,即可了解:可了解:l 此数据来自何处?此数据来自何处?l 此结果是如何计算的?此结果是如何计算的?l 它的可靠程度如何?它的可靠程度如何?l 如何使用?如何使用?l我们的结果是否一致并具有合规性?我们的结果是否一致并具有合规性?29 Professional Create Value元数据管理元数据管理SourcesTargetsBusinessIntelligenceMetadataMetadataMetadataCustomMetadataData ModelingMetadataMetadata ManagerMetadata30 Professional Cre
29、ate Value元数据管理元数据管理-血缘分析(血缘分析(Data lineage)-表表Launch data lineage for a DB table数据模型数据模型ODS层层ETL过程过程APP层及多个层及多个ETL过程过程DW层层OLAP/报表报表31 Professional Create Value血缘分析血缘分析 Drilldown to ColumnLaunch data lineage for a DB table-column列级血缘分析支持列级血缘分析支持32 Professional Create Value元数据管理元数据管理-Where-Used 分析分析 Launch where used for a DB table