对象存储技术在电子档案在线存储中的研究与应用

发布时间:2024-03-06 14:42:50被阅览数:221 次信息来源:《中国档案》

  文/陆慧

  近年来,随着党政机关电子文件单套制归档的大力推进,“互联网+政务服务”电子数据在线归档的深化开展以及照片、音视频等多媒体数据的大量归档,电子档案呈现数量和存储容量双快速增长的趋势。传统模式下的电子档案存储和管理方式已无法满足当下电子档案的存储管理需求,对电子档案存储进行无限拓展、高效和安全的管理成为迫切需要解决的问题。

  传统存储技术下电子档案在线存储面临的困境

  国内综合档案馆在电子档案在线存储方面,使用的存储技术主要还是以IBM、EMC、HDS等为存储产品的SAN(Storage Area Network,存储区域网络)技术,以及少量的以NetApp、群晖等为存储产品的NAS(Network Attached Storage,网络附属存储)技术和DAS(Direct Attached Storage,直连附加存储)技术。但伴随着电子档案急剧增长带来的海量数据,传统在线存储的问题也日益凸显。

  1.存储扩展能力受限

  SAN存储是一种基于块存储的存储系统,主要是通过机头(带有存储控制器的磁盘柜)中的存储控制器,前端对外提供服务,后端挂载磁盘阵列存储数据。SAN存储的扩展分为纵向扩展和横向扩展。纵向扩展是通过在本磁盘柜中添加磁盘来增加存储容量;横向扩展是通过储存控制器增加磁盘扩展柜来增加存储容量。理论上SAN存储可通过扩展使得一个存储控制器带数百个磁盘,但受限于存储控制器前端的对外服务能力,扩展到一定程度后无法再有效提升存储设备对外提供服务的能力。而且随着磁盘扩展柜的增加,整个存储的性能达到一定峰值后甚至出现下降的趋势。在档案信息化快速发展的当下,面对海量的电子档案数据存储,存储控制器成为整个SAN存储的性能瓶颈。

  2.数据无法实现共享或共享效率低

  在SAN存储下,SAN存储基于块存储方式将裸磁盘映射给主机,在格式化后对于主机相当于本地磁盘,对于其他的服务器来说无法再进行映射和挂载,即无法实现数据共享,且裸磁盘映射给不同操作系统的服务器,因为操作系统使用不同的文件系统(Windows服务器采用的是FAT32/NTFS,Linxu服务器采用的是EXT4),格式化后不同文件系统间数据也无法实现共享。在NAS存储下,虽然可实现数据的共享,但因为NAS存储是将所有目录、文件形成一个有层次的庞大的树形结构来管理。数据存储过程是在文件系统中创建一级一级的目录,数据读取是上层通过树状结构查找到数据对应的底层数据块。整个过程协议开销大、延迟大,共享文件读写速率低,不利于电子档案的高效共享。

  分布式存储及对象存储原理

  1.分布式存储

  随着数据量爆炸增长,非结构化数据显著增加,传统存储中的SAN和NAS已无法有效应对,新兴的分布式存储技术应运而生。分布式存储采用“标准的服务器硬件+分布式存储软件”架构实现软硬件解耦,通过灵活开放的存储架构,具有“无限”扩容、性能随容量线性增长和可管理性强等优势。

  面向非结构化数据存储的分布式存储主要包括:分布式块存储、分布式文件存储和分布式对象存储(以下简称“对象存储”)。分布式块存储由多个相对独立的存储节点组成存储资源池,在存储层通过划分逻辑卷,将物理存储资源转换为面向需求的逻辑块,为物理机或虚拟机提供持久化的块存储设备。分布式文件存储是一种将存储资源分布在不同的计算节点上,并作为一种应用安装在操作系统之上的文件系统,在存储层上形成目录、子目录、文件。对象存储是把数据作为对象,将由标识符、数据和元数据构成的对象直接以键值的方式存储到各个分布式存储节点中。

  分布式块存储和分布式文件存储与传统存储技术下的块存储和文件存储接口没有发生变化,而对象存储是一种新的网络存储架构,是一种扁平结构的分布式存储,其存储的本质是键值存储,其中键是指对象的路径,值是指对象存储的二进制文件。相较于分布式文件存储定位文件方式是“目录+文件名”,支持数据的随机读取和写入,适合大文件且更新变动较多的文件存储;对象存储定位文件方式是“全局唯一标识号”,无需进行复杂的解析和读取,更适合一次写入、多次读取,且更新变动较少的文件存储。从电子档案归档后将很少再有变动的角度考虑,对象存储更适合电子档案的在线存储。

  2.对象存储原理

  对象存储的架构基于分布式存储系统,主要由元数据服务器(Metadata Server,MDS)、对象存储设备(Objectbased Storage Device,OSD)、对象(对象存储的基本单位,Object)和客户端(Client)组成,如图1所示。

