做全局性数据架构,就是要回答用户的问题:用户的数据资产应该如何组织,才能管得住、用得好?针对这个问题,可以从数据资源目录、数据标准、数据模型、数据分布等多个维度加以考虑。在具体落地时,还要考虑元数据管理、数据集成、数据共享等要素。下图是我们在某个具体项目中的全局性数据架构设计考虑。
某项目的全局性数据架构逻辑图
从全局整体角度,把数据按照应用方向,划分几个库:
01
业务库
在“业务应用域”,主要面向的是“业务办理人员”。从数据角度,一个库里有多个数据域,与其相对的,一个平台多个应用,即一个业务平台上面承载多个业务应用,整个“业务应用域”就是一个系统一个库,从根本上解决以前十几个系统十几个库而导致的“烟囱系统”的问题。另外,这个业务库的数据组织形式,是以“办理事项”进行数据建模组织的,数据操作主要是数据增、删、改、查,属于典型的事务性数据库(OLTP)。
02
分析库
在“数据分析域”中,主要面向的是“分析决策人员”。因此,需要建立数据仓库。数据仓库根据不同应用场景分层,包括:操作性数仓(ODS)、核心数仓(DW)、数据集市(DM)等,同样与之相对,搭建相应的“数据应用平台”和一系列的数据应用。分析库按照“分析主题”组织数据。所谓“分析主题”,就是针对某种业务对象或者某个事项的分析需求,比如建设项目情况分析、房源筹集和分配情况分析等。
03
治理库
顾名思义,“数据治理域”主要面向“数据治理人员”。通过数据治理,管理好全局的所有数据。其中,“主数据”是按照“核心业务对象”组织的数据,它提供可共享的核心数据底板,具有统一、完整、准确、及时的特点。比如,在公共住房领域,房源就是一种主数据。“元数据”则用来对数据进行描述的数据,包括数据的类型、关系、流动、变化(血缘)和业务含义等。“参考数据”是指一些重要的数据字典,比如,在公共住房领域,租赁状态、出册原因、交租方式、房屋状态等,都需要采用字典来描述。
04
其他库
除以上核心库外,还有一些其他数据,包括:用于内外数据交换的交换数据,用于空间定位和空间分析的空间数据,以及各种文档材料、电子档案等非结构化数据等。
全局性数据逻辑架构的最大价值在于:从全局上搞清楚有哪些数据?数据和系统之间、不同类型的数据之间,存在什么关系?各种不同数据是怎么存储管理的?除此之外,数据架构还包括:数据模型,它从静态视角,描述数据之间的具体关系,指导后续数据库的逻辑设计、物理设计;数据分布,它从动态视角,描述数据在业务应用系统上的分布、数据流动的全景视图等。由于篇幅所限,在此不一一列举。