说明:收录25万 73个行业的国家标准 支持批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210903100.X (22)申请日 2022.07.29 (71)申请人 广州市玄武无线科技股份有限公司 地址 510653 广东省广州市天河区高普路 1021号501室6383号 (72)发明人 洪达浩 林京 梁海棠 梁远明  (74)专利代理 机构 广州三环 专利商标代理有限 公司 44202 专利代理师 吴松滨 (51)Int.Cl. G06F 16/22(2019.01) G06F 16/2455(2019.01) (54)发明名称 一种基于用户行为的数据库表字段索引建 立方法及系统 (57)摘要 本申请公开了一种基于用户行为的数据库 表字段索引建立方法及系统, 该方法包括: 通过 监听器接收客户端请求, 构建请求信息库; 调用 索引建立器, 并按照预设周期从请求信息库中获 取请求信息, 统计请求信息中对应字段序列的平 均查询频次和区分度以及对应表的总行数, 生成 分析结果; 其中, 所述区分度为字段中所有不同 的值的个数占表总行数的比例; 根据分析结果判 断当前请求是否满足建立索引的条件; 若满足, 则建立索引序列。 本申请无需在系统上线之前建 立索引, 而是通过一套检测机制, 监控、 识别、 分 析用户的行为, 预测用户可能经常查询的字段, 并对其建立索引, 做到既提升性能又不浪费磁盘 空间, 同时提升 了开发效率。 权利要求书1页 说明书6页 附图2页 CN 115292315 A 2022.11.04 CN 115292315 A 1.一种基于用户行为的数据库表字段索引建立方法, 其特 征在于, 包括: 通过监听器接收客户端请求, 构建请求信息库; 调用索引建立器, 并按照预设周期从请求信息库中获取请求信息, 统计请求信息中对 应字段序列的平均查询频次和区分度以及 对应表的总行数, 生成分析结果; 其中, 所述区分 度为字段中所有不同的值的个数占表总行 数的比例; 根据分析 结果判断当前请求是否满足建立索引的条件; 若满足, 则建立索引序列。 2.根据权利要求1所述的基于用户行为的数据库表字段索引建立方法, 其特征在于, 通 过DML语句建立索引序列。 3.根据权利要求1所述的基于用户行为的数据库表字段索引建立方法, 其特征在于, 所 述建立索引的条件的默认配置包括: 请求信息中对应字段序列的平均查询频次连续3天内超过10分钟1次、 对应字段序列的 区分度大于 0.3, 以及对应表的总行 数超过10 00行。 4.根据权利要求1所述的基于用户行为的数据库表字段索引建立方法, 其特征在于, 还 包括: 若当前请求不满足建立索引的条件, 则返回执行按照预设周期 从请求信 息库获取请求 信息步骤。 5.根据权利要求1所述的基于用户行为的数据库表字段索引建立方法, 其特征在于, 所 述请求包括sql语句执 行请求。 6.根据权利要求1所述的基于用户行为的数据库表字段索引建立方法, 其特征在于, 所 述监听器包括 拦截器, 所述 拦截器可采用mybatis。 7.一种基于用户行为的数据库表字段索引建立系统, 其特 征在于, 包括: 监听单元, 用于通过监听器接收客户端请求, 构建请求信息库; 分析单元, 用于调用索引建立器, 并按照预设周期从请求信 息库中获取请求信 息, 统计 请求信息中对应字段序列的平均查询频次和区分度以及对应表的总 行数, 生成分析结果; 其中, 所述区分度为字段中所有不同的值的个数占表总行 数的比例; 索引建立单元, 用于根据分析结果判断当前请求是否满足建立索引的条件; 若满足, 则 建立索引序列。 8.根据权利要求7所述的基于用户行为的数据库表字段索引建立系统, 其特征在于, 所 述索引建立单 元, 还用于通过DML语句建立索引序列。 9.一种终端设备, 其特 征在于, 包括: 一个或多个处 理器; 存储器, 与所述处 理器耦接, 用于存 储一个或多个程序; 当所述一个或多个程序被所述一个或多个处理器执行, 使得所述一个或多个处理器实 现如权利要求1 ‑6任一项所述的基于用户行为的数据库表字段索引建立方法。 10.一种计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 所述计算机程序 被处理器执行时实现如权利要求 1‑6任一项所述的基于用户行为的数据库 表字段索引建立 方法。权 利 要 求 书 1/1 页 2 CN 115292315 A 2一种基于用户行为的数据库表字段索引建立方 法及系统 技术领域 [0001]本申请涉及数据库管理技术领域, 尤其涉及一种基于用户行为的数据库表字段索 引建立方法及系统。 背景技术 [0002]为了提升数据库的查询性能, 通常会为数据库表字段建立索引。 针对不同类型、 频 次的查询请求, 正确建立索引能够将查询速度提升一个数量级。 但是, 索引本身是一种冗 余, 会消耗磁 盘空间, 因此如何正确建立索引十分 关键。 [0003]目前, 对数据库表字段建立索引的方法一般有以下几种: 第一种是对所有数据库 表字段均建立索引, 但这种方式索引过多且相对孤立, 通常存在无用索引, 导致占用大量磁 盘空间, 而在查询时也容易出现慢查询问题。 第二种是在系统上线 前均不建立索引, 在上线 后产生慢查询后再排查问题, 并建立对应索引, 然而排查性能问题要消耗大量人力物力, 由 于数据量巨大, 在排查后再建立索引通常也十 分缓慢, 甚至影响处理其他业务请求。 第三种 是根据既定业务需求, 对部 分数据库表字段建立索引, 然而某些系统在运行过程中, 会有动 态的查询请求产生, 此时开 发者根据既定业务需求对部 分数据库 表字段的建立索引可能无 法对这些动态的查询请求 生效, 同样会引发慢查询问题。 发明内容 [0004]本申请的目的在于提供种基于用户行为的数据库表字段索引建立方法及系统, 以 解决现有的数据库表字段索引建立方法中存在的占用大量磁盘空间, 易出现慢查询, 甚至 影响其他业务请求处 理的问题。 [0005]为实现上述目的, 本申请提供一种基于用户行为的数据库表字段索引建立方法, 包括: [0006]通过监听器接收客户端请求, 构建请求信息库; [0007]调用索引建立器, 并按照预设周期从请求信息库 中获取请求信息, 统计请求信息 中对应字段序列的平均查询频次和区分度以及 对应表的总行数, 生成分析结果; 其中, 所述 区分度为字段中所有不同的值的个数占表总行 数的比例; [0008]根据分析 结果判断当前请求是否满足建立索引的条件; 若满足, 则建立索引序列。 [0009]进一步地, 通过DML语句建立索引序列。 [0010]进一步地, 所述建立索引的条件的默认配置包括: [0011]请求信息中对应字段序列的平均查询频次连续3天内超过10分钟1次、 对应字段序 列的区分度大于 0.3, 以及对应表的总行 数超过10 00行。 [0012]进一步地, 所述的基于用户行为的数据库表字段索引建立方法, 还 包括: [0013]若当前请求不满足建立索引的条件, 则返回执行按照预设周期从请求信息库获取 请求信息步骤。 [0014]进一步地, 所述请求包括sql语句执 行请求。说 明 书 1/6 页 3 CN 115292315 A 3

.PDF文档 专利 一种基于用户行为的数据库表字段索引建立方法及系统

文档预览
中文文档 10 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共10页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于用户行为的数据库表字段索引建立方法及系统 第 1 页 专利 一种基于用户行为的数据库表字段索引建立方法及系统 第 2 页 专利 一种基于用户行为的数据库表字段索引建立方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 17:14:54上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。