一种实现数据存储的方法及装置制造方法及图纸

技术编号:20914824 阅读:25 留言:0更新日期:2019-04-20 09:21
一种实现数据存储的方法及装置,包括:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。本发明专利技术实施例提升了数据存储的填充率,提高了硬件资源的使用效率。

A Method and Device for Data Storage

A method and device for data storage includes: configuring operation parameters of hash algorithm to obtain discrete addresses for data storage; and storing data according to the discrete addresses obtained. The embodiment of the invention improves the filling rate of data storage and the utilization efficiency of hardware resources.

【技术实现步骤摘要】
一种实现数据存储的方法及装置
本文涉及但不限于存储技术,尤指一种实现数据存储的方法及装置。
技术介绍
对于较大量的数据,如果要求快速存储和查找,相关技术一般是将数据存储在硬件的某块地址空间中,并采用哈希(HASH)算法来存储和查找,以下简称哈希数据存储;例如,交换芯片中的消息认证码(MAC)表。HASH数据存储最大的问题是如何解决冲突率和提高硬件资源的利用率,冲突率降低时,硬件的地址空间利用率得到提高。目前,HASH数据存储一般通过输入关键字(KEY)进行HASH运算,获得硬件地址,根据获得的地址进行数据插入,实现数据存储;其中,HASH算法包括循环冗余校验(CRC)运算。上述HASH数据存储存在填充率不高的缺点,影响存储资源的应用效率。
技术实现思路
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。本专利技术实施例提供一种实现数据存储的方法及装置,能够提升数据存储的填充率,提高硬件资源的使用效率。本专利技术实施例提供了一种实现数据存储的方法,包括:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。可选的,所述配置哈希算法的运算参数包括:配置所述哈希算法的输入参数;和/或,配置对所述哈希算法的运算输出进行修正的修正参数。可选的,所述配置哈希算法的运算参数包括:为相邻的地址块BLK配置不同的两个或两个以上多项式,以在在前BLK插入冲突时,采用不同的多项式进行在后的BLK的插入。可选的,所述配置哈希算法的运算参数包括:配置哈希因子,通过配置的哈希因子选取不同位段的所述哈希算法的运算输出,以在在前单元CELL条目插入冲突时,在后的CELL采用区别于在前位段的哈希算法的运算输出进行条目插入。可选的,所述配置哈希算法的运算参数包括:增加关键字KEY因子;其中,KEY因子包括:位置、值、长度;其中,长度为取值的位宽,位置为在KEY中开始插入KEY因子的值的位置。可选的,所述KEY因子的长度小于或等于芯片BLK条目的位宽与KEY的长度的差。另一方面,本专利技术实施例还提供一种实现数据存储的装置,包括:配置单元和存储单元;其中,配置单元用于:配置哈希算法的运算参数,以获得用于数据存储的离散地址;存储单元用于:根据获得的离散地址进行数据存储。可选的,所述配置单元具体用于:配置所述哈希算法的输入参数;和/或,配置对所述哈希算法的运算输出进行修正的修正参数。可选的,所述配置单元具体用于:为相邻的BLK配置不同的两个或两个以上多项式,以在在前BLK插入冲突时,采用不同的多项式进行在后的BLK的插入。可选的,所述配置单元具体用于:配置哈希因子,通过配置的哈希因子选取不同位段的所述哈希算法的运算输出,以在在前CELL条目插入冲突时,在后的CELL采用区别于在前位段的哈希算法的运算输出进行条目插入。可选的,所述配置单元具体用于:增加KEY因子;其中,KEY因子包括:位置、值、长度;其中,长度为取值的位宽,位置为在KEY中开始插入KEY因子的值的位置。可选的,所述KEY因子的长度小于或等于芯片BLK条目的位宽与KEY的长度的差。再一方面,本专利技术实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行上述数据存储的方法。一种终端,包括:存储器和处理器;其中,处理器被配置为执行存储器中的程序指令;程序指令在处理器读取执行以下操作:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。与相关技术相比,本申请技术方案包括:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。本专利技术实施例提升了数据存储的填充率,提高了硬件资源的使用效率。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。附图说明附图用来提供对本专利技术技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本专利技术的技术方案,并不构成对本专利技术技术方案的限制。图1为本专利技术实施例实现数据存储的方法的流程图;图2为本专利技术实施例实现数据存储的装置的结构框图;图3为本专利技术应用实施例地址空间的组成示意图;图4为本专利技术应用示例的方法流程图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。对HASH数据存储存在填充率不高的缺点,本申请专利技术人分析发现,相关技术中的哈希运算存储以下问题;1、连续两个地址块的HASH多项式设置的相同,连续的地址块采用相同的哈希多项式设置,导致了哈希算法解决冲突能力降低,造成HASH算法运算出的地址在整个地址空间不够均匀散列。2、通过HASH算法运算选择的地址是指定位段的地址,导致地址空间可能不够均匀散列;3、采用HASH算法运算时,样本集变化可能导致不同的样本集有不同的填充率,出现部分样本集的填充率较低的问题。图1为本专利技术实施例实现数据存储的方法的流程图,如图1所示,包括:步骤100、配置哈希算法的运算参数,以获得用于数据存储的离散地址;可选的,本专利技术实施例配置哈希算法的运算参数包括:配置所述哈希算法的输入参数;和/或,配置对所述哈希算法的运算输出进行修正的修正参数。可选的,本专利技术实施例配置哈希算法的运算参数包括:为相邻的地址块(BLK)配置不同的两个或两个以上多项式,以在在前BLK插入冲突时,采用不同的多项式进行在后的BLK的插入。可选的,本专利技术实施例配置哈希算法的运算参数包括:配置哈希因子,通过配置的哈希因子选取不同位段的所述哈希算法的运算输出,以在在前单元(CELL)条目插入冲突时,在后的CELL采用区别于在前位段的哈希算法的运算输出进行条目插入。可选的,本专利技术实施例配置哈希算法的运算参数包括:增加关键字(KEY)因子,以在样本集变化导致冲突时,根据KEY及增加的所述KEY因子进行所述哈希算法的运算。需要说明的是,KEY因子包括:位置、值、长度等信息,本专利技术实施例将KEY因子与KEY拼接出最终运算的KEY;其中,长度指的是取值的多少位宽,位置是指在KEY的什么位置开始插入KEY因子的值;利用多项式和最终运算的KEY可以计算出相应的HASH的值。可选的,本专利技术实施例KEY因子的长度小于或等于芯片BLK条目的位宽与KEY的长度的差。步骤101、根据获得的离散地址进行数据存储。需要说明的是,根据地址进行数据存储为相关技术中的惯用技术手段,在此不做赘述。与现有技术相比,本申请技术方案包括:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。本专利技术实施例提升了数据存储的填充率,提高了硬件资源的使用效率。图2为本专利技术实施例实现数据存储的装置的结构框图,如图2所示,包括:配置单元和存储单元;其中,配置单元用于本文档来自技高网...

