一种文件回收方法、装置、服务器及计算机可读存储介质与流程

文档序号:13472590阅读:246来源:国知局
一种文件回收方法、装置、服务器及计算机可读存储介质与流程

本发明涉及数据存储技术领域,尤其涉及一种文件回收方法、装置、服务器及计算机可读存储介质。



背景技术:

通常情况下,一套视频云存储系统(以下简称系统)的磁盘数量确定,系统总容量固定,系统为每个用户配置的可用容量也是一定的。随着用户使用系统的时间增长,用户在系统上存储的数据量就有可能越大,如果用户已使用的存储空间达到为其配置的可用容量上限时,或者由于系统的磁盘故障等原因导致系统总容量缩减时,会出现用户剩余存储空间不足的情况,并且当系统的已使用容量达到系统的可用容量使用上限时,系统会面临业务停止的风险,从而无法为用户提供服务。

为了保证系统有足够的存储空间来为用户提供服务,现有技术中可以采用硬件扩容的方式来增加系统的可用存储空间,如增加磁盘,但是系统为每个用户配置的可用容量是一定的,即使系统的总容量增加,由于为用户分配的可用容量虽然也会增加,但当用户已使用的存储空间达到为其配置的可用容量上限时,仍然存在用户剩余存储空间不足的情况,系统仍无法为用户提供服务。

除了采用扩容来增加系统的可用存储空间,还可以是通过删除文件释放空间来增加系统的可用存储空间,具体地,如图1所示为现有技术提供的文件删除系统的结构示意图,该文件删除系统中的设置参数数据模块设置备份数据的过期参数的数值,其中过期参数包括版本保存个数和/或备份数据的保存天数,数据获取模块获取备份数据的过期参数的数据,第一判断模块用于判断获取的所述数据是否存在大于设置的所述过期参数的数值,如果存在,则过期数据判定模块将获取的数据作为过期数据,扫描模块每隔预定周期,对每盘磁带均进行扫描,获取每盘磁带上过期数据的比例数值,如果第二判断模块判断所述比例数值超过回收阈值,则空间回收模块将对应磁带上的有效数据迁移到预定磁带中,并将对应磁带中的过期文件进行删除,如果将全部的过期文件删除完后,仍然存在用户剩余存储空间不足的情况,那么后续视频云存储系统仍然无法为用户继续提供服务。



技术实现要素:

本发明提供一种文件回收方法、装置、服务器及计算机可读存储介质,用以解决现有技术中过期文件删除完后,仍然存在的用户剩余存储空间不足的问题。

本发明提供了一种文件回收方法,该方法包括:

当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中;

针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值;

根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,回收创建时间不超过所述目标创建时间阈值的文件。

进一步地,所述根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长包括:

根据该元数据桶中文件的生命周期,及预先设定的缩减时长,确定该元数据桶对应的剩余保留时长;或

根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶对应的剩余保留时长。

进一步地,所述确定缩减比例包括:

根据当前所述用户的存储空间的已使用比例及预设的回收比例阈值,确定缩减比例;

所述根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶对应的剩余保留时长包括:

确定该元数据桶中文件的生命周期与所述缩减比例的乘积;将该元数据桶中文件的生命周期与所述乘积的差值确定为该元数据桶中对应的剩余保留时长。

进一步地,所述根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长之前,所述方法还包括:

根据当前保存的回收次数,对当前保存的缩减参数进行更新;

所述回收创建时间不超过所述目标创建时间阈值的文件后,所述方法还包括:

判断所述用户的剩余存储空间是否不足;

如果是,对当前保存的回收次数进行更新;如果否,将当前保存的回收次数恢复为初始值。

进一步地,所述根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值后,在回收创建时间不超过所述目标创建时间阈值的文件之前,所述方法还包括:

在所述用户的存储空间中,选取创建时间最早的文件作为目标文件;

根据预先保存的回收流控值,及所述目标文件的创建时间,确定第二创建时间阈值;

判断所述第二创建时间阈值是否不超过所述目标创建时间阈值;

如果是,根据所述第二创建时间阈值,更新所述目标创建时间阈值。

进一步地,所述回收创建时间不超过所述目标创建时间阈值的文件包括:

在创建时间不超过所述目标创建时间的待回收文件中,回收保存时长超过设定时长阈值的文件。

进一步地,确定用户的剩余存储空间不足后,在将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中之前,所述方法还包括:

判断当前时间之前的预设时间范围内是否进行过文件回收;

