本技术涉及数据存储,特别涉及一种磁带库数据处理方法及系统、电子设备、存储介质。
背景技术:
1、磁带库通过多盘磁带进行数据存储,其具有存储容量大,并且成本低的特点,因此当前广泛应用于数据备份、归档以及冷数据等场景。
2、当前通过磁带库进行数据存储的具体方式如图1所示,各项业务在需要存储数据时,都将数据写入磁带库的连接服务器上。连接服务器控制机械臂取出磁带并将磁带插入驱动器中,然后连接服务器通过驱动器将当前写入连接服务器的各项业务数据写入到磁带中。当一个磁带存储满后,再更换另一个磁带,直至存储完连接服务器中的各项业务的数据。
3、但是由于当前在将数据写入磁带库中时,其并没有按照业务维度进行存储,而是随机的写入到磁带库中,只要将所有业务的数据写入磁带中即可,所以会导致一项业务的数据会存储在多个不同的磁带中。导致后续在需要请求一项业务的数据时,需要通过机械臂去取出多个不同位置的磁带。而机械臂的移动较慢,进而导致请求数据的效率较低。
技术实现思路
1、基于上述现有技术的不足,本技术提供了一种磁带库数据处理方法及系统、电子设备、存储介质,以解决现有技术导致请求数据的效率低的问题。
2、为了实现上述目的,本技术提供了以下技术方案:
3、本技术第一方面提供了一种磁带库数据处理方法,包括:
4、接收一项当前业务的数据归档请求;其中,所述数据归档请求中包括所述当前业务的当前待归档数据的请求参数;所述请求参数至少包括数据大小以及数据地址;
5、获取当前使用磁带的剩余存储空间;其中,当前使用磁带指代在处理上一个请求时,最后进行数据写入的磁带;
6、对比所述当前待归档数据的数据大小是否大于所述当前使用磁带的剩余存储空间;
7、若对比出所述当前待归档数据的数据大小不大于所述当前使用磁带的剩余存储空间,则控制机械臂取出所述当前使用磁带;
8、根据所述当前待归档数据的数据地址获取所述当前待归档数据,并写入取出的所述当前使用磁带中;
9、若对比出所述当前待归档数据的数据大小大于所述当前使用磁带的剩余存储空间,则基于所述当前待归档数据的数据大小、所述当前使用磁带的剩余存储空间以及单个磁带的总存储空间,计算得到需求磁带数量;
10、控制机械臂取出所述当前使用磁带以及所述当前使用磁带后连续的数量为所述需求磁带数量的未使用磁带;
11、根据所述当前待归档数据的数据地址获取所述当前待归档数据,将所述当前待归档数据写入取出的所述当前使用磁带以及各个所述未使用磁带中。
12、可选地,在上述的磁带库数据处理方法中,所述接收一项当前业务的数据归档请求之后,还包括:
13、将所述数据归档请求中的请求参数、当前的所述当前业务的归档标识以及当前的所述当前业务的归档作为当前的所述当前业务的归档记录,持久化到数据库中。
14、可选地,在上述的磁带库数据处理方法中,所述接收一项当前业务的数据归档请求之后,还包括:
15、将数据库中所述当前待归档数据对应的所述当前业务的状态置为第一状态;其中,所述第一状态为表示正在进行数据归档的状态;
16、当将所述当前待归档数据全部写入磁带中后,将所述数据库中的所述当前待归档数据对应的所述当前业务的状态置为第二状态;其中,所述第二状态为标识数据归档完成的状态。
17、可选地,在上述的磁带库数据处理方法中,所述控制机械臂取出所述当前使用磁带以及所述当前使用磁带后的所述需求磁带数量的未使用磁带之前,还包括:
18、判断所述当前使用磁带的剩余存储空间为零;
19、若判断出所述当前使用磁带的剩余存储空间不为零,则执行所述控制机械臂取出所述当前使用磁带以及所述当前使用磁带后的所述需求磁带数量的未使用磁带;
20、若判断所述当前使用磁带的剩余存储空间为零,则控制机械臂取出所述当前使用磁带后的所述需求磁带数量的未使用磁带;
21、根据所述当前待归档数据的数据地址获取所述当前待归档数据,将所述当前待归档数据写入取出的各个所述未使用磁带中。
22、可选地,在上述的磁带库数据处理方法中,还包括:
23、接收所述当前业务的归档数据查询请求;
24、确定出所述当前业务对应的磁带编号;其中,所述当前业务对应的磁带编号指代存储所述当前业务的归档数据的磁带的编号;
25、依次控制机械臂取出查找到的每个所述磁带编号对应的磁带;
26、若取出的所述磁带仅存储有所述当前业务的归档数据,则批量读取所述磁带中的全部数据并反馈;
27、若所述磁带不仅存储有所述当前业务的归档数据,则从所述磁带中查找出所述当前业务的归档数据并反馈。
28、本技术第二方面提供了一种磁带库数据处理系统,包括:
29、第一接收单元,用于接收一项当前业务的数据归档请求;其中,所述数据归档请求中包括所述当前业务的当前待归档数据的请求参数;所述请求参数至少包括数据大小以及数据地址;
30、空间获取单元,用于获取当前使用磁带的剩余存储空间;其中,当前使用磁带指代在处理上一个请求时,最后进行数据写入的磁带;
31、对比单元,用于对比所述当前待归档数据的数据大小是否大于所述当前使用磁带的剩余存储空间;
32、第一控制单元,用于在对比出所述当前待归档数据的数据大小不大于所述当前使用磁带的剩余存储空间时,控制机械臂取出所述当前使用磁带;
33、第一存储单元,用于根据所述当前待归档数据的数据地址获取所述当前待归档数据,并写入取出的所述当前使用磁带中;
34、数量计算单元,用于在对比出所述当前待归档数据的数据大小大于所述当前使用磁带的剩余存储空间,则基于所述当前待归档数据的数据大小、所述当前使用磁带的剩余存储空间以及单个磁带的总存储空间,计算得到需求磁带数量;
35、第二控制单元,用于控制机械臂取出所述当前使用磁带以及所述当前使用磁带后连续的数量为所述需求磁带数量的未使用磁带;
36、第二存储单元,用于根据所述当前待归档数据的数据地址获取所述当前待归档数据,将所述当前待归档数据写入取出的所述当前使用磁带以及各个所述未使用磁带中。
37、可选地,在上述的磁带库数据处理系统中,还包括:
38、记录单元,用于将所述数据归档请求中的请求参数、当前的所述当前业务的归档标识以及当前的所述当前业务的归档作为当前的所述当前业务的归档记录,持久化到数据库中。
39、可选地,在上述的磁带库数据处理系统中,还包括:
40、第一设置单元,用于将数据库中所述当前待归档数据对应的所述当前业务的状态置为第一状态;其中,所述第一状态为表示正在进行数据归档的状态;
41、第二设置单元,用于当将所述当前待归档数据全部写入磁带中后,将所述数据库中的所述当前待归档数据对应的所述当前业务的状态置为第二状态;其中,所述第二状态为标识数据归档完成的状态。
42、可选地,在上述的磁带库数据处理系统中,还包括:
43、判断单元,用于判断所述当前使用磁带的剩余存储空间为零;
44、其中,若判断出所述当前使用磁带的剩余存储空间不为零,则所述第二控制单元执行所述控制机械臂取出所述当前使用磁带以及所述当前使用磁带后的所述需求磁带数量的未使用磁带;
45、第三控制单元,用于在判断所述当前使用磁带的剩余存储空间为零时,控制机械臂取出所述当前使用磁带后的所述需求磁带数量的未使用磁带;
46、第三存储单元,用于根据所述当前待归档数据的数据地址获取所述当前待归档数据,将所述当前待归档数据写入取出的各个所述未使用磁带中。
47、可选地,在上述的磁带库数据处理系统中,还包括:
48、第二接收单元,用于接收所述当前业务的归档数据查询请求;
49、编号确定单元,用于确定出所述当前业务对应的磁带编号;其中,所述当前业务对应的磁带编号指代存储所述当前业务的归档数据的磁带的编号;
50、查找单元,用于依次控制机械臂取出查找到的每个所述磁带编号对应的磁带;
51、第一读取单元,用于在取出的所述磁带仅存储有所述当前业务的归档数据时,批量读取所述磁带中的全部数据并反馈;
52、第二读取单元,用于在所述磁带不仅存储有所述当前业务的归档数据时,从所述磁带中查找出所述当前业务的归档数据并反馈。
53、本技术第三方提供了一种电子设备,包括:
54、存储器和处理器;
55、其中,所述存储器用于存储程序;
56、所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如上述任意一项所述的磁带库数据处理方法。
57、本技术第四方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一项所述的磁带库数据处理方法。
58、本技术实施例提供了一种磁带库数据处理方法,接收一项当前业务的数据归档请求。其中,数据归档请求中包括当前业务的当前待归档数据的请求参数。请求参数至少包括数据大小以及数据地址。然后获取当前使用磁带的剩余存储空间。其中,当前使用磁带指代在处理上一个请求时,最后进行数据写入的磁带。然后对比当前待归档数据的数据大小是否大于当前使用磁带的剩余存储空间。若对比出当前待归档数据的数据大小不大于当前使用磁带的剩余存储空间,则控制机械臂取出当前使用磁带,以根据当前待归档数据的数据地址获取当前待归档数据,并写入取出的当前使用磁带中。若对比出当前待归档数据的数据大小大于当前使用磁带的剩余存储空间,则基于当前待归档数据的数据大小、当前使用磁带的剩余存储空间以及单个磁带的总存储空间,计算得到需求磁带数量。然后控制机械臂取出当前使用磁带以及当前使用磁带后连续的数量为需求磁带数量的未使用磁带,以根据当前待归档数据的数据地址获取当前待归档数据,将当前待归档数据写入取出的当前使用磁带以及各个未使用磁带中,从而将一项业务的数据全部写在当前使用磁带以及特定的为使用磁带中,不再是随机进行存储,从而极大的减少了存储一项业务的数据的磁带的数量,进而可以有效提高后续召回该数据的效率。