具有二级缓存机制的光盘库系统设计和实现

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:yaoyanfeiyu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:本文通过分析文件缓存服务器和虚拟光盘库的技术优势,结合光盘库系统的实际应用,给出了高访问性能的光盘库系统解决方案。
  关键词:二级缓存;缓存服务器;虚拟光盘库
  中图分类号:TP333.4
  随着科学技术的不断发展,人们所接触到的数据量越来越大,对数据的存取访问也提出了越来越高的要求,数据存储系统的存储容量、存取速度、安全性、可靠性等都是十分重要的。光盘库系统作为一种海量存储方式,因为大容量、高安全性、高可靠性的特点而被广泛应用。
  光盘库一般配置有1~6台CD-ROM驱动器,可容纳100~600片CD- ROM光盘。用户访问光盘库时,自动换盘机构首先将CD-ROM驱动器中光盘取出并放置到盘架上的指定位置,然后再从盘架中取出所需的CD-ROM光盘并送入CD-ROM驱动器中。由于自动换盘机构的换盘时间通常在秒量级[1],因此光盘库的访问速度较低,本文对此提出了特有的解决方案。
  1 二级缓存系统总体架构
  对系统的高性能需求意味着高成本的投入,而在实际使用中,并不是所有的文件都需要提供高性能访问的,根据20/80原则,只需要提供20%左右文件的高速访问即可。如果利用磁盘存取性能高于光盘库的特点,将光盘库中访问频率较高的部分数据保存在磁盘中,并对外提供存取服务,则可以在占用较小的磁盘空间的代价下,通过磁盘中的数据服务大部分的数据请求,减少对光盘驱动器和机械手的操作,缩短请求等待时间,提供较好的用户体验。
  因此系统考虑将文件和数据光盘存储在硬盘上,使用廉价的文件服务器提供高频文件的访问,使用相对成本较高的虚拟光盘库提供对中频文件的访问,使用成本最为低廉的光盘库提供对低频文件的访问并作为所有文件的永久存储。关键技术如下:
  (1)参考虚拟光盘库的用法[2],在光盘库系统中增加一个由高速磁盘或者高速磁盘阵列所组成的虚拟光盘库来提高光盘库的存取速度。虚拟光盘库将光盘片上的应用软件和资料,压缩存放在硬盘上,并产生一个虚拟光盘图标,之后不再需要此片光盘便可执行。使用时无需将光盘放入光驱中,也不用找寻光盘片,更不需要等待光驱的缓慢激活,只需加载虚拟光盘,就可以提供硬盘级的速度访问光盘数据。
  (2)参考虚拟服务器的用法[3],在光盘库系统前置多台文件服务器,提供文件缓存访问机制。文件服务器可以将最近访问的文件缓存在本地硬盘中,直接提供本地访问;对于不在本地的文件,则将请求前转到虚拟光盘库。由于文件服务器提供了分布式访问能力,可以大大提高并发访问速度。
  本文给出的系统总体架构如下:
  客户端:访问时以文件名称按照给定的HASH规则计算对应的文件缓存服务器,向该文件缓存服务器发送文件访问请求。如果客户端访问量大,则可以增加文件缓存服务器数量,调整文件HASH规则,以提供更高访问性能。
  文件缓存服务器:收到客户端的文件访问请求后,首先根据Cache模块中保存的文件Cache队列定位有无存在对应的文件,如果文件存在,则读取对应文件内容并返回响应给客户端;如果文件不存在,则说明本地无文件,则将请求转发到虚拟光盘库服务器。文件传输模块收到文件传输请求后,接收文件保存到本地,并通知Cache模块更新文件访问信息。
  虚拟光盘库服务器:收到文件访问请求后,调用镜像管理模块提供的文件访问服务。镜像管理模块读取数据库中保存的文件存储信息,如果文件在本地有镜像,则读取本地镜像中的文件,同时向对应文件服务器的文件传输模块发送请求,触发该文件传输到对应文件服务器上;如果文件在本地没有镜像,则根据该文件所在的光盘库中光盘位置信息,调用光盘库访问接口驱动机械手读取对应的数据光盘,同时触发文件的传输处理。
  2 文件缓存服务器实现
  根据系统总体架构设计,文件缓存服务器主要包括三个模块:通讯模块、Cache模块、文件传输模块,提供三个主要流程:文件访问流程、文件传输流程、文件Cache流程。三个模块的功能如下:
  通讯模块:处理各种外部消息,可以是Web请求或者自定义TCP请求,解析请求内容,进行相应的流程处理。
  Cache模块:负责管理本地缓存的文件,包括磁盘管理、目录管理、文件查找、替换、LRU队列管理、文件访问属性管理等。为了避免系统重启时丢失文件访问属性和LRU队列,在数据库中保存文件的访问属性,在重启时根据文件访问属性重新生成LRU队列。
  文件传输模块:负责处理虚拟光盘库发送过来的文件传输请求,包括文件队列管理、数据传输、差错校验等。
  文件缓存服务器处理流程如下:
  对于本地缓存表中找不到的文件,说明本地没有文件副本,需要转发请求到虚拟光盘服务器,收到虚拟光盘服务器的响应后,说明文件已经传送到本地,此时读取文件,返回响应给客户端。主要流程如下:
  (1)系统启动后,Cache模块从文件访问属性表中读取文件列表,根据文件访问时间、访问次数在内存中生成LRU队列。
  (2)通讯模块收到客户端文件访问请求后,根据请求的文件信息查找文件访问属性表,如果找到记录,则说明缓存有本地文件,更新文件访问属性表和LRU队列,返回本地文件给客户端;如果没有找到记录,则说明本地文件缺失,转发请求到虚拟光盘服务器。
  (3)通讯模块收到虚拟光盘服务器的文件传输请求后,调用Cache模块接口判断磁盘空间是否充裕,如果空间充裕,则接收文件;如果空间小于限额,则根据Cache模块的LRU队列删除最少使用的文件以腾出空间,然后接收文件。最后向虚拟光盘服务器返回响应。
  (4)通讯模块收到虚拟光盘服务器的文件访问响应,则表明文件已经传输到文件缓存服务器,更新文件访问属性后,返回本地文件给客户端。
  对于文件的写入访问,文件缓存服务器需要通过传输模块将文件发送到虚拟库服务器上进行处理。   3 虚拟光盘库服务器实现
  根据系统总体架构设计,虚拟光盘服务器主要包括四个模块:通讯模块、镜像管理模块、文件传输模块和光盘库管理模块,各个模块的功能如下:
  通讯模块:处理各种外部消息,根据请求类型解析请求内容,调用对应的处理流程请求类型可以是文件缓存服务器的文件访问请求,也可以是文件传输响应等。
  镜像管理模块:负责管理本地的光盘镜像文件,包括磁盘管理、目录管理、文件查找、替换、镜像LRU队列管理、镜像访问属性管理等。为了避免系统重启时丢失镜像访问属性和LRU队列,在数据库中保存镜像的访问属性,在重启时根据镜像访问属性重新生成镜像LRU队列。
  文件传输模块:负责处理镜像管理模块的文件传送请求,包括文件队列管理、数据传输、差错校验等。
  光盘库管理模块:负责根据镜像管理模块的请求,驱动机械手取放光盘,然后读取光盘内容,或者向光盘写入镜像。
  虚拟光盘库服务器处理流程如下:
  虚拟光盘库文件信息表中保存了文件名称、所在虚拟镜像ID、所在光盘库ID等信息,对于文件信息表中找不到的文件,说明不存在该文件。对于虚拟镜像ID有效的文件,说明可以从本地镜像中访问;对于虚拟镜像ID无效而光盘库ID有效的文件,则说明需要从光盘库中调取文件所在光盘,并保存到本地镜像中。主要流程如下:
  (1)系统启动后,镜像管理模块从镜像访问属性表中读取镜像列表,根据镜像访问时间、访问次数在内存中生成镜像LRU队列。
  (2)通讯模块收到文件访问请求后,根据请求的文件查找文件信息表,如果找不到记录,则说明系统无此文件,直接返回失败。
  (3)如果找到记录且镜像ID有效,则说明本地镜像中有访问的文件。
  (4)如果找到记录但镜像ID无效,则说明本地镜像中没有访问的文件,此时根据文件所在的光盘库ID读取光盘内容,并替换本地镜像。
  (5)将读取到的文件传送到文件缓存服务器。
  (6)收到文件缓存服务器文件传送成功响应后,通讯模块向文件缓存服务器返回成功响应。
  对于文件的写入访问,流程相对复杂,镜像管理模块需要判断当前归档的文件总量适合刻录光盘,则生成虚拟光盘镜像,并调用光盘库模块进行镜像刻录。
  4 系统应用
  两级Cache的性能改进结构提高了整个系统的访问性能,对于高频访问的文件,可以通过多台廉价的PC服务器提供分布式访问来提高访问性能,对于一般访问的文件由于缓存在磁盘阵列上,也能提供优于光盘库的访问性能。
  本系统在实际测试和商用实践中都取得了良好的效果,为某用户开发的虚拟库档案管理系统满足了日常访问和归档的需求,并且可以根据访问量进行平滑扩展。
  考虑到廉价PC服务器磁盘有一定的故障率可能引起文件损坏,下一步考虑采用增加本地校验和两级校验的方式,提高数据文件的正确性。
  参考文献:
  [1]许静.多级存储技术及光盘库在实际工程中的应用探讨[J].智能建筑电气技术,2011,03.
  [2]易法令,万继光.虚拟光盘库数据流服务器的设计与实现[J].计算机技术与发展,2006,07.
  [3]胡秀敏,郭成城,杜晓.基于文件类型的光盘库缓存系统设计与实现[J].计算机工程与应用,2005,15.
  作者简介:卢云许(1975-),男,硕士,系统工程师,主要研究方向:大容量数据存储管理。
  作者单位:中兴通讯股份有限公司,南京 210012
