一种云服务器的存储方法、系统、装置及可读存储介质与流程

文档序号:14452902阅读:170来源:国知局

本发明涉及云存储领域,特别涉及一种云服务器的存储方法、系统、装置及可读存储介质。



背景技术:

近些年来,云存储技术受到越来越多的关注。云分层技术是云计算应用中的一种热门技术,主要是指利用算法将用户本地服务器磁盘上的数据分为不常访问的冷数据和经常访问的热数据两种,系统将热数据保留在本地磁盘,将冷数据上传到云服务器上并删除本地数据,这样就节省了本地磁盘的使用量,降低了本地磁盘的空间成本。

但是,为用户提供的云服务器也是商用需要收费的,例如目前主流的亚马逊、阿里等厂商一般按照流量和使用空间进行收费,因此云分层技术除了考虑尽可能空余出本地磁盘的空间外,还需要考虑如何降低云服务器的空间存储量。



技术实现要素:

有鉴于此,本发明的目的在于提供能够节省存储空间的一种云服务器的存储方法、系统、装置及可读存储介质。其具体方案如下:

一种云服务器的存储方法,包括:

获取多个文件对应的md5值和元数据;

比较所述多个文件对应的md5值,得到重复文件组;其中,所述重复文件组由md5值相同的文件组成;

获取待存储文件和数据链接;其中,所述待存储文件为根据预设条件在所述重复文件组中选取的某一文件,所述数据链接为所述重复文件组中的文件之间、根据所述元数据建立的链接关系;

将所述待存储文件和所述数据链接存储到所述云服务器。

优选的,所述获取多个文件对应的md5值和元数据的过程具体包括:

获取本地服务器中多个文件对应的md5值和标识符。

优选的,所述获取多个文件对应的md5值和元数据的过程具体包括:

获取所述云服务器中多个文件对应的md5值和标识符。

优选的,所述获取所述云服务器中多个文件对应的md5值和标识符的过程,包括:

每隔预设周期后,获取所述云服务器中多个文件对应的md5值和标识符。

优选的,所述待存储文件为所述重复文件组中创建日期最早的文件。

优选的,所述待存储文件为所述重复文件组中创建日期最新的文件。

优选的,所述获取待存储文件和数据链接的过程之后,还包括:

删除所述重复文件组中除所述待存储文件外的其他文件。

相应的,本发明还公开了一种云服务器的存储系统,包括:

第一获取模块,用于获取多个文件对应的md5值和元数据;

比较模块,用于比较所述多个文件对应的md5值,得到重复文件组;其中,所述重复文件组由md5值相同的文件组成;

第二获取模块,用于获取待存储文件和数据链接;其中,所述待存储文件为根据预设条件在所述重复文件组中选取的某一文件,所述数据链接为所述重复文件组中的文件之间、根据所述元数据建立的链接关系;

存储模块,用于将所述待存储文件和所述数据链接存储到所述云服务器。

相应的,本发明还公开了一种云服务器的存储装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上文任一项所述云服务器的存储方法的步骤。

相应的,本发明还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任一项所述云服务器的存储方法的步骤。

本发明公开了一种云服务器的存储方法,包括:获取多个文件对应的md5值和元数据;比较所述多个文件对应的md5值,得到重复文件组;其中,所述重复文件组由md5值相同的文件组成;获取待存储文件和数据链接;其中,所述待存储文件为根据预设条件在所述重复文件组中选取的某一文件,所述数据链接为所述重复文件组中的文件之间、根据所述元数据建立的链接关系;将所述待存储文件和所述数据链接存储到所述云服务器。每一文件的md5值是唯一的,当两个文件的md5值相同时,意味着这两个文件内部数据时完全一致的。据此可以获得md5值相同、标识符相同或不同的多个文件的重复文件组。从重复文件组中选择存储一个文件到云服务器,即相当于在云服务器存储了重复文件组中的所有文件,进而节省了云服务器的存储空间,降低了使用成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例中一种云服务器的存储方法的步骤流程图;

图2为本发明实施例中一种云服务器的存储系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种云服务器的存储方法,参见图1所示,包括:

s1:获取多个文件对应的md5值和元数据;

可以理解的是,md5,也即消息摘要算法第五版。根据md5对任一文件进行计算,都会得到唯一的md5值,因此md5值具有唯一性,当文件a与文件b的md5值相同,意味着两个文件的内存信息是相同的。

其中,这里的多个文件可以是存储在本地服务器中、待上传云服务器的文件,在本地对所述多个文件进行计算获取它们的md5值;也可以是已经存储在云服务器中的文件,它们的md5值的获取,既可以是在云服务器中计算出的,也可以是文件未上传之前在本地计算后的md5值。

可以理解的是,元数据是描述数据及其环境的数据,包括文件的名称、创建信息等等,可以用来支持如指示存储位置、历史数据、资源查找、文件纪录等功能。

s2:比较所述多个文件对应的md5值,得到重复文件组;其中,所述重复文件组由md5值相同的文件组成;

可以理解的是,上述重复文件组的本质是md5值相同、元数据有差别的多个内容重复的文件。

s3:获取待存储文件和数据链接;其中,所述待存储文件为根据预设条件在所述重复文件组中选取的某一文件,所述数据链接为所述重复文件组中的文件之间、根据所述元数据建立的链接关系;

