邹亚晨 朱永晔 江西省公安厅交通管理局 南昌市 330000
贺宇翔 杨东阳 华为技术有限公司 南昌市 330000
2011年,全国公安交通管理部门依托公安信息通信网,全面建成了覆盖部、省、市三级的公安交通管理综合应用平台,实现了机动车管理、驾驶人管理、交通事故处理、交通违法处理等各项业务功能,形成了较为完整的公安交通管理业务数据库。业务数据类型十分丰富,既包括结构化数据,例如:机动车登记、驾驶人考试、交通违法处理记录,又包含非结构化数据,例如:机动车交通违法电子监控图片、道路交通事故现场勘查视音频文件。随着业务的快速发展,综合应用平台在数据管理和服务能力上的瓶颈日益凸显,海量数据的存储、备份、扩容和日志信息的分析都成为亟待解决的现实难题。随着分布式技术日渐成熟,其建设成本低、扩展能力强、适合非结构化数据管理和大数据分析处理的优势日益显现,通过搭建分布式架构,对综合应用平台进行分布式应用改造,能够快速有效地解决这些现实难题。
随着综合应用平台系统功能日益丰富,数据量快速增长,有限的计算资源已经无法满足快速增长的计算服务需要(业务量每年增长50%)。据统计,改造前,大量的后台数据统计任务占据了综合应用数据库服务器(小型机)至少40%的计算资源,白天业务高峰时段,数据库服务器的CPU占用率时常在70%以上。
从数据量来看,Oracle数据库存储容量的90%被机动车交通违法电子监控图片数据占据。随着电子监控图片增长速度的日益加快(数据量日均新增96GB),当前的存储设备容量已经无法满足业务需要,只能依靠不断删除历史数据,释放空间来应对。2021年,综合应用平台业务监管系统还将上线运行,海量的监管影像资料、监管日志数据需要存储,这进一步加剧了存储资源的供需矛盾。
现有Oracle数据库受框架制约,在后台数据分析、模糊检索等方面存在缺陷。随着大数据应用的日益深化,更深层次的数据监管、研判分析需求对底层计算框架的要求已无法通过传统的Oracle数据库技术来解决。
结合平台现状和各类瓶颈问题,需要把图片、日志和业务数据分别进行独立存储和处理,给业务系统腾出更多的计算资源和存储容量,从而整体上优化系统处理效率,提升综合应用平台的业务服务能力。具体目标包括:
不同类型数据对资源的占用特点均不同。图片数据文件体积和数量都大,需要占用系统大量的“写”资源;日志数据量大,需要频繁“读”和“写”;业务数据是核心数据,量也大,经常要进行查询和统计操作,需要频繁“读”。通过把图片数据和日志数据迁移到分布式系统和分布式关系型数据库中,与业务数据分开存储,释放Oracle数据库存储设备的存储压力和读写带宽压力。
通过将图片和日志数据大量的联机事务处理(OLTP)跟业务数据的联机分析处理(OLAP)分开,解决Oracle数据库对大表(流水表、日志表)查询统计慢,几分钟甚至几小时才能出统计结果,效率低的问题。
改变以往靠系统管理员和数据库管理员后台登录服务器和交换机,逐台查看运行日志的低效模式,利用分布式系统和分布式关系型数据库的架构优势,开发图形可视化管理控制系统,实时监控服务器集群及各系统组件的运行性能,监控业务数据的运行情况,发现问题及时告警处置。
利用性能较低的经济型PC服务器,通过“分布式系统+分布式关系型数据库”的组合架构实现PB级别数据量的处理能力,为超大规模数据库管理提供高性价比的通用计算平台,达到以往使用小型机和高端存储阵列才能达到的性能效果,并且可以通过简单增加服务器数量的方式实现存储容量和计算能力的线性扩充,实现平台的更高性能、更高可用、更多算力。
2020年6月,该项目正式开展需求分析。具体包括:对综合应用平台、综合监管系统的功能分析、主要业务量分析和资源需求分析。资源需求分析包括对存储需求的测算和网络资源的测算。
3.1.1 存储需求测算
数据存储需求:分布式系统应满足综合应用平台历史数据和至少三年的增量数据存储要求。按照每年50%的增量计算,图片数据库历史数据为60TB,应支持不小于203TB存储空间;业务数据库历史数据为7.5TB,应支持不少于25TB存储空间;日志数据库历史数据为6.6TB,应支持不少于22TB数据。
分布式系统存储需求:分布式系统应支持203+25+22=250TB存储空间,考虑数据增速会越来越快,预留10%的冗余,则测算需要275TB的数据存储量。
分布式关系型数据库存储需求:并行关系型数据库主要用于数据挖掘、数据分析类操作,把待分析的数据同步到综合应用平台分布式数据库的MPP数据仓库,按照30%比例抽取,则三年数据量为(25+22)×30%=14TB,考虑数据挖掘、统计类操作会逐渐增加,预留20%冗余,则测算MPP数据库需要17TB的数据存储量。
3.1.2 网络资源需求测算
分布式系统需要使用33台服务器,每台服务器采用2个万兆端口进行业务互联、双上行到两台不同的万兆交换机;每台服务器采用1个千兆口进行管理业务互联,上行到一台独立的千兆交换机,共需要66个万兆光口及33个千兆端口,因此,此次改造的网络部分,共需要2台万兆交换机及1台千兆交换机。后续随着数据量增加,分布式系统集群(Hadoop集群)与分布式关系型数据库集群(MPPDB集群)还需分为不同平面,管理平面交换机增至双配冗余,以确保稳定性。
2020年8月,该项目进行总体方案设计。包括三部分内容:
3.2.1 确立建设目标
建设满足综合应用平台实际需求的分布式系统和分布式服务,实现分布式系统与业务功能的无缝对接,实现现有Oracle数据库的图片数据、日志数据、业务数据、统计数据安全平稳迁移至分布式系统,有效释放Oracle数据库压力,创新业务应用模式,为综合应用平台增加更多信息分析、检索类功能。
3.2.2 明确建设内容(1)建设分布式系统基础环境
基于Hadoop集群与MPPDB集群,集成分布式生态环境中的HDFS、Hive、HBase、ES、MPP等组件进行测试和调优,实现综合应用平台海量数据的分布式存储,实现综合应用平台分布式系统的运行监控和管理,包括:平台运行管理、数据管理和安全管理。
(2)建设分布式服务数据接口系统
通过搭建公安部交通科研所统一研发的综合应用平台分布式服务数据接口系统,将现有业务平台的非结构化、结构化、半结构化数据通过接口接入到分布式系统中,实现交通管理多源异构数据的接入,实现分布式系统与Oracle数据库之间的数据分发和同步。
(3)进行历史数据迁移
将现有Oracle数据库的图片数据、日志数据、业务数据、统计数据迁移至分布式系统,然后实现“双写、双同步”,最终实现数据“单写”。
3.2.3 设计总体方案
对照建设目标与建设内容,完成与建设内容相关的架构设计、网络设计和信息资源规划,具体包括:
(1)总体架构设计
从逻辑上将系统分为若干层,从下往上依次为:
✧分布式系统基础平台:实现数据资源的管理、数据存储组件、调度管理、消息服务、非结构化数据存储、索引数据存储、计算数据存储以及数据计算等,属于分布式系统的数据基础支撑平台。
✧分布式系统服务平台:实现对分布式基础平台的数据存储、数据组织,高可用访问和异常处理等机制,实现对综合应用平台的各类数据服务,实现访问权限控制、访问日志等服务管理功能。
✧综合应用平台:实现对传统业务系统的分布式改造,实现更高效的统计分析、模糊检索和对分布式集群的监控。
(2)网络架构设计
分布式系统需要在网内交换大量的管理和监控数据,同时,网内还要传输大量的业务数据,为了更好地支持这两类数据的传输,内部将网络划分为管理、业务两个平面,保障两个网络平面相互隔离,互不影响。业务平面用来承载用户端到分布式系统各个业务应用子系统的流量以及数据中心内部节点之间的的流量;管理平面用来承载网络、服务器、存储及安全等设备之间的管理数据、指令操作数据以及分布式系统的维护和监控数据。管理平面与业务平面共用核心层交换机,通过VLAN实现两个平面的隔离。
(3)分布式改造框架设计
对综合应用平台进行适用于分布式服务的改造,具体包括:①数据层。将原有传统关系型数据库改造成:分布式关系型数据库存储违法数据、日志数据和必要的业务数据,传统关系型数据库仍保留,但只存储车管、驾管、违法和事故等业务数据;②服务层。将原有的数据服务平台改造成满足分布式需要的分布式服务平台;③应用层。将原有综合应用平台的应用功能按照传统关系型数据库和分布式系统进行区分,实时业务操作和实时精确查询类的功能基于传统关系型数据库开展应用,海量数据分析和非结构化数据检索基于分布式系统开展应用。
(4)数据流向设计
综合应用平台业务系统分别向Oracle数据库和分布式系统写入结构化数据和非结构化数据,并分别向两个数据库检索读取数据,分布式系统通过API数据接口向综合应用平台提供服务,Oracle数据库和分布式系统之间通过数据接入工具实现历史数据的迁移。三者之间形成完整的数据同步和分发。
该项目于2021年1月至10月进行安装调试、集成部署、平台升级、数据迁移等工作,具体包括四个步骤。
(1)硬件上架和安装调试
该部分工作于2021年2月至3月完成,具体是对新购置的33台服务器、2台万兆交换机等设备和利旧使用的交换机进行硬件上架和安装调试。
(2)分布式系统和关系型数据库安装部署
该部分工作于2021年3月至5月完成,具体是对各服务器节点进行硬件检查,确认无问题后安装CentOS操作系统,并根据设计方案对不同节点进行组件安装。包括5台Hadoop管控节点服务器、15台HBase服务器、3台Kafka服务器、4台ES服务器、2台MPPDB集群管控节点服务器、4台MPP数据节点服务器,共计33台。
各节点实际部署流程为:开始—安装前准备—配置软件包—生成配置文件—配置并检查安装环境—(安装双机Manager)—安装集群—加载License—安装后检查—初始配置—结束。
(3)分布式服务安装部署
该部分工作于2021年6月至7月完成,具体是安装部署数据接入系统、图片数据接口、日志数据接口、业务数据接口、数据搜索接口、索引管理系统、全文检索系统、分布式数据库运行状态监控服务接口。共在6台PC服务器上部署了接口服务,包括6个图片数据接口(image-service),6个业务数据接口(buslog-service),3个消费服务接口(consumer-service),3个注册中心(sofa),2个同步服务接口(task-service),2个代理服务器(nginx),1个监控服务接口(task-console-ser‐vice)。
(4)综合应用平台升级改造
该部分工作于2021年7月至8月完成,具体是对证据图片库、工作库日志数据表和基础信息主表的改造,并新增或优化功能,例如新增海量数据搜索功能、优化统计分析功能。
改造的内容包括:将原有部分保存在Oracle数据库的结构化业务、日志数据和非结构化的图片数据迁移至分布式系统中,并通过平台的系统参数调整,设置从分布式系统中读取相应数据。其中图片数据存在HBase中,日志数据和13张复杂业务表存在ES中,用来做多项查询,日志和业务数据存入GaussDB中,用来做统计报表和一些查询。
本项目是在综合应用平台现有的“生产环境”上直接进行改造。为确保改造的顺利实施,在开始具体工作前,需要对现有的网络拓扑、网络安全防护策略和机房环境进行现场确认,运用思维导图明确实施计划,通过甘特图细化实施步骤和耗时。对于网络割接、数据迁移和应用切换等关键步骤,要做好应急预案。由于综合应用平台是公安交通管理核心系统,应该充分利用部交管局统一部署的系统升级窗口期进行需要暂停业务的安装部署操作,减少改造工作对综合应用平台以及与其紧密关联的互联网服务管理平台、12123语音平台、集成指挥平台以及各类外挂软件、警务通系统的影响。
本次改造涉及的数据量较大,需要采购的各类软硬件较多,要充分理清本地平台的软硬件现状和数据量。对于改造过程中需要使用利旧设备的,要提前确认硬件设备与采购软件的兼容性;要提前了解市场主流分布式系统软件对于网络的需求,并按照分布式系统软件要求,将网络按照业务平面、管理平面以及设备MP管理卡划分为3组网络,其中业务平面和管理平面应为不同的公安信息通信网网段,并进行相应的网络路由设置。
本次改造除了新增大量网络设备和服务器设备,还新增了非常多的分布式系统应用服务,因此,在部署实施前,要按照信息安全等级保护的要求,做好网络安全域划分,将Oracle数据、分布式系统、WAS应用、微服务架构应用进行科学划分;要与科信部门提前做好协调,争取公安网核心交换机对分布式系统软件要求的相应特殊通信端口的支持;要做好安全服务厂商和应用服务厂商之间的协调;要提前收集应用服务所需的端口、应用功能和网络流向,做好安全防护设备的策略部署,做到端口级的网络防护策略。
此次改造共将72张业务表和日志表约1039GB、8张图片表约54TB数据,迁移到了分布式系统中,原Oracle数据库存储设备的剩余可用容量大幅提高,可用空间由14.3TB增加到32.2TB,业务库存储设备的读写带宽压力大幅下降,2021年6月1日至2022年1月10日,设备的读IOPS由1720下降到1338。按照业务数据每年50%的增长率和当前存储设备的实际容量计算,在不增加投入的情况下,Oracle数据库存储设备的可使用年限还能延长至少三年。
改造后,综合应用平台分布式服务、分布式系统和分布式关系型数据库的调度管理和监控预警都可以通过图形可视化的方式进行,综合应用平台的运行维护能力得到了进一步加强。
改造完成后,综合应用平台硬件基础资源实现了跨越式升级。平台的HBase和MPPDB实际可用存储容量分别达到了439TB和69TB,ES实际可用存储容量达到了44TB,截至2021年12月底,HBase存储使用率为12%,ES存储使用率为3%,MPPDB存储使用率为2.6%,预计可以满足平台在未来四年的非结构化数据存储需求。以5台PC服务器组成的Hadoop管控节点服务,不仅能够满足综合应用平台分布式系统管控需要,同时也基本能够满足省公安厅大数据云管中心硬件资源需求。
平台改造过程中采用的PC服务器、分布式关系型数据库和相关接口服务均为国产自研,这在江西省公安交管大型信息系统建设历程中属于首次。这既符合国家相关信息安全要求,又能实现对原有数据库大部分功能的替代,并且可以通过跨集群的分布式数据备份和数据容灾,保证数据存储安全可靠。项目实施团队在实施过程中克服了大量兼容性适配问题,顺利完成了安装部署工作,整体运行效果也基本达到了采用进口芯片服务器能够实现的效果,为今后全面实现信息系统软硬件国产化提供了宝贵经验。
综合应用平台是网络安全等级保护定级三级的信息系统,对网络安全保障的要求非常严格。平台自2014年进行等级保护测评以来,历经多次软硬件升级、机房搬迁,特别是这次大规模的改造后,平台整体架构、数据库安全、网络安全和运行环境等内容已经发生了很大变化,按照网络安全等级保护的要求,需要重新开展等级保护测评工作,找出系统运行环境与国家技术标准要求之间的差距并加以改进完善,形成严密的安全保护体系,为综合应用平台的稳定运行提供有力安全保障。
综合应用平台部署在江西省公安厅大数据中心机房。改造前,Oracle数据库中的图片库和业务库数据均实现了数据级的异地容灾备份。改造后,图片库和业务库的日志数据迁移到了分布式系统中。随着单写分布式系统的图片数据越来越多,缺少容灾备份是很大的信息安全隐患。为此,下一步拟结合公安交通管理非结构化数据的特点,开展综合应用平台异地容灾数据库的升级,进行分布式系统的异地容灾备份。
综合应用平台升级改造完成后,参与平台运维服务的技术团队进一步增多,加强平台的运维管理显得更加迫切。要按照部交管局《公安交通管理信息系统运行管理规定》的总体要求,建立科技部门牵头,驻场运维保障单位负总责,各运维团队分工负责的运维保障机制,进一步完善系统升级、日常巡检、故障排查、安全巡查、应急响应和服务基层等各方面内容,协调运维管理工作整体高效运转。