基于五库分离架构的企业集团档案管理系统设计与实现
——以华润(集团)有限公司为例

2023-04-14 10:17李春伟华润集团有限公司
浙江档案 2023年3期
关键词:分布式架构管理系统

李春伟/华润(集团)有限公司

在数字化转型时代下,海量电子档案收集、保管、利用高度依赖于功能完善、快速流畅、安全可靠、低成本的档案管理系统。对于企业集团而言,出于统一管控、规范治理、共享利用、提高效率、节约成本等需求考虑,档案管理系统采取“统一建设、集中部署”模式成为首选。随着归档数据量、用户数量的剧增,特别是各类业务系统形成的海量电子文件归档后,档案管理系统的性能、稳定性受到严峻的挑战,严重影响电子档案的收集、保管、利用,需要引起充分的重视并采取有效措施解决。

2021年,笔者所在单位华润(集团)有限公司(以下简称“集团”)建设了基于五库分离架构的电子档案管理系统2.0。集团作为国资委直接监管的国有重点骨干企业,具备业态多、层级多、用户多等特点,面临着历史档案存量大、新增速度快等问题。在建设完成后,有效提升系统性能,实现了高性能、高并发、高可用、快速响应,从而满足企业集团十亿、百亿级档案数据的高并发读写、高效检索、低成本存储的需求。

1 档案管理系统设计需求

传统的档案管理系统由于采取单体架构设计,通常只有一个共享的关系型数据库,数据通常在不同的组件之间共享。由于数据存储在一个数据库中,系统开发更简单,但是单个共享数据库设计在性能方面易出问题。如集团于2014年正式上线运行的档案管理系统1.0,随着归档数据量、用户数量的剧增,特别是在存储过亿级别数据后,易造成系统性能、稳定性严重下降,批量处理大批量数据容易失败,档案检索速度慢、不准确、不完整,数据库扩展更加困难、部署成本大幅增加,数据安全风险加大。单一数据库架构不能满足企业集团数字档案馆建设要求,严重影响档案工作的正常开展。同时,传统关系型数据库存在的缺陷更加突出,主要表现在:

高并发读写性能低。企业集团的用户数量较多,特别是档案整理归档高峰时期,用户并发量非常高,往往达到每秒上万次的读写请求,数据库负载非常高,硬盘I/O(读写)性能较差,且容易出现死锁等并发问题,导致其读写速度性能下降非常严重。

可扩展性差。关系型数据库的纵向扩展空间非常有限,横向扩展也面临较大挑战,主要是如何在多个服务器之间协调数据的存储和访问,如何维护数据的一致性和完整性等,无法简单地通过增加服务器和服务节点来扩展性能和负载能力。

支撑容量有限。各类业务系统形成的大量电子文件需要归档到档案管理系统,数据量通常以十亿、百亿级计算,关系型数据库无法支撑过亿级别数据存储和复杂查询。

部署成本高,维护难度大。本地部署的关系型数据库许可成本高,并且随着数据量增大而不断上升,需要专业人员进行配置、调优、容错、打补丁、更新等运维,运维成本很高。

数据格式的限制。关系型数据库所采用的二维表格数据模型不能有效处理多维数据,不能有效处理互联网应用中的半结构化和非结构化数据,如Web页面、电子邮件、音频、视频等。

分布式数据库是一个数据集合,这些数据分布在由计算机网络连接起来的若干节点上,每个节点可以管理本地的数据应用,也可以参与全局数据应用。同时这些数据在逻辑上形成一个整体,由统一的数据库管理系统进行管理。相关产品主要包括:HBase、OceanBase、BigTable等数据库。以HBase数据库为例,HBase是一个高可靠、高性能、面向列、可伸缩、开源的分布式数据库,主要用来存储非结构化和半结构化的松散数据,设计它的目的就是用于处理非常庞大的表——通过水平扩展的方式,用计算机集群就可以处理由超过10亿行数据和数百万列元素所组成的数据表。

因此,需要一种基于多库分离、分布式部署的数据架构支撑档案管理系统的建设。相较于传统关系型数据库,应用HBase分布式数据库和Elasticsearch搜索引擎技术,可以有效解决海量电子档案的保存和利用。

2 档案管理系统架构设计

