光盘库、用于光盘库的数据异步并行读写方法及控制装置制造方法

文档序号:6765245阅读:215来源:国知局
光盘库、用于光盘库的数据异步并行读写方法及控制装置制造方法
【专利摘要】本发明提供了一种用于光盘库的数据异步并行读写方法,该方法包括:A.选择光盘库中的光驱组,所述光驱组至少包括两个光驱;B.识别出所述光驱组中准备就绪的可用光驱,并驱动该可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件;C.重复步骤B直至所述光驱组中包括的所有光驱都识别为所述可用光驱。相应地,本发明还提供了一种用于光盘库的数据异步并行读写的控制装置以及具有该控制装置的光盘库。实施本发明可以在提高光盘库整体读写速度的同时,将光盘库的响应时间缩短为一台光驱的准备时间。
【专利说明】光盘库、用于光盘库的数据异步并行读写方法及控制装置
【技术领域】
[0001]本发明涉及光盘存储【技术领域】,尤其涉及一种光盘库、用于光盘库的数据异步并行读写方法及控制装置。
【背景技术】
[0002]据互联网数据中心(IDC, Internet Data Center)统计,2010年全球数据量不到1ZB,到2020年将达到35ZB以上。其中不经常使用的归档性数据占到总数据量的80%左右,即28ZB左右。如何对这些数据进行低成本、安全以及绿色地长期保存成为了数据存储业界的难题之一。在众多数据存储介质中,光盘介质由于是通过物理方法实现数据的存储,具有不会受到电磁辐射的干扰以及对温度和湿度不敏感的优势,因此被公认是归档数据保存的最终介质形式。
[0003]近年来,越来越多的利用光盘作为存储介质的数据存储设备问世,其中,光盘库作为一种最常见的数据存储设备被人们逐渐应用于大规模归档领域。并且,随着单张光盘存储容量的大大增加,相较于例如硬盘等其他存储设备,光盘库的价格性能等优势也越发明显。但是,光盘库也具有一定的不足之处:
[0004]第一、现有的光盘库在对数据文件进行读写的时候,均是采用将一个完整数据文件保存到一张光盘中或者从一张光盘中读取出一个完整数据文件的方式,而光盘的读写速度较慢(4.5MB/s?54MB/S),仅为普通硬盘读写速度的十分之一,因此,现有的光盘库无法实现数据文件的高速读写。特别地,当光盘库对较大的数据文件进行读写时,其不足之处则更为明显。
[0005]第二、现有的光盘库在对数据文件进行读写的时候,需要首先驱动所有光驱进入读写准备状态。其中,驱动所有光驱进入读写准备状态的过程如下:首先驱动机械臂从光盘匣中取出一张光盘并将该光盘插入相应的光驱内,然后继续驱动机械臂从光盘匣中取出另一张光盘并将该光盘插入相应的光驱内,重复上述步骤直至在所有光驱内插入光盘。利用机械臂将光盘插入光驱的操作属于机械操作,通常情况下,将一张光盘插入光驱的过程至少需要5秒的时间。因此,在光驱数目较多的情况下,需要花费较长的时间去等待所有光驱进入读写准备状态,从而影响数据文件的读写效率。如果恰好光驱内包括前一次操作后未取出的光盘,则还需要驱动机械臂将该光盘取出并放回光盘匣后,才能将本次待操作的光盘插入光驱,如此一来,等待所有光驱进入读写准备状态的时间将会更长。举例说明,当光驱数目多于10台时,需要等待I分钟左右所有的光驱才能进入读写准备状态,如果再加上从光驱中取出前一次操作的光盘,则需要等待近2分钟才能开始进行数据文件的读写。

【发明内容】