其他文献
基于200,k W级聚焦型槽式太阳能集热驱动的有机朗肯循环发电系统示范工程,通过Simulink软件建立了系统的动态模型,采用天津地区的气象数据作为输入,分别分析了典型日系统常规
目的探讨分析使用不同程度的根管填治疗对于牙体牙髓病患者治疗中的临床效果。方法选取2015年5月至2016年5月,我院收治的牙体牙髓病患者64例,随机分为观察组与对照组,各32例,对照
针对落物撞击导致的海底管道塑性凹陷损伤,采用天津大学深水压力舱进行外静水压力作用下的全尺寸管道压溃实验.采用ABAQUS有限元软件模拟实际管道压溃实验过程,与实验结果进
2013年7月15日,工信部正式批复同意沈阳、柳州和桂林、西安-咸阳、郑州、合肥、昆明、兰州、长株潭城市群8个国家级两化融合试验区通过验收。据不完全统计,3年来,上述第二批
针对高等职业教育人才培养目标的定位及职业课程改革与发展现状,文章以“VB+SQL应用系统开发”课程建设为例,探讨工作过程系统化课程教学模式在高等职业教育中的应用。
王船山作为明清之际最重要的启蒙思想家之一,其法治思想充分体现了近代的伦理精神:在立法上,提出“刑尤详于责,礼必逮于下”的主张,彰显了重在防范政治权威侵犯人民权利的立法精神
发展非资源型产业是资源型省区转变经济发展方式、调整优化产业结构的重要抓手,也是提升经济抗风险能力的必然要求。资源型省区大力发展非资源型产业,将会为金融机构业务发展
为探究高Cr铁素体耐热钢高温热循环过程的组织演化规律,通过采用光镜与透射电镜显微组织分析方法,对高Cr铁素体耐热钢单次和二次高温热循环加热后基体组织和沉淀相的演变规律
摘要:本文主要根据TD-S在四网中的定位,以四网协同的原则,从TD-S的优化、规划两方面进行分析,提出TD-S的分流策略。  关键词:四网协同;TD-S分流;功率提升;系统间切换及重选;极限参数;非对称邻区;规划策略;价值区域选择  中图分类号:TN929.532 文献标识码:A文章编号:1007-9599 (2013) 05-0000-02  1四网协同优化中TD-S的角色  中国移动从2008
改革开放是当代共产党人人生精神产生与形成的历史背景。信仰坚定、对党忠诚,报效祖国、服务人民,开拓进取、勇攀高峰,自强不息、百折不挠,淡泊名利、清正廉洁是当代共产党人