1.jpg

图1  分布式对象存储架构示意图

  元数据服务器主要负责维护存储在对象存储设备中的对象状态信息和对象存储设备的运行状态;为客户端提供元数据,主要包括文件的逻辑视图(文件与目录的组织关系、每个文件所对应的对象存储设备);控制客户端与对象存储设备之间的交互。

  对象存储设备主要负责数据存储,记录每个对象的属性信息。维护对象属性与数据的一致性和对象内部数据的存储空间分配,实现对象ID到物理磁盘块的映射。它对用户提供标准的对象存储接口(使客户端请求数据时通过对象ID、偏移进行数据读写),对内通过对象灵活的属性实现智能化的服务。

  对象是存储系统中数据存储的基本单位,一个对象实际上是文件的数据和数据属性(Metadata)的综合体。数据属性可以定义文件的RAID参数、数据分布和服务质量。对象通过与存储系统通信维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性。

  对象存储系统的客户端为用户提供标准的POSIX文件访问接口,通过文件系统对用户的文件进行解释,并在元数据服务器和对象存储设备间通信,完成所请求的操作。

  客户端与元数据服务器之间是信令交互,客户端与对象存储设备之间是文件交互,元数据服务器与对象存储设备之间是元数据交互。当客户端访问对象时,会先访问元数据服务器,元数据服务器负责反馈对象具体存储在哪些对象存储设备,假设反馈对象A存储在B、C、D三台对象存储设备,那么客户端就会直接访问这三台对象存储设备读取数据。由于多台对象存储设备同时对外传输数据,传输的速度就会加快。当对象存储设备数量越多,这种读写速度的提升就越大。

  对象存储在电子档案在线存储中的应用

  1.对象存储架构

  以杭州市档案馆为例,为应对数字化改革下产生的大量电子档案存储需求和高效便捷的电子档案共享需求,在杭州市城市档案中心数字档案存储中心建设项目中采用中科曙光的ParaStor300s部署了分布式归档存储。分布式归档存储系统整体架构如图2所示,自下而上分为4层。

2.jpg