如果否,进行后续步骤。

本发明提供了一种文件回收装置,该装置包括:

监控模块,用于判断用户的剩余存储空间是否不足;

使能模块,用于当所述监控模块的判断结果为是时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中;针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值;根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值;

回收模块,用于回收创建时间不超过所述目标创建时间阈值的文件。

进一步地,所述使能模块,具体用于根据该元数据桶中文件的生命周期,及预先设定的缩减时长,确定该元数据桶中对应的剩余保留时长;或根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶中对应的剩余保留时长。

进一步地,所述使能模块,具体用于根据当前所述用户的存储空间的已使用比例及预设的回收比例阈值,确定缩减比例;所述根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶中对应的剩余保留时长包括:确定该元数据桶中文件的生命周期与所述缩减比例的乘积;将该元数据桶中文件的生命周期与所述乘积的差值确定为该元数据桶中对应的剩余保留时长。

进一步地,所述使能模块,还用于根据当前保存的回收次数,对当前保存的缩减参数进行更新;

所述使能模块,还用于所述回收创建时间不超过所述目标创建时间阈值的文件后,当所述监控模块的判断结果为是时,对当前保存的回收次数进行更新;当所述监控模块的判断结果为否时,将当前保存的回收次数恢复为初始值。

进一步地,所述使能模块,还用于在所述用户的存储空间中,选取创建时间最早的文件作为目标文件;根据预先保存的回收流控值,及所述目标文件的创建时间,确定第二创建时间阈值;判断所述第二创建时间阈值是否不超过所述目标创建时间阈值;如果是,根据所述第二创建时间阈值,更新所述目标创建时间阈值。

进一步地,所述回收模块,具体用于在创建时间不超过所述目标创建时间的待回收文件中,回收保存时长超过设定时长阈值的文件。

进一步地,所述使能模块,还用于在所述监控模块的判断结果为是后,判断当前时间之前的预设时间范围内是否进行过文件回收;如果否,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中。

本发明提供了一种服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

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

处理器,用于执行存储器上所存放的程序时,实现上述任一项所述的方法步骤。

本发明提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法步骤。

本发明提供了一种文件回收方法、装置、服务器及计算机可读存储介质,该方法包括:当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中;针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值;根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,回收创建时间不超过所述目标创建时间阈值的文件。在本发明实施例中,服务器将用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中,根据每个元数据桶中文件的生命周期,及当前保存的缩减参数,确定每个元数据桶对应的第一创建时间阈值,从而确定目标创建时间阈值,将创建时间不超过目标创建时间阈值的文件回收,通过缩减参数,变相缩减了每个文件的生命周期,可以回收用户的存储空间中的未过期文件,从而进一步释放用户的剩余存储空间。

附图说明

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

图1为现有技术提供的文件删除系统的结构示意图;

图2a为本发明实施例1提供的一种文件回收过程的示意图;

图2b为本发明实施例3提供的一种文件回收过程的示意图;

图3a为本发明实施例4提供的一种文件回收过程的示意图;

图3b为本发明实施例5提供的一种文件回收的过程示意图;

图4为本发明实施例6提供的一种服务器示意图;

图5为本发明实施例提供的一种文件回收装置示意图。

具体实施方式

为了回收用户的存储空间中的未过期文件,进一步释放用户剩余存储空间,本发明实施例提供了一种文件回收方法、装置、服务器及计算机可读存储介质。

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

实施例1:

图2a为本发明实施例提供的一种文件回收过程的示意图,该过程包括以下步骤:

s201:当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中。

本发明实施例提供的文件回收方法应用于服务器,该服务器部署在视频云存储系统中,并且该服务器可以对用户的存储空间中的文件进行管理。

服务器在视频云存储系统中以用户为单元对系统总容量进行切割划分,即为每个用户分配单独的存储空间,使不同用户使用同一视频云存储系统存储文件互不影响。服务器可以在自身内存中为用户分配存储空间,也可以是在视频云存储系统中的其他存储节点中为用户分配存储空间。用户的存储空间中保存的文件可以为视频文件,也可以为文本文件等其他类型的文件。

服务器可以是在当某一用户向存储空间中存储文件时,确定用户剩余存储空间是否不足,也可以是按照设定的时间间隔,确定用户剩余存储空间是否不足,也可以是在固定的时间点,确定用户剩余存储空间是否不足等。

当用户向视频云存储系统中存储文件时,服务器会同时记录该文件的文件大小。故服务器可以根据该用户存储的每个文件,确定该用户的用户已使用存储空间。

