[发明专利]最优排序键压缩和索引重建有效
申请号: | 201810808893.0 | 申请日: | 2018-07-20 |
公开(公告)号: | CN109299086B | 公开(公告)日: | 2021-11-23 |
发明(设计)人: | Y.S.权;K.朴;C.俞 | 申请(专利权)人: | SAP欧洲公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 邵亚丽 |
地址: | 德国瓦*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 最优 排序 压缩 索引 重建 | ||
一种系统和方法,包含由处理器确定数据库索引的索引键的区别位位置;由处理器确定索引键的位的级联;以及产生级联的记录。其他系统和方法包含由处理器并行地收集数据库索引的索引键,其中目标表的数据页平均地分布到多个处理器核心;由核心中的每一个扫描数据页,以提取压缩的键和对应的记录标识符;根据并行排序算法,由多个处理器核心排序压缩的键和对应的记录标识符的对;以自底而上的方式产生索引树;以及储存所产生的索引树的记录。
背景技术
在为数据库表维护索引且索引键由表的一列或多列构成的情况下,可能存在某时间点,该时间点时索引由于某种原因丢失或以其他方式不可用。在这样的实例中,将需要重建索引。为了准确地重建索引,索引键应以键值的顺序而排序。重建数据库表索引的一个考虑可能是,对于正确地排序索引键,要保留的最小信息(例如,索引键中的位数)是什么。此最小信息对于确定索引键的正确排序的顺序应是充分的,从该顺序可以重建索引。
在包含数据库复制的一些情况下,主服务器中创建的索引应反映在其他副本中。完成此任务的一种方法是在网络上将索引图像发送到其他副本。然而,此方法引起网络开支,其可能是复制系统的性能瓶颈。另一种索引复制方法可以包含索引创建在副本中的重演,以避免网络开支。一些其他途径可能通过试图确定是否存在可能用来降低副本中的索引创建的成本的一些信息而寻求索引复制或重建上的改善。
在一些背景下,可能存在对在保留系统资源的同时更高效地进行索引重建操作的期望。
附图说明
图1是索引位的示意性图示;
图2是索引键值的示例性二进制表示的示意性图示;
图3是示例性索引键的示意性图示;
图4是索引树的示意性图示;并且
图5是索引重建过程的示意性图示;
图6是根据一些实施例的示例性数据格式化和处理的示意性图示;并且
图7是根据一些实施例的示例性系统的框图。
具体实施方式
提供以下描述,使任何本领域技术人员能够制造和使用所描述的实施例。然而,各种修改对本领域技术人员将仍是显而易见的。
常规数据库将索引视作持久的结构,并且因此任何索引更新引起运行时磁盘I/O(输入/输出),以写入到持久的更新日志和索引节点页。对于存储器内数据库,可能使用维护存储器内(即,非持久)索引结构的不同途径。更新事务可以例如从此途径受益,因为其消除了与索引更新相关联的运行时磁盘I/O。然而,此途径引起在数据库恢复期间构建索引的成本。本公开提供了系统和方法,其可以显著降低在数据库恢复期间的索引重建的成本。申请人已经认识到(例如,经由实验),使用如本文中所公开的多核心CPU方法和系统的并行索引重建比例如将磁盘驻留的索引图像载入到存储器更快。
本公开包含若干技术创新。本文中,索引键的“区别位”示出为正确地排序索引键所需的最小信息(即,对于确定索引键的正确顺序必要且充分的)。在一个实施例中,其他公开的方面包含仅储存索引键的区别位的排序键压缩方案。此排序键压缩方案提供一种机制,其对于降低重建索引的成本可以是有用的。在区别位是准确地确定索引键的顺序所需和所用的最小可能信息的意义上,本文公开的键压缩方案可以认为是最优的。
在一些实施例中,本文中的键压缩方案的压缩比可以取决于相关联的数据集的特性而变化。申请人已经认识到约2.4:1至约5:1的样本数据集的压缩比,其导致在大规模索引的重建期间的显著的存储器空间节省和性能改善。本文公开的排序键压缩可以认为是轻量化方案(例如,要保留的信息量小且从键提取最小位数的成本低)。然而,其在存储器空间节省和性能改善上的益处是显著的。此外,所公开的排序键压缩方案可以在各种不同的应用中使用,包含用比字大小更长的排序键来排序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于SAP欧洲公司,未经SAP欧洲公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810808893.0/2.html,转载请声明来源钻瓜专利网。