图2  杭州市档案馆分布式归档存储系统逻辑架构图

  第一层为硬件存储层。所有存储节点基于信创国产服务器构建,在每个存储节点上配置2块480G的SATA/SSD盘和12块8T的SATA/HDD盘。12个存储节点构成整个硬件存储资源池,为存储系统提供最底层的数据存储。

  第二层为数据处理层。该层包括多个子模块,分别为磁盘管理子系统(通过本地对象管理系统实现对本地磁盘的管理;负责管理物理介质并通过抽象简化为上层调用者提供通用的访问接口)、数据管理(有效管理元数据、数据,整合存储资源,对外提供统一的存储空间)、数据保护(对数据提供跨磁盘、跨节点,不同级别、不同维度的安全冗余保护)、存储策略(数据分级存储、配额管理等)、协议管理(并行处理多种协议类型客户端的数据访问请求)以及WebUI管理。

  第三层为应用协议层。主要连接数据层和应用层,支持对外提供多种存储访问协议,S3协议、CIFS协议、NFS协议以及FTP协议,为不同的应用系统提供不同的访问协议,支撑各个应用系统。

  第四层为系统应用层。承接杭州市档案馆的各种系统应用,如杭州市域一体化数字档案平台、杭州市电子文件管理系统和杭州市电子数据归档系统。各应用系统通过网络调用对象存储的API和DSK来进行数据的存取。

  基于以上的对象存储架构,电子档案在线存储既拥有块存储的高性能读写优势,又具有文件存储的共享特性。而且可在对象存储池中创建不同的存储桶(Bucket)用于不同的应用系统,既实现了单位存储的统一,又实现了应用存储的隔离。

  2.对象存储解决的问题

  (1)业务上云、数据落地

  传统存储技术下,本地SAN存储很难将裸磁盘映射给云上的ECS服务器,造成业务只能将数据存储在ECS服务器的虚拟磁盘或OSS,导致业务上云,存储也跟着上云。而档案数据由于其特殊性最终须落到本地存储进行长久保存,只能通过各种方式将云上数据迁移落地。该过程既增加了工作量,又可能导致档案数据丢失的风险。分布式归档存储兼容S3访问接口,提供基于http的RESTful协议,通过网络即可为应用提供数据存储服务,解决了传统存储技术下本地存储无法为云上业务提供数据存储的不足。让档案应用真正实现业务在云上,档案数据直接存储在本地。避免了以往业务和数据都在政务云端后给电子档案在线存储带来的不确定风险。

  (2)安全高效的电子档案数据共享

  在档案数字化改革下,省、市、区三级的档案数据共享已成为新形势下的趋势。以政务服务电子数据归档为例,承载大部分政务服务事项的信息系统都由省或市相关部门统一建设,归档数据一般先由杭州市档案馆在线接收后,再通过政务网络分发给各个区县档案馆。以往的数据分发和共享是通过传统的FTP方式来实现,不但有传输不稳定现象,还存在一定的安全隐患。分布式归档存储基于政务网络可为各类客户端提供多种方式的数据共享,如客户端可通过直接调用对象存储的API和DSK实现电子档案数据的共享,也可通过对象的共享链接地址实现电子档案数据的便捷共享。

  (3)存储的高扩展性

  分布式归档存储基于可弹性扩充的Scale-out架构,可快速地实现因数据量增长需求页扩充存储节点。当存储需要扩容时,数据不用迁移,业务系统不用停机,只需将新增存储节点加入到分布式归档存储中的节点池,再将新增存储节点上的磁盘加入到存储池中,即可简单扩充至PB、甚至EB级别容量空间。当业务增长时,分布式归档存储也可弹性扩充存储节点以提供更快的数据存储速度。

  3.对象存储关键技术

  (1)电子档案的分级存储

  分布式归档存储支持存在着不同速率、性价比的存储介质(性能层:SSD;均衡层:10krpm SAS/HDD;容量层:7.2krpm SAS/HDD)。分级存储实现将数据分别存储在不同的存储介质中,并根据既定策略在不同层级之间智能流动。分级存储策略可根据文件属性(文件名、文件大小)和时间参数(修改时间、访问时间)来进行设定数据优先迁移至的存储介质。比如将访问时间小于120小时的数据设为性能层,超过120小时的数据设为均衡层,超过240小时的数据设为容量层。通过这种方式,可将杭州市电子文件管理系统中访问频次高的电子档案数据存储在性能层,将杭州市电子数据归档系统中访问频次低的归档数据包存储在容量层。

  (2)电子档案的完整数据保护

  分布式归档存储支持多副本、EC纠删码两种数据冗余方式。副本即数据在写入的时候,由原始数据拷贝得到冗余数据,实现简单,可靠性高,但存储空间资源利用率较低。EC纠删码是一种数据保护技术,将N份原始数据经过特定算法得到M份校验数据,并通过N+M份中的任意N份数据还原得到原始数据。把N+M份数据分布在存储系统的不同节点上,任意小于等于M个节点故障,都可以通过其他剩余的数据还原出原始数据,确保业务不受影响。分布式归档存储中采用8+2∶2的配比,即使2个存储节点出现故障,都能恢复数据,而且存储的资源利用率高达80%。

  (3)电子档案的安全访问控制

  在分布式归档存储中可根据业务需求创建不同的角色、用户组和用户,对存储系统中的存储桶和对象进行安全访问控制(ACL),从访问来源、访问目标、操作类型、过滤条件等方面提供丰富的控制策略。通过ACL策略,当收到对存储资源的请求时,对象存储会检查存储桶或对象的ACL来验证请求者是否具有对应的访问权限,从而达到用户级别的控制,加强电子档案的安全访问。

  对象存储在电子档案管理中的拓展应用

  对象存储除了提供电子档案存储最本质的应用外,还提供其他服务化的应用。既可供上层的应用直接调用,也可基于对象存储之上构建其他各类应用。

  1.提供应用层调用的服务化应用

  在电子档案利用过程中,一些高清的照片档案在提供对外阅览服务时需要进行像素降低或者缩略处理。传统模式下需要在上层的应用系统代码中增加相关代码来实现照片档案的缩略处理,这种方式既增加了应用系统代码的开发量,又因为缩略处理都在应用服务器上增加了应用服务器的性能压力。而采用对象存储照片档案,支持对背景填充图片进行高斯模糊和按比例拉伸,只需在对象的url设置相关参数(采用resize方法),即可自动化实现缩放和背景填充功能。将照片档案的缩略任务直接转移到了分布式对象存储上,上层应用直接调用对象存储中的url。

  2.构建基于对象存储的服务化应用

  传统模式下,音视频电子档案的管理和利用都是通过档案目录和原文的关联来实现,模式单一、局限性大。在对象存储的基础上,可以拓展对音视频电子档案的管理和利用。以腾讯云的对象存储为例,在电子档案的管理上可对音视频进行转码、画质优化(如SDR转HDR)、版权保护(如数字水印)。在电子档案的利用上可通过智能编辑,提取音视频标签,识别语言,丰富音视频电子档案检索利用。

  参考文献:

  [1]史金.国内综合档案馆电子档案存储情况分析[J].中国档案,2017(9).

  [2]陈志峰.云计算分布式块存储系统总体技术要求标准解读[J].信息技术与标准化,2020(11).

  [3]孙浩.一种分布式对象存储系统的设计与实现[D].北京邮电大学,2021.

  [4]胡祥科,陈静.对象存储在电子档案管理系统中的研究与应用[J].机电兵船档案,2023(1).

  作者单位:杭州市档案馆

  责任编辑:王辉