服务器可以是根据为用户分配的存储空间和用户已使用存储空间,确定用户的剩余存储空间是否不足。具体地,可以是用户已使用存储空间达到设定的存储阈值时,服务器确定用户的剩余存储空间不足,其中设定的存储阈值预先保存在服务器中,设定的存储阈值为不超过为用户分配的存储空间的任意数值;也可以是用户已使用存储空间与为用户分配的存储空间的比值达到设定的比值阈值时,服务器确定用户的剩余存储空间不足,其中设定的比值阈值预先保存在服务器中,设定比值阈值为不超过1的正数,如0.9或0.95等。

服务器中保存有每个文件对应的生命周期,因此服务器可以将用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中,也就是说元数据桶为具有相同生命周期的文件的集合。

当然,为了节省内存和磁盘空间,服务器还可以根据每个文件对应的生命周期及用户的设置,预先在用户的存储空间中创建至少一个元数据桶,其中每个元数据桶对应一个生命周期,根据待存储的文件的生命周期,将文件保存到与其生命周期相同的元数据桶中,由于该保存的文件与该元数据桶具有相同的生命周期,这样服务器就无需为每个文件存储对应的生命周期,只保存每个元数据桶的生命周期即可。

服务器中保存的文件对应的生命周期可以是默认的,也可以是用户设置的。具体可以是,如果服务器接收到用户针对某个文件设置的生命周期,则将用户设置的生命周期作为该文件的生命周期,如果服务器没有接收到用户针对某个文件设置的生命周期,则可以采用默认的生命周期作为该文件的生命周期,其中默认的生命周期可以任意,通常情况下,默认的生命周期为无限长,用户在设置生命周期时,可以以天为单位进行设置。

s202:针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值。

因为服务器将具有相同生命周期的文件划分到一个元数据桶中,因此根据每个元数据桶中文件的生命周期,可以确定每个元数据桶的生命周期。服务器针对每个元数据桶,根据该元数据桶中文件的生命周期,确定该元数据桶的生命周期时,可以选择该元数据桶中的任意一个文件的生命周期作为该元数据桶的生命周期,因为针对每个元数据桶,该元数据桶中保存的文件具有相同的生命周期,则无论选择哪个文件,都可以代表该元数据桶中每个文件的生命周期,并且都可以代表该元数据桶的生命周期,因此在本发明实施例中对根据元数据桶中的哪个文件的生命周期,确定该元数据桶的生命周期不做限定。

针对每个元数据桶来说,该元数据桶中的文件都是划分后的文件,因此服务器确定该元数据桶的生命周期时,是根据该元数据桶中的划分后的文件确定的。

服务器中保存有缩减参数,因此服务器可以针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长。服务器确定每个元数据桶对应的剩余保留时长是为了缩减每个元数据桶的生命周期,变相缩短每个元数据桶中的每个文件的生命周期,达到回收未过期文件的目的。

服务器可以根据当前时间,及每个元数据桶对应的剩余保留时长,确定每个元数据桶对应的第一创建时间阈值。

s203:根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,回收创建时间不超过所述目标创建时间阈值的文件。

服务器根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,可以是在每个元数据桶对应的第一创建时间阈值中,选取最大的第一创建时间阈值作为目标创建时间阈值,可以是在每个元数据桶对应的第一创建时间阈值中,选取最小的第一创建时间阈值作为目标创建时间阈值等等,或者服务器在每个元数据桶对应的第一创建时间阈值中,选择中位数,将该中位数作为目标创建时间阈值等等,其中最大的第一创建时间阈值为最靠近当前时间的第一创建时间阈值,即与当前时间的时间差最小的第一创建时间阈值,最小的第一创建时间阈值为与当前时间的时间差最大的第一创建时间阈值。

当用户向视频云存储系统中存储文件时,服务器会同时记录该文件的创建时间,服务器将用户的存储空间中创建时间不超过目标创建时间阈值的文件进行回收,具体地文件的创建时间用tc表示,目标创建时间阈值用tlimit,将tc早于tlimit的文件回收。例如,目标创建时间阈值tlimit为2017年8月20日,某一文件的创建时间为2017年5月20日,该文件的创建时间早于目标创建时间阈值,则服务器回收该文件。