具体的,所述待存储文件可以为所述重复文件组中创建日期最早的文件,也可以为所述重复文件组中创建日期最新的文件,甚至还可以是所述重复文件组中随机选择的文件,本实施例对所述预设条件不作限制。

s4:将所述待存储文件和所述数据链接存储到所述云服务器。

具体的,如果上述多个文件为存储在本地服务器中、待上传云服务器的文件,直接选择将待存储文件存储到云服务器,重复文件组中的其他文件相当于重复数据,不需上传云服务器,从而降低了云服务器的流量,当本地服务器不保留该重复文件组中的任何文件,只在云服务器中通过数据链接查找到唯一的待存储文件,即可达到查找用户所需的目标文件的目的。

另外,如果上述多个文件已经存储在云服务器中,在确认待存储文件和数据链接后,可以删除重复文件组内除待存储文件之外的其他文件,有效减少了冗余重复数据对云服务器空间的占用。用户可以通过数据链接找到与目标文件的数据相同的待存储文件,在节省存储空间的基础上,本发明使云服务器能够有效地完成云服务器存储的服务。

进一步的,如果有新文件要上传云服务器,可以利用本方法对比新文件和云服务器中其他文件的md5值,如果云服务器中有与新文件md5值相同的文件,意味着新文件的内容信息已存储在云服务器中,不需上传完整的新文件,只要建立新文件和云服务器中对应的文件的数据链接即可,高效地传输了有用信息,节省传输流量和云服务器的存储空间。

上一段方法,实质上是一种即时判断md5值并处理文件的方法,在上传文件较多时会频繁进行判断和处理,如果上传文件中存在多个文件的内容重复,那么按照上一段的方法,每个文件的上传都需要一次比较md5值和后续处理,十分浪费处理器资源。因此可以设置每隔预设周期后,对云服务器中的文件实施本方法,从而达到清理云服务器中重复数据、节省存储空间的目的。例如设置每隔8小时,获取云服务器中的文件进行md5值并进行下一步处理。这样统一对云服务器内的文件有无重复数据进行统一梳理,比每个文件实施本方法更加高效,而且同样达到了节省存储空间的目的。

本发明公开了一种云服务器的存储方法,包括:获取多个文件对应的md5值和元数据;比较所述多个文件对应的md5值,得到重复文件组;其中,所述重复文件组由md5值相同的文件组成;获取待存储文件和数据链接;其中,所述待存储文件为根据预设条件在所述重复文件组中选取的某一文件,所述数据链接为所述重复文件组中的文件之间、根据所述元数据建立的链接关系;将所述待存储文件和所述数据链接存储到所述云服务器。每一文件的md5值是唯一的,当两个文件的md5值相同时,意味着这两个文件内部数据时完全一致的。据此可以获得md5值相同、标识符相同或不同的多个文件的重复文件组。从重复文件组中选择存储一个文件到云服务器,即相当于在云服务器存储了重复文件组中的所有文件,进而节省了云服务器的存储空间,降低了使用成本。

相应的,本发明实施例还公开了一种云服务器的存储系统,参见图2所示,包括:

第一获取模块01,用于获取多个文件对应的md5值和元数据;

比较模块02,用于比较所述多个文件对应的md5值,得到重复文件组;其中,所述重复文件组由md5值相同的文件组成;

第二获取模块03,用于获取待存储文件和数据链接;其中,所述待存储文件为根据预设条件在所述重复文件组中选取的某一文件,所述数据链接为所述重复文件组中的文件之间、根据所述元数据建立的链接关系;

存储模块04,用于将所述待存储文件和所述数据链接存储到所述云服务器。

具体的,上述第一获取模块01、比较模块02、第二获取模块03、存储模块04可以位于本地服务器中,以处理本地服务器中要上传至云服务器中的多个文件,通过本系统后直接将这多个文件中不重复的待存储文件和数据链接上传至云服务器即可;上述第一获取模块01、比较模块02、第二获取模块03、存储模块04也可以位于云服务器中,通过本系统进行云服务器内部文件的整理、降低存储文件中的数据重复率,进而节省重复文件占用的存储空间,进一步可以加一个周期定时,每隔预设周期后云服务器对其内部文件利用本系统进行整理;另一种情况下,上述第一获取模块01、比较模块02、第二获取模块03、存储模块04对于要上传至云服务器的新文件进行与云服务器中其他文件的比较,并决定上传完整文件或仅上传与之相关的数据链接。

本实施例中,所述云服务器的存储系统具有与上述实施例中云服务器的存储方法相同的有益效果。

相应的,本发明实施例还公开了一种云服务器的存储装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上文实施例任一项所述云服务器的存储方法的步骤。

其中,有关云服务器的存储装置的具体细节可以参照上述实施例的描述,此处不再进行赘述。

本实施例中,所述云服务器的存储装置具有与上述实施例中云服务器的存储方法相同的有益效果。

相应的,本发明实施例还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文实施例任一项所述云服务器的存储方法的步骤。

其中,有关可读存储介质的具体细节可以参照上述实施例的描述,此处不再进行赘述。

本实施例中,所述可读存储介质具有与上述实施例中云服务器的存储方法相同的有益效果。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种云服务器的存储方法、系统、装置及可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1