一种基于哈希表的积点信息溯源方法、装置、设备及介质制造方法及图纸

技术编号:37088363 阅读:25 留言:0更新日期:2023-03-29 20:03
本申请公开了一种基于哈希表的积点信息溯源方法、装置、设备及介质,在产生消费或者退款的交易信息时,按照交易用户和交易时间作为次序索引将交易信息产生的积点信息存储至磁盘。当需要进行积点溯源时,首先根据用户标识和预先配置的哈希表确定出对应的积点信息链表,然后按照先进先出原则对积点信息链表中的积分信息进行溯源。并且仅在第一个区块中存储积点信息,其它区块中仅存储磁盘哈希索引。对第一个区块中的积点信息进行溯源,若第一个区块已空,根据磁盘哈希索引,将磁盘中对应的积点信息写入非第一个区块,并按照先进先出原则对写入的积点信息进行溯源。从而实现了一种有效的积点信息溯源方案。效的积点信息溯源方案。效的积点信息溯源方案。

【技术实现步骤摘要】
一种基于哈希表的积点信息溯源方法、装置、设备及介质


[0001]本申请涉及金融
,尤其涉及一种基于哈希表的积点信息溯源方法、装置、设备及介质。

技术介绍

[0002]商业积分是各大型企业加强渠道营销、提升产品用户粘性的重要方式。在本权利中,商业积分被称为用户积点,通过活动、消费、登录等方式领取,并可用于兑换用户权益。在会计账务处理上,积点涉及“借记营销费用”和“贷记应交税费”等会计账务处理,而积分的发放与核销时间往往是分离的,因此积点信息的溯源非常重要。
[0003]积点信息溯源主要包括:每次交易获取积点的数量、领取积点的时间、领取积点的活动ID、获取积点的途径,如通过交易获取、登录应用程序App的行为获取等。目前还没有一种快速而有效的积点信息溯源方案。

技术实现思路

