APP下载

云数融合的城轨大数据平台方案研究

2023-08-02陈莉莉狄颖琪

自动化仪表 2023年7期
关键词:提供数据数据服务城轨

陈莉莉,狄颖琪

(南瑞轨道交通技术有限公司,江苏 南京 210038)

0 引言

2020年,中国城市轨道交通协会发布了《中国城市轨道交通智慧城轨发展纲要》,提出运营业务全面上云的目标。根据目前国内城市轨道交通新建设线路情况,不但业务普遍采用云上部署,而且线路中也越来越多地采用大数据平台提供数据存储和服务。依据该《发展纲要》,大数据平台的定位更接近于数据中台,即整合多个业务系统的数据,形成数据资产,并向高级智慧应用提供数据共享服务。

国内轨道交通大数据平台的建设历史不长[1]。经过近几年的迅速发展,目前已建设的大数据平台暴露出以下问题:首先是未实现完全的数据开放共享,对大数据的分析挖掘都仅围绕或支撑具体的几项数据应用;其次是不具备实时数据分析和共享能力,都只是对历史数据的离线数据分析。随着城轨智慧应用需求的不断提升,数据应用的类型越来越多。很多应用场景,比如杂散电流分析、在线供电监测等,采用机器挖掘和深度学习时的实时模型,要求实时数据与离线数据相结合以进行计算和分析。因此,当新的智慧应用业务不断产生并提出各种灵活的数据服务需求时,大数据平台往往无法提供有效的数据服务。因此,必须对大数据平台进行系统升级[2]。

本文基于某城轨云项目的建设过程,构建云数融合的系统框架,对大数据平台按照云的数据即服务(data-as-a-service,DaaS)层进行系统构建。本文设计注重提供灵活通用的数据服务能力。本文在项目经验的基础上形成云数融合的城轨大数据平台方案。该方案响应了中国城市轨道交通协会的《中国城市轨道交通智慧城轨发展纲要》,解决了现有大数据平台数据服务和共享能力不足的问题,为高级应用提供了低代码的可配置式历史数据服务,以及基于断面和变化推送的实时数据共享服务,实现了数据的高可用性[3]。

1 系统框架

城轨生产业务系统架构经历了三个发展阶段,从应用部署在各自裸金属服务器上的传统架构,到业务系统部署在云平台上,再随着技术的成熟发展出云数融合的平台架构。在传统架构下,各系统在各自的服务器上部署应用业务,而数据从各源端重复接入。到了第一代云平台,各应用系统部署在云平台,使用云上虚拟化资源,并出现了跨系统的高级智慧应用。但是这一阶段的数据接入方式并没有优化。随着智慧应用需求的增多,需要对数据和资源进行整合,由此产生了新一代的云数融合的平台架构。云数融合的平台搭建数据中台和业务中台,实现数据与服务的共享[4]。数据一次接入后,即可重复使用。

云平台纳管大数据服务器,为大数据平台提供网络和安全支撑,并提供平台即服务(platform-as-a-service,PaaS)层公有组件。大数据平台在逻辑功能上嵌入云平台,作为云平台的DaaS层,部署在云内的虚拟数据中心(virtual data center,VDC),为云上业务提供数据服务。

在云数融合的基础支撑平台上,基础设施即服务(infrastructure-as-a-service,IaaS)层提供全面的虚拟化服务,如计算、存储、网络和安全等; PaaS层实现资源整合共享,提供平台级统一组件服务;DaaS层负责所有应用的数据采集、存储、标准化,并提供数据服务给各高级应用进行分析处理和数据展现;软件即服务(software-as-a-service,SaaS)层为运营提供各种智慧应用服务。

云数融合基础支撑平台系统架构如图1所示。

图1 云数融合基础支撑平台系统架构

