数据采集采用适配器模式进行设计,实现适配器的可拔插、可扩展性,目前提供了大量的适配器满足不同的数据源的需求。
关系数据库是目前使用最广泛的数据库系统,实现对数据库、数据仓库的全方位的适配是非常必要的。
n 支持国内外主流数据库:MySQL 、Oracle、DB2、Sybase、Sql Server、Informix、Derby、PostgreSQL、KingbaseES(金仓)、达梦等
n 数据库多种增量采集策略支持:时间戳方式、全表比对、增量字段标示、触发器方式、Oracle CDC、MySQL Binlog、SqlServer CDC、PostgreSQL Slony。
数据汇聚过程中涉及大量的文件数据资源,主要包括文件格式数据和日志格式数据两种。
(1)文件格式数据
n 支持对多种格式的文件进行解释处理:文本文件、XML、CSV、JSON、Excel等
n 支持文件目录、FTP服务器、Samba服务器等中增量采集文件数据资源
(2)日志格式数据
n 支持文件目录、FTP服务器、Samba服务器等中采集日志文件数据,并增量的逐行解析日志数据内容
n 支持多种日志内容解析方式,如Log4J日志文件、系统日志、AWK、正则表达式等
Excel数据提取界面如下:
数据汇聚整合系统支持文件目录、FTP服务器、Samba服务器采集各类型的非结构化文件数据(文档、图片、视频、音频、网页),并将文件存储到大数据平台中。并且支持2G以上大文件的采集、传输和存储,采用拆解包机制保障数据的可靠传输,同时还支持对文件进行压缩和加密处理。
支持主动的采集业务系统提供的数据接口服务,并将采集的数据存储到大数据平台中。
消息数据采集是指从消息队列中接收消息,并进行加工处理后,存储到指定的介质中。产品支持HornetQ、ActiveMQ、RabbitMQ、Kafka、ZeroM消息队列服务器的数据接收采集。
数据报送是指将数据报送服务提供给业务系统、业务人员主动的将数据提交到数据报送系统,由数据报送系统将数据存储到大数据平台中。主要提供接口服务报送、文件数据报送和业务填报三种方式报送数据。
业务表单填报是指采用类似Excel方式能够通过在线配置填报表单,并且分发给指定的人员进行填写相关数据的过程。
(1)填报表单设计:
(2)数据填报:
“接口服务报送”是指通过定制数据接口服务给业务系统主动的上报数据。“接口服务报送”为方便业务系统使用,支持多种协议HTTP、SOAP、AMQP、JMS的数据上报方式,并且支持采用多种数据格式的进行上报,如XML、JSON、CSV、Excel等。
在涉及到安全要求比较高的部门的数据资源存储在内网,在数据采集过程中,对内网数据的采集、汇聚,支持以上各种采集方式,并且将采集的数据以文件形式通过安全边界。
产品提供跨网前置部署软件,能够进行数据的发送、接收以及人工数据交换,并且提供了数据的安全控制相关功能,界面如下图:
大数据平台需要归集的数据分布在不同的单位,各自的标准规范不一致,在做数据汇聚整合时,需要对数据进行清洗转换。需要提供字段映射、数据翻译、字段拆分、字段合并、字段运算、数据范围过滤、字段过滤、数据条件过滤等数据清洗转换功能。
在数据清洗过程中,提供图形化、可视化的数据清洗配置,简化数据清洗过程和数据标准转换过程,数据转换过程效果示意图如下:
大数据平台数据汇聚建设过程中,需要保障数据的安全,因为隐私或敏感数据的泄露,会对数据主体的财产、名誉、人身安全、以及合法利益造成严重损害。因此需要对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。
本系统支持多种的数据脱敏处理方法:替换、重排、加密、截断、掩码、日期偏移取整等
采用数据适配技术接入各类型数据后,再对数据进行加工处理,处理后后需要将数据加载到指定的目标存储中,由于产品采用了数据抽象层技术,所以接收的任意数据都能够存储到多种目标结构中,包括:关系数据库、文件服务器、消息服务器、Hadoop等,如下图所示:
关系数据库是最常见的数据存储方式,并且支持多种入库方式:增量入库是按照产生增量顺序执行入库(入库表需要主键或指定主键字段);追加入库是不断添加数据到入库表;刷新入库是删除入库表的数据后再执行入库操作;更新入库是按数据执行新增或更新操作(入库表需要主键或指定主键字段)
将采集到的数据转换成为XML、CSV、JSON、Excel等格式的文件存储到指定的文件服务器中(本地文件目录、FTP文件服务器、Samba文件共享目录)。
消息发送是指将采集到的数据发送到指定的消息队列中,本产品支持HornetQ、ActiveMQ、RabbitMQ、Kafka、ZeroM消息队列服务器。
大数据存储负责将采集的数据经过清洗后存储到大数据平台中,大数据平台数据的存储主要采用HBase和HDFS进行存储。
(1)HBase数据存储
大数据存储子系统提供将结构化、半结构化数据存储HBase中,并且增量数据的存储。将已完成加工的数据,需要装载到大数据平台,可以通过以下方式装载数据
(2)HDFS数据存储
HDFS作为大数据平台的分布式文件系统,提供大文件的存储能力,大数据存储子系统能够实现将采集的数据存储为半结构化文件,如CSV、Text等。
(3)小文件数据存储
由于HDFS文件系统的数据块过大,不适合存储小文件(100M以内)的,但是在实际业务应用中,存在大量的小文件,需要用其他方式来解决,主要可以通过Hadoop Har小文件存储和HBase小文件存储两种方式。
本产品默认的全文库是采用ElasticSearch进行构建的,配置界面如下图:
由于数据采集的方式、标准众多,本系统提供了灵活的集成开发环境,支持数据汇聚过程的建模、开发、集成、部署、运行、监控、维护的完整生命周期过程管理。
n 基于B/S的可视化服务编排:提供众多数据整合、协议转换构件以及可视化的人机操作界面,只通过拖拽及配置即可实现用户信息交互的各种场景,最大限度的降低用户工作量。。
n 提供大量的服务模板:针对常见的业务应用场景,内置了大量的服务模板,采用向导式的参数配置即可完成服务定制。
n 支持远程部署、调试:支持对编排好的服务直接进行在线部署和调试。
n 提供统一的数据抽取、转换方案模板。各类业务数据的抽取和转换方案采用统一的设计思路实施,便于共享智慧,优化设计,方便维护。抽取方案采用结构化设计,将共性的功能规范为可复用模块。
数据采集服务编排子系统效果图:
实现对数据采集过程、数据处理过程、大数据存储过程进行监控,统计分析数据采集量、入库量、异常数量等。
以元数据为核心,以政务分类表和主题词表为控制词表,对信息资源进行网状组织,满足从分类、主题、应用等多个角度对信息资源进行管理、识别、定位、发现、评估与选择的工具。
信息资源目录体系也是管理信息资源,实现共享和服务的一种工具。通过规范的元数据与分类表和主题词表,可以方便地根据应用需要按行业、部门、地域、应用主题和其他使用目的变换出信息资源的各种目录。借助目录系统,可以对信息资源进行识别、导航和定位,以支持公众方便、快捷地检索、获取和使用信息资源。
产品提供了基于数据资源目录体系的从资源注册、审核、发布、申请、使用、授权的全过程管理。
(1)资源目录列表
(2)数据资源注册
数据资源标准体系的建立是数据项目建设的基础。对所有数据标准进行统一规划、统一管理、综合利用,保障大数据平台与各业务系统数据之间的数据一致性、准确性、可靠性,打破系统之间的数据壁垒,整体提升数据质量,发挥数据价值。主要包括三种类型的数据标准:
n 业务术语标准:将业务中涉及的概念,以及概念关联的业务描述进行详细阐述
n 代码集标准:将可枚举的数据项进行完全的数据集定义,详细阐述数据的取值
n 数据规则标准:通过一定的业务规则进行定义的数据标准规则,可以通过表达式、脚本来进行技术描述
(1)数据标准管理功能
(2)代码集数据标准
(3)规则型数据标准
通过“数据质量监测”实时对从采集到的数据进行数据质量检查,为大数据分析决策提供可信的数据支持,保证大数据平台能够提供准确、科学的数据。
数据质量问题来源于源数据系统、数据集成过程和大数据平台,任何一个环节出现数据质量问题都会造成数据分析结果不准确,实现对全过程的质量监测尤为重要。数据质量管理总体功能设计如下:
服务集成版对中台涉及的接口服务进行统一管理,主要包括:DaaS数据服务、ESB服务总线,并建立服务目录方式实现全过程管控。
数据服务是将平台可连接的数据库资源以接口的形式对外提供服务,提供数据共享。产品提供了多种数据共享服务方式,界面如下:
按照指定的方式,执行SQL查询语句,并将查询结果返回给发布的接口。同时SQL语句支持模板写法实现动态的SQL语句。
组合SQL服务是按照指定的方式,执行主从SQL查询语句,并将查询结果按照主从关系返回给发布的接口。
数据表共享针对数据库单表结构或视图,根据配置自动构建语句查询,并将查询结果返回给发布的接口。
ESB企业服务总线主要实现对外部接口服务、互联网接口服务的路由代理,并且能够实现对服务的加工处理。
以目录方式进行扁平化组织各类型的接口服务包括:企业内部服务、微服务接口、企业外部服务、互联网服务等,并且基于服务目录实现对接口服务的从编排到编目,再到发布、申请、授权的全过程管控。
服务目录展示效果如下图:
数据利用版块主要是对通过集成版块融合的各类型数据资源,进行数据的加工利用的过程。
数据可视化探索提供基于B/S的从数据定义、到可视化设计、再到可视化发布的一站式数据分析解决方案,开发过程完全可视化,无程序编码。
(一)图表数据可视化
通过图表方式直接绑定数据,进行可视化展现,提供常用的各类型图表展示
(2)表格数据可视化
将可枚举的数据项进行完全的数据集定义,详细阐述数据的取值
(三)图文报告可视化
通过一定的业务规则进行定义的数据标准规则,可以通过表达式、脚本来进行技术描述
(1)在线图表展示
(2)在线图表设计
智能数据全文检索是以中文分词为基础,构建全文索引库,能够实现对结构化数据、非结构化数据的统一索引、统一检索。
应用认证模块是对接入中台的各个应用系统进行身份认证,只有经过认证的应用才能进行接入访问。涉及的应用类型:
(1)APP应用:为每个项目的APP应用颁发证书,每个APP应用接入的平台都需要先进行应用认证,后续访问过程都需要携带应用认证后的Token,并且每隔30分钟需要进行更换Token,以进一步保障安全性。
(2)微服务应用:这类应用部署在中台中,微服务应用需要访问其他应用提供的服务
(3)业务应用系统:这类应用在接入也需要进行应用认证,采用证书+Token方式进行认证
提供统一用户认证服务,能够为各个应用系统提供单点登录认证功能,支持Web端、后端应用、APP应用的单点登录认证能力。
建立统一的权限服务,实现对各个系统权限信息的集中管理、分级授权,减少每个系统都需要重复建设权限、授权管理相关功能。
以中台架构为基础,构建DevOps体系,帮助开发人员、测试人员和运维人员在实现各自目标(Goal)的前提下,向自己的客户或用户交付最大化价值及最高质量成果的基本原则和实践。
DevOps需要建设相关配套工具设施进行最佳实践,主要包括:配置管理、自动构建、自动化测试、统一日志管理、运维管理等工具手段。
实现对PaaS环境下的应用软件、硬件设备、主机、数据库、中间件等运行日志进行采集,实现日志数据采集、解析、加工、存储、分析、展现于一体的应用运行态势感知。产品支持集群化大规模的日志数据采集,并对日志进行预处理后,存储到大数据中心中,产品提供统一的监控、管理、配置、分析中心,实现对日志归集过程的可视化配置,集中式管理和全方位监控以及可视化的日志运行态势分析。
日志建设效果:
(1)日志总体展示
(2)业务健康评估
基于目前主流的Git技术,构建配置管理平台,能够实现在线对配置库、开发库、发布库、文档库进行管理。
提供基于Gradle、Maven技术的源代码在线打包能力,与配置管理平台结合,从配置管理平台中来取源代码进行打包,并打包到Docker镜像中,为PaaS提供镜像。
提供基于Web端的在线可视化测试管理能力,提供多种测试引擎,包括:接口测试引擎、Web浏览器测试引擎、APP测试引擎,能够对多种应用类型提供在线的、可配置的开展集成测试、验收测试工作,自动化测试完全基于容器化技术构建,能够进行高效的全自动化测试。
对应用系统、运行环境的运维提供基于ITIL全过程的运维保障支持。
(一)赋予业务应用快速创新能力
中台为业务应用的开发提供了简单、高效的应用运行环境,并且提供了大量的每个应用都涉及的公共组件的服务,减少了业务应用开发工作的复杂性,使得应用只需要关心差异化的服务,突出产品特性、提升细节体验,能够实现业务应用的快速迭代。
(二)形成丰富的公共服务能力超市
中台为公共服务组件提供公共服务超市,输出统一化的平台服务和能力,可以形成良性高效的生态,避免资源的浪费。能力的使用者利用“超市“可以知道方便的了解内部的所有能力,能力的开发者可以响应市场的需求,开发出真正需要的能力来填补空白。
(三)更好的规划、管控、协调能力
能够融合中台的运营管理体系,对各个应用从规划、建设、到部署实施、日常维护等全程进行有效的管控。
(四)创新应用系统开发模式
以“大中台,小前台”的应用建设模式,中台提供了主要的公共服务,应用系统只需要关注自身的定制化的业务需求。并且基于微服务架构进行开发,能够实现业务过程的高效迭代。
(五)有效的数据真实性和一致性保障
中台提供了功能强大的数据清洗工具,帮助用户从源头控制数据质量,同时提供数据共享对账和变动提醒功能,在中台无法与直接推送数据给共享系统的情况下,有效保障数据的一致性。
广州地铁中台建设有服务总线、数据总线、资源目录、PaaS平台、公共服务(应用认证服务、用户认证服务、统一日志服务)等内容,建设成为了一个集应用、用户、服务、数据整合共享枢纽,并且将相关能力SaaS化,提供个各个应用开发商以及内部研发团队使用,为后续项目建设提供了有力支撑,进一步减少的项目建设成本。
该项目目前已经接入整合了大量的业务系统,包括:资金管理系统、维修信息系统、施工调度管理系统、人力资源管理系统、企业统计报表系统、办公自动化系统、物流管理系统、基建物流管理系统、工作证管理系统、票务管理系统、车站收益系统、工程设计管理系统、项目投资管理系统、数字认证平台系统、信息服务部文档平台、运营总部技术信息服务平台、运营应急物资管理系统等,共计87个应用系统。
项目建设逻辑架构图如下:
广州市政府大数据平台建设单位为广州市信息化服务中心,项目中实现实现对政府、物联网、社会及互联网等渠道的数据进行统一的归集,并交换到广州市政府大数据资源中心。大数据归集子系统需要提供统一的监控、管理、配置中心,实现对数据归集服务的可视化配置,集中式管理和全方位监控。
项目主要接入了广州市全市的企业库相关数据、互联网数据(招投标网站、广州市多个政府网站政策类数据)、系统日志数据等,总体架构如下图