基于分布式处理架构的数据共享交换平台设计

2023-01-16 05:59杨民志
无线互联科技 2022年21期
关键词:流程

杨民志

(南京市江宁区企业服务中心,江苏 南京 211100)

0 引言

近年来,新一代信息技术不断提升,与实体经济融合不断加深,大数据、5G、人工智能等行业发展速度越来越快。新一代信息技术的发展极大地丰富了数字经济的内涵,深刻地改变了人类社会的生产生活方式,数字经济发展模式不断多样,影响范围不断扩大。随着数字技术的应用,社会治理、企业生产等方面产生了大量数据。这些数据类型呈现多样性特征,包括结构化数据、半结构化数据、非结构化数据等。

目前“数据壁垒”仍普遍存在,在传统烟囱式IT建设方式下,政企各部门都存在独立采购或者自建业务系统等情况,在内部形成诸多“数据孤岛”,缺乏数据的共享交换。互联网时代进一步加剧了“数据壁垒”问题,系统的多样性和多态性也增加了各单位IT架构的复杂度,使得底层数据的互联互通共享成为困扰各单位的痛点之一。因此,亟需数据中台类产品,整合分散在各个孤岛的数据,形成数据服务能力。以政府和企业为例,政府内各个单位,企业内各个业务部门的业务系统和平台往往无法直接实现互联,主要因为系统是由不同的软件服务商开发,各个服务商所采用的技术标准不统一,软硬件平台不统一。海量的结构化数据、半结构化数据和非结构化数据等无法共享交换,因此建设数据共享交换平台的需求应运而生。对政府而言,数据共享交换平台能更好地服务民生及进行社会治理;对企业而言,数据共享交换平台可以更好地应对生产和运营等挑战,快速响应用户需求。

数据共享交换平台可按照相关标准对来自不同环境的异构数据进行采集、加工、转换,提供多个部门、多业务平台、第三方互联网应用等业务系统数据共享交换的技术通道,推进各部门、各行业之间的有序数据交换与共享,实现信息资源的逐步整合。

数据共享交换平台不仅是一套软件系统,更是一种组织运作机制和管理模式,集战略方向、组织架构、技术架构于一体,构建了统一的协同基座,以协调和支持各业务部门,使数据最终与业务链条结合,真正转化为客户核心资产,可以看成是数字化转型的基础和核心。

1 技术方案

数据采集器(BD Collector)是数据共享交换平台的核心,负责将各种形式的数据统一采集,加工处理后存储到数据中心。数据采集器作为一种数据处理工具,提供大容量数据的采集、整合、转换、清洗和输出功能,并且依托于高可扩展性架构,能提供超高的系统处理性能,在数据质量上实现数据的正确性、完整性、一致性、时效性和可获取性。

数据采集是大数据处理的第一步,需要支持各种类型的数据,包括结构化、半结构化、非结构化等类型,在对数据进行初步的采集、处理后,存储到数据中心进行统一管理,如图1所示。

BD Collector基于B/S架构,采用统一的流程管理视图,使用者通过该视图可以方便地开发、配置、管理自己的业务流程,如图2所示。

数据采集器的服务端具有很好的系统兼容性,可以运行在Unix/Linux/Windows等主流操作系统上。客户端支持Web浏览器进行访问,使用者只要可以上网,即可通过Web浏览器登录服务器进行管理,Web管理平台提供统一的管理界面,主要有6个功能模块。

(1)工作流WorkFlow:用来创建、编辑流程所用。使用者可以根据业务需要在此定义数据处理流程,如FTP下载上传、流数据处理、数据清洗、转换等;

(2)控制台Monitor:用来监控流程执行以及异常情况,并可重新执行失败流程。系统各个部件(调度器、执行器、控制器)以及作业的状态监控,运行日志查询、统计;

(3)管理平台Admin:用来配置数据采集的部署模式;

(4)数据源管理:数据源、数据集的统一管理和维护;