2.1 五库分离架构设计

为彻底解决单一数据库架构造成的问题,提高系统性能,集团开始建设电子档案管理系统2.0,新系统规划6个子系统,系统服务全部基于微服务架构,数据架构采取五库分离架构,根据子系统功能定位,将数据分别存放于5个不同类型数据库:预归档库、管理库、利用库、长期保存库、销毁库(见图1)。

图1:功能架构图

根据电子文件归档与电子档案管理流程,归档电子文件在进入电子文件接收系统、综合档案管理系统预归档库后,档案数据保存在预归档库;归档电子文件移交归档后,档案数据转移到综合档案管理系统的管理库,同时根据需要复制一份数据到档案利用系统的利用库;管理库中有长期保存价值的数据根据需要备份到长期保存系统,电子档案元数据保存在长期保存库;电子档案经鉴定销毁审批流程,电子档案原文和长期保存信息包彻底删除,电子档案元数据从管理库、利用库、长期保存库转移到销毁库,并作为销毁记录永久保存。

将已完成收集整理的数据转移到管理库,可以有效避免经过多年积累的预归档库数据量急剧膨胀,保障预归档库收集整理电子文件的性能、稳定性。预归档库仅用于保存上年度待收集整理数据,数据量可以始终维持在较低水平,从而确保电子文件接收系统、综合档案管理系统收集整理功能的高可用、高并发、高性能、快速响应。

2.2 架构设计特点

由于传统关系型数据库和分布式数据库各有优势与不足,集团电子档案管理系统“五库”通过“分库+并用”方式建设,充分发挥两者所长。根据档案业务特点,以及不同类型数据库所支持的最大数据量,预归档库使用Oracle关系型数据库,管理库、利用库、长期保存库、销毁库使用HBase分布式数据库(见图2)。

图2:数据架构图

2.2.1 保障预归档工作需求

由于预归档工作需要集中维护、整理电子档案,本架构可利用关系型数据库满足预归档需求。一是基于数据库特点,易于维护及访问预归档数据;二是通过数据库的权限分配和管理,保障预归档数据的安全性;三是数据库可依据业务需求及时开通所需资源,无需在业务初期采购高成本硬件,有效减少初期的资产投入及避免资源闲置浪费;四是数据库可提供快速高效的事务处理能力,轻松应对高并发、大规模预归档数据处理需求。

2.2.2 提升海量数据检索能力

通过结合主流的搜索引擎Elasticsearch和基于HDFS的HBase分布式数据库对“四库”建设,满足了档案业务数据持续增长的需要,档案管理系统可支撑十亿、百亿级条目数据记录检索和电子全文检索。前者提供友好的Rest API,原生支持集群部署,后者是一个多分区、列式存储的海量存储数据库,通过Rowkey可以快速地查询出对应的数据记录。创建基于ES的HBase二级索引(见图3),在HBase上存储数据记录,使用Elasticsearch做数据记录的二级索引,按照检索内容查询到数据记录对应的Rowkey后,再从HBase上检索完整的原数据记录。通过结合Elasticsearch全文检索的能力和HBase的单记录快速检索,可以实现档案电子全文的快速检索和档案条目数据的海量存储。

图3:基于ES的HBase二级索引方案

2.2.3 突破数据库瓶颈

Elasticsearch和HBase均具有原生的支持集群的横向扩展,当集群因数据量上升带来性能瓶颈时,可以通过添加集群节点来实现计算资源的扩容,实现性能的提升。

2.2.4 保障档案数据安全

在数据存储方面,Elasticsearch和HBase这两项技术都自带数据副本的能力,在少数节点掉线或者硬件损坏的情况下,并不会导致数据的丢失,对档案数据的保存也提供很好的安全保障。在数据权限查询方面,涉及用户数据权限查询的属性字段一并放到Elasticsearch和HBase上存储,在检索前对用户数据权限字段的值进行提取(例如:通过用户角色反向解析出用户拥有的权限过滤字段的值),再把值传入Elasticsearch进行检索,实现带数据权限检索的能力,对档案利用提供了安全保障。

2.3 五库分离架构验证结果

