CN107357808B - 数据管理方法、装置及设备 - Google Patents
数据管理方法、装置及设备 Download PDFInfo
- Publication number
- CN107357808B CN107357808B CN201710389475.8A CN201710389475A CN107357808B CN 107357808 B CN107357808 B CN 107357808B CN 201710389475 A CN201710389475 A CN 201710389475A CN 107357808 B CN107357808 B CN 107357808B
- Authority
- CN
- China
- Prior art keywords
- data structure
- information
- deleted
- data
- meta
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
Abstract
本发明实施例提供一种数据管理方法、装置及设备,该方法包括:接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识,所述待删除数据结构包括元信息和多个数据信息,所述元信息和各所述数据信息的版本号相同;根据所述待删除数据结构的标识,获取所述待删除数据结构的元信息;修改所述元信息的版本号,并向所述客户端发送删除成功响应信息;根据预设垃圾回收机制,删除所述待删除数据结构,所述预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。用于降低向客户端响应的时长,进而提高用户体验。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种数据管理方法、装置及设备。
背景技术
目前,数据库可支持的数据结构越来越多,例如,多数数据库可以支持键值对(key-value,简称KV)数据结构、集合类数据结构等。
集合类数据结构可以包括链表数据结构、哈希数据、有序集数据结构等。在集合类数据结构中通常包括元信息和多个数据信息,元信息用于描述集合类数据结构的属性,例如,元信息可以描述集合类数据结构的名称、类型、大小等。在现有技术中,当用户需要删除集合类数据结构时,用户通过客户端向数据库服务器发送删除指令,数据库服务器根据客户端发送的删除指令,对相应的集合类数据结构进行删除,并在对集合类数据结构删除完成时,向客户端反馈删除成功响应消息。
然而,当集合类数据结构中包括的数据信息较多时,数据库服务器需要较长的时间才能完成集合类数据结构的删除,使得客户端需要等待较长时间才能够获取响应消息,导致用户体验差。
发明内容
本发明实施例提供一种数据管理方法、装置及设备,降低了向客户端响应的时长,进而提高用户体验。
第一方面,本发明实施例提供一种数据管理方法,包括:
接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识,所述待删除数据结构包括元信息和多个数据信息,所述元信息和各所述数据信息的版本号相同;
根据所述待删除数据结构的标识,获取所述待删除数据结构的元信息;
修改所述元信息的版本号,并向所述客户端发送删除成功响应信息;
根据预设垃圾回收机制,删除所述待删除数据结构,所述预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。
在一种可能的实施方式中,根据预设垃圾回收机制,删除所述待删除数据结构,包括:
删除所述待删除数据结构中、版本号与所述元信息的版本号不同的数据信息;
获取所述待删除数据结构的元信息的状态;
若所述待删除数据结构的元信息的状态为无效状态,则删除所述待删除数据结构的元信息。
在另一种可能的实施方式中,在修改所述元信息的版本号之后,还包括:
将所述待删除数据结构的元信息的状态设置为无效状态。
在另一种可能的实施方式中,在将所述元信息的状态设置为无效状态之后,还包括:
接收所述客户端发送的写指令,所述写指令中包括所述待删除数据结构的标识;
将所述待删除数据结构的元信息的状态为设置为有效状态。
在另一种可能的实施方式中,所述待删除数据信息中的元信息和所述数据信息为key/value数据对。
在另一种可能的实施方式中,所述待删除数据结构的元信息的版本号位于所述元信息的value中;
所述待删除数据结构的数据信息的版本号位于所述数据信息的key中。
第二方面,本发明实施例提供一种数据管理装置,包括接收模块、获取模块、修改模块、发送模块和删除模块,其中,
所述接收模块用于,接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识,所述待删除数据结构包括元信息和多个数据信息,所述元信息和各所述数据信息的版本号相同;
所述获取模块用于,根据所述待删除数据结构的标识,获取所述待删除数据结构的元信息;
所述修改模块用于,修改所述元信息的版本号;
所述发送模块用于,向所述客户端发送删除成功响应信息;
所述删除模块用于,根据预设垃圾回收机制,删除所述待删除数据结构,所述预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。
在一种可能的实施方式中,所述删除模块具体用于:
删除所述待删除数据结构中、版本号与所述元信息的版本号不同的数据信息;
获取所述待删除数据结构的元信息的状态;
若所述待删除数据结构的元信息的状态为无效状态,则删除所述待删除数据结构的元信息。
在另一种可能的实施方式中,所述装置还包括设置模块,其中,
所述设置模块用于,在所述修改模块修改所述元信息的版本号之后,将所述待删除数据结构的元信息的状态设置为无效状态。
在另一种可能的实施方式中,所述接收模块还用于,在所述设置模块将所述元信息的状态设置为无效状态之后,接收所述客户端发送的写指令,所述写指令中包括所述待删除数据结构的标识;
所述设置模块还用于,将所述待删除数据结构的元信息的状态为设置为有效状态。
在另一种可能的实施方式中,所述待删除数据信息中的元信息和所述数据信息为key/value数据对。
在另一种可能的实施方式中,所述待删除数据结构的元信息的版本号位于所述元信息的value中;
所述待删除数据结构的数据信息的版本号位于所述数据信息的key中。
第三方面,本发明实施例提供一种数据库服务器,包括第二方面或第三方面任一项所述的数据管理装置。
本发明实施例提供的数据管理方法、装置及设备,在数据库服务器接收到客户端发送的删除指令之后,数据库服务器根据待删除数据结构的标识,获取待删除数据结构的元信息,修改元信息的版本号,并向客户端发送删除成功响应信息,并根据预设垃圾回收机制,删除待删除数据结构,预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。在上述过程中,在修改了待删除数据结构的元信息的版本号之后,数据库服务器根据预设垃圾回收机制一定会删除该数据结构,因此,在数据库服务器修改可了待删除数据结构的元信息的版本号之后,便可向客户端反馈删除成功响应消息,降低向客户端反馈响应消息的时长,进而提高用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据管理方法的应用场景示意图;
图2为本发明实施例提供的数据管理方法的流程示意图;
图3为本发明实施例提供的删除待删除数据结构方法的流程示意图;
图4为本发明实施例提供的数据管理装置的结构示意图一;
图5为本发明实施例提供的数据管理装置的结构示意图二。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的数据管理方法的应用场景示意图。请参见图1,包括多个客户端(分别记为101-1至101-N)和数据库服务器102。客户端对应的终端设备可以为手机、电脑、电视等设备。数据库服务器102可以为redis服务器等、LedisDB服务器、SSDB服务器等。数据库服务器102中包括多个集合类数据结构,每一个集合类数据结构中包括一个元信息和多个数据信息,在元信息和数据信息中均包括版本号,且同一个集合类数据结构中的元信息的版本号和数据信息的版本号相同。用户可以通过客户端对数据服务器中的集合类数据结构进行操作,例如,在集合类数据结构中写数据,删除集合类数据结构等。数据库服务器102中还包括预设垃圾回收机制,数据库服务器102可以实时或者周期性运行预设垃圾回收机制,以实现对满足垃圾回收条件的集合类数据结构进行删除。
在本申请中,当用户需要删除数据库服务器中的某一集合类数据结构时,数据库服务器更改需要删除的集合类数据结构的元信息的版本号,使得该集合类数据结构的元信息的版本号和数据信息的版本号不同,以使该集合类数据结构满足垃圾回收条件,这样,数据库服务器102在运行的过程中可以调用预设垃圾回收机制删除需要删除的集合类数据结构。在本申请中,当数据库服务器102更改了需要删除的集合类数据结构的元信息的版本号之后,数据库服务器102根据预设垃圾回收机制一定会删除该数据结构,因此,在数据库服务器102更改可了需要删除的集合类数据结构的元信息的版本号之后,即可向客户端反馈删除成功响应消息,进而降低向客户端反馈响应消息的时长,进而提高用户体验。
下面,通过具体实施例对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的概念在不同的实施例中不进行重复说明。
图2为本发明实施例提供的数据管理方法的流程示意图。该方法的执行主体为数据库服务器,请参见图2,该方法可以包括:
S201、接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识。
在本发明实施例中,待删除数据结构为集合类型的数据结构,该待删除数据结构可以为数据库服务器中的任意一个。待删除数据结构包括一个元信息和多个数据信息,元信息和各数据信息的版本号相同。可选的,元信息和数据信息均可以为key/value数据对。
可选的,元信息的key中可以包括数据结构的标识,在元信息的value中可以包括版本号、数据类型、数据个数等信息。例如,元信息中包括的内容可以如表1所示:
表1
可选的,数据信息的key中可以包括数据结构的标识、版本号及成员名,其中,一个数据结构中的多个数据信息的成员名均不相同,成员名用于区分数据结构中的各个数据信息。例如,当数据结构为链表时,数据信息为链表中的一个节点,成员名可以为节点的编号。数据信息的value为用户数据。例如,数据信息中包括的内容可以如表2所示:
表2
需要说明的是,表1和表2只是以示例的形式示意元信息和数据信息中包括的内容,并非对元信息和数据信息中包括的内容的限定。在实际应用过程中,可以根据实际需要设置元信息和数据信息中包括的内容,本发明实施例对此不作具体限定。
在实际应用过程中,当用户需要删除数据库服务器中的待删除数据结构时,用户可以在客户端输入数据删除操作,以使客户端向数据服务器发送包括待删除数据结构的标识的删除指令。
S202、根据待删除数据结构的标识,获取待删除数据结构的元信息。
在数据库服务器接收到删除指令之后,数据库服务器在删除指令中获取待删除数据结构的标识。数据库服务器根据待删除数据结构的标识,获取待删除数据结构,并获取待删除数据结构的元信息。
S203、修改元信息的版本号,并向客户端发送删除成功响应信息。
在正常情况下,同一数据结构的元信息的版本号和数据信息的版本号相同。在数据库服务器修改待删除数据结构的元信息的版本号之后,待删除数据结构的元信息的版本号与待删除数据机构的数据信息的版本号不同。
可选的,元信息的版本号可以采用数字表示,相应的,在数据库服务器修改元信息的版本号时,可以将元信息的版本号加1。
在数据库服务器修改完元信息的版本号之后,数据库服务器即可向客户端发送删除成功响应信息。
S204、根据预设垃圾回收机制,删除待删除数据结构,预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。
在本发明实施例中,预设垃圾回收机制对应有垃圾回收条件,当数据库服务器中的集合类数据结构满足该垃圾回收条件时,可以触发数据库服务器删除数据库结构。可选的,垃圾回收条件可以为数据结构的原信息的版本号与数据信息的版本号不同。
在实际应用过程中,数据库服务器可以通过异步线程实时或周期性的运行预设垃圾回收机制,以使得数据库服务器可以同时执行删除数据结构及其它操作。
下面,通过具体示例,对图2实施例所示的方法进行详细说明。
示例性的,当用户需要删除数据库服务器中的集合类型的数据结构1时,用户在客户端输入删除操作,以使客户端向数据库服务器发送删除指令,该删除指令中携带有数据结构1的标识。
当数据库服务器接收到删除指令之后,数据库服务器在删除指令中获取数据结构1的标识,并根据数据结构1的标识获取数据结构1。假设在当前时刻,数据结构1中元信息和数据信息的版本号都为1。
数据库服务器获取数据结构1的元信息,并将数据结构1的元信息的版本号修改为2。数据库服务器修改完数据结构1的元信息的版本号之后,便向客户端发送删除成功响应消息。
在数据库服务器运行的过程中,数据库服务器可以实时运行预设垃圾回收机制。在数据库服务器修改完数据结构1的元信息的版本号之后,数据库服务器判断数据结构1的元信息的版本号(2)与数据结构1的数据信息的版本号(1)不同,确定数据结构1满足垃圾回收条件,则数据库服务器删除数据结构1。
本发明实施例提供的数据管理方法,在数据库服务器接收到客户端发送的删除指令之后,数据库服务器根据待删除数据结构的标识,获取待删除数据结构的元信息,修改元信息的版本号,并向客户端发送删除成功响应信息,并根据预设垃圾回收机制,删除待删除数据结构,预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。在上述过程中,在修改了待删除数据结构的元信息的版本号之后,数据库服务器根据预设垃圾回收机制一定会删除该数据结构,因此,在数据库服务器修改可了待删除数据结构的元信息的版本号之后,便可向客户端反馈删除成功响应消息,降低向客户端反馈响应消息的时长,进而提高用户体验。
在图2所示实施例的基础上,可选的,数据库服务器可以通过如下可行的实现方式根据预设垃圾回收机制,删除待删除数据结构(图2所示实施例中的S204),具体的,请参见图3所示的实施例。
图3为本发明实施例提供的删除待删除数据结构方法的流程示意图。请参见图3,该方法可以包括:
S301、删除待删除数据结构中、版本号与元信息的版本号不同的数据信息。
在图3所示的实施例中,由于在数据库服务器修改完元信息的版本号之后、且在删除完待删除数据结构之前,用户可能在待删除数据结构中写入新的数据信息,其中,用户写入的新的数据信息的版本号与修改后的元信息的版本号相同。为了避免对用户写入的新的数据信息进行误删除,则数据库服务器可以仅删除待删除数据结构中、版本号与元信息的版本号不同的数据信息。
S302、获取待删除数据结构的元信息的状态。
在数据库服务器删除完待删除数据结构中的数据信息之后,数据库服务器获取待删除数据结构的元信息的状态,并根据原信息的状态确定是否删除元信息。
为了便于对图3所示实施例的理解,首先介绍对数据结构的元信息的状态的维护过程进行说明。
数据结构的元信息的状态包括有效状态和无效状态。当数据结构中包括可用的数据信息时,则将元信息的状态设置为有效状态,否则,将元信息的状态设置为无效状态。可选的,可以在数据结构的元信息的value中设置状态位,并通过状态位记录元信息的状态。
可选的,在数据库服务器修改了待删除数据结构的元信息的版本号之后,数据库服务器可以将待删除数据结构的元信息的状态设置为无效状态。
由于数据库服务器在删除待删除数据结构的过程中,先删除待删除数据结构的数据信息,后删除数据结构的元信息;在数据服务器删除待删除数据结构的数据信息的过程中,用户可能需要在待删除数据结构中写入新的数据,此时,无需删除待删除数据结构的元信息,因此,可以将待删除数据结构的元信息的状态为设置为有效状态。
S303、若待删除数据结构的元信息的状态为无效状态,则删除待删除数据结构的元信息。
在数据库服务器获取得到待删除数据结构的元信息的状态之后,若待删除数据结构的元信息的状态为无效状态,则删除待删除数据结构的元信息。相应的,若待删除数据结构的元信息的状态为有效状态,则保留待删除数据结构的元信息。
在图3所示的实施例中,当数据库服务器需要删除待删除数据结构时,数据库服务器先删除待删除数据结构的数据信息。在数据库服务器删除数据信息的过程中,若用户在待删除数据结构中写入新的数据时(待删除数据结构的元信息的状态为有效状态),则数据库服务器不删除待删除数据结构的元信息;若用户未在待删除数据结构中写入新的数据时(待删除数据结构的元信息的状态为无效状态),则数据库服务器删除待删除数据结构的元信息。这样,可以避免数据结构的元信息被误删除。
下面,通过具体示例,对图2-图3实施例所示的方法进行详细说明。
示例性的,假设在时刻1数据结构1中包括一个元信息和1000个数据信息,且元信息中包括的内容如表3所示:
表3
相应的,在时刻1,该1000个数据信息可以如表4所示:
表4
在时刻1,由于数据结构1中的元信息中的版本号和数据信息的版本号相同,因此,数据库服务器不会删除该数据结构1。
在时刻2,当用户需要删除数据结构1时,用户通过客户端向数据库服务器发送删除指令,并在删除指令中携带数据结构1的标识。
在数据库服务器接收到删除指令之后,数据库服务器对数据结构1的元信息的版本号修改,将数据个数设置为0,将状态设置为无效,得到表5所示的元信息:
表5
在数据库服务器对数据结构1的元信息进行修改之后,便可以向客户端反馈删除成功响应消息。
在时刻3,数据库服务器根据预设垃圾回收机制,判断数据结构1的元信息的版本号(V2)与数据结构1的数据信息的版本号(V1)不同,则数据库服务器根据预设垃圾回收机制,删除数据结构1中版本号为V1的数据信息。
假设在数据库服务器删除数据结构1中版本号为V1的数据信息的过程中,用户向数据结构1中写入新的100个数据,则对数据结构1的元信息进行修改,得到表6所示的元信息:
表6
相应的,写入的100个数据信息可以如表7所示:
表7
在数据库服务器删除完版本号为V1的数据信息1-数据信息1000之后,数据库服务器获取元信息的状态为有效状态,则数据库服务器不再删除该元信息。
图4为本发明实施例提供的数据管理装置的结构示意图一。该装置可以设置在数据库服务器中,请参见图4,该装置可以包括接收模块11、获取模块12、修改模块13、发送模块14和删除模块15,其中,
所述接收模块11用于,接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识,所述待删除数据结构包括元信息和多个数据信息,所述元信息和各所述数据信息的版本号相同;
所述获取模块12用于,根据所述待删除数据结构的标识,获取所述待删除数据结构的元信息;
所述修改模块13用于,修改所述元信息的版本号;
所述发送模块14用于,向所述客户端发送删除成功响应信息;
所述删除模块15用于,根据预设垃圾回收机制,删除所述待删除数据结构,所述预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。
本发明实施例提供的数据管理装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在一种可能的实施方式中,所述删除模块15具体用于:
删除所述待删除数据结构中、版本号与所述元信息的版本号不同的数据信息;
获取所述待删除数据结构的元信息的状态;
若所述待删除数据结构的元信息的状态为无效状态,则删除所述待删除数据结构的元信息。
图5为本发明实施例提供的数据管理装置的结构示意图二。在图4所示实施例的基础上,请参见图5,所述装置还包括设置模,16,其中,
所述设置模块16用于,在所述修改模块13修改所述元信息的版本号之后,将所述待删除数据结构的元信息的状态设置为无效状态。
在另一种可能的实施方式中,所述接收模块11还用于,在所述设置模块16将所述元信息的状态设置为无效状态之后,接收所述客户端发送的写指令,所述写指令中包括所述待删除数据结构的标识;
所述设置模块16还用于,将所述待删除数据结构的元信息的状态为设置为有效状态。
在另一种可能的实施方式中,所述待删除数据信息中的元信息和所述数据信息为key/value数据对。
在另一种可能的实施方式中,所述待删除数据结构的元信息的版本号位于所述元信息的value中;
所述待删除数据结构的数据信息的版本号位于所述数据信息的key中。
本发明实施例提供的数据管理装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
本发明实施例提供一种数据库服务器,包括上述图5或图5实施例所示的数据管理装置
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例方案的范围。
Claims (13)
1.一种数据管理方法,其特征在于,包括:
接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识,所述待删除数据结构包括元信息和多个数据信息,所述元信息和各所述数据信息的版本号相同;
根据所述待删除数据结构的标识,获取所述待删除数据结构的元信息;
修改所述元信息的版本号,并向所述客户端发送删除成功响应信息;
根据预设垃圾回收机制,通过异步线程实时或者周期性运行所述预设垃圾回收机制,删除所述待删除数据结构,所述预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。
2.根据权利要求1所述的方法,其特征在于,根据预设垃圾回收机制,删除所述待删除数据结构,包括:
删除所述待删除数据结构中、版本号与所述元信息的版本号不同的数据信息;
获取所述待删除数据结构的元信息的状态;
若所述待删除数据结构的元信息的状态为无效状态,则删除所述待删除数据结构的元信息。
3.根据权利要求2所述的方法,其特征在于,在修改所述元信息的版本号之后,还包括:
将所述待删除数据结构的元信息的状态设置为无效状态。
4.根据权利要求3所述的方法,其特征在于,在将所述元信息的状态设置为无效状态之后,还包括:
接收所述客户端发送的写指令,所述写指令中包括所述待删除数据结构的标识;
将所述待删除数据结构的元信息的状态为设置为有效状态。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述待删除数据结构中的元信息和所述数据信息为key/value数据对。
6.根据权利要求5所述的方法,其特征在于,
所述待删除数据结构的元信息的版本号位于所述元信息的value中;
所述待删除数据结构的数据信息的版本号位于所述数据信息的key中。
7.一种数据管理装置,其特征在于,包括接收模块、获取模块、修改模块、发送模块和删除模块,其中,
所述接收模块用于,接收客户端发送的删除指令,删除指令中包括集合类型的待删除数据结构的标识,所述待删除数据结构包括元信息和多个数据信息,所述元信息和各所述数据信息的版本号相同;
所述获取模块用于,根据所述待删除数据结构的标识,获取所述待删除数据结构的元信息;
所述修改模块用于,修改所述元信息的版本号;
所述发送模块用于,向所述客户端发送删除成功响应信息;
所述删除模块用于,根据预设垃圾回收机制,通过异步线程实时或者周期性运行所述预设垃圾回收机制,删除所述待删除数据结构,所述预设垃圾回收机制用于指示删除数据结构中、版本号与元信息的版本号不同的数据信息。
8.根据权利要求7所述的装置,其特征在于,所述删除模块具体用于:
删除所述待删除数据结构中、版本号与所述元信息的版本号不同的数据信息;
获取所述待删除数据结构的元信息的状态;
若所述待删除数据结构的元信息的状态为无效状态,则删除所述待删除数据结构的元信息。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括设置模块,其中,
所述设置模块用于,在所述修改模块修改所述元信息的版本号之后,将所述待删除数据结构的元信息的状态设置为无效状态。
10.根据权利要求9所述的装置,其特征在于,
所述接收模块还用于,在所述设置模块将所述元信息的状态设置为无效状态之后,接收所述客户端发送的写指令,所述写指令中包括所述待删除数据结构的标识;
所述设置模块还用于,将所述待删除数据结构的元信息的状态为设置为有效状态。
11.根据权利要求7-10任一项所述的装置,其特征在于,所述待删除数据结构中的元信息和所述数据信息为key/value数据对。
12.根据权利要求11所述的装置,其特征在于,
所述待删除数据结构的元信息的版本号位于所述元信息的value中;
所述待删除数据结构的数据信息的版本号位于所述数据信息的key中。
13.一种数据库服务器,其特征在于,包括权利要求7-12任一项所述的数据管理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710389475.8A CN107357808B (zh) | 2017-05-27 | 2017-05-27 | 数据管理方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710389475.8A CN107357808B (zh) | 2017-05-27 | 2017-05-27 | 数据管理方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107357808A CN107357808A (zh) | 2017-11-17 |
CN107357808B true CN107357808B (zh) | 2020-11-10 |
Family
ID=60271674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710389475.8A Active CN107357808B (zh) | 2017-05-27 | 2017-05-27 | 数据管理方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107357808B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108467B (zh) * | 2017-12-29 | 2021-08-20 | 北京奇虎科技有限公司 | 数据删除方法及装置 |
CN110879747B (zh) * | 2018-09-05 | 2022-08-05 | 杭州海康威视系统技术有限公司 | 资源管理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677250A (zh) * | 2016-01-04 | 2016-06-15 | 北京百度网讯科技有限公司 | 对象存储系统中的对象数据的更新方法和更新装置 |
US9600555B1 (en) * | 2013-04-29 | 2017-03-21 | Seagate Technology Llc | Object-based commands and functions |
CN106599247A (zh) * | 2016-12-19 | 2017-04-26 | 北京奇虎科技有限公司 | LSM‑tree结构中数据文件的合并方法及装置 |
CN106662983A (zh) * | 2015-12-31 | 2017-05-10 | 华为技术有限公司 | 分布式存储系统中的数据重建的方法、装置和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9104717B2 (en) * | 2013-01-31 | 2015-08-11 | Futurewei Technologies, Inc. | Distributed storage object delete |
-
2017
- 2017-05-27 CN CN201710389475.8A patent/CN107357808B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9600555B1 (en) * | 2013-04-29 | 2017-03-21 | Seagate Technology Llc | Object-based commands and functions |
CN106662983A (zh) * | 2015-12-31 | 2017-05-10 | 华为技术有限公司 | 分布式存储系统中的数据重建的方法、装置和系统 |
CN105677250A (zh) * | 2016-01-04 | 2016-06-15 | 北京百度网讯科技有限公司 | 对象存储系统中的对象数据的更新方法和更新装置 |
CN106599247A (zh) * | 2016-12-19 | 2017-04-26 | 北京奇虎科技有限公司 | LSM‑tree结构中数据文件的合并方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于键值存储引擎的元数据管理集群副本一致性的研究;范立衡;《中国优秀硕士学位论文全文数据库信息科技辑》;20140915;I138-765 * |
Also Published As
Publication number | Publication date |
---|---|
CN107357808A (zh) | 2017-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109254733B (zh) | 用于存储数据的方法、装置和系统 | |
JP6348937B2 (ja) | オブジェクト記憶システムにおけるオブジェクトデータの更新方法及び更新装置 | |
CN111381987A (zh) | 一种消息处理方法、装置、电子设备及介质 | |
CN105718484A (zh) | 写文件、读文件、删除文件、查询文件的方法及客户端 | |
CN110401711B (zh) | 数据处理方法、装置、系统及存储介质 | |
US10698890B2 (en) | Dual overlay query processing | |
CN111177159B (zh) | 一种数据处理的系统、方法和数据更新设备 | |
CN106446044B (zh) | 存储空间回收方法及装置 | |
CN104657401A (zh) | 一种web缓存的更新方法 | |
CN110650164B (zh) | 文件的上传方法、装置、终端以及计算机存储介质 | |
CN107357808B (zh) | 数据管理方法、装置及设备 | |
CN106991118A (zh) | 基于ceph纠删除容错的读取文件方法及装置 | |
CN110019263B (zh) | 信息存储方法和装置 | |
US20180121531A1 (en) | Data Updating Method, Device, and Related System | |
US10938773B2 (en) | Method and apparatus for synchronizing contact information and medium | |
WO2020192663A1 (zh) | 一种数据管理方法及相关设备 | |
CN104639973A (zh) | 一种信息推送方法及装置 | |
CN109213955B (zh) | 数据处理方法及相关设备 | |
CN106599323A (zh) | 在分布式文件系统中实现分布式管道的方法和装置 | |
CN112395337A (zh) | 一种数据导出方法和装置 | |
WO2022105631A1 (zh) | 配置页面的请求方法、装置及电子设备 | |
CN110888847B (zh) | 一种回收站系统及文件回收方法 | |
CN111061719B (zh) | 数据收集方法、装置、设备和存储介质 | |
CN111988195B (zh) | 用于分组测试的应答方案确定方法、装置、设备及介质 | |
CN113625952A (zh) | 一种对象存储方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |