[发明专利]一种基于hash算法的行情代码内存地址快速查询方法在审
申请号: | 202111530823.1 | 申请日: | 2021-12-14 |
公开(公告)号: | CN114281711A | 公开(公告)日: | 2022-04-05 |
发明(设计)人: | 王彬;涂开辉;温士魁;林伟;张叶梅;王雄儒;杨晓琳 | 申请(专利权)人: | 山东芯慧微电子科技有限公司 |
主分类号: | G06F12/0802 | 分类号: | G06F12/0802;G06F12/02 |
代理公司: | 南京行高知识产权代理有限公司 32404 | 代理人: | 李晓 |
地址: | 250102 山东省济南市历城区高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 hash 算法 行情 代码 内存 地址 快速 查询 方法 | ||
本发明涉及一种基于hash算法的行情代码内存地址快速查询方法,属于数据处理技术领域。该方法执行如下步骤,1)hash表的初始化建立;1‑1)例化双端口随机存取存储器;1‑2)接收行情代码,确认是否已完成初始化,完成至步骤1‑7),未完成至步骤1‑3);进行hash运算,读取数据;1‑4)若读取数据为零,则将行情代码存储到该检索地址,至步骤1‑6);1‑5)若读取数据不为零时,则将行情代码加x倍常量,并至1‑3);1‑6)当前初始化完成,至步骤1‑2);初始化结束;2)行情代码地址查询;2‑1)接收行情代码;2‑2)运算,读取运算结果对应的随机存取存储器中数据;2‑3)比对并反馈结果。本发明通过hash算法进行数据位宽变换,减少位宽,降低内存占用空间,提高内存利用率。
技术领域
本发明涉及一种基于hash算法的行情代码内存地址快速查询方法,属于数据处理技术领域。
背景技术
在金融交易系统中,交易所生成的行情原始数据分为全量数据和增量数据,数据经过行情系统处理之后最终要提供给用户的必须是全量数据,这就要求对增量数据进行补全,所以在系统的内存中需要存储每支股票的全量交易数据并且能够针对增量数据中最新的字段信息去更新内存中相应位置的数据。为了能够准确更新内存中的数据,就要将内存中数据地址的偏移与行情数据代码之间建立一定的关系。一般的做法是在每个内存段首地址上写入对应的行情代码,采用顺序查询方法,此方法要遍历目标地址之前的所有首地址,因此查询延时不确定和查询时间过长的问题。还有采用二分法查询的方法,虽然在一定程度上能够提高查询速度,但是在金融交易领域速度优先的今天,仍然无法满足客户的需求。如果将位宽为m的行情代码与内存中的2m个内存低中端建立一一对应的关系,可以提高数据查询、读写的速度,但是每天的数据交易的行情代码量只是一少部分,并没有达到2m个,这样会造成内存极大的浪费,大大降低了内存利用率。
为此需要一种既能满足查询速度又不过多占用存储空间的方式,用于行情代码的数据查询、读写。
发明内容
本发明要解决的技术问题是:提供一种既能满足查询速度又不过多占用存储空间的行情代码内存地址快速查询方法。
为了解决上述技术问题,本发明提出的技术方案是:一种基于hash算法的行情代码内存地址快速查询方法,执行如下步骤:
1)hash表的初始化建立;
1-1)例化一个用于存储行情代码的双端口随机存取存储器;
1-2)接收行情代码,并确认是否完成初始化,完成则至步骤1-7),未完成则至步骤1-3);
1-3)将所述行情代码或所述行情代码加x倍常量的值进行hash运算,其运算结果作为所述随机存取存储器的检索地址,并读取所述检索地址所对应的随机存取存储器中的数据;
1-4)若步骤1-3)中读取的数据为零时,则将步骤1-3)中的行情代码存储到该检索地址下,至步骤1-6);
1-5)若步骤1-3)中读取的数据不为零时,则将步骤1-3)中的行情代码加x倍常量,并跳至1-3);
1-6)通知上位机当前的行情代码初始化完成,至步骤1-2);
1-7)初始化结束;
2)行情代码地址的查询;
2-1)接收行情代码;
2-2)将步骤2-1)的行情代码或步骤2-1)的行情代码加x被常量的值进行hash运算,其运算结果作为所述随机存取存储器的检索地址,并读取所述检索地址所对应的随机存取存储器中的数据;
2-3)若步骤2-2)中读取的数据等于步骤2-1)中行情代码,则将hash_r * STEP_SIZE + BASE_ADDR作为步骤2-1)中行情代码数据在随机存取存储器中的首地址返回,至步骤2-1)继续执行;若步骤2-2)中读取的数据不等于步骤2-1)中行情代码,则将该行情代码加x倍常量,至步骤2-2)继续执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东芯慧微电子科技有限公司,未经山东芯慧微电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111530823.1/2.html,转载请声明来源钻瓜专利网。