[发明专利]一种数据查找方法有效
申请号: | 201611208410.0 | 申请日: | 2016-12-23 |
公开(公告)号: | CN106708749B | 公开(公告)日: | 2019-08-23 |
发明(设计)人: | 李甫 | 申请(专利权)人: | 量子云未来(北京)信息科技有限公司;无锡量子云数字新媒体科技有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京天达知识产权代理事务所(普通合伙) 11386 | 代理人: | 彭霜;马东伟 |
地址: | 100079 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 命中 查找 存储位置 数据查找 数值比较 读取 缓存 读取请求 接收数据 数据采用 数据交换 组织存储 未命中 硬盘 分形 内存 | ||
1.一种数据查找方法,其特征在于,所述数据采用分形树原理组织数据存储,具体包括:
从第n+1个数开始,以n+1为间距、等距选取n个数;以该n个数组成根节点,n个数将数轴划分为n+1个取值空间,根节点的每个子节点对应一个取值空间,将其余数放在对应取值空间的节点中,且等距离、有序排列,以此建立一级分形树,该一级分形树能覆盖m=(n+1)2-1个值;再以一级分形树中的m个数作为一组,采用上述方法建立二级分形树,并依次扩展,建立第n级分形树;
选择满足CacheLine、CPUCache及内存存储大小的对应级别的分形树,分别存储到CacheLine、CPUCache及内存中;
数据查找方法包括以下步骤:
步骤S1.CPU接收数据读取请求;
步骤S2.CPU在CacheLine中查找所请求的数据;若在Cacheline中命中,则读取数据,并查找结束;若在CacheLine中没有命中,则通过数值比较,确定数据在CPUCache中的取值空间位置,并进行下一步;
步骤S3.根据CPUCache中的取值空间位置,到CPUCache中分形树的相应区间上,查找数据;若在CPUCache中命中,则CPU直接从CPUCache中读取数据;若没有在CPUCache中命中,则经过数值比较,确定数据在内存中的取值空间位置;
步骤S4.根据内存中的取值空间位置,在内存中分形树的相应区间中查找;若在内存中命中,则读取命中数据,并查找结束;若在内存中未命中,则进一步到硬盘中进行查找。
2.根据权利要求1所述的数据查找方法,其特征在于,根据CacheLine的存储大小确定分形树的基本节点中的数据数量。
3.根据权利要求1所述的数据查找方法,其特征在于,所述CPUCache中的数据查找是逐级进行的。
4.根据权利要求1或3所述的数据查找方法,其特征在于,在所述内存中的数据查找也是逐级进行的。
5.根据权利要求4所述的数据查找方法,其特征在于,所述确定数据在CPU Cache或内存中的取值空间位置是指:确定所请求的数据在更高一级分形树中的取值空间位置。
6.根据根据权利要求1所述的数据查找方法,其特征在于,CPU Cache中加载的分形树的级别数是根据Cache Line中分形树基本节点中的数据量、以及CPU Cache存储量来决定。
7.一种制品,包括存储指令的非暂态机器可读介质,如果由机器执行所述指令,所述指令用于使所述机器执行如权利要求1-6中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于量子云未来(北京)信息科技有限公司;无锡量子云数字新媒体科技有限公司,未经量子云未来(北京)信息科技有限公司;无锡量子云数字新媒体科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611208410.0/1.html,转载请声明来源钻瓜专利网。