[发明专利]关系型数据库更新方法、装置、设备及存储介质有效
申请号: | 202010272594.7 | 申请日: | 2020-04-09 |
公开(公告)号: | CN111488366B | 公开(公告)日: | 2023-08-01 |
发明(设计)人: | 胡滨 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/28;G06F9/54 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 朱颖;刘芳 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 关系 数据库 更新 方法 装置 设备 存储 介质 | ||
1.一种关系型数据库更新方法,其特征在于,包括:
获取与关系型数据库中相同的数据行对应的多个更新请求;
获取包含所述多个更新请求的初始请求队列;
将所述初始请求队列中的部分更新请求舍弃,得到剩余请求队列;
顺序响应所述剩余请求队列中的更新请求,对所述数据行进行更新;
所述获取包含所述多个更新请求的初始请求队列,包括:
将所述多个更新请求划分为N个初始请求队列,N为大于或等于2的整数;
在所述顺序响应所述剩余请求队列中的更新请求,对所述数据行进行更新之前,还包括:
将所述关系型数据库中的所述数据行进行拆分,得到M个拆分行,M为大于或等于2的整数。
2.根据权利要求1所述的方法,其特征在于,所述将所述初始请求队列中的部分更新请求舍弃,得到剩余请求队列,包括:
根据所述初始请求队列中更新请求的数量,获取所述初始请求队列对应的更新频次;
根据所述更新频次和预设的冗余阈值,确定冗余占比;
在所述初始请求队列中以所述冗余占比确定冗余请求;
将所述请求队列中的冗余请求舍弃,得到剩余请求队列。
3.根据权利要求2所述的方法,其特征在于,所述在所述初始请求队列中以所述冗余占比确定冗余请求,包括:
根据所述冗余占比,将所述初始请求队列排序靠前的更新请求确定为冗余请求,其中,所述初始请求队列中更新请求的顺序是按请求的获取时刻从前到后排序。
4.根据权利要求1所述的方法,其特征在于,所述顺序响应所述剩余请求队列中的更新请求,对所述数据行进行更新,包括:
将所述M个拆分行分配给所述N个初始请求队列对应的N个剩余请求队列执行更新;
将更新后的M个拆分行合并,得到更新后的数据行。
5.根据权利要求4所述的方法,其特征在于,所述拆分行的数量M与所述剩余请求队列的数量N一致。
6.根据权利要求1至3任一所述的方法,其特征在于,所述获取与关系型数据库中相同的数据行对应的多个更新请求,包括:
在预设的处理周期内,获取与关系型数据库中相同的数据行对应的多个更新请求,其中,所述数据行为无一致性要求的数据类型。
7.一种关系型数据库更新装置,其特征在于,包括:
请求获取模块,用于获取与关系型数据库中相同的数据行对应的多个更新请求;
队列获取模块,用于获取包含所述多个更新请求的初始请求队列;
冗余舍弃模块,用于将所述初始请求队列中的部分更新请求舍弃,得到剩余请求队列;
更新执行模块,用于顺序响应所述剩余请求队列中的更新请求,对所述数据行进行更新;
所述队列获取模块,用于将所述多个更新请求划分为N个初始请求队列,N为大于或等于2的整数;
所述装置还包括:行拆分模块;
在所述更新执行模块顺序响应所述剩余请求队列中的更新请求,对所述数据行进行更新之前,所述行拆分模块用于将所述关系型数据库中的所述数据行进行拆分,得到M个拆分行,M为大于或等于2的整数。
8.根据权利要求7所述的装置,其特征在于,所述冗余舍弃模块,具体用于根据所述初始请求队列中更新请求的数量,获取所述初始请求队列对应的操作频次;根据所述操作频次和预设的冗余阈值,确定冗余占比;在所述初始请求队列中以所述冗余占比确定冗余请求;将所述请求队列中的冗余请求舍弃,得到剩余请求队列。
9.根据权利要求8所述的装置,其特征在于,所述冗余舍弃模块,具体用于根据所述冗余占比,将所述初始请求队列排序靠前的更新请求确定为冗余请求,其中,所述初始请求队列中更新请求的顺序是按请求的获取时刻从前到后排序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010272594.7/1.html,转载请声明来源钻瓜专利网。