如果服务器是在每个元数据桶对应的第一创建时间阈值中,选取最大的第一创建时间阈值作为目标创建时间阈值,并且如果某一元数据桶的生命周期为无限长,则该元数据桶对应的第一创建时间阈值趋近于当前时间,所以在文件回收过程中,生命周期为无限长的元数据桶不参与第一创建时间阈值的确定,并且生命周期为无限长的元数据桶中的文件可以不参与回收,也就是说不回收生命周期为无限长的文件。

服务器回收用户的存储空间中的文件时,可以是将文件直接删除。当用户向视频云存储系统中存储文件时,服务器会同时记录该文件的文件类型,因此如果服务器待回收的文件为视频文件,则还可以采用视频淡忘技术来进行文件回收,具体地,视频淡忘技术为对视频文件抽帧,减低视频文件的大小,从而实现文件的回收。对视频文件抽帧的过程属于现有技术,在本发明实施例中不做赘述。

本发明实施例提供的文件回收方法既可以针对过期文件进行回收,还可以针对未过期文件进行回收。当然,也可以采用现有技术回收用户的存储空间中的过期文件,当过期文件删除后,用户剩余存储空间仍然不足时,采用本发明实施例中提供的文件回收方法回收未过期文件。

在本发明实施例中,将用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中,根据每个元数据桶中文件的生命周期,及当前保存的缩减参数,确定每个元数据桶的第一创建时间阈值,从而确定目标创建时间阈值,将创建时间不超过目标创建时间阈值的文件回收,通过缩减参数,变相缩减了每个文件的生命周期,可以回收用户的存储空间中的未过期文件,从而进一步释放用户的剩余存储空间。

实施例2:

在上述实施例的基础上,本发明实施例中,所述根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长包括:

根据该元数据桶中文件的生命周期,及预先设定的缩减时长,确定该元数据桶对应的剩余保留时长;或

根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶对应的剩余保留时长。

本发明实施例中通过不同的缩减策略,来确定元数据桶对应的剩余保留时长。

具体地,本发明实施例中提供了至少两种缩减策略:等时间缩减策略和等比例缩减策略等,其中等时间缩减策略即根据预先设定的缩减时长,确定当前保存的缩减参数,等比例缩减策略即根据确定的缩减比例,确定当前保存的缩减参数。

服务器在采用缩减策略确定元数据桶对应的剩余保留时长,可以采用等时间缩减策略,也可以采用等比例缩减策略,如果服务器中保存有上述两种缩减策略,具体在选择缩减策略时,可以是服务器根据自身业务需求进行选择,也可以是服务器提示用户进行选择。

服务器中保存有预先设定的缩减时长,使用预先设定的缩减时长,即等时间缩减策略可以保证生命周期较长的元数据桶下的文件最晚被清除。具体地,服务器可以将每个数据桶中文件的生命周期,与预先设定的缩减时长的差值,确定为每个元数据桶对应的剩余保留时长,即每个元数据桶对应的剩余保留时长=每个元数据桶中文件的生命周期-预先设定的缩减时长。

服务器使用确定的缩减比例,即等比例缩减策略可以保证同一用户下不同元数据桶中的文件在同一次文件回收过程内清除完成。

缩减比例可以是固定的,也可以是根据用户的存储空间的已使用比例确定的,如果缩减比例是固定的,则缩减比例可以预先保存在服务器中,服务器根据每个元数据桶中文件的生命周期,与预先保存的缩减比例及每个元数据桶中文件的生命周期的乘积的差值,确定每个元数据桶的剩余保留时长,即每个元数据桶对应的剩余保留时长=每个元数据桶中文件的生命周期-预先保存的缩减比例*每个元数据中文件的生命周期。

如果缩减比例是根据用户的存储空间的已用比例确定的,则所述确定缩减比例包括:

根据当前所述用户的存储空间的已使用比例及预设的回收比例阈值,确定缩减比例;

所述根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶对应的剩余保留时长包括:

确定该元数据桶中文件的生命周期与所述缩减比例的乘积;将该元数据桶中文件的生命周期与所述乘积的差值确定为该元数据桶对应的剩余保留时长。即该数据桶对应的剩余保留时长=该元数据桶中文件的生命周期-(当前所述用户的存储空间的已使用比例-预设的回收比例阈值)*该元数据桶中文件的生命周期。

由于本发明实施例中,服务器通过确定缩减参数,确定了元数据桶对应的剩余保留时长,从而缩减了每个元数据桶的生命周期,从而对用户的存储空间中的文件进行回收,保证了用户剩余存储空间的充足,和云存储系统能够为用户提供服务。

实施例3:

在上述各实施例的基础上,本发明实施例中,所述根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长之前,所述方法还包括:

根据当前保存的回收次数,对当前保存的缩减参数进行更新;

所述回收创建时间不超过所述目标创建时间阈值的文件后,所述方法还包括:

判断所述用户的剩余存储空间是否不足;

如果是,对当前保存的回收次数进行更新;如果否,将当前保存的回收次数恢复为初始值。

本发明实施例中服务器通过回收次数更新缩减参数,使得根据回收次数,调整回收文件的数量,进一步保证了用户剩余存储空间的充足。

服务器中保存有当前的回收次数,根据当前保存的回收次数,可以对当前保存的缩减参数进行更新。具体地,服务器根据当前保存的回收次数,对当前保存的缩减参数进行更新,可以是根据当前保存的回收次数,将当前保存的缩减参数增加或减少设定的数值,可以根据当前保存的回收次数与当前保存的缩减参数的乘积,对当前保存的缩减参数进行更新等。

随着每次文件回收,更改当前保存的回收次数,可以是将每次回收文件的数量增多,所以较佳地,服务器根据当前保存的回收次数,对当前保存的缩减参数进行更新的过程为,根据当前保存的回收次数与当前保存的缩减参数的乘积,对当前保存的缩减参数进行更新,具体地,可以是将当前保存的回收次数与当前保存的缩减参数的乘积,确定为更新后的缩减参数。

如果是将当前保存的回收次数与当前保存的缩减参数的乘积,确定为更新后的缩减参数,则具体地,针对每个元数据桶,该元数据桶对应的剩余保留时长=该元数据桶中文件的生命周期-预先设定的缩减时长*当前保存的回收次数;或该元数据桶对应的剩余保留时长=该元数据桶中文件的生命周期-(当前所述用户的存储空间的已使用比例-预设的回收比例阈值)*该元数据桶中文件的生命周期*当前保存的回收次数。

为了保证调整回收文件的数量,则服务器随着每次文件回收,都会更改当前保存的回收次数,具体地,服务器每次对用户的存储空间中的文件回收后,判断该用户的存储空间是否不足,如果该用户的存储空间仍不足,则需要连续进行下一次的文件回收,为了保证调整下一次回收文件的数量,则对当前保存的回收次数进行更新;如果该用户的存储空间充足,则不需要连续进行下一次的文件回收,为了对以后文件回收的数量不造成影响,则将当前保存的回收次数恢复为初始值。

服务器对当前保存的回收次数进行更新,可以是将当前保存的回收次数增加或减少设定的次数等。为了保证每次回收文件的数量增多,可以是将当前保存的回收次数增加设定的次数,设定的次数预先保存在服务器中,设定的次数可以是1、2或5等任意正数,较佳地,将当前保存的回收次数加1。

初始值预先保存在服务器中,初始值可以是1、2或3等任意正数,较佳地,初始值为1。

服务器只有在回收创建时间不超过目标创建时间阈值的文件完成后,才会对回收次数进行更新或恢复。如果服务器在回收文件的过程中出现异常,回收创建时间不超过目标创建时间阈值的文件没有完成,则保持当前保存的回收次数不变。

下面以一个具体的实施例对本发明实施例进行说明,图2b为本发明实施例提供的一种文件回收过程的示意图,包括以下步骤:

s21:当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中。

s22:根据当前保存的回收次数,对当前保存的缩减次数进行更新;针对每个元数据桶,根据该元数据桶中文件的生命周期,及更新后的缩减参数,确定该元数据桶对应的剩余保留时长。

针对每个元数据桶,根据该元数据桶中文件的生命周期,及更新后的缩减参数,确定该元数据桶对应的剩余保留时长,具体为:该元数据桶对应的剩余保留时长=该元数据桶中文件的生命周期-预先设定的缩减时长*当前保存的回收次数;或该元数据桶对应的剩余保留时长=该元数据桶中文件的生命周期-(当前所述用户的存储空间的已使用比例-预设的回收比例阈值)*该元数据桶中文件的生命周期*当前保存的回收次数,其中更新后的缩减参数为预先设定的缩减时长*当前保存的回收次数,或更新后的缩减参数为(当前所述用户的存储空间的已使用比例-预设的回收比例阈值)*该元数据桶中文件的生命周期*当前保存的回收次数。

s23:根据当前时间,及每个元数据桶对应的剩余保留时长,确定每个元数据桶对应的第一创建时间阈值。

s24:根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,回收创建时间不超过所述目标创建时间阈值的文件。