[0006]为了克服现有技术中的上述缺陷,本发明提供了一种用于光盘库的数据异步并行读写方法,该方法包括:
[0007]A.选择光盘库中的光驱组,所述光驱组至少包括两个光驱;[0008]B.识别出所述光驱组中准备就绪的可用光驱,并驱动该可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件;
[0009]C.重复步骤B直至所述光驱组中包括的所有光驱都识别为所述可用光驱。
[0010]根据本发明的一个方面,该方法中所述光盘库中包括至少两个所述光驱组;所述光盘库中任一所述光驱组包括的光驱集合与该光盘库中任一其他光驱组所包括的光驱集合的交集为空。
[0011]根据本发明的另一个方面,该方法中选择光盘库中的光驱组包括:根据预定参数选择所述光驱组。
[0012]根据本发明的又一个方面,该方法中所述预定参数包括所述待存储数据文件的个数和/或整体写入速度。
[0013]根据本发明的又一个方面,该方法中识别出所述光驱组中准备就绪的可用光驱包括:接收所述光驱组中一个光驱发送的准备就绪信号,并根据所述准备就绪信号将所述光驱识别为所述可用光驱。
[0014]根据本发明的又一个方面,该方法中机械臂向所述光驱中插入光盘以及等待所述光盘进入读写准备状态后所述光驱触发所述准备就绪信号。
[0015]根据本发明的又一个方面,该方法中所述待存储数据块的大小等于预设值。
[0016]本发明还提供了一种用于光盘库的数据异步并行读写的控制装置,该控制装置包括:
[0017]选择模块,用于选择光盘库中的光驱组,所述光驱组至少包括两个光驱;
[0018]识别模块,用于识别出所述光驱组中准备就绪的可用光驱,并触发驱动模块运行;
[0019]所述驱动模块,用于驱动所述可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件;
[0020]所述识别模块持续工作直至所述光驱组中包括的所有光驱都识别为所述可用光驱。
[0021]根据本发明的一个方面,该控制装置中所述光盘库中包括至少两个所述光驱组;所述光盘库中任一所述光驱组包括的光驱集合与该光盘库中任一其他光驱组所包括的光驱集合的交集为空。
[0022]根据本发明的另一个方面,该控制装置中所述选择模块根据预定参数选择所述光驱组。
[0023]根据本发明的又一个方面,该控制装置中所述预定参数包括所述待存储数据文件的个数和/或整体写入速度。
[0024]根据本发明的又一个方面,该控制装置中所述识别模块包括:接收单元,用于接收所述光驱组中一个光驱发送的准备就绪信号;识别单元,用于根据所述准备就绪信号将所述光驱识别为所述可用光驱。
[0025]根据本发明的又一个方面,该控制装置中机械臂向所述光驱中插入光盘以及等待所述光盘进入读写准备状态后所述光驱触发所述准备就绪信号。[0026]根据本发明的又一个方面,该控制装置还分割单元,用于对所述待存储数据文件进行分割以形成所述待存储数据块,其中,所述待存储数据块的大小等于预设值。
[0027]本发明还提供了一种光盘库,包括读写装置,该读写装置包括光驱、光盘、光盘匣以及机械臂,所述光盘库还包括上述控制装置,其中:
[0028]所述控制装置驱动所述读写装置中的光驱向其内置的光盘内进行数据异步并行读写。
[0029]根据本发明的一个方面,该光盘库中所述控制装置通过数据传输接口与所述读写装置进行数据传输。
[0030]根据本发明的另一个方面,该光盘库中所述数据传输接口包括USB接口、SATA接口、SCSI 接口、SAS 接口或 ISCASI 接口。
[0031]根据本发明的又一个方面,该光盘库中所述控制装置与所述读写装置集成在一个机柜内。
[0032]本发明所提供的光盘库、用于该光盘库的数据异步并行读写方法及控制装置一方面通过并行的方式向多个光驱的内置光盘中写入待存储数据块或从多个光驱的内置光盘中读取待组装数据块,如此一来,可以极大地提高光盘库的整体读写速度,特别是在光驱数目较多的情况下,可以使光盘库的整体读写速度达到硬盘甚至高于硬盘读写速度的效果;另一方面,由于采用了异步的方式将光盘库的响应时间缩短为一台光驱的准备时间,即一旦检测到光盘库中任一光驱进入读写准备状态,则开始通过该光驱进行数据文件的读写操作,如此一来,进一步提高了数据文件的读写效率。
【专利附图】