(5)集群管理:执行器、调度器的注册、版本升级;

(6)流程设计:数据流(转换)和控制流(作业)的设计调试,流程调度配置。

图1 数据采集器架构

图3 Collector分布式架构

图2 基于B/S的统一流程管理

1.1 分布式处理架构

分布式存储最早是由谷歌提出的,其目的是通过廉价的服务器来解决大规模、高并发等场景下Web访问问题。它采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但提高了系统的可靠性、可用性和存取效率,还易于扩展。数据交换平台支持分布式架构,可以多个采集服务器并发工作,不同的服务器可以分别运行不同的数据采集流程[1],如图3所示。

(1)主控节点Master:Master端负责任务的创建与分发,并且根据各工作节点(Slave)的工作状态动态的预测以及分配任务,最终提高整个系统的运行效率。

(2)工作节点Slave:Slave负责每个任务的执行,可以根据任务的情况建立多个执行端,且可以横向动态扩展,组成一个分布式运行网络,最终实现整个系统的执行效率和运行性能的提升。Slave在运行时根据Slave自身资源使用情况主动向Master申请一定量的任务,在一定程度上确保Slave的资源充分利用以及Slave的健康运行。

(3)工作节点网格Slave Grid:Slave支持网格化运行,同一个网格的Slave可以并行执行相同的任务。

典型的Collector任务分发流程如图4所示。

①→②定时事件、系统外部事件等事件到达后,主控节点从资源库获取作业信息,并发送给引擎处理;③→④引擎启动相应作业,生成任务;⑤动态分派给相关的工作节点;⑥→⑦工作节点执行各自的任务;⑧工作节点执行任务并反馈给主控节点。

数据交换平台支持的分布式部署架构包括以下两层含义:(1)在同一个物理服务器上部署多个slave服务器,用作负载均衡,充分地利用服务器的硬件性能;(2)将slave服务器部署在多个物理服务器上,实现应用的物理分离,提高系统的可靠性和可用性,保证Collector服务器能够提供不间断的服务。

1.2 工作流管理

1.2.1 工作流配置

使用系统提供的组件完成一个作业的流程、顺序和流向的图形化配置,支持并发调度和条件判断配置,支持子流程,设计完成后可对该作业进行测试、调试、发布。

图4 数据采集Collector任务分发流程

1.2.2 工作流调度

支持数据处理流程的定时执行、事件驱动执行、人工执行,可以定义定时任务的启动时间、重复时间间隔、重复次数、异常处理方法等,可以订阅驱动Collector流程的事件,当事件发生时数据处理流程启动。

设置工作流计划,一个工作流可以有多个执行计划,执行计划包括开始时间、结束时间和定时循环信息等,支持日历周期的定时循环,例如,每月最后一天的晚上8点,每周一三五的晚上8点定时执行等,也支持非日历周期的定时循环,如每两天的晚上8点执行,每18小时定时执行等。

支持Collector组件发生错误时定义重试次数,重试时间间隔。支持异常发生时调用异常处理组件,自动进行运行环境恢复等异常处理动作。

当历史数据需要处理时,可以定义流程在历史时间段运行。当业务数据中涉及当前时间处理,可以自动以历史时间为当前时间,保证历史数据逻辑正确。

1.2.3 工作流组件

每个数据处理组件都可配置输入/输出数据对象,数据对象是存储在资源库里面的对Collector要操作的对象的定义,比如数据文件、数据表的定义等。

1.3 数据加工

数据加工是将数据进行数据抽取、数据清洗、数据转换、数据加载并整合到数据层的整个流程。

1.3.1 数据抽取(数据采集)