s25:判断所述用户的剩余存储空间是否不足;如果是,进行s26,如果否,进行s27。

s26:对当前保存的回收次数进行更新,返回s22。

s27:将当前保存的回收次数恢复为初始值。

由于本发明实施例中服务器通过回收次数更新缩减参数,使得根据回收次数,调整回收文件的数量,进一步保证了用户剩余存储空间的充足。

实施例4:

为了保证不会对视频云存储系统中造成过多的性能负担,在上述各实施例的基础上,本发明实施例中,所述根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值后,在回收创建时间不超过所述目标创建时间阈值的文件之前,所述方法还包括:

在所述用户的存储空间中,选取创建时间最早的文件作为目标文件;

根据预先保存的回收流控值,及所述目标文件的创建时间,确定第二创建时间阈值;

判断所述第二创建时间阈值是否不超过所述目标创建时间阈值;

如果是,根据所述第二创建时间阈值,更新所述目标创建时间阈值。

服务器采用根据预先保存的回收流控值确定的第二创建时间阈值,对目标创建时间阈值进行更新,避免了一次性回收过多的文件,从而不会对视频云存储系统造成过多的性能负担。

服务器在根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间后,在用户的存储空间中,选取创建时间最早的文件作为目标文件。

回收流控值预先保存在服务器中,回收流控值可以为3、5或10等。

服务器根据回收流控值及目标文件的创建时间,确定第二创建时间阈值。服务器判断第二创建时间阈值是否不超过目标创建时间阈值,如果是,则认为以目标创建时间值回收文件的数量过多,则根据第二创建时间阈值,更新目标创建时间阈值,以更新后的目标创建时间阈值回收文件;如果服务器判断第二创建时间回收阈值超过目标创建时间阈值,则保持当前保存的目标创建时间阈值不变,直接根据目标创建时间阈值回收文件。

服务器根据第二创建时间阈值,更新目标创建时间阈值,可以是直接将第二创建时间阈值作为目标创建时间阈值,也可以是根据第二创建时间阈值,将目标创建时间阈值减少设定的时间。

下面以一个具体的实施例对本发明实施例进行说明,图3a为本发明实施例提供的一种文件回收过程的示意图,包括以下步骤:

s3001:当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中。

s3002:根据当前保存的回收次数,对当前保存的缩减次数进行更新;针对每个元数据桶,根据该元数据桶中文件的生命周期,及更新后的缩减参数,确定该元数据桶对应的剩余保留时长。

s3003:根据当前时间,及每个元数据桶对应的剩余保留时长,确定每个元数据桶对应的第一创建时间阈值。

s3004:根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值。

s3005:在所述用户的存储空间中,选取创建时间最早的文件作为目标文件;根据预先保存的回收流控值,及所述目标文件的创建时间,确定第二创建时间阈值;判断所述第二创建时间阈值是否不超过所述目标创建时间阈值;如果是,进行s3006;如果否,进行s3007。

s3006:根据所述第二创建时间阈值,更新所述目标创建时间阈值;进行s3008。

s3007:保持当前目标创建时间阈值不变。

s3008:回收创建时间不超过所述目标创建时间阈值的文件。

s3009:判断所述用户的剩余存储空间是否不足;如果是,进行s3010,如果否,进行s3011。

s3010:对当前保存的回收次数进行更新,返回s3002。

s3011:将当前保存的回收次数恢复为初始值。

由于服务器根据预先保存的回收流控值确定的第二创建时间阈值对目标创建时间阈值进行更新,保证了文件被分成多批次、多时间段回收,不会对视频云存储系统造成过多的性能负担,同时保证不必删除所有满足原目标的文件,即在删除少量的文件,即可保证用户的存储空间的充足。

实施例5:

为了保证最新写入的一段时间内的文件不会被回收,在上述各实施例的基础上,本发明实施例中,所述回收创建时间不超过所述目标创建时间阈值的文件包括:

在创建时间不超过所述目标创建时间的待回收文件中,回收保存时长超过设定时长阈值的文件。

服务器在确定创建时间不超过目标创建时间的待回收文件后,在待回收的文件中回收保存时长超过设定时长阈值的文件,保存时长不超过设定时长阈值的文件不被回收,可以保证最新写入的一段时间内的文件不会被回收。

设定时长阈值预先保存在服务器中,设定时长阈值可以是3、5或10等。