【附图说明】
[0033]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0034]图1是根据本发明的用于光盘库的数据异步并行读写的方法流程图;
[0035]图2是根据本发明的用于光盘库的数据异步并行读写的控制装置结构示意图;
[0036]图3是根据本发明的可实现数据异步并行读写的光盘库的一个具体实施例结构示意图;
[0037]图4是根据本发明的可实现数据异步并行读写的光盘库的另一个具体实施例结构示意图。
[0038]附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0039]为了更好地理解和阐释本发明,下面将结合附图对本发明作进一步的详细描述。
[0040]根据本发明的一个方面,提供了一种用于光盘库的数据异步并行读写方法。请参考图1,图1是根据本发明的用于光盘库的数据异步并行读写的方法流程图。如图所示,该方法包括以下步骤:
[0041]在步骤SlOl中,选择光盘库中的光驱组,所述光驱组至少包括两个光驱;
[0042]在步骤S102中,识别出所述光驱组中准备就绪的可用光驱,并驱动该可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件;[0043]在步骤S103中,重复步骤S102直至所述光驱组中包括的所有光驱都识别为所述可用光驱。
[0044]具体地,在步骤SlOl中,从光盘库中选择光驱组进行数据文件的读写。下文中,对于待写入的数据文件称为待存储数据文件,其中,一个待存储数据文件将被写入一个光驱组所包括的光盘内;对于待读取的文件称为目标数据文件,其中,一个目标数据文件将从一个光驱组所包括的光盘内读取出。
[0045]在本实施例中,光盘库中包括至少一个光驱组,而每一光驱组包括至少两个光驱。若光盘库中仅包括一个光驱组,则该光驱组包括的光驱数目等于光盘库中光驱的总数;若光盘库中包括两个或两个以上光驱组,则所有光驱组包括的光驱数目的总和等于光盘库中光驱的总数,也就是说,光盘库中任一光驱组包括的光驱集合与该光盘库中任一其他光驱组所包括的光驱集合的交集为空。以光盘库包括20个光驱(该20个光驱分别以光驱i表示,其中?=1,2,...20)为例说明,若光驱组的数目等于1,则该光驱组中包括的光驱数目等于20 (即包括光驱I至光驱20);若光驱组的数目等于3,则该3个光驱组中包括的光驱数目可以分别等于10个(光驱I至光驱10)、6个(光驱11至光驱16)以及4个(光驱17至光驱20)。上述仅为举例,在实际应用中,光盘库中光驱的数目由数据的存储容量决定,因此光盘库中包括的光驱数目可以是10个、20个、50个甚至更多,而光驱组的数目也不仅仅限于举例中的I个或3个,可以是2个也可以是3个以上。需要说明的是,在本实施例中,光盘库中的光驱组是根据对所述光盘库中的所有光驱进行预先逻辑分组设置而形成的。
[0046]在对待存储数据文件进行写入操作时,需要根据预定参数对光盘库中的光驱组进行选择。在一个具体实施例中,所述预定参数是待存储数据文件的个数,即,从光盘库中选择与待存储数据文件个数相等的光驱组进行写入。举例说明,光盘库包括5个光驱组,如果待存储数据文件的个数等于3,则需要从该5个光驱组中任意选择3个光驱组作为待写入光驱组。在另一个具体实施例中,所述预定参数还可以是待存储数据文件的整体写入速度,即,从光盘库中选择可以满足整体写入速度的光驱组进行写入。举例说明,光盘库包括5个光驱组,该5个光驱组包括的光驱数目分别是10个、8个、6个、5个以及3个,待存储数据文件的个数等于3,单张光盘的写入速度等于4.5MB/s,如果期望每个待存储数据文件的整体写入速度都高于或等于25MB/S,则需要选择光驱数目分别为10个、8个以及6个的光驱组,如果期望每个待存储数据文件的整体写入速度都高于或等于20MB/S,则可以从光驱数目分别为10个、8个、6个以及5个的光驱组内任意选择3个光驱组。
[0047]在对目标数据文件进行读取操作时,由于目标数据文件已经以待组装数据块的形式存储在光盘内,因此根据该光盘的数目相应从光盘库中选择光驱组作为待读取光驱组即可。
[0048]在步骤S102中,对于写入待存储数据文件的情况,在确定待写入光驱组后,需要驱动机械臂从光盘匣中正确地取出用于待存储数据文件写入的光盘并将该光盘插入到待写入光驱组中包括的光驱内,重复上述步骤直至在待写入光驱组中包括的所有光驱内插入光盘。当机械臂向待写入光驱组中包括的光驱内插入光盘后,等待光盘进入写入准备状态,一旦检测到任何一张光盘进入写入准备状态,该光盘所在光驱触发准备就绪信号,表明该光驱准备就绪。接收到光驱组中一个光驱发送的准备就绪信号后,根据该准备就绪信号将该光驱识别为可用光驱,即可以开始对该光驱中的光盘进行写入操作。识别出可用光驱后,驱动该可用光驱向其内置的光盘内写入相应的待存储数据块。其中,所述待存储数据块通过分割待存储数据文件而形成。在一个具体实施例中,所述待存储数据块的大小等于预设值,例如4K、512K或IM等。所述预设值可以预先通过手动进行设置或者根据实际情况进行自适应调整。在根据预设值对待存储数据文件进行切割时,如果存在小于预设值的待存储数据块,则通过向该待存储数据块写入补充数据使其大小达到预设值。待存储数据块形成后,若待存储数据块的数目多于用于保存该待存储数据块的光驱组中包括的光驱数目时,可以采用轮询的方式将待存储数据块写入光驱内置的光盘中。举例说明,一个待存储数据文件的大小等于20Μ,根据预设值将其分割成为20个待存储数据块(以待存储数据块I至待存储数据块20表示),即每个待存储数据块的大小等于1Μ,若用于写入该待存储数据文件的光驱组包括10个光驱(以光驱I至光驱10表示),那么驱动光驱组中包括的光驱进行写入时将待存储数据块1、11写入光驱I的内置光盘内,将待存储数据块2、12写入光驱2的内置光盘内,待存储数据块3、13写入光驱3的内置光盘内,以此类推。
[0049]同样地,对于读取目标数据文件的情况,在确定待读取光驱组后,需要驱动机械臂从光盘匣中正确地取出保存有待组装数据块的光盘并将该光盘插入到相应的待读取光驱组中包括的光驱内,重复上述步骤直至在待读取光驱组中包括的所有光驱内插入光盘。当机械臂向待读取光驱组中包括的光驱内插入光盘后,等待光盘进入读取准备状态,一旦检测到任何一张光盘进入读取准备状态,该光盘所在光驱触发准备就绪信号,表明该光驱准备就绪。接收到光驱组中一个光驱发送的准备就绪信号后,根据该准备就绪信号将该光驱识别为可用光驱,即可以开始对该光驱中的光盘进行读取操作。识别出可用光驱后,驱动该可用光驱从其内置的光盘内读取待组装数据块,该待组装数据块用于后续组合成目标数据文件。
[0050]在步骤S103中,重复上述步骤S102直至光驱组中包括的所有光驱都识别为所述可用光驱。此时,所有光驱都已经进入读写状态。当将所有待存储数据块通过待写入光驱组写入到光盘内、或是将所有待组装数据块通过待读取光驱组从光盘内读取出之后,数据文件的写入或读取完成。
[0051]需要说明的是,当光驱组中的部分光驱为可用光驱时,该部分光驱进行并行读写操作,当光驱组中的所有光驱均为可用光驱时,该所有光驱进行并行读写操作,此时数据文件的整体读写速度达到最高。仍以单张光盘的写入速度等于4.5MB/s为例说明,如果并行工作的光驱数目等于50时,整体读写速度最高将达到225MB/S。此外,如果定义光盘库响应时间的长度等于从选择光盘库中的光驱组到开始通过该光驱组中包括的光驱进行读写操作的这段时间的长度,那么在光盘库采用上述光驱异步工作方式之后,光盘库的响应时间仅仅等于一台光驱的读写准备时间。
[0052]需要说明的是,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0053]根据本发明的另一个方面,还提供了一种用于光盘库的数据异步并行读写的控制装置。请参考图2,图2是根据本发明的用于光盘库的数据异步并行读写的控制装置结构示意图。如图所示,该控制装置20包括:
[0054]选择模块201,用于选择光盘库中的光驱组,所述光驱组至少包括两个光驱;
[0055]识别模块202,用于识别出所述光驱组中准备就绪的可用光驱,并触发驱动模块203运行;
[0056]所述驱动模块203,用于驱动所述可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件;
[0057]所述识别模块202持续工作直至所述光驱组中包括的所有光驱都识别为所述可用光驱。
[0058]下面,将对上模块的具体工作过程进行详细说明。
[0059]具体地,选择模块201从光盘库中选择光驱组进行数据文件的读写。光盘库中包括至少一个光驱组,而每一光驱组至少包括两个光驱。若光盘库中仅包括一个光驱组,则该光驱组包括的光驱数目等于光盘库中光驱的总数;若光盘库中包括两个或两个以上光驱组,则所有光驱组包括的光驱数目的总和等于光盘库中光驱的总数,也就是说,光盘库中任一光驱组包括的光驱集合与该光盘库中任一其他光驱组所包括的光驱集合的交集为空。以光盘库包括20个光驱(该20个光驱分别以光驱i表示,其中i=l,2,".20)为例说明,若光驱组的数目等于1,则该光驱组中包括的光驱数目等于20 (即包括光驱I至光驱20);若光驱组的数目等于3,则该3个光驱组中包括的光驱数目可以分别等于10个(光驱I至光驱10)、6个(光驱11至光驱16)以及4个(光驱17至光驱20)。上述仅为举例,在实际应用中,光盘库中光驱的数目由数据的存储容量决定,因此光盘库中包括的光驱数目可以是10个、20个、50个甚至更多,而光驱组的数目也不仅仅限于举例中的I个或3个,可以是2个也可以是3个以上。需要说明的是,在本实施例中,光盘库中的光驱组是用户预先设定而形成的,一旦设定完成,在后续数据文件的读写中将基于该预先的设定对光驱组进行选择。
[0060]在对待存储数据文件进行写入操作时,选择模块201需要根据预定参数对光盘库中的光驱组进行选择。在一个具体实施例中,所述预定参数是待存储数据文件的个数,即,选择模块201从光盘库中选择与待存储数据文件个数相等的光驱组进行写入。举例说明,光盘库包括5个光驱组,如果待存储数据文件的个数等于3,选择模块201则需要从该5个光驱组中任意选择3个光驱组作为待写入光驱组。在另一个具体实施例中,所述预定参数还可以是待存储数据文件的整体写入速度,即,选择模块201从光盘库中选择可以满足整体写入速度的光驱组进行写入。举例说明,光盘库包括5个光驱组,该5个光驱组包括的光驱数目分别是10个、8个、6个、5个以及3个,待存储数据文件的个数等于3,单张光盘的写入速度等于4.5MB/s,如果期望每个待存储数据文件的整体写入速度都高于或等于25ΜΒ/s,选择模块201则需要选择光驱数目分别为10个、8个以及6个的光驱组,如果期望每个待存储数据文件的整体写入速度都高于或等于20MB/S,选择模块201则可以从光驱数目分别为10个、8个、6个以及5个的光驱组内任意选择3个光驱组。
[0061]在对目标数据文件进行读取操作时,由于目标数据文件已经以待组装数据块的形式存储在光盘内,因此选择模块201根据该光盘的数目相应从光盘库中选择光驱组作为待读取光驱组即可。
[0062]选择模块201完成光驱组的选择后,发送驱动信号驱动光驱组中包括的光驱进行读写准备。具体地,机械臂在驱动信号的作用下向待写入光驱组或待读取光驱组中包括的光驱内插入光盘,等待光盘进入写入或读取准备状态,一旦检测到任何一张光盘进入写入或读取准备状态,该光盘所在光驱触发准备就绪信号。识别模块202识别出所述光驱组中准备就绪的可用光驱后,触发驱动模块203运行。优选地,所述识别模块202进一步包括接收单元2021以及识别单元2022,其中,接收单元2021用于接收所述光驱组中一个光驱发送的准备就绪信号,识别单元2022用于根据所述准备就绪信号将所述光驱识别为所述可用光驱。
[0063]对于写入待存储数据文件的情况,当识别模块202触发驱动模块203后,驱动模块203驱动可用光驱向其内置的光盘内写入相应的待存储数据块,其中所述待存储数据块通过分割待存储数据文件而形成。优选地,本发明所提供的控制装置进一步还包括分割模块204,用于对所述待存储数据文件进行分割以形成所述待存储数据块,其中,所述待存储数据块的大小等于预设值。在一个具体实施例中,所述待存储数据块的大小等于预设值,例如4K、512K或IM等。所述预设值可以预先通过分割模块204手动进行设置或者分割模块204根据实际情况进行自适应调整。在分割模块204根据预设值对待存储数据文件进行切割时,如果存在小于预设值的待存储数据块,则通过向该待存储数据块写入补充数据使其大小达到预设值。待存储数据块形成后,若待存储数据块的数目多于用于保存该待存储数据块的光驱组中包括的光驱数目时,驱动模块203可以采用轮询的方式将待存储数据块写入光驱内置的光盘中。举例说明,一个待存储数据文件的大小等于20Μ,分割模块204根据预设值将其分割成为20个待存储数据块(以待存储数据块I至待存储数据块20表示),即每个待存储数据块的大小等于1Μ,若用于写入该待存储数据文件的光驱组包括10个光驱(以光驱I至光驱10表示),那么驱动光驱组中包括的光驱进行写入时将待存储数据块1、11写入光驱I的内置光盘内,将待存储数据块2、12写入光驱2的内置光盘内,待存储数据块
3、13写入光驱3的内置光盘内,以此类推。对于读取目标数据文件的情况,当识别模块202触发驱动模块203后,驱动模块203驱动可用光驱从其内置的光盘内读取待组装数据块,其中,所述待组装数据块用于后续组合成目标数据文件。
[0064]识别模块202重复上述操作直至所述光驱组中包括的所有光驱都识别为所述可用光驱。此时,所有光驱都已经进入读写状态。当将所有待存储数据块通过待写入光驱组写入到光盘内、或是将所有待组装数据块通过待读取光驱组从光盘内读取出之后,数据文件的写入或读取完成。
[0065]本部分出现的术语和名词与前文中相同的术语或名词具有一致的含义,例如所述“待存储数据文件”、“目标数据文件”、“待写入光驱组”、“待读取光驱组”、“可用光驱”等,上述术语或名词及其涉及的工作原理均可参考前文中相关部分的描述和解释,为了简便起见在此不再赘述。
[0066]控制装置20及其包括的各部分优选地实施为一种计算机程序产品,上述计算机程序产品的实施例可以通过使用用于计算机可读信息的任何记录介质来实现,所述记录介质包括磁介质、光介质或其他适合的介质。控制装置20可以实施为单机结构,控制装置20及其包括的各部分运行在一台计算机设备中。
[0067]根据本发明的又一个方面,还提供了一种光盘库。请参考图3,图3是根据本发明一个具体实施例的可实现数据异步并行读写的光盘库结构示意图。如图所示,所述光盘库包括读写装置30,该读写装置30包括光驱301、光盘302、光盘匣303以及机械臂304,其中,光盘匣303用于放置光盘303,机械臂304用于从光盘匣303中取出光盘302后将该光盘302插入光驱301或从光驱301中取出光盘302后将该光盘302放入光盘匣303,所述光驱301用于从其内置的光盘302中读取或写入数据文件。所述光盘库进一步还包括前文所述的控制装置20,其中,所述控制装置20用于驱动所述读写装置30中的光驱向其内置的光盘302内进行数据异步并行读写。由于前文中对控制装置20驱动所述读写装置30中的光驱向其内置的光盘302内进行数据异步并行读写的过程进行了详细地描述,因此为了简明起见,在此不再进行重复描述。
[0068]在一个具体实施例中,若控制装置20实施为一种计算机程序产品,且该计算机程序产品运行在一台计算机设备中,在这种情况下,如图3所示,所述读写装置30集成在一个机柜40内,而运行该控制装置20的计算机设备(未示出)通过数据传输接口与所述读写装置30进行数据传输。其中,所述数据传输接口包括但不限于USB接口、SATA接口、SCSI接口、SAS 接口或 ISCASI 接口。
[0069]在另一个具体实施例中,如图4所示,所述控制装置20也可以与所述读写装置30集成在一个机柜内。
[0070]本发明提供的用于确定用于光盘库的数据异步并行读写方法可以使用可编程逻辑器件来实现,也可以实施为计算机程序软件,例如根据本发明的实施例可以是一种计算机程序产品,运行该程序产品使计算机执行用于所示范的方法。所述计算机程序产品包括计算机可读存储介质,该介质上包含计算机程序逻辑或代码部分,用于实现上述方法的各个步骤。所述计算机可读存储介质可以是被安装在计算机中的内置介质或者可从计算机主体拆卸的可移动介质(例如热拔插技术存储设备)。所述内置介质包括但不限于可重写的非易失性存储器,例如RAM、ROM、快闪存储器和硬盘。所述可移动介质包括但不限于:光存储媒体(例如CD-ROM和DVD)、磁光存储媒体(例如MO)、磁存储媒体(例如盒带或移动硬盘)、具有内置的可重写的非易失性存储器的媒体(例如存储卡)和具有内置ROM的媒体(例如ROM盒)。
[0071]本领域技术人员应当理解,任何具有适当编程装置的计算机系统都将能够执行包含在程序产品中的本发明的方法的诸步骤。尽管本说明书中描述的多数【具体实施方式】都侧重于软件程序,但是作为固件和硬件实现本发明提供的方法的替代实施例同样在本发明要求保护的范围之内。
[0072]对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此夕卜,显然“包括”一词不排除其他部件、单元或步骤,单数不排除复数。装置权利要求中陈述的多个部件、单元或装置也可以由一个部件、单元或装置通过软件或者硬件来实现。
[0073]本发明所提供的光盘库、用于该光盘库的数据异步并行读写方法及控制装置一方面通过并行的方式向多个光驱的内置光盘中写入待存储数据块或从多个光驱的内置光盘中读取待组装数据块,如此一来,可以极大地提高光盘库的整体读写速度,特别是在光驱数目较多的情况下,可以使光盘库的整体读写速度达到硬盘甚至高于硬盘读写速度的效果;另一方面,由于采用了异步的方式将光盘库的响应时间缩短为一台光驱的准备时间,即一旦检测到光盘库中任一光驱进入读写准备状态,则开始通过该光驱进行数据文件的读写操作,如此一来,进一步提高了数据文件的读写效率。
[0074] 以上所揭露的仅为本发明的一些较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
【权利要求】
1.一种用于光盘库的数据异步并行读写方法,该方法包括: A.选择光盘库中的光驱组,所述光驱组至少包括两个光驱; B.识别出所述光驱组中准备就绪的可用光驱,并驱动该可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件; C.重复步骤B直至所述光驱组中包括的所有光驱都识别为所述可用光驱。
2.根据权利要求1所述的方法,其中: 所述光盘库中包括至少两个所述光驱组; 所述光盘库中任一所述光驱组包括的光驱集合与该光盘库中任一其他光驱组所包括的光驱集合的交集为空。
3.根据权利要求1所述的方法,其中,选择光盘库中的光驱组包括: 根据预定参数选择所述光驱组。
4.根据权利要求3所述的方法,其中,所述预定参数包括所述待存储数据文件的个数和/或整体写入速度。
5.根据权利要求1所述的方法,其中,识别出所述光驱组中准备就绪的可用光驱包括: 接收所述光驱组中一个光驱发送的准备就绪信号,并根据所述准备就绪信号将所述光`驱识别为所述可用光驱。
6.根据权利要求5所述的方法,其中: 机械臂向所述光驱中插入光盘以及等待所述光盘进入读写准备状态后所述光驱触发所述准备就绪信号。
7.根据权利要求1所述的方法,其中,所述待存储数据块的大小等于预设值。
8.一种用于光盘库的数据异步并行读写的控制装置,该控制装置包括: 选择模块,用于选择光盘库中的光驱组,所述光驱组至少包括两个光驱; 识别模块,用于识别出所述光驱组中准备就绪的可用光驱,并触发驱动模块运行;所述驱动模块,用于驱动所述可用光驱向其内置的光盘内写入待存储数据块或从所述光盘内读取待组装数据块,其中所述待存储数据块通过分割待存储数据文件而形成,所述待组装数据块用于组合成目标数据文件; 所述识别模块持续工作直至所述光驱组中包括的所有光驱都识别为所述可用光驱。
9.根据权利要求8所述的控制装置,其中: 所述光盘库中包括至少两个所述光驱组; 所述光盘库中任一所述光驱组包括的光驱集合与该光盘库中任一其他光驱组所包括的光驱集合的交集为空。
10.根据权利要求9所述的控制装置,其中,所述选择模块根据预定参数选择所述光驱组。
11.根据权利要求10所述的控制装置,其中,所述预定参数包括所述待存储数据文件的个数和/或整体写入速度。
12.根据权利要求8所述的控制装置,其中,所述识别模块包括: 接收单元,用于接收所述光驱组中一个光驱发送的准备就绪信号; 识别单元,用于根据所述准备就绪信号将所述光驱识别为所述可用光驱。
13.根据权利要求12所述的控制装置,其中: 机械臂向所述光驱中插入光盘以及等待所述光盘进入读写准备状态后所述光驱触发所述准备就绪信号。
14.根据权利要求8所述的控制装置,该控制装置还包括; 分割单元,用于对所述待存储数据文件进行分割以形成所述待存储数据块,其中,所述待存储数据块的大小等于预设值。
15.一种光盘库,包括读写装置,该读写装置包括光驱、光盘、光盘匣以及机械臂,其特征在于,所述光盘库还包括如权利要求8至14所述的控制装置,其中: 所述控制装置驱动所述读写装置中的光驱向其内置的光盘内进行数据异步并行读写。
16.根据权利要求15所述的光盘库,其中,所述控制装置通过数据传输接口与所述读写装置进行数据传输。
17.根据权利要求16所述的光盘库,其中,所述数据传输接口包括USB接口、SATA接口、SCSI 接口、SAS 接口或 ISCASI 接口。
18.根据权利要求15所述的光盘库,其中,所述控制装置与所述读写装置集成在一个 机柜内。
【文档编号】G11B19/20GK103514916SQ201310438826
【公开日】2014年1月15日 申请日期:2013年9月24日 优先权日:2013年9月24日
【发明者】邓吉, 刘恒昌, 李珅, 郑维, 谢之恒 申请人:中经云数据存储科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1