云平台作为大数据平台的基座,具有以下优点。云的虚拟化资源池可以进行灵活配置,避免了传统架构的硬件局限,使数据接入更加简单方便、可扩展性更强。PaaS层的组件支持简化了业务部署和整合的过程。云平台纳管大数据平台,提供了数据安全保障。云平台给各业务系统提供唯一的基准时钟源,使来自不同数据源的数据可以实现时间上的对齐[5-6]。

大数据平台的主要功能如下。大数据平台接入轨道交通各生产业务系统的数据,并进行清洗、转换、整合、标准化、压缩和存储,使数据形成资产。大数据平台对这些数据资产进行服务化封装,以低代码的灵活方式,向上层高级应用提供数据服务。所建立的各高级应用可以自由访问获取数据的数据服务平台[7]。大数据平台从数据采集、数据缓存、数据治理到数据集市的各大主题库为应用系统提供数据服务支撑。这屏蔽了数据源系统的变化,减少了应用的实现难度和技术风险。

DaaS的主要功能如下。

①数据采集和存储。

大数据平台采集来自于各子系统的数据,并作清洗、转换、压缩、存储。各种数据接入方式都通过接口服务器转成消息中间件(Kafka)发送到大数据平台。

②数据资产化。

在大数据平台的建设过程中制定符合轨道交通行业规范的标准化规则,对存储的数据进行数据治理,以形成数据资产。

③数据服务化。

通过网络应用编程、Kafka、 安全文件传输协议(secure file transfer protocol,SFTP)等数据接口,使第三方数据消费者能够选择合适的方式获取和使用数据。

2 DaaS功能的实现

DaaS是目前比较先进的技术理念。大数据平台集中存储云上数据,进行数据清洗、标准化、集成等操作,并向不同的业务用户提供数据服务。各智慧应用可以通过这些服务获取数据,以实现分析处理和数据展现。作为数据消费者的高级应用,DaaS无需考虑数据来源,实现了数据的源端隔离[8]。

2.1 数据治理

大数据平台存储来自不同源系统的数据。在数据生命周期内,通过数据治理对元数据、主数据、数据质量、数据安全等进行管理,以形成数据资产地图。

数据治理必须先建立数据标准。未经标准化处理的数据无法在各应用系统之间进行共享。因此,需要建立一整套数据规范、治理流程,并使用技术工具,以确保各种重要的运营数据在各线路之间以及地铁各部门之间的使用和交换具有一致性和准确性。

首先,数据标准化要实现主数据的身份标识(identity document,ID)编码全线网统一。大数据平台建立主数据ID与各业务系统内部ID的映射表,实现主数据在原系统与大数据平台内存储对象的一致性关联。其次,数据标准化要实现通用数据对象建模。其从通用性角度出发,对车辆、信号、供电、通信、综合监控、火灾、电扶梯、售检票等各系统相关元素的数据对象进行总结提炼,划分业务主题并建模。同时,按照数仓的业务分层模型,对数据表按照数据运营层到应用层进行明确划分。根据业务需要实现模型的按需扩展时,需在遵循标准化设计规则下建立新的业务数据表。这就兼顾了统一性和灵活性的原则[9]。最后,数据标准化要统一元数据管理,建立数据对象及其属性表之间的关联,整理各源系统的数据,建立数据字典。

2.2 数据服务

大数据平台对加工处理过的数据资产进行服务化封装,以微服务的方式提供一系列通用服务接口。数据服务提供的方式有Restful 应用程序接口(application program interface,API)、Kafka,以及SFTP大批量数据传送。

数据服务的关键在于通用性、灵活性以及安全性。对此,需要先确立数据安全管理工作流程,使数据消费者需要获得授权才能访问数据。这样,大数据平台提供通用的标准接口,则得到授权的数据消费者可以很方便地从平台获取数据。在技术上,这要求实现低代码维护方式,从而在新需求出现时可以通过配置生成新服务接口,以避免系统的二次开发。