通常情况下,服务器在回收文件时,会存在延迟删除的情况,并且为了避免由于连续长时间对文件回收,造成的视频云存储系统的不稳定,则确定用户的剩余存储空间不足后,在将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中之前,所述方法还包括:

判断当前时间之前的预设时间范围内是否进行过文件回收;

如果否,进行后续步骤。

预设时间范围预先保存在服务器中,预设的时间范围可以是30分钟、1小时等。

服务器在确定用户的剩余存储空间不足后,在将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中之前,获取当前时间,判断当前时间之前的预设时间范围内是否进行过文件回收,如果是,则认为上一次文件还未回收完成,则不进行文件回收,继续确定用户的剩余存储空间是否不足;如果服务器判断当前时间之前的预设时间范围内未进行过文件回收,则当前视频云存储系统较稳定,可以进行后续步骤,完成文件回收。

当确定用户的剩余存储空间不足后,在判断当前时间之前的预设时间范围内是否进行过文件回收之前,所述方法还包括:

根据所述用户的存储空间,判断所述用户是否允许自身回收所述用户的存储空间中的文件;如果是,则进行后续步骤。

为了进一步提高用户的体验,则对于用户的存储空间中的文件进行回收时,需要用户对文件回收进行授权,用户可以在每次文件回收前进行授权,也可以是只进行一次授权等。如果用户授权,则说明该用户允许服务器回收该用户的存储空间中的文件,当服务器确定用户的存储空间不足时,对该用户的存储空间中的文件回收,如果用户没有授权,则说明该用户不允许服务器回收该用户的存储空间中的文件,当服务器确定用户的存储空间不足时,也不会对该用户的存储空间中的文件进行回收。

当然,如果服务器确定当前用户的存储空间不足,且当前时间正在进行文件回收,则忽略该次的确定结果;直至本次文件回收完成后,如果服务器仍确定用户的存储空间不足,则才进行一轮的文件回收。

下面以一个具体的实施例对上述各实施例进行说明,图3b为本发明实施例提供的一种文件回收的过程示意图,包括以下步骤:

s301:当确定用户的剩余存储空间不足后,判断当前时间之前的预设时间范围内是否进行过文件回收;如果否,进行s302。

如果服务器确定当前时间之前的预设时间范围内进行过文件回收,则不进行文件回收,继续确定用户的剩余存储空间是否不足,待服务器确定当前时间之前的预设时间范围内未进行过文件回收,进行s302。

s302:将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中。

s303:根据当前保存的回收次数,对当前保存的缩减次数进行更新;针对每个元数据桶,根据该元数据桶中文件的生命周期,及更新后的缩减参数,确定该元数据桶对应的剩余保留时长。

s304:根据当前时间,及每个元数据桶对应的剩余保留时长,确定每个元数据桶对应的第一创建时间阈值。

s305:根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值。

s306:在所述用户的存储空间中,选取创建时间最早的文件作为目标文件;根据预先保存的回收流控值,及所述目标文件的创建时间,确定第二创建时间阈值;判断所述第二创建时间阈值是否不超过所述目标创建时间阈值;如果是,进行s307;如果否,进行s308。

s307:根据所述第二创建时间阈值,更新所述目标创建时间阈值,进行s309。

s308:保持当前的目标创建时间阈值不变。

s309:在创建时间不超过所述目标创建时间的待回收文件中,回收保存时长超过设定时长阈值的文件。

s310:判断所述用户的剩余存储空间是否不足;如果是,进行s311,如果否,进行s312。

s311:对当前保存的回收次数进行更新,返回s303。

s312:将当前保存的回收次数恢复为初始值。

由于服务器在确定创建时间不超过目标创建时间的待回收文件后,在待回收的文件中回收保存时长超过设定时长阈值的文件,保存时长不超过设定时长阈值的文件不被回收,可以保证最新写入的一段时间内的文件不会被回收。

实施例6:

在上述各实施例的基础上,本发明实施例中还提供了一种服务器,如图4所示,包括:处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信;

所述存储器403中存储有计算机程序,当所述程序被所述处理器401执行时,使得所述处理器401执行如下步骤:

当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中;

针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值;

根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,回收创建时间不超过所述目标创建时间阈值的文件。

基于同一发明构思,本发明实施例中还提供了一种服务器,由于上述服务器解决问题的原理与文件回收方法相似,因此上述服务器的实施可以参见方法的实施,重复之处不再赘述。

上述服务器提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口402用于上述服务器与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述处理器可以是通用处理器,包括中央处理器、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