【技术保护点】
1.一种实现数据存储的方法,其特征在于,包括:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。

【技术特征摘要】
1.一种实现数据存储的方法,其特征在于,包括:配置哈希算法的运算参数,以获得用于数据存储的离散地址;根据获得的离散地址进行数据存储。2.根据权利要求1所述的方法,其特征在于,所述配置哈希算法的运算参数包括:配置所述哈希算法的输入参数;和/或,配置对所述哈希算法的运算输出进行修正的修正参数。3.根据权利要求1或2所述的方法,其特征在于,所述配置哈希算法的运算参数包括:为相邻的地址块BLK配置不同的两个或两个以上多项式,以在在前BLK插入冲突时,采用不同的多项式进行在后的BLK的插入。4.根据权利要求1或2所述的方法,其特征在于,所述配置哈希算法的运算参数包括:配置哈希因子,通过配置的哈希因子选取不同位段的所述哈希算法的运算输出,以在在前单元CELL条目插入冲突时,在后的CELL采用区别于在前位段的哈希算法的运算输出进行条目插入。5.根据权利要求1或2所述的方法,其特征在于,所述配置哈希算法的运算参数包括:增加关键字KEY因子;其中,KEY因子包括:位置、值、长度;其中,长度为取值的位宽,位置为在KEY中开始插入KEY因子的值的位置。6.根据权利要求5所述的方法,其特征在于,所述KEY因子的长度小于或等于芯片BLK条目的位宽与KEY的长度的差。7.一种实现数据存储的装置,其特征在于,包括:配置单元和存储单元;其中,配置单元用于:配置哈希算法的运算参数,以获得用于数据存储的离散地址;存储单元用于:根据获得的离散地...

【专利技术属性】
技术研发人员:陈建成朱智华
申请(专利权)人:深圳市中兴微电子技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1