马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
作者:张峰
一、前言
“元数据驱动”在业界有多种语义,都是为了解决各自领域的问题。
比如:以数据模型定义(D模型)作为驱动,作为前端界面交互、交易报文、后端服务逻辑和数据存储的依据;又比如:通过对元数据的分析,了解数据资产,从而驱动数据的整合与复用。
本文中的元数据驱动,是为了改善我行在数据仓库领域实施中的一些痛点:
1、设计态与运行态的一致性困难,设计态与运行态在模型上可能存在不一致。一致性的问题使已有数据资产的真实含义难以追溯,导致复用度低,数据的重复定义和重复加工,影响元数据作为数据资产管理运营的核心作用;数据线架构管控支撑不足:数据资产积累有余而整体提升与整合存在困难。
2、元数据表达能力的不足。由于传统的元数据聚焦于数据的物理组织规格和特性,对数据对应的实际业务的表达仅限于简单组织的自然语言定义。使得企业级元数据在业务多样性的场景下难以形成准确的一致性语义和维度,仅从元数据自身难以准确推导出数据含义和数据间的关系,使得元数据不足以完整表达数据资产,仍需查询具体业务数据内容以进行猜测。
以此为目标,元数据驱动是指:
1、数据从采集和接入、加工整合、分析展现的各关联阶段,均以元数据作为标准接口,具体的开发测试以元数据定义的接口展开;
2、开发过程的组织以元数据中各个开发件所对应的数据接口和依赖关系作为依据,由在线的平台以开发实施角色-开发任务的方式驱动关联的设计、实施、测试和部署操作;
3、元数据不仅仅局限于描述数据本身,还应当包含数据对应的业务需求、实施过程、部署和运行状态等;
4、元数据的业务表述,不仅仅局限于业务名词本身,还应当包含相关的业务事件、合约、产品等关键对象的数据本质。
二、元数据对开发过程的驱动
在目标态中,由平台接收用户需求,需求按照领域和组织分工,在设计、开发、测试、部署岗位之间流转。由流程引擎管理实施状态,负责将任务以消息的方式传达给开发用户,并引导用户基于接口在相应的开发IDE中实施。
元数据驱动开发实施示意图
三、元数据-接口作为数据线骨架
平台管理和记录数据所对应的完整过程信息,作为过程元数据;管理和记录数据的接口以及依赖关系。数据的接口作为传统的元数据,接口依赖关系作为部署、调度配置的输入,减轻配置工作量并减少差错。
以标准技术工艺串接实施过程以及元数据的适配点
四、数据类技术组件标准化集成
为实现上述对实施过程基于元数据的串接,要求以元数据作为实施和交付的核心要素,以工艺平台组织各技术组件的开发和部署动作。因此,各具体的数据开发组件(例如:数据接入、数据集成、数据服务等)均应当以无状态的方式进行集成。
为支撑敏捷的数据应用过程,数据应用工厂所集成的组件应当实现标准集成接口:
1、资源与环境定义接口(用户选购对应组件服务时,为用户提供资源和环境定义,并作为部署的目标环境的定义) 组件提供UI服务,用于定义租户/领域的资源。包括:IDE运行资源(单例)、测试生产环境(多例),其中,测试环境中的数据接口集合应当是生产环境数据接口的子集;测试环境的数据接口以测试对象组织为一对多的虚拟测试数据接口。
2、开发IDE接口(流程发起该组件的开发实施任务时,为用户提供的交互实施服务) 组件提供可被集成调用的SaaS服务,框架提供用户上下文、流程上下文、元数据上下文和环境上下文;SaaS在上下文环境中,提供用户开发编辑组件的IDE功能;编辑开发的组件由流程上下文指定,调用元数据读写。
3、集成部署接口(当工艺流转到部署节点时,生成部署包,部署到指定环境,用户可选是否集成包留存) 组件提供可被集成调用的UI服务(可选)和接口服务,由上下文给出资源清单,调用元数据提供读写,生成部署包。
4、调用接口(当用户手动执行测试、自动批量测试、以及应用授权调用发起时,执行该行为并返回结果) 组件提供可被调用的接口,调起环境中已经部署的提交物,返回结果(可能是HTML流或JSON包),以及执行结果状态。
5、监控与运维接口组件(运行环境资源)提供标准化监控运维接口,以及自定义的监控运维UI(可选)
五、基于元数据的架构可视化
数据架构/数据线归于数据治理范畴。是从企业级视角观察数据资产管理、数据加工处理过程、数据应用的整体情况,发现改进点,发起补充提升数据资产的任务、优化数据加工处理的任务、丰富和完善数据应用的任务。其中,补充提升数据资产的任务可能是:
企业级数据治理面临的主要困难是数据架构/数据线的设计与运行分离,难以直观的观察和分析数据线的整体运行情况、数据资产分布情况、数据应用开发和使用情况。
因此元数据驱动的目标,一方面是提供“全景-可信”的元数据作为架构治理与可视化的依据,另一方面,基于元数据驱动的实施过程的线上化实施方式,使架构管理动作的落地和跟踪成为可能。
以领域组织实施过程管理与元数据(数据资产)管理
六、从面向技术实现的元数据到面向业务现实的元数据
传统上,元数据是指“技术“元数据,是从技术视角描述数据,例如:数据所在的库、表、字段、主外键关联;库特性、访问接口;技术标准、是否非空、存储容量等;配合的,在库表字段上增加描述性业务定义或规则。引申的,“技术元数据”对应的“元模型”,自然是对库、表、字段等技术语义的抽象标准化建模和表述。
既然元数据是“用来描述数据的数据”,只从技术上表述数据显然是不够的。因此,在一般的元数据概念中,会增加业务语义描述,进而形成“业务数据标准”(例如:新一代中的数据字典)。在这个层次上表述数据的业务内涵显然是不够的。原因包括(不限于):
因此,需要对数据所在的业务进行扩展建模,以完整的表述数据的真实含义和相互关联。引申的,元数据-元模型是用于数据的业务建模的基础模型。 面向业务模型的元数据
由于篇幅所限,这里不再展开,后续会就面向业务的元数据模型进行另行探讨。上述文字乃一家之言,仅供参考,欢迎拍砖。
|