在本发明实施例中处理器执行存储器上所存放的程序时,实现将用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中,根据每个元数据桶中文件的生命周期,及当前保存的缩减参数,确定每个元数据桶对应的第一创建时间阈值,从而确定目标创建时间阈值,将创建时间不超过目标创建时间阈值的文件回收,通过缩减参数,变相缩减了每个文件的生命周期,从而对用户的存储空间中的文件进行回收,可以回收用户的存储空间中的未过期文件,从而进一步释放用户的剩余存储空间。

实施例7:

在上述各实施例的基础上,本发明实施例还提供了一种计算机存储可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:

当确定用户的剩余存储空间不足时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中;

针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值;

根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值,回收创建时间不超过所述目标创建时间阈值的文件。

基于同一发明构思,本发明实施例中还提供了一种计算机可读存储介质,由于处理器在执行上述计算机可读存储介质上存储的计算机程序时解决问题的原理与文件回收方法相似,因此处理器在执行上述计算机可读存储介质存储的计算机程序的实施可以参见方法的实施,重复之处不再赘述。

上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(mo)等、光学存储器如cd、dvd、bd、hvd等、以及半导体存储器如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd)等。

在本发明实施例中提供的计算机可读存储介质内存储计算机程序,计算机程序被处理器执行时实现将用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中,根据每个元数据桶中文件的生命周期,及当前保存的缩减参数,确定每个元数据桶对应的第一创建时间阈值,从而确定目标创建时间阈值,将创建时间不超过目标创建时间阈值的文件回收,通过缩减参数,变相缩减了每个文件的生命周期,可以回收用户的存储空间中的未过期文件,从而进一步释放用户的剩余存储空间。

图5为本发明实施例提供的一种文件回收装置示意图,该装置包括:

监控模块51,用于判断用户的剩余存储空间是否不足;

使能模块52,用于当所述监控模块的判断结果为是时,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中;针对每个元数据桶,根据该元数据桶中文件的生命周期,及当前保存的缩减参数,确定该元数据桶对应的剩余保留时长;根据当前时间,及该元数据桶对应的剩余保留时长,确定该元数据桶对应的第一创建时间阈值;根据每个元数据桶对应的第一创建时间阈值,确定目标创建时间阈值;

回收模块53,用于回收创建时间不超过所述目标创建时间阈值的文件。

所述使能模块52,具体用于根据该元数据桶中文件的生命周期,及预先设定的缩减时长,确定该元数据桶中对应的剩余保留时长;或根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶中对应的剩余保留时长。

所述使能模块52,具体用于根据当前所述用户的存储空间的已使用比例及预设的回收比例阈值,确定缩减比例;所述根据该元数据桶中文件的生命周期,及确定的缩减比例,确定该元数据桶中对应的剩余保留时长包括:确定该元数据桶中文件的生命周期与所述缩减比例的乘积;将该元数据桶中文件的生命周期与所述乘积的差值确定为该元数据桶中对应的剩余保留时长。

所述使能模块52,还用于根据当前保存的回收次数,对当前保存的缩减参数进行更新;

所述使能模块52,还用于所述回收创建时间不超过所述目标创建时间阈值的文件后,当所述监控模块的判断结果为是时,对当前保存的回收次数进行更新;当所述监控模块的判断结果为否时,将当前保存的回收次数恢复为初始值。

所述使能模块52,还用于在所述用户的存储空间中,选取创建时间最早的文件作为目标文件;根据预先保存的回收流控值,及所述目标文件的创建时间,确定第二创建时间阈值;判断所述第二创建时间阈值是否不超过所述目标创建时间阈值;如果是,根据所述第二创建时间阈值,更新所述目标创建时间阈值。

所述回收模块53,具体用于在创建时间不超过所述目标创建时间的待回收文件中,回收保存时长超过设定时长阈值的文件。

所述使能模块52,还用于在所述监控模块的判断结果为是后,判断当前时间之前的预设时间范围内是否进行过文件回收;如果否,将所述用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中。

本发明实施例中,服务器将用户的存储空间中具有相同生命周期的文件划分到一个元数据桶中,根据每个元数据桶中文件的生命周期,及当前保存的缩减参数,确定每个元数据桶对应的第一创建时间阈值,从而确定目标创建时间阈值,将创建时间不超过目标创建时间阈值的文件回收,通过缩减参数,变相缩减了每个文件的生命周期,可以回收用户的存储空间中的未过期文件,从而进一步释放用户的剩余存储空间。

对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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