本发明涉及数据存储技术领域,具体涉及一种基于云计算的备份数据快速提取方法。
背景技术:
云计算(cloudcomputing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。现阶段的云计算通过不断进步,已经不单单是一种分布式计算,而是分布式计算、效用计算、负载均衡、并行计算、网络存储、热备份冗杂和虚拟化等计算机技术混合演进并跃升的结果。
云盘作为云计算发展过成功的一种成功产品,它通过互联网为企业和个人提供信息的储存,读取,下载等服务。具有安全稳定、海量存储的特点。相对于传统的实体磁盘来说,更方便,用户不需要把储存重要资料的实体磁盘带在身上。因此,云盘成为了数据备份的一种重要手段。然而,现有技术中,各个用户通过云盘备份的数据都存储在同一个集中的数据库中,由于数据库是存储在同一个数据库中,因此,提取数据时是用户端与数据库的单线传输,这样在用户数量较多时,提取速度会受到严重限制。
因此,如何提高备份数据的提取速度,成为了本领域技术人员急需解决的问题。
技术实现要素:
针对上述现有技术的不足,本发明要解决的问题是:如何降低数据备份时对备份设备的硬件要求并提高数据备份的安全性。
本发明采用了如下的技术方案:
一种基于云计算的备份数据快速提取方法,目标数据存储在多个存储空间中,每个存储空间中存储有相同的目标数据,所述基于云计算的备份数据快速提取方法包括:
接收目标用户的提取指令;
基于提取指令查询目标数据的存储空间;
分别从存储空间中提取目标数据的不同部分并发送至目标用户直至目标数据完整发送至目标用户。
优选地,目标数据的存储方法包括:
获取目标数据;
为目标数据分配多个不同的存储空间;
将目标数据分别存储到每个分配的存储空间中。
优选地,为目标数据分配多个不同的存储空间包括:
将目标数据以预设规则划分为多个子数据;
为每个子数据分配不同的存储空间,每个子数据均具有多个不同的存储空间;
将每个子数据存储到分配的存储空间中。
优选地,分配存储空间时,调用存储空间的可用空间大小,若存储空间的可用空间大小大于需要存储的数据的大小,则将所述存储空间分配给所述需要存储的数据。
优选地,当任一存储空间中的数据丢失或损坏时,分配与数据丢失或损坏的存储空间的数量相同的新的存储空间,将丢失或损坏的数据存储至新的存储空间中。
优选地,每个用户的用户端均设有存储空间,目标数据存储在非目标用户的用户端中。
优选地,所述分别从存储空间中提取目标数据的不同部分并发送至目标用户直至所有目标数据均发送至目标用户包括:
s701、判断存储空间所属的用户端是否在线;
s702、分别从在线的存储空间中提取目标数据的不同部分并向目标用户传输;
s703、判断目标数据是否完整发送至目标用户,若是,结束,若不是,返回步骤s701。
优选地,当步骤s701中所有存储空间均不在线时,暂停数据传输,直到任意存储空间上线后,继续数据传输。
优选地,若接收目标用户的提取指令后,目标用户不在线,分别从存储空间中提取未传输至目标用户的目标数据的不同部分并发送至临时存储空间,直至在临时存储空间中存储完所有为传输至目标用户的目标数据;目标用户上线后,分别从临时存储空间和/或存储空间中提取为传输至目标用户的目标数据的不同部分并发送至目标用户,直至目标数据完整发送至目标用户;目标数据完整发送至目标用户后,将临时存储空间中属于目标数据的部分清除。
综上所述,本发明公开了一种基于云计算的备份数据快速提取方法,目标数据存储在多个存储空间中,每个存储空间中存储有相同的目标数据,所述基于云计算的备份数据快速提取方法包括:接收目标用户的提取指令;基于提取指令查询目标数据的存储空间;分别从存储空间中提取目标数据的不同部分并发送至目标用户直至目标数据完整发送至目标用户。本发明将目标数据多重备份至不同的存储空间中,则目标用户需要提取数据时,可以同时从多个存储空间中提取数据,这样,可以极大的提高数据提取的速度,即使在存储空间繁忙时,由于采用了多线传输,其传输速度仍然高于单线传输。
附图说明
为了使发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
图1是本发明公开的一种基于云计算的备份数据快速提取方法的流程图。
具体实施方式
下面结合附图对本发明作进一步的详细说明。
如图1所示,本发明公开了一种基于云计算的备份数据快速提取方法,目标数据存储在多个存储空间中,每个存储空间中存储有相同的目标数据,所述基于云计算的备份数据快速提取方法包括:
接收目标用户的提取指令;
基于提取指令查询目标数据的存储空间;
分别从存储空间中提取目标数据的不同部分并发送至目标用户直至目标数据完整发送至目标用户。
在本发明中,云服务器接收目标用户端的提取指令,并根据数据备份时存储的备份记录查询存储空间,然后完成备份数据的提取。本发明将目标数据多重备份至不同的存储空间中,则目标用户需要提取数据时,可以同时从多个存储空间中提取数据,这样,可以极大的提高数据提取的速度,即使在存储空间繁忙时,由于采用了多线传输,其传输速度仍然高于单线传输。
具体实施时,目标数据的存储方法包括:
获取目标数据;
为目标数据分配多个不同的存储空间;
将目标数据分别存储到每个分配的存储空间中。
除了可以提高数据提取的速度,由于数据分散的存储在各个存储空间中,因此即使某个存储空间的数据损坏,仍不会影响备份数据的提取。
具体实施时,为目标数据分配多个不同的存储空间包括:
将目标数据以预设规则划分为多个子数据;
为每个子数据分配不同的存储空间,每个子数据均具有多个不同的存储空间;
将每个子数据存储到分配的存储空间中。
为了进一步实现数据的分布备份,因此,可以将数据按照预设规则划分为多个子数据,预设规则由工作人员设定。例如,根据将所有待备份数据都划分为m个子数据,或者将待备份数据根据其大小进行划分,划分的子数据个数与待备份数据的大小正相关。这样,即使某个存储空间的数据泄露,获取泄露数据的一方也只能得到一份子数据,增大了不法分子盗取数据的难度,提高了数据备份的安全性。
具体实施时,分配存储空间时,调用存储空间的可用空间大小,若存储空间的可用空间大小大于需要存储的数据的大小,则将所述存储空间分配给所述需要存储的数据。
这样可以合理的为待备份的数据分配合适的存储空间,避免由于分配的存储空间可利用空间不足而造成的存储错误。
具体实施时,当任一存储空间中的数据丢失或损坏时,分配与数据丢失或损坏的存储空间的数量相同的新的存储空间,将丢失或损坏的数据存储至新的存储空间中。
由于本发明采用了多重备份的方式,因此,为了保证备份数据的稳定性,因此,本发明中将同一目标数据的存储空间数始终维持在一个固定数值上,当某处的数据损坏,则采用其他处的数据在新的存储空间中进行再次备份。
具体实施时,每个用户的用户端均设有存储空间,目标数据存储在非目标用户的用户端中。
由于本发明采用了多重备份的方式,因此,与现有的备份方式相比,需要的存储空间总大小更大,为了降低运营商的硬件成本,所以可以利用用户的用户端的存储空间作为备份数据的存储空间。可以在每个用户的用户端(手机、电脑及其他具有存储和数据传输功能的点子设备)划出一定大小的空间,作为存储空间。
具体实施时,所述分别从存储空间中提取目标数据的不同部分并发送至目标用户直至所有目标数据均发送至目标用户包括:
s701、判断存储空间所属的用户端是否在线;
s702、分别从在线的存储空间中提取目标数据的不同部分并向目标用户传输;
s703、判断目标数据是否完整发送至目标用户,若是,结束,若不是,返回步骤s701。
若采用其他用户的用户端作为目标用户的数据备份载体,则可能会出现其他用户离线的情况,此时,该离线用户的用户端无法再传输数据,所以,在本发明中,需要实施检测每个备份有目标数据的用户端的情况,从在线的用户端上传输数据。
具体实施时,当步骤s701中所有存储空间均不在线时,暂停数据传输,直到任意存储空间上线后,继续数据传输。
由于采用了用户端作为存储空间,因此可能会发生所有存储空间都离线的情况,因此本发明中还可以采用断续传输的方式来保证备份数据提取的成功。
具体实施时,若接收目标用户的提取指令后,目标用户不在线,分别从存储空间中提取未传输至目标用户的目标数据的不同部分并发送至临时存储空间,直至在临时存储空间中存储完所有为传输至目标用户的目标数据;目标用户上线后,分别从临时存储空间和/或存储空间中提取为传输至目标用户的目标数据的不同部分并发送至目标用户,直至目标数据完整发送至目标用户;目标数据完整发送至目标用户后,将临时存储空间中属于目标数据的部分清除。
由于数据传输是一个持续过程,需要一定的持续时间,因此除了被提取数据的一方以外,还可能存在提取数据的一方离线的情况,此时,也无法完成数据的传输。若采用了其他用户端作为存储空间,则传输双方的用户端同时在线的时间可能并不相同,此时若只从其他用户的存储空间中提取数据并直接传送给目标用户,则可能在传输过程中发生多次断续传输,整个传输过程时间极长,因此,还可以设置云存储器作为临时存储空间,当目标用户不在线时,将还未提取的数据先暂存在临时存储空间中,这样,即使目标用户上线后,即使其他用户的用户端不在线,仍然可以保证数据的完整提取。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管通过参照本发明的优选实施例已经对本发明进行了描述,但本领域的普通技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
1.一种基于云计算的备份数据快速提取方法,其特征在于,目标数据存储在多个存储空间中,每个存储空间中存储有相同的目标数据,所述基于云计算的备份数据快速提取方法包括:
接收目标用户的提取指令;
基于提取指令查询目标数据的存储空间;
分别从存储空间中提取目标数据的不同部分并发送至目标用户直至目标数据完整发送至目标用户。
2.如权利要求1所述的基于云计算的备份数据快速提取方法,其特征在于,目标数据的存储方法包括:
获取目标数据;
为目标数据分配多个不同的存储空间;
将目标数据分别存储到每个分配的存储空间中。
3.如权利要求2所述的基于云计算的备份数据快速提取方法,其特征在于,为目标数据分配多个不同的存储空间包括:
将目标数据以预设规则划分为多个子数据;
为每个子数据分配不同的存储空间,每个子数据均具有多个不同的存储空间;
将每个子数据存储到分配的存储空间中。
4.如权利要求2或3所述的基于云计算的备份数据快速提取方法,其特征在于,分配存储空间时,调用存储空间的可用空间大小,若存储空间的可用空间大小大于需要存储的数据的大小,则将所述存储空间分配给所述需要存储的数据。
5.如权利要求4所述的的基于云计算的备份数据快速提取方法,其特征在于,当任一存储空间中的数据丢失或损坏时,分配与数据丢失或损坏的存储空间的数量相同的新的存储空间,将丢失或损坏的数据存储至新的存储空间中。
6.如权利要求4所述的基于云计算的备份数据快速提取方法,其特征在于,每个用户的用户端均设有存储空间,目标数据存储在非目标用户的用户端中。
7.如权利要求6所述的基于云计算的备份数据快速提取方法,其特征在于,所述分别从存储空间中提取目标数据的不同部分并发送至目标用户直至所有目标数据均发送至目标用户包括:
s701、判断存储空间所属的用户端是否在线;
s702、分别从在线的存储空间中提取目标数据的不同部分并向目标用户传输;
s703、判断目标数据是否完整发送至目标用户,若是,结束,若不是,返回步骤s701。
8.如权利要求7所述的基于云计算的备份数据快速提取方法,其特征在于,当步骤s701中所有存储空间均不在线时,暂停数据传输,直到任意存储空间上线后,继续数据传输。
9.如权利要求8所述的基于云计算的备份数据快速提取方法,其特征在于,若接收目标用户的提取指令后,目标用户不在线,分别从存储空间中提取未传输至目标用户的目标数据的不同部分并发送至临时存储空间,直至在临时存储空间中存储完所有为传输至目标用户的目标数据;目标用户上线后,分别从临时存储空间和/或存储空间中提取为传输至目标用户的目标数据的不同部分并发送至目标用户,直至目标数据完整发送至目标用户;目标数据完整发送至目标用户后,将临时存储空间中属于目标数据的部分清除。
技术总结