本技术涉及数据处理,特别是涉及数据存储方法和数据读取方法、装置、系统及电子设备。
背景技术:
1、随着数据处理技术的快速发展,人们会将需要进行存储的各类数据存储至服务器中,从而,在需要所存储的数据时直接从服务器中获取。例如,利用存储服务器存储视频资源。上述存储服务器利用linux(gnu/linux,是一套免费使用和自由传播的类unix操作系统,其中,linux是unix-like的简称)进行视频资源的存储,将视频资源存储在服务器所搭载的磁盘中后,所存储的视频资源的存储信息会直接暴露在服务器中。也就是说,任何人只要获取到该服务器的登录权限,就可以直接看到所存储的所有数据的存储信息,导致磁盘中所存储的数据的安全性较低。
技术实现思路
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、基于此,应用本技术实施例提供的方案,可以将一个完整的待存储数据划分为多个待存储数据块,并按照预设索引中的未使用索引,将上述多个待存储数据块分别存储至未使用索引在上述预设存储空间中所指示的存储区域内,从而,实现对完整的待存储数据的分块存储,避免将完整的待存储数据暴露在服务器的预设存储空间,进而,提高服务器内所存储数据的安全性。并且,利用预设索引和预设索引协议,所建立的每个待存储数据块的数据标识与用于存储该待存储数据块的存储区域的索引的对应关系中,可以通过预设索引协议对所存储的多个数据块进行二次加密,进一步的,加大对服务器内所存储数据的保密程度。