CN105868216A - 一种实现对象过期操作的方法、装置和设备 - Google Patents

一种实现对象过期操作的方法、装置和设备 Download PDF

Info

Publication number
CN105868216A
CN105868216A CN201510032593.4A CN201510032593A CN105868216A CN 105868216 A CN105868216 A CN 105868216A CN 201510032593 A CN201510032593 A CN 201510032593A CN 105868216 A CN105868216 A CN 105868216A
Authority
CN
China
Prior art keywords
record
expired
module
bit stream
mission bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510032593.4A
Other languages
English (en)
Other versions
CN105868216B (zh
Inventor
郑涔
周帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510032593.4A priority Critical patent/CN105868216B/zh
Priority to PCT/CN2016/071174 priority patent/WO2016116020A1/zh
Publication of CN105868216A publication Critical patent/CN105868216A/zh
Application granted granted Critical
Publication of CN105868216B publication Critical patent/CN105868216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了一种实现对象过期操作的方法、装置和设备,所述方法包括:获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;在预设时间,确定过期任务的任务信息;根据所述任务信息筛选出所述第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。本申请实施例公开的一种实现对象过期操作的方法、装置和设备,可以降低实现对象过期操作的成本。

Description

一种实现对象过期操作的方法、装置和设备
技术领域
本申请涉及计算机数据处理技术领域,特别涉及一种实现对象过期操作的方法、装置和设备。
背景技术
计算机领域中,文件、键值对数据或数据库记录等都可以被称为对象。对象存储系统通常可以用于为用户保存、读取或删除对象。
对象存储系统中为用户保存的对象可能为临时对象,所述临时对象需要在预设的时间后进行删除。这种对过期的对象进行删除即是对对象进行过期操作。
现有的实现对象过期操作的方法包括:为每一对象设置与对象相关联的生命周期,将所述对象的生命周期保存在对象的元数据中,通过设置一个或多个后台线程,在预定的时间可以对对象存储系统中所有对象的元数据进行扫描,判断每一对象元数据中的生命周期是否已过期,若已过期,删除所述对象。
在实现本申请过程中,发明人发现现有技术中至少存在如下问题:所述对象存储系统中,需要执行过期操作的对象可能为一小部分,现有的实现对象过期操作的方法需要设置线程对对象存储系统中的所有对象的元数据进行扫描,使得实现对象过期操作的成本较高。
发明内容
本申请实施例的目的是提供一种实现对象过期操作的方法、装置和设备,以降低实现对象过期操作的成本。
为解决上述技术问题,本申请实施例提供一种实现对象过期操作的方法、装置和设备是这样实现的:
一种实现对象过期操作的方法,包括:获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;在预设时间,确定过期任务的任务信息;根据所述任务信息筛选出所述第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
优选方案中,所述方法在存储第一记录之前还包括:根据所述请求生成第二记录;所述第二记录与第一记录一一对应。
优选方案中,所述第一记录包括:对象名、自动过期时间和自动过期日期;所述自动过期日期根据所述自动过期时间来确定。
优选方案中,所述第一记录还包括:第一属性值。
优选方案中,所述第一记录还包括:用户编号。
一种实现对象过期操作的装置,包括:第一记录模块、任务信息模块和过期操作执行模块;其中,所述第一记录模块,用于获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;所述任务信息模块,用于在预设时间确定过期任务的任务信息,并将所述任务信息发送给过期操作执行模块;所述过期操作执行模块,用于根据所述任务信息模块确定的任务信息筛选出所述第一记录模块中生成的第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
一种实现对象过期操作的设备,包括:处理器和存储器;所述处理器,用于获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;所述处理器还用于在预设时间确定过期任务的任务信息,根据所述任务信息筛选出所述存储器中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作;所述存储器,用于存储对象以及与对象对应的第一记录。
由以上本申请实施例提供的技术方案可见,本申请实施例公开的实现对象过期操作的方法、装置和设备,对设置了自动过期时间的对象生成与所述对象对应的第一记录,第一记录中包括自动过期时间和自动过期日期,在执行对象过期操作时,根据任务信息中的当前时间和第一记录中的自动过期日期、自动过期时间可以确定目标对象,对确定的目标对象执行过期操作,本申请实施例的方案可以通过筛选与对象关联的第一记录的方式快捷地筛选出需要执行过期操作的对象,避免对对象存储系统中的所有对象进行扫描,节省了实现对象过期操作的成本。进一步地,在第一记录中添加用户编号,可以便于记录设置对象自动过期时间的用户信息。进一步地,在第一记录中添加第一属性值以及在任务信息中添加任务编号,可以在具有多个执行对象过期操作的模块时,实现自动分配过期操作任务的功能。进一步地,生成与第一记录的第二记录,可以判断是否已经对所述对象设置过自动过期时间,若已经设置过,还可以实现对已经设置过生命周期的对象进行自动过期时间的更改。此外,本申请实施例公开的实现对象自动过期的方法、装置和设备,可以与已有的对象存储系统很好地耦合,从而可以对已有的对象存储系统中的对象实现自动过期操作。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实现对象过期操作的一个方法实施例的流程图;
图2是本申请实现对象过期操作的一个装置实施例的模块图;
图3是本申请实现对象过期操作的一个装置实施例中第一记录模块的模块图;
图4是本申请实现对象过期操作的一个装置实施例中过期操作执行模块的模块图;
图5是本申请实现对象过期操作的一个设备实施例的组成示意图。
具体实施方式
本申请实施例提供一种实现对象过期操作的方法、装置和设备。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1是本申请实现对象过期操作的一个方法实施例的流程图。如图1所示,所述实现对象过期操作的方法可以包括:
S101:获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录存储至数据库中。
实现对象过期操作的装置可以获取设置对象生命周期的请求。所述请求可以是预先设置在所述对象过期操作装置中的,也可以是所述对象过期操作装置接收到的用户发来的设置对象生命周期的请求。所述请求可以包括:对象名和自动过期时间。若所述请求是由用户发来的,所述请求还可以包括:用户编号。所述用户编号可以用于标识设置对象生命周期的用户。
所述自动过期时间可以采用绝对时间的方式来表示。例如,所述自动过期时间可以是自1970年1月1日0点起经过的秒数。所述自动过期时间也可以采用年月日的时间方式来表示。
根据所述设置对象生命周期的请求可以生成与所述对象对应的第一记录,可以将所述第一记录存储至数据库中。所述第一记录可以包括:对象名、自动过期日期和自动过期时间。所述自动过期日期可以根据所述自动过期时间来确定,所述自动过期日期可以是所述自动过期时间到达的当天的日期。例如,所述自动过期时间为172810秒(即2天10秒),那么自动过期的日期可以是1970年1月3日。
在另一个实施例中,所述第一记录还可以包括:所述第一记录的记录类型。所述记录类型可以用于表示所述第一记录的数据类型。
在另一个实施例中,所述第一记录还可以包括:用户编号。
在另一个实施例中,所述第一记录还可包括:第一属性值。所述第一属性值根据第一预设值来确定,具体可以包括:为所述对象名做哈希运算,得到一个整数,利用所述整数对第一预设值进行取余运算得到的结果作为第一属性的值。
本申请中所述第一记录可以采用键值对的形式来实现,所述键值对中的key值可以包括自动过期日期。例如,假设所述第一记录包括对象名和自动过期日期,则可以将自动过期日期作为键值对中的key值,将对象名作为键值对中的value值。假设所述第一记录包括:用户编号、记录类型、自动过期日期、自动过期时间和对象名,则可以将记录类型、自动过期日期、自动过期时间和对象名作为键值对中的key值,将用户编号作为键值对中的value值。当第一记录还包括第一属性值时,采用键值对的形式来实现的第一记录中,所述键值对的key值还可以包括:第一属性值。例如,假设所述第一记录包括:用户编号、记录类型、自动过期日期、第一属性值、自动过期时间和对象名,则可以将记录类型、自动过期日期、第一属性值、自动过期时间和对象名作为键值对中的key值,将用户编号作为键值对中的value值。
在另一个实施例中,所述方法还可以包括,根据所述请求生成第二记录。所述第二记录可以包括:对象名与自动过期时间。所述第二记录可以与第一记录一一对应。
所述第二记录可以采用键值对的形式来实现,第二记录中的对象名可以作为键值对的key值,第二记录中的自动过期时间可以作为键值对的value值。
当所述方法还生成了第二记录时,相应地,将第一记录存储至数据库中之前,还可以包括:在所述数据库中写入第二记录,若第二记录写入成功,可以写入与第二记录对应的第一记录。
上述方法实施例中,通过在数据库中增加写入第二记录,可以判断是否已经对所述对象设置过自动过期时间。
在另一个实施例中,若写入第二记录不成功,所述方法还可以包括:判断所述数据库中是否存在对象名与第二记录对象名相同的第三记录;若不存在,输出写入第二记录不成功的原因;若存在,读取所述第三记录,查找所述数据库中与第三记录对应的第四记录,删除第四记录与第三记录,在数据库中写入第二记录。所述第四记录的记录类型可以与第一记录的记录类型相同。
通过上述步骤,可以实现对已经设置过生命周期的对象进行自动过期时间的更改。
S102:在预设时间,确定过期任务的任务信息。
在预设时间可以确定过期任务的任务信息。所述预设时间可以是从第一时间起每间隔第一时间间隔的时间。例如,从2010年1月1日0点起每间隔1小时的时间,即0点、1点、2点等。
所述任务信息可以包括:当前时间。例如当前时间为2015年01月01日02时0分0秒,则所述任务信息可以为“当前时间:2015年01月01日02时0分0秒”。
在另一个实施例中,所述任务信息还可以包括任务编号和任务总数目。当所述任务信息包括任务编号和任务总数目时,所述在预设时间确定过期任务信息,具体还可以包括:在预设时间,确定过期任务的总数目;根据过期任务的总数目,确定所述过期任务的任务编号;确定过期任务的任务信息;所述过期任务的任务信息包括:任务编号、任务总数目和当前时间。
所述任务的总数目可以根据当前服务器可以处理的任务数目来确定,具体地,可以接收用于执行过期操作的模块发来的第一信号,根据所述接收到的第一信号的数目可以确定过期任务的总数目。例如,可以接收用于执行过期操作的模块在预设时间间隔发来的心跳线程,接收到心跳线程可以说明所述执行过期操作的模块当前可以处理过期任务,假设接收到的第一信号的数目为5,则过期任务的总数目为5。
根据所述过期任务的总数目,可以确定过期任务的任务编号。例如,过期任务的总数目为5,可以确定5个过期任务的任务编号分别为:0、1、2、3、4。所述任务信息可以包括:任务编号、任务总数目和当前时间。例如,任务编号为1的过期任务的任务信息可以为“任务编号:1,任务总数目:5,当前时间:2015年01月01日02时0分0秒”。
当实现对象自动过期的装置中包含多个执行过期操作的模块时,通过确定任务总数目,对任务进行编号,可以实现对每个自动过期操作模块进行自动任务分配的功能。
S103:根据所述任务信息筛选出所述第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
根据所述任务信息,可以筛选出所述数据库中的候选第一记录。具体地,根据所述任务信息中的当前时间确定当前日期,筛选出所述数据库中自动过期日期与所述当前日期相同的第一记录,判断所述筛选出的第一记录中的自动过期时间是否已经到达,若是,可以确定所述筛选出的第一记录为候选第一记录。根据所述候选第一记录中的对象名可以确定目标对象,具体地,所述候选第一记录中对象名所对应的对象可以是目标对象。
例如,所述任务信息为:当前时间:2015年01月01日02时0分0秒,那么当前日期可以为2015年01月01日。查询到的自动过期日期与所述当前日期相同且自动过期时间已经到达的候选第一记录假设包括:“记录类型:第一记录,自动过期日期:2015年01月01日,自动过期时间:2015年01月01日01时10分0秒,对象名:A”和“记录类型:第一记录,自动过期日期:2015年01月01日,自动过期时间:2015年01月01日01时15分0秒,对象名:B”,根据所述候选第一记录中的对象名A和对象名B可以确定目标对象为对象A和对象B。
在另一个实施例中,当所述第一记录还包括第一属性值,并且所述任务信息还包括任务总数目和任务编号时,所述筛选出候选第一记录的方法可以包括:根据所述任务信息中的任务编号、任务总数目和第一预设值,采用第二预设规则得到第一属性的第一范围,根据所述任务信息中的当前时间确定当前日期,筛选出数据库中第一属性的值属于第一范围并且自动过期日期与当前日期相同的第一记录,判断所述筛选出的第一记录中的自动过期时间是否已经到达,若是,可以确定所述筛选出的第一记录为候选第一记录。
所述第二预设规则具体可以用下述公式来表示:
start_bucket_no=es_no/es_count×bucket_count (1)
end_bucket_no=(es_no+1)/es_count×bucket_count-1
公式(1)中,start_bucket_no和end_bucket_no之间形成的范围可以是第一范围;es_no表示任务编号;es_count表示任务总数目;bucket_count表示第一预设值。
例如,所述任务信息为“任务编号:1,任务总数目:5,当前日期:2015年01月01日”。假设当前时间为2015年01月01日02时0分0秒,第一预设值为1024,可以计算得到第一范围为:204.8~409.6,那么可以筛选出第一属性的值属于第一范围204.8~409.6,并且自动过期日期为2015年01月01日的第一记录,判断所述筛选出的第一记录中的自动过期时间是否已经到达,若是,可以确定所述筛选出的第一记录为候选第一记录,例如候选第一记录可以包括:“记录类型:第一记录,自动过期日期:2015年01月01日,第一属性值:230,自动过期时间:2015年01月01日01时10分0秒,对象名:A”和“记录类型:第一记录,自动过期日期:2015年01月01日,第一属性值:260,自动过期时间:2015年01月01日01时15分0秒,对象名:B”。
当实现对象过期操作的装置中包含多个用于执行对象过期操作的模块时,通过上述步骤,每一用于执行对象过期操作的模块可以确定所述模块需要处理的目标对象。
上述实施例公开的实现对象过期操作的方法,只对设置了自动过期时间的对象生成与所述对象对应的第一记录,第一记录中包括自动过期时间和自动过期日期,在执行对象过期操作时,根据任务信息中的当前时间和第一记录中的自动过期日期、自动过期时间可以确定目标对象,对确定的目标对象执行过期操作,本申请实施例公开的方法通过筛选与对象关联的第一记录的方式可以快捷地筛选出需要执行过期操作的对象,避免对对象存储系统中的所有对象进行扫描,节省了实现对象过期操作的成本。进一步地,在第一记录中添加用户编号,可以便于记录设置对象自动过期时间的用户信息。进一步地,在第一记录中添加第一属性值以及在任务信息中添加任务编号,可以在具有多个执行对象过期操作的模块是,实现自动分配过期操作任务的功能。进一步地,生成与第一记录的第二记录,可以判断是否已经对所述对象设置过自动过期时间,若已经设置过,还可以实现对已经设置过生命周期的对象进行自动过期时间的更改。
下面介绍本申请实现对象过期操作的装置实施例。
图2是本申请实现对象过期操作的一个装置实施例的模块图。如图2所示,所述实现对象过期操作的装置,可以包括:第一记录模块210、任务信息模块220和过期操作执行模块230。
所述第一记录模块210,可以用于获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录。所述第一记录模块210,还可以用于根据所述请求生成与所述第一记录对应的第二记录。
图3是本申请实现对象过期操作的一个装置实施例中第一记录模块的模块图。如图3所示,所述第一记录模块210可以包括:请求获取模块211、第一记录生成模块212和存储模块213。其中,
所述请求获取模块211,可以用于获取设置对象生命周期的请求。所述请求可以包括:对象名和自动过期时间。
所述第一记录生成模块212,可以用于根据所述请求获取模块211获取的请求生成与所述对象对应的第一记录。所述第一记录可以包括:对象名、自动过期时间和自动过期日期。
所述存储模块213,可以用于存储所述第一记录生成模块212生成的第一记录。
在另一个实施例中,所述第一记录模块210还可以包括:第二记录生成模块214。所述第二记录生成模块214,可以用于根据所述请求生成与所述第一记录对应的第二记录。相应地,所述存储模块213还可以用于存储所述第二记录生成模块214生成的第二记录。所述第二记录可以包括:对象名与自动过期时间。
所述任务信息模块220,可以用于在预设时间确定过期任务的任务信息,并将所述任务信息发送给过期操作执行模块230。
所述过期操作执行模块230,可以用于根据所述任务信息模块220确定的任务信息筛选出所述第一记录模块210中生成的第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
需要说明的是,所述实现对象过期操作的装置中,可以设置有一个或多个过期操作执行模块230。所述多个过期操作执行模块230可以同时接收任务信息模块220分配来的任务信息,并根据接收到的任务信息确定目标对象,对目标对象执行对象过期操作。
图4是本申请实现对象过期操作的一个装置实施例中过期操作执行模块的模块图。如图4所示,所述过期操作执行模块230可以包括:任务信息接收模块231、候选第一记录模块232、目标对象确定模块233和目标对象过期模块234。其中,
所述任务信息接收模块231,可以用于接收任务信息模块220发来的任务信息。
所述候选第一记录模块232,可以用于根据所述任务信息接收模块231接收到的任务信息筛选出第一记录中的候选第一记录。
所述目标对象确定模块233,可以用于确定与所述候选第一记录模块232筛选出的候选第一记录对应的目标对象。
所述目标对象过期模块234,可以用于对所述目标对象确定模块233确定的目标对象执行过期操作。
需要说明的是,所述实现对象过期操作的装置可以是集成在服务器中的,也可以是独立与服务器并可以与服务器进行数据交互的装置,本申请对此并不作出限定。
上述实施例公开的实现对象过期操作的装置与本申请实现对象过期操作的方法实施例相对应,可以实现本申请方法实施例的技术效果。
下面介绍本申请实现对象过期操作的设备实施例。
图5是本申请实现对象过期操作的一个设备实施例的组成示意图。如图5所示,所述设备可以包括:处理器501和存储器502。其中,
所述处理器501,可以用于获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;还可以用于在预设时间确定过期任务的任务信息,根据所述任务信息筛选出所述存储器中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
所述存储器502,可以用于存储对象以及与对象对应的第一记录。
在另一个实施例中,所述处理器501,还可以用于生成与第一记录对应的第二记录。相应地,所述存储器502,还可以用于存储第二记录。
上述实施例公开的实现对象过期操作的设备与本申请实现对象过期操作的方法实施例、装置实施例相对应,可以实现本申请方法实施例和装置实施例的技术效果。
此外,上述实施例公开的实现对象自动过期的方法、装置和设备,可以与已有的对象存储系统很好地耦合,从而可以对已有的对象存储系统中的对象实现自动过期操作。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java HardwareDescription Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware DescriptionLanguage)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit HardwareDescription Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、AtmelAT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。该计算机软件产品可以包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。该计算机软件产品可以存储在内存中,内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括短暂电脑可读媒体(transitory media),如调制的数据信号和载波。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。

