2.数据服务共享发布技术架构

支撑流水线式的数据服务共享发布核心架构

上图核心架构中定义了数据从数据源开始经过数据准备(清洗、转换、质量核检)后进入共享区,对共享区数据进行服务化后提供给消费方使用的处理流程,支撑流水线式的数据服务共享发布。

根据数据生命周期的不同环节,架构设计上定义了三个数据区域(数据源、数据前置区、数据共享区),可根据实际情况对三个区域进行自定义或取舍。

功能架构

在功能架构上主要包括四大支撑引擎+四大功能模块。

四大支撑引擎:

• 实时服务引擎:实时服务发布及访问功能,以RESTful方式提供;

• 批量服务引擎:批量服务发布及访问功能,以File方式提供;

• 调度引擎:提供对批量服务的调度功能;

• 日志引擎:采集日志进行指标分析。

四大功能模块:

• 资源目录:数据消费方和数据开发人员使用视图;

• 数据服务发布:实现对实时服务和批量服务的发布管理;

• 数据使用及安全:定义数据申请使用流程及数据安全管理;

• 数据服务监控:对数据服务生命周期进行全链路监控。

开发采用的技术栈

在数据服务共享平台开发过程中涉及到的技术栈分为五个层次:

• 资源层:对主流关系型数据库(OracleSQLServerMySQL),大数据(HBaseHive)、文件等多种数据源进行技术元数据的自动采集和业务元数据的管理。

• 访问层:基于JDBCHTTPRPCSFTP等通信协议实现与资源层的访问交互。

• 逻辑层:提供对资源层不同数据源的适配器,提供可重用的安全、监控、调度及日志组件。

• 服务提供层:基于SpringBoot+SpringCloud以微服务架构方式对外提供服务。

• 展示层:采用vue+iview+es6+axios+ECharts技术实现前端页面及展示效果。