文档介绍:大数据时代的数据架构设计
作者:张新宇 来源:《中国金融电脑》 2015年第8期
中国人寿股份有限公司研发中心 张新宇
数据湖的概念指出,数据无需加工整合,可直接堆积在平台上,由最终使用者按照自己的 需要进行数据处理。而数据仓库建设强 响。二是希望能够迅速跟上系统的变化,保持敏捷。两类要求都有其合理性,尽管并不是每个 应用的使用者都关心源应用系统的变化,但如果不对变化进行管理,对所有应用都会产生影响
时效性的不同要求
企业内部的不同应用,对时效性的要求也不尽相同。有些应用对数据有准实时性要求,如 业务监控类应用、实时营销类应用和事件侦测类应用等;有些应用对数据时效性要求为半日/ 隔日;有些应用旬和月度即可。针对不同的时效性要求,数据基础、数据加工的路径和采用的 技术也不相同。
随着企业数据应用的成熟度不断增加,数据时效性要求的差异也会越来越明显。数据架构 就是要随着要求的不断变化而进行调整。下文从技术角度分析需求差异对数据架构提出的要求 和带来的挑战。
二、两种数据架构设计
数据架构及其技术实现都是服务于数据使用需求的,而使用需求上的差异对于技术实现的 要求不同,需要采用各种变通的技术架构满足要求。本文重点分析不同数据使用要求对技术平 台的不同要求以及两种数据架构的适用场景。
固定、统一的要求需要层次化的数据架构
使用模式上,无论是固定报表还是各种形态的联机分析,从数据架构的角度看,都可以采 用层次化的数据架构满足要求。这种模式成本最低,基础数据和应用指标的一致性最好,以经 典三层架构设计为代表。
第一层为同源/ 贴源设计:这一层又称为“数据缓冲层”、“临时数据区”或“数据预处 理层”,在这一层中保留最为原始的数据。一些设计将部分数据清洗和格式化工作放在这一层 另一些设计不在该层进行哪怕最基本的数据清洗和格式化工作,目的是满足用户对数据清洗和 格式化的不同要求。对于半结构化数据,应用访问日志数据在第一层中是否需要格式化为关系 表的方式,在不同的实践中有不同的数理。而结构化数据,在从交易处理系统中被抽取出来后 不做任何转换直接保存在这一层中。
第二层为整合设计:包括多个数据来源的数据整合、代码转换和标准化、类型及格式的统 一和转换以及分类体系和业务实体的统一、建立来自不同系统的数据之间的关联关系等。整合 消除了多个数据源的不一致、为数据建立连接关系,形成了客户、交易、合同、产品等不同的 数据主题,为后续的数据使用奠定基础。
第三层为面向应用主题的设计:通常在这一层中,建立起针对某些应用领域的分析指标和 体系。如面向营销和客户分析的各种类型的分析指标、客户特征和标签;面向风险的各种风险 指标;面向绩效管理的各种业务统计指标等。这一层更加注重统计指标的标准化,包括指标口 径和定义、指标的一致性等。
灵活、独立的要求需要扁平化的数据架构
层次化的数据架构尽管带来了诸多优势,但在面对灵活、独立的数据使用要求时,也带来 了一些问题。首先,数据整合带来了数据使用上的复杂性。其次,可能丢失信息。如在代码标 准化的过程中如果丢掉了原始代码,则可能造成信息丢失。而若保留原始代码,则会带来大量 的冗余。最后,整合的设计使得数据管理变得笨重,源系统变化,涉及整合规则、数据模型变 化以及大量的数据迁移,使得数据架构难以快速调整。
而数据湖的思路