某些城轨智慧应用中采用机器挖掘和深度学习的实时模型,需要大数据平台同时提供实时数据与离线数据,并将其结合起来进行计算分析。因此,大数据平台采用了一些实时流处理组件,如Kafka、Flink、Redis等,以实现实时数据共享。

大数据平台流处理的数据流如图2所示。

图2 大数据平台流处理的数据流图

大数据平台的任务管理模块通过切分和调度使各数据同步作业。每个作业都是处理不同线路系统数据的单独流任务。这些数据同步作业接收来自各主题的实时Kafka信息,并根据时间戳校验将信息实时同步到作业内部维护相关数据的Map以及Redis中。这样就保证了数据服务的实时性。

大数据平台提供以下三种方式的数据访问接口,以满足高级智慧应用的数据服务需求。

①历史数据Restful API共享服务。

存储在大数据平台的历史数据采用API网关发布Restful API。数据消费者通过大数据平台提供的服务目录,选择并调用API,通过主动查询获得数据。为避免API服务的二次开放,本文方案采用了动态API网关技术。这不仅使低代码的API编辑成为可能,而且即时生效。在API的编辑过程中,大部分场合通过界面拖拽来配置,少部分需要灵活查询的场合通过填写结构化查询语句(structured query language,SQL),即可提供API服务。

②实时数据共享服务。

实时数据共享有两种方式:一种是基于Kafka消息的实时变化数据推送;另一种是实时断面数据Restful API服务。

大数据平台提供管理工具进行变化数据订阅配置,以配置数据消费者需要推送的数据点,以及推送的数据主题。负责数据推送的流任务监控各数据接入主题。当感知到某个主题中有订阅数据发生变化时,流任务通过Kafka向相应主题发出消息,并主动推送变化数据。基于Kafka的数据推送利用大数据平台的流处理功能,采用Flink组件,可以达到秒级延时。这就满足了有实时性需求的应用,比如电网信号分析、杂散电流监控的实时数据需求。

在Redis组件中存储各源系统的实时断面数据,实时数据微服务通过管道方式一次批量读取源系统的断面数据,向拥有数据访问权限的消费者提供Restful接口,以进行实时断面数据共享服务。

③基于SFTP的大量历史数据共享。

在需要提供大量历史数据共享服务的场合,大数据平台提供相应的微服务。该服务先把大批量历史数据导出为csv文件,然后采用SFTP方式把文件传给数据消费者。

DaaS功能实现了云上数据服务,为能效管理、在线电流监测等系统提供了历史和实时数据共享。DaaS进行设备、行车、客流、能效等4大主题的离线和实时指标计算,为商业智能(business intelligence,BI)工具提供了数据展示的接口。

3 结论

本文阐述了在城轨云项目的建设过程中构建的云数融合的城轨大数据平台方案。大数据平台通过“统一采集、统一存储、统一管理、统一运营、统一服务”的方法,对来自各源系统的结构化、半结构化、非结构化数据进行归整和存储,并提供数据服务给数据消费者使用[10]。大数据平台在功能上嵌入云内。其角色定义是数字资产的提供方,作为DaaS层向云上各高级智慧应用提供数据服务,实现了数据生产者和消费者之间的隔离。该方案在业内创新性地实现了可配置式实时和低代码的微服务接口方式。云数融合避免了将来新数据接入时的硬件改动,将其简化为云上虚拟化资源的配置问题。大数据平台可配置式的微服务接口,在面对将来新的智慧应用需求时,避免了系统二次开发的复杂性。该方案实现了服务的高可用性,提升了资产利用价值,促进了行业的数字化升级。

猜你喜欢

提供数据数据服务城轨
地理空间大数据服务自然资源调查监测的方向分析
药品领域专利如何提供数据的探讨
漫说城轨
漫说城轨
漫说城轨
漫说城轨
如何运用税收大数据服务供给侧结构性改革
中国“天链”组网全球
基于频繁子图挖掘的数据服务Mashup推荐
一种基于数据服务超链进行情景数据集成的方法*