数据仓库赋能组织将不同来源的数据整合到公共的数据模型中去,整合后的数据能为业务运营提供洞察,为企业决策支持和创造组织价值开辟新的可能性。数据仓库提供了一种减少数据冗余、提高信息一致性,让企业能够利用数据做出更优决策的方法。
一、概述
1、业务驱动因素
数据仓库建设的主要驱动力是运营支持职能、合规需求和商务智能活动。商务智能支持一直是建设数据仓库的主要原因,商务智能为组织、客户及产品提供洞察。通过商务智能获得决策知识并采取行动的组织,能提升其运营效率,增强竞争优势。
2、目标和原则
建设数据仓库的主要目标有:支持商务智能活动、赋能商业分析和高效决策、基于数据洞察需找创新方法。
建设数据仓库的主要原则有:聚焦业务目标、以终为始、全局设计局部行动、总结并持续优化、提升透明度和自动服务、与数据仓库一起建设元数据、协同管理、差异化服务。
3、基本概念
(1)商务智能
商务智能有两层含义,一层是理解组织诉求和寻找机会的数据分析活动,一种是支持数据分析活动的技术集合。
(2)数据仓库
数据仓库有两个重要部分组成:集成的决策支持数据库和与之相关的用于收集、清理、转换和存储来自各种操作和外部源数据的软件程序。数据仓库建设还会包括相依赖的数据集市,数据集市是数据仓库子集的副本。
(3)数据仓库建设
数据仓库建设指的是数据仓库中数据的抽取、清洗、转换、控制、加载等操作过程。数据仓库建设流程的重点,是通过强制业务规则、维护适当的业务数据关系,在运营的数据上实现一个集成的、历史的业务环境。
传统意义上的数据仓库建设主要关注结构化数据,随着技术的不断发展,商务智能和数据仓库空间现在也包括半结构化数据和非结构化数据。
(4)数据仓库建设的方法
数据仓库构建的思想主要有两类。Inmon:面向主题的、整合的、随时间变化的、相对稳定的支持管理决策的数据集合;Kimball:为查询和分析定制的交易数据的副本。
(5)企业信息工厂
企业信息工厂是两种主要的数据仓库建设模式之一。企业信息工厂主要包括:应用程序、数据暂存区、集成和转换、操作型数据存储、数据集市、操作型数据集市、数据仓库、运营报告、参考数据、主数据和外部数据。
数据仓库和数据集市的数据与应用程序中的数据不同:
数据的组织形式是按主题域而不是按功能需要;
数据是整合的数据,而不是孤立的数据;
数据是随时间变化的数据,而不是仅当前时间的值;
数据在数据仓库中的延迟比在应用程序中高;
数据仓库中提供的历史数据比应用程序中提供的历史数据多。
(6)多维数据仓库
多维数据仓库是数据仓库建设的另一种主要模式。仓库数据存储在多维数据模型中。多维模型通常为星型模式,由事实表和维度表组成,事实表与维度表关联。多维数据仓库包括:业务源系统、数据暂存区域、数据展示区域、数据访问工具。
(7)数据仓库架构组件
数据仓库环境包括一系列组织起来的以满足企业需求的架构组件。
1)源系统
包括要流入数据仓库/商务智能环境的业务系统和外部数据。
2)数据集成
数据集成包括抽取、转换和加载、数据虚拟化以及将数据转换为通用格式和位置的其他技术。
3)数据存储区域
暂存区:介于原始数据源和集中式数据存储库之间的中间数据存储区域。
参考数据和主数据一致性维度:参考数据和主数据可以存储在单独的存储库中。
中央数据库:完成转换和准备流程后,数据仓库中的数据通常会保留在中央或原子层中。这一层保存所有历史的原子数据以及批处理运行后的最新实例化数据。
操作型数据存储:操作型数据存储是中央持久存储的支持较低延迟的解决方案,可以支持业务应用。
数据集市:用于支持数据仓库环境的展示层,还用于呈现数据仓库的部门级或功能级子集,以便对历史数据进行集成报表、查询和分析。数据集市面向特定主题域、单个部门或单个业务流程。
数据立方体:三种经典支持在线分析处理的实现方法,基于关系数据库的、基于多维数据库的及混合型存储结构的。
(8)加载处理的方式
数据仓库建设涉及两种主要的数据集成处理类型:历史数据加载和持续不断的数据更新。
1)历史数据
Inmon类型的数据仓库建议所有数据存储在单个数据仓库层中。这一层中存储已清洗过的、标准化的和受管控的原子级数据。
Kimball类型的数据仓库建议数据仓库由包含已清洗过的、标准化的和受管控的部门级数据集市合并而成。数据集市将在原子级别存储历史记录,由一致性维度表和一致性事实表提供企业级信息。
Data Vault方法,作为数据暂存处理的一部分,同样进行数据清洗和标准化。历史数据以规范化的原子机构存储,每个维度定义了代理键、主键、备用键。
2)批量变更数据捕获
通常数据仓库是通过每天晚上的批处理窗口进行一次数据加载服务。因为不同源系统可能需要不同的变更捕获技术,所以加载过程可以包含各种变更检测。时间戳或日志表加载是最常见的技术方式,在处理没有原生时间戳功能的遗留系统或某些批量恢复条件时,会用到全量加载。
3)准实时和实时数据加载
准实时和实时数据加载主要有三种方式:
涓流式加载(源端积累),这种方式允许白天做一些批处理操作,而不必集中到晚上进行专门的批处理窗口。
消息传送(总线积累),目标系统订阅消息总线,并按需增量加载数据报到仓库中。源系统和目标系统彼此独立。
流式传送(目标端积累),目标端系统用缓冲区或队列方式收集数据,并按顺序处理。
二、数据仓库和商务智能管理活动
1、理解需求
在收集数据仓库/商务智能项目需求时,首先,要考虑业务目标和业务战略,确定业务领域并框定范围;然后,确定并对相关业务人员进行访谈,了解他们想做些什么和这么做的原因,记录他们当下关系的具体问题和想要询问的数据,以及他们如何区分和分类重要信息。在可能的情况下,界定并记录关键的性能指标和计算口径。
2、定义和维护数据仓库/商务智能架构
1)确定数据仓库/商务智能的技术架构
最佳的数据仓库/商务智能架构将提供能够以原子化的数据处理方式支持交易级和运营级报表需求机制,这种机制可以避免数据仓库存储每一笔交易细节。
2)确定数据仓库/商务智能的管理流程
建立有效的发布流程,确保管理层理解这是一个以数据产品为中心的主动流程,而不是已安装产品的被动式问题解决方式。
3、开发数据仓库和数据集市
1)将源映射到目标
源到目标的映射为从各个源系统到目标系统的实体和数据元素建立转换规则。映射工作最困难的就是确定多个系统中数据之间的链接有效性和等效性。通常通过逻辑数据模型将不同系统中的数据元素映射到数据仓库中。
2)修正和转换数据
强化数据修正或清理活动的执行标准,并纠正和增强各个数据元素的域值。数据转换重点关注技术系统中实现业务规则的活动,数据转换对数据集成至关重要。
4、加载数据仓库
在所有数据仓库/商务智能工作中,工作量最大的部分都是数据准备和预处理。确定数据加载方法时,要考虑的关键因素是数据仓库的数据集市所需的延迟要求、源可用性、批处理窗口或上载间隔、目标数据库及时间帧的一致性。加载方法还必须解决数据质量处理过程、执行转换时间、延迟到达的维度和数据拒绝等问题。
5、实施商务智能产品组合
实施商务智能组合是为了在业务部门内部或业务部门之间为正确的用户社区选定合适的工具,通过协调常见的业务流程、性能分析、管理风格和需求找到相似之处。主要包括根据需要给用户分组和将工具与用户要求相匹配。
6、维护数据产品
1)发布管理
发布管理对增量的开发过程至关重要,增加新功能,增强生产部署,并确保为已部署的资产提供定位维护。这个过程需要IT和业务的一致性,与数据仓库模型和BI功能保持一致性。
2)管理数据产品开发生命周期
版本发布需要保持功能与业务团队的需求一致,而迭代将使功能与产品经理管理的配置本身保持一致。
3)监控和调优加载过程
监控整个系统的加载处理,并了解性能瓶颈和性能依赖的路径。在需要的地方和时刻使用数据库调优技术,包括分区、备份调优和恢复策略调整。数据归档是数据仓库构建中的一个难题。
4)监控和调优商务智能活动和性能
商务智能监控和调优的最佳实践是定义和显示一组面向客户满意度的指标,如平均查询响应时间,每天、每周或每月的用户数就是有用的指标。透明度和可见性是推动数据仓库/商务智能监控的关键原则。
三、数据仓库/商务智能实施指南
1、就绪评估/风险评估
识别并清点数据仓库中敏感或受限的数据元素,在选择工具和分配资源之前,需要考虑安全约束。确保遵循相关审核和批准的数据治理流程。
2、版本路线图
数据仓库是逐步构建的,无论选择什么实现方法,不管是瀑布式、迭代式、还是敏捷开发,都应考虑到想要实现的最终状态。采用路线图作为规划工具,平衡单个项目交付的压力与可重用数据和基础设施的总体目标。
3、配置管理
配置管理与发布路线图保持一致,并提供必要的后台脚本和调整,以自动化开发、测试和发布到生产。
4、组织与文化变革
在整个数据仓库/商务智能生命周期中,始终保持一致的业务重点是项目成功的关键。重要的成功因素包括:业务倡议、业务目标和范围、业务资源、业务准备情况、愿景一致。
四、数据仓库/商务智能治理
1、业务接受度
业务对数据的接受度包括:可以理解的数据、具有可验证的质量以及具有可证明的数据血缘关系。
2、客户/用户满意度
对数据质量的认识将提高客户满意度,但是满意度也取决于其他因素,如数据消费者对数据的理解以及运营团队对已识别问题的响应能力。
3、服务水平协议
数据仓库的业务和技术期望应在服务水平协议中指定,包括相应时间、数据保留和可用性要求等。
4、报表策略
报表策略包括标准、流程、指南、最佳实践和程序,他将确保用户获得清晰、准确和及时的信息。应定期评估报表以确保他们仍然具有价值,因为报表运行会增加存储成本和处理成本。
5、度量指标
数据仓库/商务智能治理的度量指标主要有:使用指标、主题域覆盖率、响应时间和性能指标等。