Claims (24)

1.一种实现对象过期操作的方法,其特征在于,包括:
获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;
在预设时间,确定过期任务的任务信息;
根据所述任务信息筛选出所述第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
2.如权利要求1所述的一种实现对象过期操作的方法,其特征在于,所述方法在存储第一记录之前还包括:根据所述请求生成第二记录;所述第二记录与第一记录一一对应。
3.如权利要求2所述的一种实现对象过期操作的方法,其特征在于,所述第二记录包括:对象名与自动过期时间。
4.如权利要求2所述的一种实现对象过期操作的方法,其特征在于,所述存储第一记录包括:在数据库中写入第二记录,若第二记录写入成功,写入与第二记录对应的第一记录。
5.如权利要求4所述的一种实现对象过期操作的方法,其特征在于,所述存储第一记录包括:若写入第二记录不成功,判断所述数据库中是否存在对象名与第二记录对象名相同的第三记录;若不存在,输出写入第二记录不成功的原因。
6.如权利要求5所述的一种实现对象过期操作的方法,其特征在于,若所述数据库中存在对象名与第二记录对象名相同的第三记录,所述存储第一记录包括:查找所述数据库中与第三记录对应的第四记录,删除第四记录与第三记录,在数据库中写入第二记录;所述第四记录的记录类型与第一记录的记录类型相同。
7.如权利要求1所述的一种实现对象过期操作的方法,其特征在于,所述设置对象生命周期的请求包括:对象名和自动过期时间。
8.如权利要求7所述的一种实现对象过期操作的方法,其特征在于,所述第一记录包括:对象名、自动过期时间和自动过期日期;所述自动过期日期根据所述自动过期时间来确定。
9.如权利要求8所述的一种实现对象过期操作的方法,其特征在于,所述任务信息包括:当前时间。
10.如权利要求9所述的一种实现对象过期操作的方法,其特征在于,所述根据任务信息筛选出所述第一记录中的候选第一记录,包括:根据所述当前时间确定当前日期,筛选出自动过期日期与所述当前日期相同的第一记录,判断所述筛选出的第一记录中的自动过期时间是否已经到达,若是,所述筛选出的第一记录确定为候选第一记录。
11.如权利要求8所述的一种实现对象过期操作的方法,其特征在于,所述第一记录还包括:第一属性值。
12.如权利要求11所述的一种实现对象过期操作的方法,其特征在于,所述第一属性值根据第一预设值来确定,包括:为所述对象名做哈希运算,得到一个整数,利用所述整数对第一预设值进行取余运算得到的结果作为第一属性的值。
13.如权利要求12所述的一种实现对象过期操作的方法,其特征在于,所述任务信息还包括:任务编号和任务总数目。
14.如权利要求13所述的一种实现对象过期操作的方法,其特征在于,所述任务的总数目根据当前服务器可处理的任务数目来确定,包括:接收用于执行过期操作的模块发来的第一信号,根据所述接收到的第一信号的数目确定过期任务的总数目。
15.如权利要求13所述的一种实现对象过期操作的方法,其特征在于,当所述第一记录包括第一属性值,并且所述任务信息包括任务总数目和任务编号时,所述筛选出候选第一记录的方法包括:
根据所述任务信息中的任务编号、任务总数目和第一预设值,采用第二预设规则得到第一属性的第一范围;
根据所述当前时间确定当前日期,筛选出第一属性的值属于第一范围并且自动过期日期与所述当前日期相同的第一记录;
判断所述筛选出的第一记录中的自动过期时间是否已经到达,若是,所述筛选出的第一记录确定为候选第一记录。
16.如权利要求8所述的一种实现对象过期操作的方法,其特征在于,所述第一记录还包括:所述第一记录的记录类型。
17.如权利要求8所述的一种实现对象过期操作的方法,其特征在于,所述第一记录还包括:用户编号。
18.如权利要求8所述的一种实现对象过期操作的方法,其特征在于,所述第一记录采用键值对的形式来实现。
19.一种实现对象过期操作的装置,其特征在于,包括:第一记录模块、任务信息模块和过期操作执行模块;其中,
所述第一记录模块,用于获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,存储所述第一记录;
所述任务信息模块,用于在预设时间确定过期任务的任务信息,并将所述任务信息发送给过期操作执行模块;
所述过期操作执行模块,用于根据所述任务信息模块确定的任务信息筛选出所述第一记录模块中生成的第一记录中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作。
20.如权利要求19所述的一种实现对象过期操作的装置,其特征在于,所述第一记录模块包括:请求获取模块、第一记录生成模块和存储模块;其中,
所述请求获取模块,用于获取设置对象生命周期的请求;所述请求包括:对象名和自动过期时间;
所述第一记录生成模块,用于根据所述请求获取模块获取的请求生成与所述对象对应的第一记录;所述第一记录包括:对象名、自动过期时间和自动过期日期;
所述存储模块,用于存储所述第一记录生成模块生成的第一记录。
21.如权利要求20所述的一种实现对象过期操作的装置,其特征在于,所述第一记录模块还包括:第二记录生成模块;所述第二记录生成模块,用于根据所述请求生成与所述第一记录对应的第二记录;
相应地,所述存储模块还用于存储所述第二记录生成模块生成的第二记录;所述第二记录包括:对象名与自动过期时间。
22.如权利要求19所述的一种实现对象过期操作的装置,其特征在于,所述过期操作执行模块包括:任务信息接收模块、候选第一记录模块、目标对象确定模块和目标对象过期模块;其中,
所述任务信息接收模块,用于接收任务信息模块发来的任务信息;
所述候选第一记录模块,用于根据所述任务信息接收模块接收到的任务信息筛选出第一记录中的候选第一记录;
所述目标对象确定模块,用于确定与所述候选第一记录模块筛选出的候选第一记录对应的目标对象;
所述目标对象过期模块,用于对所述目标对象确定模块确定的目标对象执行过期操作。
23.一种实现对象过期操作的设备,其特征在于,包括:处理器和存储器;其中,
所述处理器,用于获取设置对象生命周期的请求,根据所述请求生成与所述对象对应的第一记录,将所述第一记录存储至存储器中;所述处理器还用于在预设时间确定过期任务的任务信息,根据所述任务信息筛选出所述存储器中的候选第一记录,确定与所述候选第一记录对应的目标对象,对所述目标对象执行过期操作;
所述存储器,用于存储对象以及与对象对应的第一记录。
24.如权利要求23所述的一种实现对象过期操作的设备,其特征在于,所述处理器,还用于生成与第一记录对应的第二记录;相应地,所述存储器还用于存储第二记录。
CN201510032593.4A 2015-01-22 2015-01-22 一种实现对象过期操作的方法、装置和设备 Active CN105868216B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510032593.4A CN105868216B (zh) 2015-01-22 2015-01-22 一种实现对象过期操作的方法、装置和设备
PCT/CN2016/071174 WO2016116020A1 (zh) 2015-01-22 2016-01-18 一种实现对象过期操作的方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510032593.4A CN105868216B (zh) 2015-01-22 2015-01-22 一种实现对象过期操作的方法、装置和设备