该设计首先完成了前期的调研和开发环境代码验证,随后在生产环境标准配置的集群进行实测和调优。在测试环境2C 8G 3节点ES集群下测试结果写入吞吐量达到30000+docs/s,默认查询(所有文档score 为1)耗时在170ms内返回结果,term规则查询在55ms内返回结果,phrase规则下的查询最差在2662ms返回了查询结果。测试环境HBase的数据存储容量达到亿级,请求速度是毫秒级。

综上所示,此架构可充分满足企业集团对海量电子档案在收集、保管、利用过程中数据库响应速度的要求,可有效解决数据库瓶颈,确保档案管理系统高可用、高并发、高性能、快速响应。

3 成果简析

基于五库分离架构的档案管理系统设计对于企业集团档案信息化建设具有积极的推动作用和显著的经济效益,有效满足企业集团数字档案馆建设需求。

3.1 适应大数据时代发展,提升档案信息资源价值。本架构可以存储十亿、百亿级档案数据,运用大数据解决方案分析各种不同来源的结构化和非结构化数据,全面提升档案信息资源价值。

3.2 支撑容量巨大。HBase数据库的单表可以有百亿行、百万列,纵向和横向支持的数据量级都非常有弹性,分布式数据库采用横向扩展思路,可以实现无限水平扩展,海量数据可以使用一定的分片策略分散到不同的服务器。集团下属企业3000余家,核心业务系统约3000个,采用分布式数据库可以满足各类业务系统海量数据的归档和存储需求。

3.3 扩展性强。分布式数据库去掉关系型数据库的关系特征,数据之间弱关系,横向扩展性能非常优越,容易实现支撑数据从TB到PB级别的过渡。同时,分布式数据库支持热扩展,可以在不停止现有服务的前提下,可以随时添加或减少节点。

3.4 系统性能大幅提高。分布式数据库可以通过并行处理和负载均衡来提高性能,由于数据分散在不同的节点上,系统可以同时处理多个请求,从而加快数据的访问和处理速度。

3.5 降低部署成本。与传统关系型数据库不同,分布式数据库对计算机系统的性能要求大大降低,可以使用普通的PC服务器,硬件成本极大降低,同时,Hbase为开源数据库,免除了高昂的数据库许可费用。

3.6 充分应用新技术。使用多库分离设计,不同电子档案库可以根据业务场景使用不同类型数据库,充分发挥不同类型数据库优点、避免缺点,有效应用最新信息技术,同时,可以减轻、分散单一数据库承担的数据读写压力,实现读写分离。

3.7 提高档案管理系统安全性。不同类型用户、不同网络用户共同访问单一数据库,存在较高的数字安全风险。采取五库分离架构后,档案管理人员、系统管理员、档案利用者可以分别访问和操作不同的数据库,极大地提高档案数据安全性,防范档案信息泄露。例如:外网用户可以通过互联网访问档案利用系统,数据访问范围仅限于利用库数据,避免接触到企业内网的其他四库数据。

3.8 满足企业集团数字档案馆建设要求,实现数据互联互通。国家档案局持续推动中央企业建设企业集团数字档案馆,验收标准之一就是要求企业集团总部与下属企业数字档案室实现互联互通,由于采用五库分离架构,下属企业已归档数据全部保存在档案利用系统的利用库,从而实现企业集团内部各类档案数据的互联互通,共享企业集团档案信息资源。

3.9 满足集中部署需求,切实为企业降本增效。通过五库分离架构,彻底解决数据库瓶颈,满足了企业集团档案管理系统“统一建设、集中部署”的需求,避免下属企业分别建设、部署带来的各种问题,极大地降低档案管理系统建设和推广成本,切实为企业降本增效。由于系统功能完善、性能较高,集团下属企业积极开展系统上线工作,目前已有1500个全宗正式上线运行,本架构有效满足了企业集团高并发、高效检索的需求。

猜你喜欢
分布式架构管理系统
基于FPGA的RNN硬件加速架构
基于James的院内邮件管理系统的实现
功能架构在电子电气架构开发中的应用和实践
基于LED联动显示的违停管理系统
分布式光伏热钱汹涌
分布式光伏:爆发还是徘徊
LSN DCI EVPN VxLAN组网架构研究及实现
海盾压载水管理系统
基于DDS的分布式三维协同仿真研究
一种基于FPGA+ARM架构的μPMU实现