间等效视为在第一存储单元I中保存的时间,若保存时间超过上述资格过期时间,则认为该抽奖资格信息已经过期,需要清理,因此采用上述标记单元8对其进行标记。
[0101]本发明的较佳的实施例中,采用上述第二查询单元9,通过第二索引单元3以及第一索引单元2的两级索引体系,定期(按照预设的时间间隔)查找得到至当前时间为止在第二存储单元7中保存的被标记为过期的抽奖资格信息,并包括在一待清理列表中输出。例如,当前时间对应的操作时间信息为162115(16点21分15秒),则根据000000-162115这个确定的操作时间范围内查找被标记为过期的抽奖资格信息所对应的资格权重信息,并进而查找得到该抽奖资格信息,随后将查找得到的被标记为过期的抽奖资格信息放入一待清理列表中输出。
[0102]随后,本发明的较佳的实施例中,采用上述清理单元10,根据上述待清理列表中包括的被标记为过期的抽奖资格信息并删除对应的抽奖资格信息,从而完成抽奖资格信息的过期清理操作。
[0103]本发明的较佳的实施例中,仍然如图1所示,上述抽奖资格索引系统中还包括:
[0104]状态更改单元11,连接第二索引单元3,用于在关联于抽奖资格信息的抽奖资格被使用后,将第二索引单元3中的对应该抽奖资格信息的操作时间更新为大于终止操作时间的一预设值。
[0105]具体地,本发明的较佳的实施例中,如上文中所述,对应资格权重信息的最大的操作时间范围可以被定义为010101-123124,因此相应地,最大的终止操作时间为123124。换言之,若某个资格权重信息对应的操作时间大于123124,则该资格权重信息便为过期,即永远不会被查询得到。因此,本发明的较佳的实施例中,采用上述状态更改单元11将使用过的抽奖资格信息对应的资格权重信息中的操作时间更新为大于最大的终止操作时间的取值的一预设值,该预设值可以为171253,也可以为任何大于最大的终止操作时间的取值。
[0106]本发明的较佳的实施例中,仍然如图1所示,上述抽奖资格索引系统中还包括:
[0107]操作记录单元12,连接新增单元6,用于记录对抽奖资格信息的新增记录,以及对关联于抽奖资格信息的抽奖资格的使用记录;
[0108]同步单元13,分别连接操作记录单元12和第一存储单元I,用于根据操作记录单元中的新增记录和/或使用记录:
[0109]将抽奖资格信息添加入第一存储单元I中;和/或
[0110]更改保存于第一存储单元I中的抽奖资格信息的使用状态。
[0111]具体地,本发明的较佳的实施例中,在操作记录单元12中针对同一个抽奖资格信息只存在新增记录时,上述同步单元13将抽奖资格信息添加入第一存储单元I中;或者
[0112]在操作记录单元12中针对同一个抽奖资格信息只存在使用记录时,同步单元13将第一存储单元I中保存的对应的抽奖资格信息的使用状态更改为已使用;或者
[0113]在操作记录单元12中针对同一个抽奖资格信息同时存在新增记录和使用记录时,同步单元13将抽奖资格信息添加入第一存储单元I中,并且将被添加的抽奖资格信息的使用状态更改为已使用。
[0114]换言之,在起始操作时间以及关联于当前时间的当前操作时间所划定的操作时间范围内,同步单元13查找某个抽奖资格信息在操作记录单元12中存在的操作记录:
[0115]若只存在新增记录,则表示该抽奖资格信息需要被添加到第一存储单元I中,则同步单元13将该抽奖资格信息同步到上述第一存储单元I中;
[0116]若只存在使用记录,则表示该抽奖资格信息早已被添加到第一存储单元I中,并且已经被使用,此时同步单元13将该使用状态同步到上述第一存储单元I中的对应的抽奖资格信息中,即将该抽奖资格信息的使用状态更改为已使用(默认为未使用)。
[0117]若在该当前操作时间之前同时存在新增记录和使用记录,则表示该抽奖资格信息需要被添加到第一存储单元I中,并且已经使用完毕,此时同步单元13需要先将该抽奖资格信息添加到上述第一存储单元I中,并且同时将其使用状态更改为已使用。
[0118]本发明的较佳的实施例中,仍然如图1所示,上述抽奖资格索引系统还包括:
[0119]操作清除单元14,分别连接操作记录单元12和同步单元13;
[0120]上述操作清除单元14用于:
[0121]在同步单元13进行一次将抽奖资格信息添加入第一存储单元I中的操作或者进行一次更改抽奖资格信息的使用状态的操作后,清除操作记录单元12中保存的关联于对应的抽奖资格信息的所有新增记录以及使用记录。
[0122]换言之,本发明的较佳的实施例中,在同步单元13定期进行完一次同步(新增抽奖资格信息或者更改抽奖资格信息的使用状态)后,采用上述操作清除单元14将操作记录单元12中包括的所有新增记录和使用记录清除,以避免下次同步过程中出现针对同一个抽奖资格信息的重复的同步操作。
[0123]综上所述,本发明技术方案中,通过redis存储系统建立两级索引,从而解决并发查询量较大的情况下传统数据库的服务性能低下、查询效率较低的问题,降低了整个抽奖系统的资源使用率。
[0124]本发明的较佳的实施例中,基于上文中所述的抽奖资格索引系统,现提供一种抽奖资格索引方法,其具体包括:
[0125]于一第一存储单元中保存关联于不同的使用者的抽奖资格信息;
[0126]针对每一个抽奖资格信息设置一个用于索引的资格标识信息,每个资格标识信息对应一个用户信息;
[0127]根据每一个资格标识信息设置一个用于索引的资格权重信息,资格权重信息包括关联于资格标识信息的用户信息,以及关联于资格标识信息的操作时间信息,初始的操作时间信息为抽奖资格信息被添加到第一存储单元中的时间,还包括如图2所示的步骤:
[0128]步骤SI,根据用户信息查询得到第二索引单元中包括的对应的资格权重信息;
[0129]步骤S2,根据资格权重信息索引得到资格标识信息;
[0130]步骤S3,根据资格标识信息最终索引得到抽奖资格信息并输出。
[0131]本发明的较佳的实施例中,资格过期时间从一针对抽奖资格信息的预设的起始操作时间起至一针对抽奖资格信息的预设的终止操作时间为止;
[0132]则上述步骤S3具体如图3所示,包括:
[0133]步骤S31,将当前查询的时间作为终止操作时间,查找是否存在相匹配的用户信息的操作时间处于资格过期时间内:
[0134]若不存在相匹配的用户信息,则退出;
[0135]步骤S32,根据查找得到的用户信息获得资格标识信息;
[0136]步骤S33,根据资格标识信息索引得到抽奖资格信息并输出。
[0137]本发明的较佳的实施例中,上述步骤SI中,可以根据用户信息查询得到至少一个资格权重信息,并通过一显示屏将第一查询单元查询得到的资格权重信息的个数展示给使用者查看。
[0138]本发明的较佳的实施例中,上述抽奖资格索引方法同样适用于redis存储系统,因此可以采用键值对形式的索引建立方式(Key-Value方式)形成包括资格标识信息的索引信息,并采用资格标识信息形成Key信息,以及采用经过序列化后的抽奖资格信息形成Value?目息O
[0139]本发明的较佳的实施例中,于上述第一存储单元中清理过期的抽奖资格信息的步骤具体如图4所示,包括:
[0140]步骤Al,根据新增的抽奖资格信息分别形成用于索引的资格标识信息以及资格权重信息,并将新增的抽奖资格信息保存于一第二存储单元中;
[0141]步骤Α2,将在第二存储单元中的保存时间超过一预设的过期时间的抽奖资格信息标记为过期;
[0142]步骤A3,按照预设的第一时间间隔查找得到至当前时间为止在第二存储单元中保存的被标记为过期的抽奖资格信息,并包括在一待清理列表中输出;
[0143]步骤Α4,根据待清理列表删除对应的抽奖资格信息。
[0144]本发明的较佳的实施例中,在关联于抽奖资格信息的抽奖资格被使用后,将第二索引单元中的对应的资格权重信息中的操作时间信息更新为大于终止操作时间的一预设值。
[0145]本发明的较佳的实施例中,记录对抽奖资格信息的新增记录,以及对关联于抽奖资格信息的抽奖资格的使用记录;
[0146]则采用一同步单元,根据新增记录和/或使用记录:
[0147]将抽奖资格信息添加入第一存储单元中;和/或
[0148]更改保存于第一存储单元中的抽奖资格信息的使用状态。
[0149 ]本发明的较佳的实施例中,采用同步单元:
[0150]在操作记录单元中针对同一个抽奖资格信息只存在新增记录时,将抽奖资格信息添加入第一存储单元中;或者
[0151]在操作记录单元中针对同一个抽奖资格信息只存在使用记录时,将第一存储单元中保存的对应的抽奖资格信息的使用状态更改为已使用;或者
[0152]在操作记录单元中针对同一个抽奖资格信息同时存在新增记录和使用记录时,将抽奖资格信息添加入第一存储单元中,并且将被添加的抽奖资格信息的使用状态更改为已使用。
[0153]本发明的较佳的实施例中,在同步单元进行一次将抽奖资格信息添加入第一存储单元中的操作或者进行一次更改抽奖资格信息的使用状态的操作后,采用一操作清除单元清除操作记录单元中保存的关联于对应的抽奖资格信息的所有新增记录以及使用记录。
[0154]以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围