Publications (2)

Publication Number Publication Date
CN105868216A true CN105868216A (zh) 2016-08-17
CN105868216B CN105868216B (zh) 2019-11-19

Family

ID=56416430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510032593.4A Active CN105868216B (zh) 2015-01-22 2015-01-22 一种实现对象过期操作的方法、装置和设备

Country Status (2)

Country Link
CN (1) CN105868216B (zh)
WO (1) WO2016116020A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106407269A (zh) * 2016-08-25 2017-02-15 刘华英 存储空间对象的处理方法和装置
CN109948098A (zh) * 2019-02-21 2019-06-28 网宿科技股份有限公司 数据过滤方法、缓存信息的记录方法及装置
CN111061689A (zh) * 2019-12-13 2020-04-24 北京金山云网络技术有限公司 用于对象存储系统的文件过期处理方法、装置及电子设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110737389B (zh) * 2018-07-19 2023-05-16 杭州海康威视系统技术有限公司 存储数据的方法和装置
CN110033249B (zh) * 2019-03-01 2023-09-29 创新先进技术有限公司 一种流水落表方法及装置
CN112948363A (zh) * 2021-02-03 2021-06-11 北京金山云网络技术有限公司 一种数据处理方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004199456A (ja) * 2002-12-19 2004-07-15 Kyocera Mita Corp 印刷システム
CN101055591A (zh) * 2007-05-25 2007-10-17 中兴通讯股份有限公司 一种全内存数据库的数据存取方法
CN101060402A (zh) * 2006-04-21 2007-10-24 盛趣信息技术(上海)有限公司 基于Hash-map的多点缓存装置
CN101093506A (zh) * 2006-06-21 2007-12-26 京瓷美达株式会社 具有辅助存储装置的图像形成装置
US20080243966A1 (en) * 2007-04-02 2008-10-02 Croisettier Ramanakumari M System and method for managing temporary storage space of a database management system
CN102024015A (zh) * 2009-09-18 2011-04-20 软件股份公司 用于批量删除数据库系统的数据记录的方法
CN103870549A (zh) * 2014-02-27 2014-06-18 中国石油天然气股份有限公司 石油地质软件数据的清理方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004199456A (ja) * 2002-12-19 2004-07-15 Kyocera Mita Corp 印刷システム
CN101060402A (zh) * 2006-04-21 2007-10-24 盛趣信息技术(上海)有限公司 基于Hash-map的多点缓存装置
CN101093506A (zh) * 2006-06-21 2007-12-26 京瓷美达株式会社 具有辅助存储装置的图像形成装置
US20080243966A1 (en) * 2007-04-02 2008-10-02 Croisettier Ramanakumari M System and method for managing temporary storage space of a database management system
CN101055591A (zh) * 2007-05-25 2007-10-17 中兴通讯股份有限公司 一种全内存数据库的数据存取方法
CN102024015A (zh) * 2009-09-18 2011-04-20 软件股份公司 用于批量删除数据库系统的数据记录的方法
CN103870549A (zh) * 2014-02-27 2014-06-18 中国石油天然气股份有限公司 石油地质软件数据的清理方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106407269A (zh) * 2016-08-25 2017-02-15 刘华英 存储空间对象的处理方法和装置
CN109948098A (zh) * 2019-02-21 2019-06-28 网宿科技股份有限公司 数据过滤方法、缓存信息的记录方法及装置
CN111061689A (zh) * 2019-12-13 2020-04-24 北京金山云网络技术有限公司 用于对象存储系统的文件过期处理方法、装置及电子设备

Also Published As

Publication number Publication date
CN105868216B (zh) 2019-11-19
WO2016116020A1 (zh) 2016-07-28

Similar Documents

Publication Publication Date Title
CN105868216A (zh) 一种实现对象过期操作的方法、装置和设备
CN112036736B (zh) 一种工作流创建方法及装置
RU2728820C1 (ru) Способ и устройство обработки данных на основе блокчейна
CN105989089A (zh) 一种数据对比方法及装置
CN107679700A (zh) 业务流程处理方法、装置及服务器
US20130018848A1 (en) Determining and presenting provenance and lineage for content in a content management system
CN110399359B (zh) 一种数据回溯方法、装置及设备
CN109241026A (zh) 数据管理的方法、装置及系统
CN107066519A (zh) 一种任务检测方法及装置
CN108763059A (zh) 一种异常检测方法、装置及设备
US11321318B2 (en) Dynamic access paths
CN109597678A (zh) 任务处理方法及装置
CN109166021A (zh) 记账方法、装置及业务财务一体化系统
CN108255471A (zh) 一种基于配置套件的系统配置项配置装置、方法及设备
CN107451204A (zh) 一种数据查询方法、装置及设备
CN107577527A (zh) 任务生成、调度方法及装置
CN107025259A (zh) 一种详情页面的打开方法、设备以及移动终端
CN109656946A (zh) 一种多表关联查询方法、装置及设备
CN106156050A (zh) 一种数据处理方法及装置
CN112231531A (zh) 一种基于opentsdb的数据展示方法、设备及介质
US9852166B2 (en) Task handling in a multisystem environment
CN105426676A (zh) 一种钻井数据处理方法和系统
CN110119442A (zh) 一种动态搜索方法、装置、设备及介质
US20190087156A1 (en) Sorting a table in analytical databases
US10769125B2 (en) Ordering records for timed meta-data generation in a blocked record environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant