[发明专利]数据库索引创建方法及装置有效
申请号: | 201610920693.5 | 申请日: | 2016-10-21 |
公开(公告)号: | CN107016018B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 王明;叶正盛 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242 |
代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 党晓林;李辉 |
地址: | 英属开曼*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 索引 创建 方法 装置 | ||
本申请公开了一种数据库索引创建方法及装置,其中方法包括按如下方式对数据库的每一结构化查询语言SQL语句创建数据库索引:确定一SQL语句中每一查询条件字段的历史元数据;根据所述每一查询条件字段的历史元数据,确定所述每一查询条件字段的权重;根据所述每一查询条件字段的权重,为该SQL语句创建数据库索引。本申请可以在自动进行数据库索引创建过程中避免业务场景及数据库中无有效数据分布对数据库索引创建的影响。
技术领域
本申请涉及数据库技术领域,尤其涉及数据库索引创建方法及装置。
背景技术
数据库(Database)按照数据结构来组织、存储和管理数据。数据库索引对数据库表中一列或多列的值进行排序并建立目录,使用数据库索引可以快速访问数据库表中的特定信息。
数据库索引的创建和维护是DBA(Database Administrator,数据库管理员)日常业务中不可取代的工作。DBA的主要日常工作之一是SQL(Structured Query Language,结构化查询语言)调优,SQL调优的重要手段之一是给查询慢的SQL建立合适的数据库索引。数据库索引的建立需要对业务场景有一定了解,并需要一定的数据库经验,对业务场景的了解程度和数据库经验的丰富程度对线上应用的性能影响非常巨大。随着业务场景规模的不断扩大,DBA不可能了解所有业务,这样数据库索引的建立就会脱离实际业务需求,造成数据库索引创建的效率不高,随时会影响线上业务应用的正常运转。同时,数据库索引的建立和维护工作也占用了DBA大量时间。
现有技术中提出一种基于有效数据分布的数据库索引自动创建的方案,然而在该方案中数据库索引的建立需要基于数据库中的有效数据分布,并且要求尽量真实模拟线上数据分布,那么在新数据库或者新业务上线的时候,由于没有任务业务数据写入,缺少数据库的有效数据分布,这种基于有效数据分布的数据库索引建立方案就有些缺陷了,二者的矛盾是数据库索引需要业务上线前建立好,而数据库索引的建立又依赖业务中的有效数据分布。
发明内容
本申请实施例提供一种数据库索引创建方法,用以在自动进行数据库索引创建过程中避免业务场景及数据库中无有效数据分布对数据库索引创建的影响,该方法包括按如下方式对数据库的每一结构化查询语言SQL语句创建数据库索引:
确定一SQL语句中每一查询条件字段的历史元数据;
根据所述每一查询条件字段的历史元数据,确定所述每一查询条件字段的权重;
根据所述每一查询条件字段的权重,对该SQL语句中查询条件字段进行排序;
根据排序后的查询条件字段为该SQL语句创建数据库索引。
本申请实施例还提供一种数据库索引创建装置,用以在自动进行数据库索引创建过程中避免业务场景及数据库中无有效数据分布对数据库索引创建的影响,该装置包括:
元数据确定模块,用于在对数据库的每一SQL语句创建数据库索引时,确定一SQL语句中每一查询条件字段的历史元数据;
权重确定模块,用于根据所述每一查询条件字段的历史元数据,确定所述每一查询条件字段的权重;
字段排序模块,用于根据所述每一查询条件字段的权重,对该SQL语句中查询条件字段进行排序;
索引创建模块,用于根据排序后的查询条件字段为该SQL语句创建数据库索引。
本申请实施例提供一种数据库索引创建方法,用以在自动进行数据库索引创建过程中避免业务场景及数据库中无有效数据分布对数据库索引创建的影响,该方法包括按如下方式对数据库的每一结构化查询语言SQL语句创建数据库索引:
确定一SQL语句中每一查询条件字段的历史元数据;
根据所述每一查询条件字段的历史元数据,确定所述每一查询条件字段的权重;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610920693.5/2.html,转载请声明来源钻瓜专利网。