一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据删除方法、装置、设备和存储介质与流程

2021-11-20 02:13:00 来源:中国专利 TAG:


1.本技术涉及数据处理领域,特别是涉及一种数据删除方法、装置、设备和存储介质。


背景技术:

2.mongodb,基于分布式文件存储的数据库,提供了针对文档的数据删除功能,即利用设置生存时间值(time to live,ttl)的方式在指定的时间删除文档,但是,实际应用中,不仅存在删除文档的需要,还存在删除文档字段的需要,尤其在文档删除后,删除的文档所对应的文档字段也需随之删除,但现有方法并未实现,因此,导致文档字段长期存储而占用存储空间。


技术实现要素:

3.为解决上述问题,本发明提出了一种数据删除方法、装置、设备和存储介质,能够删除数据库中针对文档的字段,也即文档字段,有效避免了文档字段长期占用存储空间。
4.第一方面,本技术实施例提供一种数据删除方法,包括:
5.从分布式文档存储数据库中检测目标文档字段的字段失效特征,其中,所述目标文档字段是所述分布式文档存储数据库针对存储的文档所设置的字段;
6.判断所述目标文档字段的字段失效特征是否满足字段失效规则;
7.确定所述目标文档字段的字段失效特征满足所述字段失效规则后,删除所述目标文档字段。
8.这里,由于本技术实施例设置有字段级别的失效特征信息,即针对文档字段设置有字段失效特征,这样,在确定字段失效特征满足字段失效规则的情况下,删除对应的文档字段,所以,避免了文档字段长期占用存储空间,为提升存储空间的利用率打下了基础。
9.在一具体实施例中,在所述从分布式文档存储数据库中检测目标文档字段的字段失效特征之前,所述方法还包括:
10.从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,其中,所述目标失效特征是基于文档所对应的文档字段的字段失效特征而确定的;
11.判断所述目标失效特征是否满足文档失效规则;
12.确定所述目标失效特征满足所述文档失效规则后,执行所述从所述分布式文档存储数据库中检测所述目标文档字段的字段失效特征。
13.该具体实施例中针对文档设置有目标失效特征,该目标失效特征是基于文档所对应的文档字段的字段失效特征而确定的,如此,利用目标失效特征来表文档中文档字段的字段失效特征,为有效筛选出需要进行文档字段删除处理的文档奠定了基础,进而为后续删除文档字段奠定基础。
14.进一步地,由于该实施例能够有效筛选出需要进行文档字段删除操作的文档,同时,能够筛选出需要进行删除操作的目标文档字段,进而删除目标文档字段,所以,避免了
文档字段长期占用存储空间,为提升存储空间的利用率打下了基础。
15.在另一具体实施例中,所述字段失效特征指示有所述文档字段的失效时间,所述目标失效特征为所述文档对应所有文档字段的失效时间中的最小值。
16.这里,该具体实施例提供了一种确定目标失效特征的具体方式,即将文档中所有文档字段的失效时间的最小值作为目标失效特征,如此,为有效筛选出需要进行文档字段删除操作的文档提供了简单且易于实现的方法。
17.在另一具体实施例中,所述从分布式文档存储数据库中检测目标文档字段的字段失效特征,包括:从所述分布式文档存储数据库中检测所述目标文档字段的子字段,得到所述目标文档字段的字段失效特征。
18.在另一具体实施例中,所述从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,包括:从所述分布式文档存储数据库中检测所述文档所对应的特征字段,得到文档所对应的目标失效特征。
19.该具体实施例将字段失效特征作为文档字段的子字段,即利用字段来表征字段失效特征;或者将目标失效特征作为文档的特征字段,即利用特征字段来表征目标失效特征,如此,为最大化兼容现有数据库的功能提升实现效率奠定了基础,而且,该方式简单便于实现,为后续工程化应用奠定了基础。
20.在另一具体实施例中,所述方法还包括:检测到针对所述目标文档字段的更新操作;确定所述更新操作完成后,对所述目标文档字段所对应文档的目标失效特征进行更新,使得更新后所述文档的目标失效特征与更新后所述目标文档字段的字段失效特征相匹配。
21.这里,由于目标失效特征能够根据目标文档字段的删除操作而相应更新,所以,确保了目标失效特征的准确性,进而为再次有效锁定需要进行文档字段删除的文档,以及为最大化、最准确地删除目标文档字段奠定了基础。
22.在另一具体实施例中,所述从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,包括:遍历所述分布式文档存储数据库的索引,得到所述文档所对应的目标失效特征。
23.这里,由于生成了针对目标失效特征的索引,所以,为快速检测到需要进行文档字段删除的文档提供了可能,进而为快速实现本技术方案奠定了基础。
24.第二方面,本技术实施例提供一种数据删除装置,包括:
25.检测单元,用于从分布式文档存储数据库中检测目标文档字段的字段失效特征,其中,所述目标文档字段是所述分布式文档存储数据库针对存储的文档所设置的字段;
26.判断单元,用于判断所述目标文档字段的字段失效特征是否满足字段失效规则;
27.删除单元,用于确定所述目标文档字段的字段失效特征满足所述字段失效规则后,删除所述目标文档字段。
28.所述检测单元,还用于从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,其中,所述目标失效特征是基于文档所对应的文档字段的字段失效特征而确定的;
29.所述判断单元,还用于判断所述目标失效特征是否满足文档失效规则;
30.所述检测单元,还用于确定所述目标失效特征满足所述文档失效规则后,执行所述从所述分布式文档存储数据库中检测所述目标文档字段的字段失效特征。
31.在一具体实施例中,所述字段失效特征指示有所述文档字段的失效时间,所述目标失效特征为所述文档对应所有文档字段的失效时间中的最小值。
32.在一具体实施例中,所述检测单元,还用于从所述分布式文档存储数据库中检测所述目标文档字段的子字段,得到所述目标文档字段的字段失效特征。
33.在一具体实施例中,所述检测单元,还用于从所述分布式文档存储数据库中检测所述文档所对应的特征字段,得到文档所对应的目标失效特征。
34.在一具体实施例中,所述检测单元,还用于:
35.检测到针对所述目标文档字段的更新操作;
36.确定所述更新操作完成后,对所述目标文档字段所对应文档的目标失效特征进行更新,使得更新后所述文档的目标失效特征与更新后所述目标文档字段的字段失效特征相匹配。
37.在一具体实施例中,所述检测单元,还用于遍历所述分布式文档存储数据库的索引,得到所述文档所对应的目标失效特征。
38.第三方面,本技术实施例提供一种数据删除设备,包括:
39.一个或多个处理器;
40.与所述一个或多个处理器通信连接的存储器;
41.一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
42.第四方面,本技术实施例提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
43.这样,由于本技术实施例设置有字段级别的失效特征信息,即针对文档字段设置有字段失效特征,这样,在确定字段失效特征满足字段失效规则的情况下,删除对应的文档字段,所以,避免了文档字段长期占用存储空间,为提升存储空间的利用率打下了基础。
附图说明
44.图1为本发明实施例数据删除方法的实现流程示意图;
45.图2为本发明实施例数据删除装置的结构示意图;
46.图3本发明实施例数据删除设备的结构示意图。
具体实施方式
47.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
48.在本技术的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
49.实际场景中,当需要为对象存储大量临时属性时,会设置临时字段,但是,现有技术中不能支持针对字段级别的删除操作,即无法设置有效机制删除文档字段,所以,存在临
时字段长期存储占用存储空间的问题,此时,若想删除临时字段,需要用户自己实现一个系统来完成清理工作,显然增加了额外的工作量,降低了效率。
50.基于此,本技术实施例提供了一种数据删除方法、装置、设备和存储介质;具体地,图1为本发明实施例数据删除方法的实现流程示意图,如图1所示,所述方法包括:
51.步骤101:从分布式文档存储数据库中检测目标文档字段的字段失效特征,其中,所述目标文档字段是所述分布式文档存储数据库针对存储的文档所设置的字段。
52.在一具体示例中,在从分布式文档存储数据库中检测文档字段的字段失效特征之前,还可以针对文档设置目标失效特征,该目标失效特征是基于文档所对应的文档字段的字段失效特征而确定的,进而从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,并判断所述目标失效特征是否满足文档失效规则,在确定所述目标失效特征满足所述文档失效规则后,执行所述从所述分布式文档存储数据库中检测所述目标文档字段的字段失效特征。这里,可以将目标失效特征满足所述文档失效规则的文档作为目标文档,进而检测所述目标文档中目标文档字段的字段失效特征是否满足字段失效规则。
53.在实际应用中,字段失效特征也可以具体包含以下信息中的至少一种:失效时间,失效时机(如失效条件等),失效方式等。相应地,所述目标失效特征也可以包含以下信息中的至少一种:失效时间,失效时机(如失效条件等),失效方式等。当然,实际应用中,还可以根据实际需求而设置目标失效特征。
54.在一具体示例中,所述字段失效特征指示有所述文档字段的失效时间,所述目标失效特征为所述文档对应所有文档字段的失效时间中的最小值。如此,最大化、最快速锁定目标文档字段奠定了基础。此时,所述字段失效规则可以具体为预设失效时间,而所述文档失效规则可以具体为预设失效时间,在一具体示例中,所述字段失效规则所指示的预设失效时间与所述文档失效规则所指示的预设失效时间相同。
55.在一具体示例中,可以利用字段表征字段失效特征,或者利用字段来表征目标失效特征,具体地,将字段失效特征作为文档字段的子字段,以使子字段能够表征出文档字段的失效特征,此时,所述从分布式文档存储数据库中检测目标文档字段的字段失效特征,包括:从所述分布式文档存储数据库中检测所述目标文档字段的子字段,得到所述目标文档字段的字段失效特征。如此,提供了一种具体地可行方案,为后续工程化应用奠定了基础,同时,也能最大化兼容现有数据库的功能,提升实现效率,且该方式简单便于实现。
56.在另一具体示例中,可以将目标失效特征作为文档的特征字段,以使特征字段能够表征出文档中文档字段的失效特征。此时,所述从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,包括:从所述分布式文档存储数据库中检测所述文档所对应的特征字段,得到文档所对应的目标失效特征。如此,提供了一种具体地可行方案,为后续工程化应用奠定了基础,同时,也能最大化兼容现有数据库的功能,提升实现效率,且该方式简单便于实现。
57.实际应用中,考虑到存在对文档字段的字段失效特征进行修改,或增加、删除文档字段的操作,此时,为提升本技术方案的准确率,需要同步更新字段失效特征,具体地,检测到针对文档的更新操作,这里,针对文档的更新操作包含:对文档对应的至少一个文档字段的字段失效特征进行更新(比如,修改、删除或增加信息等),和/或,对文档对应的文档字段进行删除或添加操作(比如,删除文档所对应的某一文档字段,或者,新增一文档字段);进
而确定出针对文档的更新操作完成后,对文档的目标失效特征进行更新,使得更新后的文档的目标失效特征能够与更新完成后的文档所对应的文档字段的字段失效特征相匹配,如此,为最大化、最准确地删除目标文档字段奠定基础。
58.实际应用中,还存在针对文档字段的更新操作,比如,删除目标文档字段,基于此,为确保本技术方案能够继续检测到下一个或多个(两个或两个以上)需要删除的目标文档字段,更新目标文档的目标失效特征,如此,确保了目标失效特征的准确性,以及为最大化、最准确地删除目标文档字段奠定了基础。具体实现方式包括:检测到针对所述目标文档字段的更新操作;确定所述更新操作完成后,对所述目标文档字段所对应文档的目标失效特征进行更新,使得更新后所述文档的目标失效特征与更新后所述目标文档字段的字段失效特征相匹配。
59.步骤102:判断所述目标文档字段的字段失效特征是否满足字段失效规则。
60.步骤103:确定所述目标文档字段的字段失效特征满足所述字段失效规则后,删除所述目标文档字段。
61.在一具体示例中,判断所述目标文档字段的字段失效特征是否满足字段失效规则,可以具体为:判断目标文档字段的失效时间是否小于当前时间,若是,则认为满足字段失效规则,删除所述目标文档字段;否则,不满足字段失效规则。
62.当然,在另一示例中,判断所述目标失效特征是否满足文档失效规则,也可以具体为:判断所述目标失效特征所指示的失效时间是否小于当前时间,若是,认为满足文档失效规则,并将满足文档失效规则的目标失效特征对应的文档作为目标文档,进而执行步骤101以对所述目标文档中目标文档字段进行检测;否则,认为不满足文档失效规则。上述过程中,还可以先从所有文档中查找到失效时间最小的,然后判断失效时间最小的文档的目标失效特征是否满足文档失效规则,如此,以便于快速查找到需要删除的文档字段。
63.在一具体示例中,本技术方案还可以兼顾针对文档的删除操作,具体地,对分布式文档存储数据库中文档的文档失效特征进行检测,得到符合预设失效规则的文档,删除符合预设失效规则的文档。其中,文档失效特征可以包含以下信息中的至少一种:失效时间,失效时机(如失效条件等),失效方式等。这里,以文档失效特征包含失效时间为例,此时,可以将文档的失效时间与当前失效时间进行比较,并将失效时间小于当前失效时间的文档作为待删除文档并进行删除处理。
64.实际应用中,可以利用索引来提升检测效率,即:生成针对文档的特征字段的索引,如此,利用索引即能够快速检测得到符合文档失效规则的文档;或者,生成针对目标失效特征的索引,进而遍历所述分布式文档存储数据库的索引,即可快速得到所述文档所对应的目标失效特征。
65.这样,由于本技术实施例设置有字段级别的失效特征信息,即针对文档字段设置有字段失效特征,这样,在确定字段失效特征满足字段失效规则的情况下,删除对应的文档字段,所以,避免了文档字段长期占用存储空间,为提升存储空间的利用率打下了基础。
66.以下以mongodb为例,利用本技术方案提供文档字段级别的ttl功能;具体地,
67.对于需要设定字段失效特征,如ttl的文档字段,存储时增加一个关联的隐藏字段(该隐藏字段指对用户不可见),即失效时间戳(expired_at),数据类型为int64;当设定文档字段时,关联的隐藏字段也即失效时间戳(expired_at)=当前时间 ttl。
68.对于文档设定目标失效特征,即增加一个关联的隐藏字段,如最小失效时间戳(min_expired_at),该最小失效时间戳为该文档所有文档字段的失效时间戳(expired_at)中的最小值,数据类型为int64。
69.这里,实际场景中,若文档所有属性未设置失效时间戳,则使用默认值为int64类型能存储的最大值(0x7fffffffffffffff)。
70.实际应用中,当需要执行更新文档的属性(也即文档字段),比如,新增、修改、或删除文档字段时,重新计算该文档的min_expired_at值,并更新。
71.mongodb中集合(包含有至少两个文档)在min_expired_at上创建一个隐藏索引(该隐藏索引指对用户不可见),这样,利用隐藏索引便可在o(1)时间复杂度内查询出min_expired_at值最小的文档。
72.在上述隐藏字段、隐藏索引建立完成后,mongodb启动一个后台线程,周期性查询出min_expired_at值最小的文档(也即目标文档),若该文档min_expired_at值小于当前时间,则检查其各文档字段对应的expired_at值,并将expired_at值小于当前时间的文档字段进行删除处理,同时,更新该文档的min_expired_at,如此,周期性完成清理文档字段的工作。
73.这样,对于文档的临时字段(也即文档字段)而言,只需增加8字节存储空间,对于文档而言,只需增加8字节存储空间;同时,增加一个后台的线程的基础上,即可实现如下功能:
74.第一,将mongodb对ttl支持的粒度由文档级别细化到文档字段级别,由此提升的灵活性极大扩展了使用场景。
75.第二,mongodb自身定期清理过期的临时字段,节省了存储空间,降低了数据库使用者的开发工作量。
76.本技术实施例还提供了一种数据删除装置,如图2所示,所述装置包括:
77.检测单元21,用于从分布式文档存储数据库中检测目标文档字段的字段失效特征,其中,所述目标文档字段是所述分布式文档存储数据库针对存储的文档所设置的字段;
78.判断单元22,用于判断所述目标文档字段的字段失效特征是否满足字段失效规则;
79.删除单元23,用于确定所述目标文档字段的字段失效特征满足所述字段失效规则后,删除所述目标文档字段。
80.在一具体实施例中,所述检测单元21,还用于从分布式文档存储数据库中检测存储的文档所对应的目标失效特征,其中,所述目标失效特征是基于文档所对应的文档字段的字段失效特征而确定的;
81.所述判断单元22,还用于判断所述目标失效特征是否满足文档失效规则;
82.所述检测单元21,还用于确定所述目标失效特征满足所述文档失效规则后,执行所述从所述分布式文档存储数据库中检测所述目标文档字段的字段失效特征。
83.在一具体实施例中,所述字段失效特征指示有所述文档字段的失效时间,所述目标失效特征为所述文档对应所有文档字段的失效时间中的最小值。
84.在一具体实施例中,所述检测单元21,还用于从所述分布式文档存储数据库中检测所述目标文档字段的子字段,得到所述目标文档字段的字段失效特征。
85.在一具体实施例中,所述检测单元21,还用于从所述分布式文档存储数据库中检测所述文档所对应的特征字段,得到文档所对应的目标失效特征。
86.在一具体实施例中,所述检测单元21,还用于:
87.检测到针对所述目标文档字段的更新操作;
88.确定所述更新操作完成后,对所述目标文档字段所对应文档的目标失效特征进行更新,使得更新后所述文档的目标失效特征与更新后所述目标文档字段的字段失效特征相匹配。
89.在一具体实施例中,所述检测单元21,还用于遍历所述分布式文档存储数据库的索引,得到所述文档所对应的目标失效特征。
90.这里需要指出的是:以上装置实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
91.本技术实施例还提供了一种数据删除设备,包括:一个或多个处理器;与所述一个或多个处理器通信连接的存储器;一个或多个应用程序;其中,所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
92.在一具体示例中,本技术实施例所述的数据删除设备可具体为如图3所示的结构,所述数据删除设备至少包括处理器31、存储介质32以及至少一个外部通信接口33;所述处理器31、存储介质32以及外部通信接口33均通过总线34连接。所述处理器31可为微处理器、中央处理器、数字信号处理器或可编程逻辑阵列等具有处理功能的电子元器件。所述存储介质中存储有计算机可执行代码,所述计算机可执行代码能够执行以上任一实施例所述的方法。在实际应用中,所述检测单元21、判断单元22以及删除单元23均可以通过所述处理器31实现。
93.这里需要指出的是:以上设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明数据删除设备实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。
94.本技术实施例还提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
95.这里,计算机可读存储介质可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读存储介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
96.应当理解,本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可
读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
97.此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。
98.上述所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献