数据处理方法及装置、计算机可读存储介质.pdf

上传人:小** 文档编号:9184481 上传时间:2021-05-09 格式:PDF 页数:18 大小:837.21KB
收藏 版权申诉 举报 下载
数据处理方法及装置、计算机可读存储介质.pdf_第1页
第1页 / 共18页
数据处理方法及装置、计算机可读存储介质.pdf_第2页
第2页 / 共18页
数据处理方法及装置、计算机可读存储介质.pdf_第3页
第3页 / 共18页
文档描述:

《数据处理方法及装置、计算机可读存储介质.pdf》由会员分享,可在线阅读,更多相关《数据处理方法及装置、计算机可读存储介质.pdf(18页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010303369.5 (22)申请日 2020.04.17 (71)申请人 OPPO广东移动通信有限公司 地址 523860 广东省东莞市长安镇乌沙海 滨路18号 (72)发明人 郭子亮 (74)专利代理机构 北京派特恩知识产权代理有 限公司 11270 代理人 崔晓岚张颖玲 (51)Int.Cl. G06F 16/215(2019.01) (54)发明名称 数据处理方法及装置、 计算机可读存储介质 (57)摘要 本申请实施例公开了一种数据处理方法, 所 述方法包括: 获。

2、取时间管理文件; 其中, 所述时间 管理文件用于记录数据库中每个数据对应的过 期时间信息, 且所述过期时间信息具有时间顺序 性; 基于所述过期时间信息的时间顺序性, 对第i 个数据的第i个过期时间信息进行解析, 得到第i 个数据的过期时刻; 其中, i为大于等于1且小于 等于N的整数; N为数据的总数; 第1个数据为数据 库中过期时间最早的数据; 若第i个数据的过期 时刻大于等于当前时刻, 则将前i个数据确定为 已过期的数据, 并在满足删除过期条件时, 从所 述数据库中删除所述已过期的数据。 本申请实施 例同时公开了一种数据处理装置、 电子设备以及 计算机可读存储介质。 权利要求书2页 说明书。

3、11页 附图4页 CN 111400298 A 2020.07.10 CN 111400298 A 1.一种数据处理方法, 其特征在于, 所述方法包括: 获取时间管理文件; 其中, 所述时间管理文件用于记录数据库中每个数据对应的过期 时间信息, 且所述过期时间信息具有时间顺序性; 基于所述过期时间信息的时间顺序性, 对第i个数据的第i个过期时间信息进行解析, 得到第i个数据的过期时刻; 其中, i为大于等于1且小于等于N的整数; N为数据的总数; 第1 个数据为数据库中过期时间最早的数据; 若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确定为已过期的数据, 并 在满足删除过期条件时,。

4、 从所述数据库中删除所述已过期的数据。 2.根据权利要求1所述的方法, 其特征在于, 所述过期时间信息包括: 每个数据的标识 信息和每个数据的过期时刻。 3.根据权利要求1或2所述的方法, 其特征在于, 所述获取时间管理文件之前, 所述方法 还包括: 获取目标数据, 并确定所述目标数据的标识信息、 标识信息的数据类型和过期时刻; 所 述标识信息的类型用于指示所述目标数据的删除方式; 对所述标识信息和所述标识信息的数据类型两者中的至少一个, 与所述过期时刻进行 编码, 得到所述目标数据对应的过期时间信息; 基于所述目标数据的过期时刻, 将所述目标数据对应的过期时间信息存储在所述时间 管理文件中。。

5、 4.根据权利要求3所述的方法, 其特征在于, 所述基于所述目标数据的过期时刻, 将所 述目标数据对应的过期时间信息存储在所述时间管理文件中, 包括: 解析所述时间管理文件中每个数据的过期时间信息, 得到所述时间管理文件中每个数 据对应的过期时刻; 基于所述目标数据对应的过期时刻和所述时间管理文件中每个数据对应的过期时刻, 将所述目标数据存储于第N个数据和第M个数据之间; 所述第N个数据的过期时刻小于所述 目标数据对应的过期时刻; 所述第M个数据的过期时刻大于所述目标数据对应的过期时刻。 5.根据权利要求3所述的方法, 其特征在于, 所述过期时间信息的存储格式为键值对存 储格式; 所述对所述标。

6、识信息和所述标识信息的数据类型两者中的至少一个, 与所述过期时刻 进行编码, 得到所述目标数据对应的过期时间信息, 包括: 将所述目标数据的标识信息和所述标识信息的数据类型中的至少一个, 与过期时刻进 行编码, 并将编码后的目标数据的标识信息和过期时刻作为所述目标数据的过期时间信息 的键数据。 6.根据权利要求1或2所述的方法, 其特征在于, 所述对第i个数据的过期时间信息进行 解析, 得到第i个数据的过期时刻, 包括: 启动目标线程, 通过所述目标线程对第i个数据的过期时间信息进行解析, 得到第i个 数据的过期时刻。 7.根据权利要求1或2所述的方法, 其特征在于, 所述确定满足删除过期条件。

7、包括: 若当前时刻与上一次删除过期数据的时刻之间的时间间隔超过预设间隔时长, 则确定 满足删除过期条件; 权利要求书 1/2 页 2 CN 111400298 A 2 或者, 若当前时刻为数据库的预设删除时刻, 则确定满足删除过期条件。 8.根据权利要求7所述的方法, 其特征在于, 所述方法还包括: 接收删除配置信息; 所述删除配置信息包括: 最新预设删除时刻和/或最新预设间隔时 长; 所述预设删除时刻指示删除数据库中已过期数据的时刻; 所述预设间隔时长表征两次 删除已过期数据的时刻之间的间隔时长; 基于所述配置信息, 更新预设删除时刻和/或预设间隔时长。 9.根据权利要求1或2所述的方法, 。

8、其特征在于, 所述方法还包括: 接收删除配置信息, 所述删除配置信息包括每次删除已过期数据的数据量; 所述从所述数据库中删除所述已过期的数据, 包括: 按照所述每次删除已过期数据的数据量, 从所述数据库中删除所述已过期的数据。 10.一种数据处理装置, 其特征在于, 所述装置包括: 获取单元, 用于获取时间管理文件; 其中, 所述时间管理文件用于记录数据库中每个数 据对应的过期时间信息, 且所述过期时间信息具有时间顺序性; 解析单元, 用于基于所述过期时间信息的时间顺序性, 对第i个数据的第i个过期时间 信息进行解析, 得到第i个数据的过期时刻; 其中, i为大于等于1且小于等于N的整数; N。

9、为数 据的总数; 第1个数据为数据库中过期时间最早的数据; 处理单元, 用于若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确定为已 过期的数据, 并在满足删除过期条件时, 从所述数据库中删除所述已过期的数据。 11.一种电子设备, 所述电子设备包括处理器和用于存储能够在处理器上运行的计算 机程序的存储器; 其中, 所述处理器用于运行所述计算机程序时, 执行权利要求1至9任一项所述数据处 理方法的步骤。 12.一种计算机可读存储介质, 其上存储有计算机程序, 所述计算机程序被处理器执行 实现权利要求1至9任一项所述数据处理方法的步骤。 权利要求书 2/2 页 3 CN 11140029。

10、8 A 3 数据处理方法及装置、 计算机可读存储介质 技术领域 0001 本申请涉及数据库管理技术领域, 尤其涉及一种数据处理方法及装置、 电子设备、 计算机可读存储介质。 背景技术 0002 随着数据业务的不断发展, 数据量随之出现井喷式增长, 在互联网服务中, 通常采 用基于分布式键值(Key-Value, KV)存储系统的数据库进行数据存储。 0003 实际应用中, 基于分布式KV系统的数据库中存储着大量的数据; 针对数据库中存 储的某些数据, 开发人员期望在数据库中仅保留一段时间, 若存储的这些数据的时间超过 该数据的保留时间后, 则需要删除上述过期数据。 0004 目前, 在处理过期。

11、数据过程中, 需要遍历数据库中每个数据的相关信息, 逐一判断 数据库中每个数据是否过期, 这样, 导致删除过期数据的处理效率较低。 发明内容 0005 本申请实施例提供了一种数据处理方法及装置、 电子设备、 计算机可读存储介质, 能够提高对删除过期数据的处理效率。 0006 第一方面, 本申请实施例提供一种数据处理方法, 所述方法包括: 0007 获取时间管理文件; 其中, 所述时间管理文件用于记录数据库中每个数据对应的 过期时间信息, 且所述过期时间信息具有时间顺序性; 0008 基于所述过期时间信息的时间顺序性, 对第i个数据的第i个过期时间信息进行解 析, 得到第i个数据的过期时刻; 其。

12、中, i为大于等于1且小于等于N的整数; N为数据的总数; 第1个数据为数据库中过期时间最早的数据; 0009 若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确定为已过期的数 据, 并在满足删除过期条件时, 从所述数据库中删除所述已过期的数据。 0010 第二方面, 本申请实施例提供一种数据处理装置, 所述装置包括: 0011 获取单元, 用于获取时间管理文件; 其中, 所述时间管理文件用于记录数据库中每 个数据对应的过期时间信息, 且所述过期时间信息具有时间顺序性; 0012 解析单元, 用于基于所述过期时间信息的时间顺序性, 对第i个数据的第i个过期 时间信息进行解析, 得到第i。

13、个数据的过期时刻; 其中, i为大于等于1且小于等于N的整数; N 为数据的总数; 第1个数据为数据库中过期时间最早的数据; 0013 处理单元, 用于若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确定 为已过期的数据, 并在满足删除过期条件时, 从所述数据库中删除所述已过期的数据。 0014 第三方面, 本申请实施例提供一种电子设备, 所述电子设备包括处理器和用于存 储能够在处理器上运行的计算机程序的存储器; 0015 其中, 所述处理器用于运行所述计算机程序时, 执行第一方面所述数据处理方法 的步骤。 说明书 1/11 页 4 CN 111400298 A 4 0016 第四方面。

14、, 本申请实施例还提供了一种计算机可读存储介质, 其上存储有计算机 程序, 所述计算机程序被处理器执行实现上述第一方面所述数据处理方法的步骤。 0017 本申请实施例提供的数据处理方法及装置、 电子设备、 计算机存储介质, 首先, 获 取时间管理文件; 其中, 时间管理文件用于记录数据库中每个数据对应的过期时间信息, 且 过期时间信息具有时间顺序性; 接着, 基于过期时间信息的时间顺序性, 对第i个数据的第i 个过期时间信息进行解析, 得到第i个数据的过期时刻; 若第i个数据的过期时刻大于等于 当前时刻, 则将前i个数据确定为已过期的数据, 并在满足删除过期条件时, 从所述数据库 中删除所述已。

15、过期的数据; 这样, 可以按照过期时间信息的时间顺序对数据进行解析, 得到 数据的过期时刻; 当检测到第i个数据的过期时刻大于当前时刻, 则停止对数据的解析, 并 直接将前i个数据确定为已过期的数据进行删除; 也就是说, 仅对数据库中部分数据进行解 析, 即可确定已过期的数据, 并不用对数据库中每个数据逐一进行解析, 如此, 能够精确定 位已过期的数据, 提高了删除已过期数据时的处理效率。 附图说明 0018 图1为本申请实施例提供的一种数据处理方法的流程示意图; 0019 图2为本申请实施例提供的另一种数据处理方法的流程示意图; 0020 图3为本申请实施例提供的又一种数据处理方法的流程示意。

16、图; 0021 图4为本申请实施例提供的一种数据处理装置的结构组成示意图; 0022 图5为本申请实施例提供的一种电子设备的硬件结构组成示意图。 具体实施方式 0023 为了能够更加详尽地了解本申请实施例的特点与技术内容, 下面结合附图对本申 请实施例的实现进行详细阐述, 所附附图仅供参考说明之用, 并非用来限定本发明实施例。 0024 需要说明的是, 本申请的说明书和权利要求书及上述附图中的术语 “第一” 、“第 二” 等是用于区别不同对象, 而不是用于描述特定顺序。 此外, 术语 “包括” 和 “具有” 以及它 们任何变形, 意图在于覆盖不排他的包含。 例如包含了一系列步骤或单元的过程、 。

17、方法、 系 统、 产品或设备没有限定于已列出的步骤或单元, 而是可选地还包括没有列出的步骤或单 元, 或可选地还包括对于这些过程、 方法、 产品或设备固有的其他步骤或单元。 0025 实际应用中, RocksDB作为一个本地持久化存储引擎, 广泛应用于互联网服务中。 开发人员可以将需要持久保存的数据存储在RocksDB中, 这样, 即使安装RocksDB的电子设 备重启, 保存在RocksDB中的数据仍然不会丢失。 但是, 特定场景下开发人员希望某些数据 只保留一段时间, 若数据在RocksDB的时间超过保留时间后, 则需要删除该数据。 0026 相关技术中, 通常采用业务逻辑功能遍历数据库中。

18、每个数据的相关信息, 逐一判 断数据库中每个数据是否过期; 也就是说, 通过扫描整个RocksDB的键Key空间, 逐个判断该 RocksDB中每个Key对应的数据是否过期, 如果过期则删除该Key对应的数据。 这样, 删除比 较低效, 无法精准定位具体过期的数据。 0027 为解决上述相关技术中存在的问题, 本申请实施例提供一种数据处理方法, 该数 据处理方法的执行主体可以是本申请实施例提供的图像分类装置, 或者集成了该图像分类 装置的电子设备, 这里的图像分类装置可以采用硬件或者软件的方式实现。 其中, 电子设备 说明书 2/11 页 5 CN 111400298 A 5 可以是服务器或者。

19、工业计算器等, 本申请实施例这里不对电子设备的类型进行限定。 0028 请参考图1, 图1为本申请实施例提供的数据处理方法的流程示意图, 如图1所示, 所述数据处理方法包括以下步骤: 0029 步骤110、 获取时间管理文件; 其中, 时间管理文件用于记录数据库中每个数据对 应的过期时间信息, 且过期时间信息具有时间顺序性。 0030 本申请实施例所涉及的数据库可以是支持持久化存储的数据库; 可以理解为, 在 数据库启动或者重启之后, 数据库中的数据并不会丢失。 然而, 随着数据不断增长, 为了保 证数据库可以正常存储数据, 需要对数据库中的数据进行删除。 0031 在本申请提供的实施例中, 。

20、数据处理装置可以通过时间管理文件, 对数据库中数 据的过期时间信息进行管理和维护。 可以理解的是, 时间管理文件中保存着数据库中多个 需要定期删除的数据中每个数据的过期时间信息。 0032 在一种可行的实施方式中, 过期时间信息至少包括每个数据的过期时刻; 过期时 刻是指数据在数据库中存储的最后时刻。 0033 在另一中可能的实施方式中, 过期时间信息还可以包括每个数据的标识信息和/ 或每个数据的标识信息的数据类型; 其中, 标识信息能够唯一地标识在数据库中的数据, 标 识信息的数据类型用于指示所述目标数据的删除方式。 0034 在本申请提供的实施例中, 过期时刻可以但不限于通过以下任意一种方。

21、式确定: 0035 1、 在数据存储时, 操作者可以为存储的数据设置生存时间值(Time To Live, TTL); 这样, 数据处理装置可以根据数据的TTL, 以及该数据的存储时刻, 确定该数据的过期 时刻。 0036 2、 在数据存储时, 操作者可以直接为存储的数据设置过期时刻。 也就是说, 数据处 理装置可以直接根据操作者配置的信息, 确定数据的过期时刻。 0037 在本申请提供的实施例中, 过期时间信息具有时间顺序性, 也就是说, 过期时间信 息可以是按照过期时刻的时间顺序排列。 例如, 过期时间信息可以按照时间的先后顺序进 行排列, 也可以按照时间的后先顺序进行排列, 本申请实施例。

22、这里对过期时间信息的排列 方式不进行限定。 0038 步骤120、 基于过期时间信息的时间顺序性, 对第i个数据的第i个过期时间信息进 行解析, 得到第i个数据的过期时刻。 0039 其中, i为大于等于1且小于等于N的整数; N为数据的总数; 第1个数据为数据库中 过期时间最早的数据。 0040 可以理解为, 数据处理装置可以按照过期时间信息的排列顺序, 从前到后地对时 间管理文件中数据的过期时间进行解析, 通过解析得到各个数据的过期时刻。 0041 值得注意的是, 数据处理装置并不是连续地对数据进行解析, 而是在解析完当前 数据之后, 根据当前数据的过期时刻与当前时刻之间的关系, 来确定是。

23、否对下一个数据进 行解析, 详细分析具体见下文中的描述。 0042 在本申请提供的实施例中, 数据处理装置可以先对第1个数据对应的第1个过期时 间信息进行解析, 得到第1个数据的过期时刻。 这里, 第1个数据可以是数据库中过期时间最 早的数据。 0043 进一步, 数据处理装置对第1个数据的过期时刻与当前时刻进行对比, 当数据处理 说明书 3/11 页 6 CN 111400298 A 6 装置判断第1个数据的过期时刻小于当前时刻, 即第1个数据的过期时刻早于当前时刻, 则 继续对排列顺序的下一个数据, 即第2个数据对应的第2个过期时间信息进行解析, 得到第2 个数据的过期时刻。 同样的, 当。

24、判断第2个数据的过期时刻小于或等于当前时刻, 继续对第3 个数据对应的第3个过期时间信息进行解析, 得到第3个数据的过期时刻。 0044 可以理解的是, 只要数据处理装置检测到数据的过期时刻早于当前时刻, 则说明 排列在下一个顺序的数据的过期时刻很有可能仍然早于当前时刻, 则需要继续对当前数据 的下一个数据的过期时间信息进行解析。 0045 在一种可能的实现方式中, 为了增加过期时间信息的解析效率, 可以在解析数据 的过期时间信息的时候, 创建专用的线程进行解析。 0046 具体地, 对第i个数据的过期时间信息进行解析, 得到第i个数据的过期时刻, 包 括: 0047 启动目标线程, 通过目标。

25、线程对第i个数据的过期时间信息进行解析, 得到第i个 数据的过期时刻。 0048 在本申请提供的实施例中, 目标线程可以是协程(goroutine), goroutine是一种 比线程开销还轻的程序执行对象, 可以在分布式系统中广泛使用。 goroutine可以支持并发 形式。 本申请提供的实施例中, 数据处理装置可以通过goroutine的并发特征, 提高过期时 间信息的即系效率。 0049 步骤130、 若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确定为已过 期的数据, 并在满足删除过期条件时, 从数据库中删除已过期的数据。 0050 在本申请提供的实施例中, 数据处理装置检测。

26、到第i个数据的过期时刻大于等于 当前时刻, 则停止对第i个数据的下一个数据的过期时间信息进行解析, 直接确定第i个数 据和排列在第i个数据之前的数据为已过期的数据。 0051 可以理解的是, 时间管理文件中, 每个数据的过期时间信息是按照时间顺序排列 的, 当数据处理装置在检测到第i个数据过期时刻大于等于当前时刻, 可以默认为排列在第 i个数据之后数据的过期时刻都是大于当前时刻的, 即过期时刻晚于当前时刻。 所以, 数据 处理装置可以不对第i个数据之后的数据进行解析, 直接将前i个数据确定为已过期的数 据。 0052 进一步地, 数据处理装置在检测到满足删除过期条件时, 从数据库中删除上面确 。

27、定的已过期的数据。 0053 在本申请提供的实施例中, 从数据库中删除已过期数据可以通过以下步骤实现: 0054 步骤1301、 从时间管理文件中获取过期数据中每个过期数据对应的标识信息; 0055 步骤1302、 基于过期数据中每个过期数据的标识信息, 从数据库中删除标识信息 对应的相关数据。 0056 可以理解的是, 数据处理装置在确定了已过期数据之后, 获取已过期数据中每个 数据的标识信息。 这里, 已过期数据对应的标识信息可以在步骤120中解析每个数据的过期 时间信息的时候得到。 0057 进一步, 数据处理装置根据已过期数据的标识信息, 从数据库中查找出已过期数 据的相关信息。 并从。

28、数据库中将查找到的已过期数据的所有相关信息进行删除。 0058 由此可见, 本申请实施例提出的数据处理方法, 可以按照过期时间信息的时间顺 说明书 4/11 页 7 CN 111400298 A 7 序对数据进行解析, 得到过期时刻; 当检测到第i个数据的过期时刻大于当前时刻, 则停止 对数据的解析, 直接将前i个数据确定为已过期的数据进行删除; 也就是说, 仅对数据库中 部分数据进行解析, 即可确定已过期的数据, 并不用对数据库中每个数据逐一进行解析, 如 此, 能够精确定位已过期的数据, 提高了删除已过期数据时的处理效率。 0059 基于上述实施例, 本申请实施例在获取时间管理文件之前, 。

29、还可以执行步骤101至 步骤103。 请参考图2所示的数据处理方法流程示意图, 在图1的基础上, 本申请实施例提供 的数据处理方法还可以包括以下步骤: 0060 步骤101、 获取目标数据, 并确定目标数据的标识信息、 标识信息的数据类型和过 期时刻; 0061 步骤102、 对目标数据的标识信息和标识信息的数据类型两者中的至少一个, 与所 述过期时刻进行编码, 得到目标数据对应的过期时间信息; 0062 步骤103、 基于目标数据的过期时刻, 将目标数据对应的过期时间信息存储在时间 管理文件中。 0063 可以理解的是, 步骤101至步骤103是将目标数据存储入时间管理文件中的方式, 也可以。

30、理解为是一种时间管理文件的构建方法。 0064 在一种可能的实现方式中, 数据处理装置可以将目标数据的标识信息和过期时刻 进行编码, 得到编码后的目标数据对应的过期时间信息。 0065 在另一种可能的实现方式中, 数据处理装置还可以将目标数据的标识信息和数据 类型与过期时刻进行编码, 得到编码后的目标数据对应的过期时间信息。 0066 在又一种可能的实现方式中, 数据处理装置还可以将目标数据的标识信息, 目标 数据标识信息的数据类型, 以及目标数据的过期时刻三者进行编码, 得到编码后的目标数 据对应的过期时间信息。 0067 进一步, 数据处理装置可以将编码后的目标数据对应的过期时间信息按照过。

31、期时 刻的先后顺序存储进时间管理文件中。 0068 在本申请提供的实施例中, 目标数据可以是操作者输入的待存储数据, 也可以是 从其他三方平台输入的待存储数据。 本申请实施例这里对目标数据的来源不做限定。 0069 另外, 在实际应用中, 一个数据可以具有多个不同的字段。 表1示例性的示出了一 个数据在数据库中的相关信息。 其中, 表1中每一列为一个数据字段, 表示该数据不同的属 性。 0070 表1 0071 标识信息学号姓名年龄性别过期时刻 1123456张三15男2020.01.25 0072 而在本申请实施例中, 数据处理装置在获取到一个数据之后, 可以仅提取该数据 的标识信息和过期时。

32、刻这两个字段的信息, 将这标识信息和过期时刻这两个字段的数据进 行编码, 得到该数据的过期时间信息。 这样, 数据处理装置在解析每个数据的过期时间信息 的时候, 也只解析标识信息和过期时刻, 如此, 提高数据解析效率, 进而提高删除过期数据 的处理效率。 0073 进一步地, 在得到数据的过期时间信息之后, 将该数据的过期时间信息保存到时 间管理文件中。 需要说明的是, 将数据的过期时间信息进行保存时, 需要按照数据过期时刻 说明书 5/11 页 8 CN 111400298 A 8 在时间管理文件中的排列顺序进行保存。 0074 在一种可能的实现方式中, 步骤103可以通过步骤1031和步骤。

33、1032的方式实现。 参 考图3所示的数据处理方法流程图, 在图2的基础上, 步骤103包括以下步骤: 0075 步骤1031、 解析时间管理文件中每个数据的过期时间信息, 得到时间管理文件中 每个数据对应的过期时刻; 0076 步骤1032、 基于目标数据对应的过期时刻和时间管理文件中每个数据对应的过期 时刻, 将目标数据存储于第N个数据和第M个数据之间; 0077 其中, 第N个数据的过期时刻小于目标数据对应的过期时刻; 第M个数据的过期时 刻大于目标数据对应的过期时刻。 0078 可以理解的是, 在对目标数据进行保存的时候, 可以先对时间管理文件中的每个 数据的过期时间信息进行解析, 得。

34、到时间管理文件中每个数据的过期时刻, 这样, 根据目标 数据的过期时刻和时间管理文件中每个数据的过期时刻之间的时间关系, 将目标数据的过 期时间信息保存在第N个数据和第M个数据的过期时间信息之间, 这样, 第N个数据的过期时 刻小于目标数据对应的过期时刻; 第M个数据的过期时刻大于目标数据对应的过期时刻。 如 此, 可以保证时间管理信息中的每个数据的过期时间信息具有时间顺序性。 0079 在一种可能的实现方式中, 过期时间信息的存储格式为键值对Key-Value存储格 式。 具体地, 过期时间信息可以是键值对中的键数据。 0080 基于此, 步骤102中对目标数据的标识信息和过期时刻进行编码可。

35、以按照如下方 式进行: 0081 对标识信息和标识信息的数据类型两者中的至少一个, 与过期时刻进行编码, 并 将编码后的目标数据的标识信息和过期时刻作为目标数据的过期时间信息的键数据。 0082 在一种可能的实现方式中, 数据处理装置可以将目标数据的标识信息和过期时刻 进行编码, 并将编码后的目标数据的标识信息和过期时刻作为目标数据的过期时间信息的 键数据。 0083 在另一种可能的实现方式中, 数据处理装置还可以将目标数据的标识信息和数据 类型与过期时刻进行编码, 并将编码后的目标数据的标识信息的数据类型和过期时刻作为 目标数据的过期时间信息的键数据。 0084 在又一种可能的实现方式中, 。

36、数据处理装置还可以将目标数据的标识信息, 目标 数据标识信息的数据类型, 以及目标数据的过期时刻三者进行编码, 并将编码后的目标数 据的标识信息、 标识信息的数据类型和过期时刻作为目标数据的过期时间信息的键数据。 0085 另外, 为了降低目标数据的编码复杂度, 可以将目标数据过期时间信息对应的 Value数据设置为空值, 或者将目标数据过期时间信息对应的Value数据存储较少的字节, 例如Value数据中存储一个字节。 如此, 提高数据编码效率, 进而提高删除过期数据的处理 效率。 0086 基于前述实施例, 本申请实施例提供的数据处理方法中, 确定满足删除过期条件 的方式有多种, 下面介绍。

37、其中的两种: 包括方式一和方式二。 具体如下: 0087 方式一 0088 若当前时刻与上一次删除过期数据的时刻之间的时间间隔超过预设间隔时长, 则 确定满足删除过期条件。 说明书 6/11 页 9 CN 111400298 A 9 0089 可以理解的是, 数据处理装置可以按照删除过期数据的周期, 或者说是时间间隔, 对已过期的数据进行删除。 例如, 数据处理装置可以每间隔5个小时清除一次过期数据。 具 体地, 数据处理装置可以记录每一次删除过期数据的时间, 并实时监测当前时刻是否与上 次删除过期数据的时刻超过预设间隔时长, 这里的预设时长可以是清理周期。 0090 若检测到当前时刻与一次删。

38、除过期数据的时刻之间的时间间隔超过预设间隔时 长, 则将已过期的数据从数据库中删除。 需要说明的是, 预设间隔时长是可以是数据库的操 作者预先配置的。 0091 方式二 0092 若当前时刻为数据库的删除时刻, 则确定满足删除过期条件。 0093 可以理解的是, 数据处理装置可以按照特定的删除时刻, 对已过期数据进行删除 处理。 例如, 凌晨1点对已过期数据进行删除。 0094 需要说明的是, 数据库的删除时间可以是数据库操作者配置的, 也可以是数据处 理装置按照数据业务运行状态动态确定的。 0095 例如, 数据处理装置可以监测数据业务处理的高峰时期和低峰时期, 将数据库的 删除时间确定为数。

39、据业务处理的低峰时期。 0096 在一种可能的实现方式中, 数据处理装置可以接收删除配置信息; 删除配置信息 包括: 最新预设删除时刻和/或最新预设间隔时长; 预设删除时刻指示删除数据库中已过期 数据的时刻; 预设间隔时长表征两次删除已过期数据的时刻之间的间隔时长; 0097 基于配置信息, 更新预设删除时刻和/或预设间隔时长。 0098 可以理解的是, 本申请实施例提供的数据处理方法, 数据处理装置可以接收数据 库操作者对已过期数据删除速度和删除时间间隔时长的配置。 数据库操作者可以对数据库 已过期数据的删除时间进行修改和控制。 如此, 实现数据处理装置主动删除数据库已过期 数据的效果, 并。

40、且, 实现对已过期数据的删除时间可控效果, 提高了删除过期数据时的效 率。 0099 在一种可能的实现方式中, 数据处理装置还可以接收删除配置信息, 删除配置信 息包括每次删除已过期数据的数据量。 0100 对应的, 数据处理装置在删除过期数据的过程中, 按照数据库操作者配置的每次 删除已过期数据的数据量, 从数据库中删除所述已过期的数据。 0101 可以理解的是, 数据库操作者可以对每次删除过期数据的数据量进行控制。 也就 是说, 数据处理装置可以接收数据库操作者对每次删除已过期数据时的数据量的配置。 如 此, 实现数据处理装置主动删除数据库已过期数据的效果, 并且, 实现对删除已过期数据的。

41、 数据量的控制, 提高了删除过期数据时的效率。 0102 基于前述实施例, 本申请实施例提供一种数据处理方法, 该数据处理方法包括以 下步骤: 0103 步骤110、 获取时间管理文件; 其中, 时间管理文件用于记录数据库中每个数据对 应的过期时间信息, 且过期时间信息具有时间顺序性。 0104 在一可行的实施方式中, 本申请实施例所提及的数据库是指RocksDB数据库。 RocksDB是一个嵌入式的K-V存储引擎, 即RocksDB可以用来存储Keys和Values, 且Keys和 Values可以是任意大小的字节流。 说明书 7/11 页 10 CN 111400298 A 10 0105。

42、 实际应用中, RocksDB能够支持列族机制; RocksDB通过列族机制, 将数据从逻辑上 分开, 数据库操作者可以将一类数据的字段存储在一个列族中, 从而达到快速写入和查询 的目的。 另外, RocksDB中每个数据新建时默认带一个名为 “默认” (default)的列族, 如果一 个数据没有携带列族信息, 则默认使用这个列族。 0106 在本申请提供的实施例中, 数据处理装置可以将数据存储在default列族中, 另 外, 数据处理装置能够针对数据库中每个数据新增一个列族, 该新增列族专门用于存储每 个数据的过期时间信息。 其中, 过期时间信息包括每个数据的标识信息、 标识信息的数据类。

43、 型和过期时刻。 0107 实际应用中, 每一个列族都具有独立存储文件sstable。 因此, 本申请实施例新增 的列族对应的存储文件sstable即为步骤110中的时间管理文件。 0108 在一种可能的实现方式中, 该新增列族中键Key的编码规则如下: 0109 Key:过期时刻时间戳(timestamp)+键的数据类型+键值; 0110 其中, 时间戳timestam用于指示数据的过期时刻; 键的数据类型用于指示该数据 的删除方式, 键值用于指示数据的标识信息; 每个数据键值的取值与存储在default列族数 据的键值的取值相同。 0111 通常情况下键类型包括字符串、 哈希、 列表、 集。

44、合等不同的数据类型; 在本申请实 施例中, 不同数据类型的键对应的数据删除方式不同。 0112 另外, 上述新增列族中Value可以只存储一个字节, 也可以取值为空, 本申请实施 例这里不做限定。 0113 在本申请提供的实施例中, 上述新增列族对应的存储文件中过期时间信息按照每 个数据的过期时刻进行排序。 0114 步骤120、 基于过期时间信息的时间顺序性, 对第i个数据的第i个过期时间信息进 行解析, 得到第i个数据的过期时刻。 0115 其中, i为大于等于1且小于等于N的整数; N为数据的总数; 第1个数据为数据库中 过期时间最早的数据。 0116 在本申请提供的实施例中, 数据处理。

45、装置可以启动一个goroutine, 通过 goroutine解析时间管理文件中每个数据的过期时间信息, 得到每个数据的过期时间戳 timestamp字段的取值(即过期时刻)。 0117 需要说明的是, 数据处理装置可以控制goroutine按照过期时间信息的排列顺序, 从前到后地对时间管理文件中数据的过期时间进行解析, 通过解析得到各个数据的过期时 间戳timestamp字段的取值(即过期时刻)。 0118 值得注意的是, goroutine并不是连续地对数据进行解析, 而是在解析完当前数据 之后, 数据处理装置还需要根据当前数据的过期时间戳timestamp字段的取值(即过期时 刻)与当前。

46、时间戳(即当前时刻)之间的关系, 来确定是否对下一个数据进行解析。 0119 步骤130、 若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确定为已过 期的数据, 并在满足删除过期条件时, 从数据库中删除已过期的数据。 0120 这里, 数据处理装置在对时间管理文件中的数据进行解析之前, 还需要获取当前 时间戳, 基于当前时间戳, 来确定是否对下一个数据进行解析。 0121 具体地, 数据处理装置检测到第i个数据的过期时间戳timestamp字段的取值大于 说明书 8/11 页 11 CN 111400298 A 11 等于当前时间戳, 则停止对第i个数据的下一个数据的过期时间信息进行。

47、解析, 直接确定第 i个数据和排列在第i个数据之前的数据为已过期的数据。 0122 可以理解的是, 时间管理文件中, 每个数据的过期时间信息是按照时间顺序排列 的, 当数据处理装置在检测到第i个数据过期时刻大于等于当前时刻, 可以默认为排列在第 i个数据之后数据的过期时刻都是大于当前时刻的, 即过期时刻晚于当前时刻。 所以, 数据 处理装置可以不对第i个数据之后的数据进行解析, 直接将前i个数据确定为已过期的数 据。 0123 可以理解的是, 数据处理装置在确定了已过期数据之后, 可以获取已过期数据中 每个数据的标识信息。 这里, 已过期数据对应的标识信息可以在步骤120中解析每个数据的 过期。

48、时间信息的时候得到。 0124 进一步, 数据处理装置根据已过期数据的标识信息, 从数据库中查找出已过期数 据的相关信息。 并从数据库中将查找到的已过期数据的所有相关信息进行删除。 0125 由此可见, 本申请实施例提出的数据处理方法, 可以按照过期时间信息的时间顺 序对数据进行解析, 得到过期时刻; 当检测到第i个数据的过期时刻大于当前时刻, 则停止 对数据的解析, 直接将前i个数据确定为已过期的数据进行删除; 也就是说, 仅对数据库中 部分数据进行解析, 即可确定已过期的数据, 并不用对数据库中每个数据逐一进行解析, 如 此, 能够精确定位已过期的数据, 提高了删除已过期数据时的处理效率。。

49、 0126 基于前述实施例, 本申请实施例提供一种数据处理装置, 如图4所示, 所述数据处 理装置包括: 0127 获取单元41, 用于获取时间管理文件; 其中, 所述时间管理文件用于记录数据库中 每个数据对应的过期时间信息, 且所述过期时间信息具有时间顺序性; 0128 解析单元42, 用于基于所述过期时间信息的时间顺序性, 对第i个数据的第i个过 期时间信息进行解析, 得到第i个数据的过期时刻; 其中, i为大于等于1且小于等于N的整 数; N为数据的总数; 第1个数据为数据库中过期时间最早的数据; 0129 处理单元43, 用于若第i个数据的过期时刻大于等于当前时刻, 则将前i个数据确 。

50、定为已过期的数据, 并在满足删除过期条件时, 从所述数据库中删除所述已过期的数据。 0130 在本申请提供的实施例中, 所述过期时间信息包括: 每个数据的标识信息和每个 数据的过期时刻 0131 在本申请提供的实施例中, 所述获取单元41, 还用于获取目标数据, 并确定所述目 标数据的标识信息、 标识信息的数据类型和过期时刻; 所述标识信息的类型用于指示所述 目标数据的删除方式; 0132 所述数据处理装置还包括, 编码单元; 其中, 0133 所述编码单元, 用于对所述目标识信息和所述标识信息的数据类型两者中的至少 一个, 与过期时刻进行编码, 得到所述目标数据对应的过期时间信息; 0134。

展开阅读全文
内容关键字: 数据处理 方法 装置 计算机 可读 存储 介质
关于本文
本文标题:数据处理方法及装置、计算机可读存储介质.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/9184481.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1