[发明专利]一种监控基数树内部结构以实现测试的方法及装置有效
| 申请号: | 201610539360.8 | 申请日: | 2016-07-08 |
| 公开(公告)号: | CN107590160B | 公开(公告)日: | 2021-08-27 |
| 发明(设计)人: | 袁诚 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F11/34 |
| 代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 李红爽;栗若木 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 监控 基数 内部结构 实现 测试 方法 装置 | ||
一种监控基数树内部结构的方法及装置;所述方法包括:获取操作前基数树中节点的标识集合,作为第一集合;根据所述第一集合以及节点标识更改信息,确定所述基数树中节点的预计标识集合;所述基数树中每个节点的标识包括用于描述从根节点到该节点的最短路径的信息;获取操作后所述基数树中节点的标识集合,作为第二集合;比较所述第二集合与所述预计标识集合,根据比较结果获得监控结果。本申请对于基数树内部形态可以做到在每次发生操作时进行实时监控。
技术领域
本发明涉及计算机领域,尤其涉及一种监控基数树内部结构的方法及装置。
背景技术
基数树(radix-tree)是通用的字典类型数据结构,基数树树又称为PAT 位树(Patricia Trie or crit bit tree)。基数树是一种多叉搜索树,树的叶子节点是实际的数据条目。每个结点有一个固定的、2^n指针指向子节点(每个指针称为槽slot),并有一个指针指向父节点。
在使用基数树时,最常用的操作是插入、删除、查找节点。其中插入、删除节点会改变基数树内部结构。在不同的使用场景下,出于对时间复杂度和空间复杂度的权衡考虑,需要使用不同的数据结构定义以及不同的增删节点算法。比如,在插入、删除连续大块数据为主的场景下,广度优先遍历会比深度优先遍历搜索得到更低的时间复杂度;在存储数据量小且离散度高(离散度越高意味着寻址空间越大)的场景下,使用map或hash来记录子节点指针比数组节省更多内存。。
在使用基数树时,在不同的使用场景下,数据结构改变或算法调整后需要做大量的测试才能保证正确性。但对于基数树这种较复杂的数据结构,测试调试工作是一个难点,体现在以下方面:
(a)基数树对外提供的接口简单,但内部数据结构复杂,常用的办法是通过多次操作(插入、删除等)后检查数据正确性来测试算法正确性。这种调试方式粒度较粗,无法发现在多次操作之间发生的问题以及在连续操作时被掩盖的“负负得正”的问题。需要有非常充分的测试用例,做极大量的充分测试,才能保证质量。耗时耗力,在算法调整,数据结构调整后无法做到快速迭代,无法适应快速迭代的项目开发要求。
(b)若使用(a)中提到的方式调试测试,一旦发现问题,很难立即追溯到问题发生的第一时间,很可能是内部结构在前几次插入、删除操作时就已经出错,但到整个测试用例跑完才能检测出来。遇到这种情况,很多情况下只能去尝试复现,逐步缩小问题范围,无法做到问题暴露即定位,造成定位非常困难。
发明内容
本申请提供一种监控基数树内部结构的方法及装置,对于基数树内部形态可以做到在每次发生操作时进行实时监控。
本申请采用如下技术方案。
一种监控基数树内部结构的方法,包括:
获取操作前基数树中节点的标识集合,作为第一集合;根据所述第一集合以及节点标识更改信息,确定所述基数树中节点的预计标识集合;所述基数树中每个节点的标识包括用于描述从根节点到该节点的最短路径的信息;
获取操作后所述基数树中节点的标识集合,作为第二集合;比较所述第二集合与所述预计标识集合,根据比较结果获得监控结果。
可选地,所述节点的标识是从根节点到该节点的最短路径中每个节点的层索引的序列;所述基数树的不同层对应于不同级别的层索引;所述基数树中每个节点的不同子节点使用该节点所在层所对应级别的层索引进行区分。
可选地,所述层索引包括数字和/或字母;所述第一集合包括操作前所述基数树每层节点的标识区间集合;所述第二集合包括操作后所述基数树每层节点的标识区间集合;所述节点标识更改信息包括每层待更改节点的标识区间。
可选地,所述根据第一集合以及所述节点标识更改信息,确定所述基数树中节点的预计标识集合包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610539360.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种汽车零部件清洗装置
- 下一篇:一种用于环规清洗的设备