数据抽取也被称为数据采集,其具有丰富的数据源汇聚接口,并能够针对数据模型进行多种方式的转换汇总。数据采集包括周期采集和即时采集。周期采集是指根据不同的时间对数据进行抽取的方式;即时采集是系统根据设定的采集条件立刻进行一次性操作,操作完成后不再重复此动作的数据抽取方式。即时采集通常应用在历史数据和重新采集的数据不一致的场景下。采集适配器具备可视化的配置管理能力,从源数据库中获取被采集侧源数据的属性信息,通过图形化界面对不同的数据源选择不同的采集适配器进行数据采集,并对不同的数据源定制采集的数据范围和相应的约束条件。

从源系统抽取数据时需要综合考虑多种因素,包括抽取效率、业务场景、运行时间等,最终来确定抽取的策略。根据不同的数据平台、数据形式,选取不同的数据抽取接口,同时需要考虑安全方面的问题。因此进行数据抽取时必须充分考虑以下因素,制定相应的抽取策略:

(1)支持不同数据来源的抽取处理,要能灵活地支持人工输入功能。

(2)支持多种不同类型的平台数据进行抽取,包括各种关系型数据库系统、各种文件系统的源数据等。

(3)要充分考虑到源数据系统的性能要求,尽量减少对源数据系统的影响。

1.3.2 数据清洗

通过数据清洗完成对“脏数据”的剔除,消除数据的不一致。发现抽取数据的错误是数据清洗的一个重要功能,平台的数据清洗过程应至少包含以下内容:元素化、标准化、排错校验、去重匹配、错重消除、归档。

数据清洗主要标准是通过关键字段和主要关键字段的关联关系,判断源数据的记录是否唯一,过滤重复的记录,这些重复的记录很有可能是原业务系统的缺陷造成的数据重复生成[2]。

1.3.3 数据转换

数据转换包括格式转换、数据翻译、数据匹配等,同时数据交换双方的数据都是不同类型、不同结构的,要使交换双方能够识别彼此的数据,必须依据相关的标准和协议对数据的格式进行转换,以实现信息的透明传输,因此数据转换需确定数据转换格式和转换协议[3]。

XML是一种通用的在线数据格式,因为具备分布组件在不同类型的应用程序之间传输信息的先天性优势,且具有数据映射的功能,因此这里通过XML来实现数据库之间的数据转换。

1.3.4 数据加载

数据加载是继数据抽取和转换清洗后的一个阶段,它负责将从数据源中抽取加工所需的数据,经过数据清洗和转换后,最终按照预定义好的数据仓库模型,将数据加载到目标数据集市或数据仓库中,可实现SQL或批量加载。大多数情况下,异构数据源均可通过SQL语句进行insert,update,delete操作。而有些数据库管理系统集成了相应的批量加载方法,如SQL Server的bcp,bulk等,Oracle的sqlldr,或使用Oracle的plsql工具中的import完成批量加载。大多数情况下会使用SQL语句,因为这样导入有日志记录,是可回滚的。[4]但是,批量加载操作易于使用,并且在加载大量数据时效率较高。当异构数据源的种类繁多,且数据仓库模型复杂时,使用数据共享交换平台专业的ETL工具将事半功倍。

1.3.5 事务管理

数据采集器支持数据处理事件的定义、发布、订阅,实现采集处理过程的事件驱动。例如,当某目录文件存在、文件删除、文件更新时,可以触发不同的事件,订阅这些事件的Collector流程就可以启动。

2 数据共享交换平台的应用

本文以政务行业、零售行业、金融行业和工业行业为例,分析数据共享交换平台使用场景。

2.1 政务行业场景

基于数据共享交换平台构建的政务平台可以实现数据的统一管理,实现各部门数据贯通,提升内部跨区域/跨部门/跨层级的办公效能,促进数据共享交换与业务应用的融合,全面提升政府面向公众的便捷服务能力、科学化决策能力,为政府带来新的治理模式和服务模式。[5]

2.2 零售行业场景

通过数据共享交换平台打通零售企业内外部数据,从数据流层面进行疏通,提升零售企业整体数据服务能力,协助零售企业开展经营管理、市场营销、精准分析等辅助决策,实现对零售行业市场变化的灵活应对。

