全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210314941.7 (22)申请日 2022.03.28 (71)申请人 阿里云计算有限公司 地址 310024 浙江省杭州市西湖区转塘科 技经济区块12号 (72)发明人 余从佳 王腾  (74)专利代理 机构 北京同钧律师事务所 16 037 专利代理师 吴梅锡 许怀远 (51)Int.Cl. G06F 16/22(2019.01) G06F 16/23(2019.01) G06F 16/242(2019.01) G06F 16/2455(2019.01) G06F 16/27(2019.01) G06F 16/28(2019.01) (54)发明名称 数据库表的处 理方法和系统 (57)摘要 本申请实施例提供了一种数据库表的处理 方法和系统, 该方法中, 通过采集单机数据库的 数据库审计日志和统计信息, 且根据数据库 审计 日志得到的表的语句执行信息, 存储节点的个 数, 以及统计信息, 获取表的拆分信息, 其中可以 基于表的语句执行信息, 准确得到拆分建议, 进 而提高表后续的查询效率。 另外可以输出表的拆 分建议, 用户基于该拆分建议可 以自行拆分表, 以实现单机数据库向分布式数据库的演进, 难度 低, 无技术壁垒。 权利要求书3页 说明书19页 附图6页 CN 114661721 A 2022.06.24 CN 114661721 A 1.一种数据库表的处 理方法, 其特 征在于, 包括: 采集单机数据库的数据库审计日志和统计信息; 接收存储节点的个数, 所述存储节点为: 分布式数据库中用于存储所述单机数据库中 表的存储节点; 根据所述数据库审计日志, 得到所述表的语句执 行信息; 根据所述语句执行信 息、 所述统计信 息, 以及所述存储节点的个数, 获取所述表的拆分 信息; 根据所述表的拆分信息, 输出 所述表的拆分 建议。 2.根据权利要求1所述的方法, 其特征在于, 所述语句执行信息包括: 每个候选列关联 的语句的执 行次数比例, 候选列为: 所述表关联的语句涉及到的列; 所述根据所述数据库审计日志, 得到所述表的语句执 行信息, 包括: 将所述数据库审计日志进行脱敏处理, 得到所述表关联的语句的第一执行次数, 以及 所述表关联的每 个语句涉及到的列, 以得到所述 候选列; 根据所述每个候选列关联的语句的第二执行次数, 以及所述第一执行次数, 获取所述 每个候选列关联的语句的执 行次数比例。 3.根据权利要求2所述的方法, 其特征在于, 所述拆分信 息包括: 拆分键, 所述拆分键用 于对所述表进行拆分, 所述统计信息包括: 所述表中每 个列的区分度; 所述根据所述语句执行信 息、 所述统计信 息, 以及所述存储节点的个数, 获取所述表的 拆分信息, 包括: A, 在第i次循环中, 根据第i ‑1次拆分后的表的行信息和/或所述第i ‑1次拆分后的表的 数据量, 检测是否对 所述第i‑1次拆分后的表进行第i次拆 分, 若是, 执行步骤B、 步骤C, 所述 i为大于或等于1的整数, 当所述 i为1时, 所述第i ‑1次拆分后的表为: 未 经拆分的表; B, 根据多个候选列中的部分候选列的执行次数比例, 以及所述部分候选列的区分度, 确定第i次拆分的拆分键; C, 根据第i ‑1次拆分后的表的行信息和/或所述第i ‑1次拆分后的表的数据量, 以及所 述存储节点的个数, 确定每 个所述i‑1次拆分后的表经第i次拆分后的数量。 4.根据权利要求3所述的方法, 其特征在于, 当所述i为1时, 所述部分候选列为所述多 个候选列中的至少一个第一 候选列, 每 个第一候选列中包括表中的一列; 所述根据多个候选列中的部分候选列的执行次数比例, 以及所述部分候选列的区分 度, 确定第i次拆分的拆分键, 包括: 根据所述每个第 一候选列关联的语句的执行次数比例, 以及所述每个第 一候选列的区 分度, 在所述至少一个第一 候选列中确定第一目标列; 将所述第一目标列的类型作为第一拆分键 。 5.根据权利要求4所述的方法, 其特征在于, 所述在所述至少一个第 一候选列中确定第 一目标列, 包括: 将区分度 大于预设区分度, 且大于预设比例中最大执行次数比例的第 一候选列作为所 述第一目标列。 6.根据权利要求5所述的方法, 其特征在于, 当所述i为2时, 所述部分候选列为所述多 个候选列中的至少一个第二候选列, 每个第二候选列中包括表中的至少一列, 且所述至少权 利 要 求 书 1/3 页 2 CN 114661721 A 2一列中包括所述第一目标列; 所述根据多个候选列中的部分候选列的执行次数比例, 以及所述部分候选列的区分 度, 确定第i次拆分的拆分键, 包括: 根据所述每个第 二候选例关联的语句的执行次数比例, 以及所述每个第 二候选例的区 分度, 在所述至少一个第二 候选列中确定第二目标列; 在所述第二目标列的类型中, 将除了所述第一拆分键的剩余类型作为第二拆分键 。 7.根据权利要求4或5所述的方法, 其特征在于, 所述根据所述数据库审计日志, 得到所 述表的语句执 行信息之前, 还 包括: 采集表结构, 所述表结构中包括字段类型; 所述将所述第一目标列的类型作为第一拆分键之后, 包括; 根据所述字段类型, 检测所述第一拆分键是否可用。 8.根据权利要求6所述的方法, 其特征在于, 所述根据所述表的拆分信息, 输出所述表 的拆分建议, 包括: 根据拆分键和拆分函数的映射关系, 获取所述第一拆分键对应的第一拆分函数, 以及 所述第二拆分键对应的第二拆分函数; 输出所述第一拆分函数、 所述第二拆分函数, 以及所述数量。 9.根据权利要求6所述的方法, 其特征在于, 第三候选列为: 所述候选列中不包含所述 第一目标列、 所述第二目标列的候选列, 所述方法还 包括: 若在第三候选列中, 存在执行次数比例大于所述预设比例且区分度大于所述预设区分 度的候选列, 则创建全局二级索引。 10.根据权利要求9所述的方法, 其特 征在于, 所述创建全局二级索引, 包括: 根据所述每个第 三候选列关联的语句的执行次数比例, 以及所述每个第 三候选列的区 分度, 在所述至少一个第三候选列中确定第三 目标列, 所述第三 目标列的区分度大于所述 预设区分度, 且执 行次数比例大于所述预设比例; 将所述第三目标列的类型作为第三拆分键 。 11.根据权利要求10所述的方法, 其特征在于, 所述将所述第 三目标列的类型作为第 三 拆分键之后, 包括: 若确定对第 一次拆分后的表进行第 二次拆分, 则根据每个第四候选例的关联的语句的 执行次数比例, 以及所述每个第四候选例的区分度, 确定第四拆 分键, 所述每个第四候选列 中包括表中的至少一列, 且所述每个第四候选列中包括的至少一列中包含有 所述第三目标 列。 12.根据权利要求11所述的方法, 其特征在于, 所述根据所述数据库审计日志, 得到所 述表的语句执 行信息之前, 还 包括: 采集所述单机数据库的索引; 所述确定第四拆分键之后, 还 包括: 确定预设覆盖列的类型; 在所述预设覆盖列的类型、 所述第 三拆分键, 以及所述第四拆分键中, 删除与所述索引 重复的类型; 根据删除后的索引、 所述预设覆盖列的类型、 所述第三拆分键, 以及所述第 四拆分键,权 利 要 求 书 2/3 页 3 CN 114661721 A 3

PDF文档 专利 数据库表的处理方法和系统

文档预览
中文文档 29 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共29页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 数据库表的处理方法和系统 第 1 页 专利 数据库表的处理方法和系统 第 2 页 专利 数据库表的处理方法和系统 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 00:50:10上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。