[0004]本申请实施例提供了一种基于哈希表的积点信息溯源方法、装置、设备及介质,用以提供一种快速而有效的积点信息溯源方案。
[0005]本申请提供了一种基于哈希表的积点信息溯源方法,所述方法包括:
[0006]当接收到消费或申请退款的交易信息,按照交易用户和交易时间作为次序索引将所述交易信息产生的积点信息存储至磁盘;
[0007]当接收到积点溯源请求时,将所述积点溯源请求对应的用户标识映射为对应的哈希值,根据所述哈希值确定在内存中预先配置的哈希表中所述用户对应的积点信息链表;
[0008]按照先进先出原则对所述积点信息链表的第一个区块中的积点信息进行溯源,若所述第一个区块已空,根据非第一个区块中的磁盘哈希索引,将所述磁盘中与所述磁盘哈希索引对应的积点信息写入所述非第一个区块,并按照先进先出原则对所述非第一个区块中的积点信息进行溯源。
[0009]进一步地,所述当接收到消费或申请退款的交易信息,按照交易用户和交易时间作为次序索引将所述交易信息产生的积点信息存储至磁盘包括:
[0010]在应用模块中,接收到消费或申请退款的交易信息时,将所述交易信息对应的积点信息暂存入内存中;
[0011]所述内存中的清理模块按照交易用户和交易时间作为次序索引将暂存的积点信息顺序写入磁盘中。
[0012]进一步地,所述将所述积点溯源请求对应的用户标识映射为对应的哈希值包括:
[0013]通过哈希算法将所述积点溯源请求对应的用户标识映射为对应的哈希码;
[0014]通过压缩函数将所述哈希码映射到设定范围区间,得到所述用户标识对应的哈希值。
[0015]进一步地,包括:
[0016]配置哈希表桶的数量,并建立每个桶分别与用户的对应关系;针对每个用户,通过键值对的形式建立所述用户与积点信息链表的对应关系;
[0017]其中,所述积点信息链表中包括第一个区块和非第一个区块;每个区块配置积点信息容量,所述第一个区块中包括所述容量个积点信息,所述非第一个区块中包括磁盘哈希索引。
[0018]进一步地,所述方法还包括:
[0019]若所述第一个区块已空,更新所述积点信息链表的链表指针,将与所述第一个区块相邻的非第一个区块更新为第一个区块。
[0020]进一步地,包括:
[0021]获取所述积点溯源请求中携带的核销积点数,以及当前溯源的积点信息中的积点获取数;根据所述核销积点数和积点获取数,对积点信息进行溯源。
[0022]进一步地,所述根据所述核销积点数和积点获取数,对积点信息进行溯源包括:
[0023]若所述核销积点数大于所述积点获取数,更新溯源信息,并移除所述积点信息,根据核销积点数与所述积点获取数的差值,对所述积点信息的下一积点信息进行溯源;
[0024]若所述核销积点数等于所述积点获取数,更新溯源信息,并移除所述积点信息;
[0025]若所述核销积点数小于所述积点获取数,更新溯源信息,并将所述积点获取数与所述核销积点数的差值作为所述积点信息中更新后的积点获取数。
[0026]另一方面,本申请提供了一种基于哈希表的积点信息溯源装置,所述装置包括:
[0027]存储模块,用于当接收到消费或申请退款的交易信息,按照交易用户和交易时间作为次序索引将所述交易信息产生的积点信息存储至磁盘;
[0028]确定模块,用于当接收到积点溯源请求时,将所述积点溯源请求对应的用户标识映射为对应的哈希值,根据所述哈希值确定在内存中预先配置的哈希表中所述用户对应的积点信息链表;
[0029]溯源模块,用于按照先进先出原则对所述积点信息链表的第一个区块中的积点信息进行溯源,若所述第一个区块已空,根据非第一个区块中的磁盘哈希索引,将所述磁盘中与所述磁盘哈希索引对应的积点信息写入所述非第一个区块,并按照先进先出原则对所述非第一个区块中的积点信息进行溯源。
[0030]进一步地,所述存储模块,具体用于在应用模块中,接收到消费或申请退款的交易信息时,将所述交易信息对应的积点信息暂存入内存中;所述内存中的清理模块按照交易用户和交易时间作为次序索引将暂存的积点信息顺序写入磁盘中。
[0031]进一步地,所述确定模块,具体用于通过哈希算法将所述积点溯源请求对应的用户标识映射为对应的哈希码;通过压缩函数将所述哈希码映射到设定范围区间,得到所述用户标识对应的哈希值。
[0032]进一步地,所述确定模块,还用于配置哈希表桶的数量,并建立每个桶分别与用户的对应关系;针对每个用户,通过键值对的形式建立所述用与积点信息链表的对应关系;其中,所述积点信息链表中包括第一个区块和非第一个区块;每个区块配置积点信息容量,所述第一个区块中包括所述容量个积点信息,所述非第一个区块中包括磁盘哈希索引。
[0033]进一步地,所述溯源模块,还用于若所述第一个区块已空,更新所述积点信息链表的链表指针,将与所述第一个区块相邻的非第一个区块更新为第一个区块。
[0034]进一步地,所述溯源模块,具体用于获取所述积点溯源请求中携带的核销积点数,以及当前溯源的积点信息中的积点获取数;根据所述核销积点数和积点获取数,对积点信息进行溯源。
[0035]进一步地,所述溯源模块,具体用于若所述核销积点数大于所述积点获取数,更新溯源信息,并移除所述积点信息,根据核销积点数与所述积点获取数的差值,对所述积点信息的下一积点信息进行溯源;若所述核销积点数等于所述积点获取数,更新溯源信息,并移除所述积点信息;若所述核销积点数小于所述积点获取数,更新溯源信息,并将所述积点获取数与所述核销积点数的差值作为所述积点信息中更新后的积点获取数。
[0036]再一方面,本申请提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0037]存储器,用于存放计算机程序;
[0038]处理器,用于执行存储器上所存放的程序时,实现上述任一项所述的方法步骤。
[0039]再一方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于哈希表的积点信息溯源方法,其特征在于,所述方法包括:当接收到消费或申请退款的交易信息,按照交易用户和交易时间作为次序索引将所述交易信息产生的积点信息存储至磁盘;当接收到积点溯源请求时,将所述积点溯源请求对应的用户标识映射为对应的哈希值,根据所述哈希值确定在内存中预先配置的哈希表中所述用户对应的积点信息链表;按照先进先出原则对所述积点信息链表的第一个区块中的积点信息进行溯源,若所述第一个区块已空,根据非第一个区块中的磁盘哈希索引,将所述磁盘中与所述磁盘哈希索引对应的积点信息写入所述非第一个区块,并按照先进先出原则对所述非第一个区块中的积点信息进行溯源。2.如权利要求1所述的方法,其特征在于,所述当接收到消费或申请退款的交易信息,按照交易用户和交易时间作为次序索引将所述交易信息产生的积点信息存储至磁盘包括:在应用模块中,接收到消费或申请退款的交易信息时,将所述交易信息对应的积点信息暂存入内存中;所述内存中的清理模块按照交易用户和交易时间作为次序索引将暂存的积点信息顺序写入磁盘中。3.如权利要求1所述的方法,其特征在于,所述将所述积点溯源请求对应的用户标识映射为对应的哈希值包括:通过哈希算法将所述积点溯源请求对应的用户标识映射为对应的哈希码;通过压缩函数将所述哈希码映射到设定范围区间,得到所述用户标识对应的哈希值。4.如权利要求1所述的方法,其特征在于,包括:配置哈希表桶的数量,并建立每个桶分别与用户的对应关系;针对每个用户,通过键值对的形式建立所述用户与积点信息链表的对应关系;其中,所述积点信息链表中包括第一个区块和非第一个区块;每个区块配置积点信息容量,所述第一个区块中包括所述容量个积点信息,所述非第一个区块中包括磁盘哈希索引。5.如权利要求1所述的方法,其特征在于,所述方法还包括:若所述第一个区块已空,更新所述积点信息链表的链表指针,将与所述第一个区块相邻的非第一个区块更新为第一个区块。6.如权利要求1所述的方法,其特征在于,包括:获取所述积点溯源请求中携带的核销积点数,以及当前溯源的积点信息中的积点获取数;根据所述核销积点数和积点获取数,对积点信息进行溯源。7.如权利要求6所述的方法,其特征在于,所述根据所述核销积点数和积点获取数,对积点信息进行溯源包括:若所述核销积点数大于所述积点获取数,更新溯源信息,并移除所述积点信息,根据核销积点数与所述积点获取数的差值,对所述积点信息的下一积点信息进行溯源;若所述核销积点数等于所述积点获取数,更新溯源信息,并移除所述积点信息;若所述核销积点数小于所述积点获取数,更新溯源信息,并将所述积点获取数与所述核销积点数的差值作为所述积点信息中更新后的积点获取数。8.一种基于哈希表的积点信息溯源装置,其特征在于,所述装置包括:
存储模块,用于当接收到消费或申请退款的交易信息,按照交易用户和交易时间作为次序索引将所述交易信息产生的积点信息存储至磁盘;确定...

【专利技术属性】
技术研发人员:王鲁昱成磊杨晨李文博郑超洪
申请(专利权)人:中国银联股份有限公司
类型:发明
国别省市:

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

1