2.3 金融行业场景

金融欺诈、小微企业融资难等问题一直是全民重点关注的问题。数据共享交换平台可以解决金融行业数据时效性较差、数据标准模型落后、数据深度应用效率较低等问题,协助金融企业从数据追踪、业务流程等多个维度加强数据跨部门、多业务的综合管理,增强了金融企业与前端客户的紧密连接,依托精细化的数据服务能力,降低金融企业经营风险与成本。

2.4 工业行业场景

数据共享交换平台的重要转变是让数据持续发挥价值,将成为资产的数据作为生产资料融入工业企业生产流程,形成可靠的工业数据架构和高效的工业数据服务体系,以支撑传统工业大规模、多样化、全链路的运营生产,提升传统工业创新能力,实现精细化、智能化运营管理监测价值。

3 发展方向

数据共享交换平台在各行业应用场景中普遍会遇到产品推广困难、标准化困难、落地效果不佳、技术与前端业务难以融合、业务决策缺少辅助场景等问题。为此,结合数据共享交换平台发展现状,可从以下方向发展。

3.1 加速产品标准化建设

数据共享交换平台大多以偏定制化的方式在项目中落地,很难以“通用数据共享交换平台”的形式应对各行业的各类应用需求。因此,需要通过细分行业的各类定制化业务,提升数据共享和数据管理能力,丰富完善数据中台产品的功能模块,逐步形成标准化的通用数据中台解决方案。

3.2 从业务场景探索建设

数据共享交换平台距离前端业务场景很近,因此数据共享交换平台的建设应从业务场景规划开始。首先探索数据价值的使用需求,根据客户需求及业务战略目标排出优先级,然后将不同业务应用场景对于技术的需求抽象建模成相应的数据服务,再由业务应用场景牵引进行逐步建设、快速迭代。

3.3 数据共享交换平台与SaaS融合

数据共享交换平台是面向内部提供数据服务,并且为前端业务场景提供半成品服务,而非像SaaS为业务需求方提供标准的完整解决方案产品,两者之间存在一定的关系,SaaS其实是数据中台发展的下一阶段演化产物。例如,企业部署了中台以后,经过一段时间运行将数据流、业务流都打通,并且将核心服务提取归属到了数据共享交换平台后,再往下发展就可以抽象出中台+SaaS产品服务于整个行业。

3.4 数据共享交换平台智能化发展

海量数据与多样的业务场景使数据共享交换平台数据量大增,积累了丰富的数据指标,可应用智能技术提供通用化智能服务,为业务决策提供直接辅助场景,比较普遍的智能应用场景有商品销量预测、千人千面推荐算法、营销活动预测等。同时,通过智能技术算法可以为前端员工降低数据使用的门槛,提高整体工作效率和生产效率。

4 结语

随着数字经济发展的深入,数字产业化、产业数字化在各个领域的重要性日益凸显,数据成为数字经济

发展的重要基础。数据的流通、关联、分析等方面是大数据实现价值的基础。单个设备、单个部门、单个领域的数据无法有效地让人认识全局。但是获取不同角度、不同维度的数据,并将这些基础数据进行汇聚、加以关联,才能从全局范围分析事物,掌握事物本质。推动数据开放共享是实现数据价值化的基础,数据汇聚使数据有可能产生价值,数据关联才能使数据实现价值。政府、企业等拥有大量数据,既要在合理范围保障数据的供给和共享,也要合法地对数据进行开发利用,不断推动数据价值化的提升。

猜你喜欢
流程
工星人平台注册流程
长流程钢铁企业废水零排放实践与探讨
吃水果有套“清洗流程”
与元英&宫胁咲良零距离 from IZ*ONE
四川省高考志愿填报流程简图
本刊审稿流程
析OGSA-DAI工作流程
数字流程
浅谈流程管理对强化内部审计的认识
从教案设计的“三点”看教学流程的“一线”