CN110781464A - 一种唯一性校验方法、装置、设备及可读存储介质 - Google Patents

一种唯一性校验方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN110781464A
CN110781464A CN201910995289.8A CN201910995289A CN110781464A CN 110781464 A CN110781464 A CN 110781464A CN 201910995289 A CN201910995289 A CN 201910995289A CN 110781464 A CN110781464 A CN 110781464A
Authority
CN
China
Prior art keywords
target
database
hash
unique
target object
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910995289.8A
Other languages
English (en)
Inventor
岳耀强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to CN201910995289.8A priority Critical patent/CN110781464A/zh
Publication of CN110781464A publication Critical patent/CN110781464A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种唯一性校验方法、装置、设备及可读存储介质,该方法包括以下步骤:利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一;如果是,则确定目标对象唯一;如果否,则访问数据库,并在确认数据库中无目标对象时,确定目标对象唯一。该方法可大大减少访问数据库的次数,减少对数据库的影响,可保障计算机系统的服务性能,改善用户体验。

Description

一种唯一性校验方法、装置、设备及可读存储介质
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种唯一性校验方法、装置、设备及可读存储介质。
背景技术
在计算机系统对外提供服务时,经常需要对处理对象进行唯一性验证,以确保服务有序进行。例如,常见的用户注册时,对用户名的唯一性进行验证,以确保注册成功后的用户名唯一对应一个账户。
目前,对处理对象进行唯一性验证的方法,主要通过访问数据库,将待验证的对象与数据库内已有对象对应的信息表进行比对,以确定该对象的唯一性。而在实际应用中,其他业务也需要访问已有对象的信息表。如此,便会造成该信息表的访问压力较大,以及数据访问次数的增加。这时,便会出现响应延时过大或无法响应的情况,服务性能变差,影响用户体验。
综上所述,如何有效地解决唯一性验证影响数据库性能等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种唯一性校验方法、装置、设备及可读存储介质,在对象唯一性校验过程中减少访问数据库,降低对数据库性能的影响,提高计算机系统的响应效率。
为解决上述技术问题,本发明提供如下技术方案:
一种唯一性校验方法,包括:
利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;
利用内存中与数据库内已有对象匹配的位图文件,确定所述目标哈希结果是否唯一;
如果是,则确定所述目标对象唯一;
如果否,则访问所述数据库,并在确认所述数据库中无所述目标对象时,确定所述目标对象唯一。
优选地,所述利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果,包括:
利用两种以上的哈希算法对所述目标对象进行哈希计算,获得相应数量所述目标哈希结果;
相应地,所述利用内存中与数据库内已有对象匹配的位图文件,确定所述目标哈希结果是否唯一,包括:
利用所述位图文件,确定各个所述目标哈希结果是否均唯一。
优选地,还包括:
定期更换所述位图文件。
优选地,所述定期更换所述位图文件,包括:
在达到更新周期时,根据所述数据库中的全部已有对象,重新创建新位图文件;
将所述新位图文件替换所述位图文件。
优选地,在利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果之前,还包括:
利用所述目标哈希算法对所述数据库中所有所述已有对象进行分别哈希计算,获得各个所述哈希结果;
利用各个所述哈希结果构建所述位图文件。
优选地,所述目标对象为用户名、账号、订单和请求中的任一种信息。
优选地,在确定所述目标对象唯一之后,还包括:
利用所述目标哈希结果对所述位图文件进行修改。
一种唯一性校验装置,包括:
哈希计算模块,用于利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;
判断模块,用于利用内存中与数据库内已有对象匹配的位图文件,确定所述目标哈希结果是否唯一;
第一确定模块,用于如果所述目标哈希结果唯一,则确定所述数据库内已存在所述目标对象;
第二确定模块,用于如果所述目标哈希结果重合,则访问所述数据库,并在确认所述数据库中无所述目标对象时,确定所述目标对象唯一。
一种唯一性校验设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述唯一性校验方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述唯一性校验方法的步骤。
应用本发明实施例所提供的方法,利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一;如果是,则确定目标对象唯一;如果否,则访问数据库,并在确认数据库中无目标对象时,确定目标对象唯一。
考虑到唯一性验证时,往往需要将待验证的目标对象与大量已有对象进行比对确定,以确定唯一性。为了减少访问数据库,在本方法中,采用目标哈希算法对目标对象进行哈希计算,得到目标哈希结果。然后,直接利用内存中与数据库内已有对象对应的位图文件确定目标哈希结果是否唯一。即,采用布隆算法初步确定目标对象算法唯一。具体的,当确定目标哈希结果唯一时,此时可直接确定目标对象唯一,而当目标哈希结果不唯一时,考虑到布隆算法可能存在误判的情况,因而可进一步通过访问数据库的方式确定目标对象是否唯一。可见,在本方法可大大减少访问数据库的次数,减少对数据库的影响,可保障计算机系统的服务性能(如响应效率),改善用户体验。
相应地,本发明实施例还提供了与上述唯一性校验方法相对应的唯一性校验装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种唯一性校验方法的实施流程图;
图2为本发明实施例中一种唯一性校验方法的具体示例实施示意图;
图3为本发明实施例中一种唯一性校验装置的结构示意图;
图4为本发明实施例中一种唯一性校验设备的结构示意图;
图5为本发明实施例中一种唯一性校验设备的具体结构示意图。
具体实施方式
本发明实施例的核心是提供一种唯一性校验方法、装置、设备和可读存储介质,以减少对信息表和数据库方面的压力。主要应用到了大数据中的Bloom Filter(即布隆算法,布隆过滤器),通过HASH(散列/哈希),映射到位图文件(BitMap)对应位,从而判断目标对象是否已存在(即验证目标对象是否唯一),在一定程度上能够减少与数据库的交互,提高性能。
进一步,为了快速响应请求,可将BitMap(位图文件)放置在内存中,可缩短响应时间。
进一步,对于失效用户,为了减少碰撞率,可周期性的更换BitMap,能保持数据的实时有效,提高系统的响应效率。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
请参考图1,图1为本发明实施例中一种唯一性校验方法的流程图,该方法包括以下步骤:
S101、利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果。
其中,目标对象可为常见需要进行唯一性检验的常见对象。具体的,目标对象为用户名、账号、订单和请求中的任一种信息。即,本方法可应用于新用户在系统注册或账户设置时,对用户输入的用户名或账号进行唯一性校验,以确保账户或用户名的唯一性;本方法也可以用于对订单进行重复性校验,以避免订单重复处理;本方法也可对请求进行重复性校验,以降低请求重复处理。
其中,目标哈希算法可以为常见的哈希算法中的任意一种,如MurmurHash、CityHash、RSHash、BKDRHash等,具体选取哪种可根据具体应用系统与业务所确定。
优选地,为了提高布隆算法的精度还可以设置两种及两种以上的目标哈希算法对目标对象进行哈希计算,得到两个及两个以上的目标哈希结果。即步骤S101可优化为:利用两种以上的哈希算法对目标对象进行哈希计算,获得相应数量的目标哈希结果。例如,当哈希算法为两种时,即双HASH,则可分别采用两种HASH对目标对象进行哈希计算,得到两个目标哈希结果。
S102、利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一。
在本实施例中,可预先设置基于数据库内已有对象创建位图文件。即,在利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果之前,可构建位图文件。位图文件构建过程包括:
步骤一、利用目标哈希算法对数据库中所有已有对象进行分别哈希计算,获得各个哈希结果;
步骤二、利用各个哈希结果构建位图文件。
为便于描述,下面将上述两个步骤结合起来进行说明。
当采用两种以上的哈希算法进行检验时,可对应每一种哈希算法分别创建对应的位图文件。每一类哈希算法对应的创建的位图文件的数量可根据数据库中已有对象的数量量以及预期系统的对象总量,已有对象在数据库中的bitMap位数来确定出。具体的可创建出BitMap,然后采用相应地哈希算法将各个已有对象分别映射到BitMap中的相应位数对应的位置(具体的,即将相应位数对应的值置1)。
如此,当确定出目标对象的目标哈希结果时,便可通过查找对于BitMap中相应位是否为1,即可确定该目标哈希结果是否唯一。
优选地,在利用两种以上的哈希算法对目标对象进行哈希计算,获得相应数量目标哈希结果;相应地,利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一,可具体为利用位图文件,确定各个目标哈希结果是否均唯一。即,当存在两种以上的哈希算法时,则采用相应的哈希算法进行分别映射查找之后,对唯一性的结果进行与逻辑处理,将与逻辑处理的结果作为最终的唯一确定结果。例如,当采用A和B两种哈希算法时,则可利用A哈希算法从对应的位图文件中确定出目标哈希结果是否唯一,确定出唯一性判断结果a;可利用B哈希算法从对应的位图文件中确定出目标哈希结果是否唯一,确定出唯一性判断结果b。a与b可采用赋值不同来表征不同的判断结果,如赋值为1则非唯一,赋值为0为唯一。此时,可进行a与b的逻辑处理,并将a与b的逻辑计算结果作为最终的唯一定确定结果。即,仅当a与b均为0时,确定目标哈希结果唯一;否则确定目标哈希结果重复/重合。
当利用位图文件确定出目标哈希结果是否唯一之后,便可根据判断结果执行后续操作。具体的,当判断结果为唯一时,执行步骤S103;当判断结果显示非唯一时,则执行步骤S104。
S103、确定目标对象唯一。
S104、访问数据库,并在确认数据库中无目标对象时,确定目标对象唯一。
考虑到布隆算法,在准确率上存在缺陷,可能发生冲突。具体的,即数据库已有对象并不存在,而利用位图文件得到的判断结果却显示目标对象与某个已有对象重合。为了避免出现此类误判情况,在确定目标对象存在已有对象时,可通过访问数据库的方式,确定目标对象是否已存在。在确定出数据库中无该目标对象时,即可确定目标对象唯一。显然,当数据库中存在目标对象时,即可确定目标对象重合/重复,即目标对象并不唯一。
优选地,在确定目标对象唯一之后,利用目标哈希结果对位图文件进行修改。具体的,即将目标哈希结果映射到位图文件中的相应位置为1。如此,在下一次出现目标对象的唯一性校验时,便可确定出该目标对象已存在。
应用本发明实施例所提供的方法,利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一;如果是,则确定目标对象唯一;如果否,则访问数据库,并在确认数据库中无目标对象时,确定目标对象唯一。
考虑到唯一性验证时,往往需要将待验证的目标对象与大量已有对象进行比对确定,以确定唯一性。为了减少访问数据库,在本方法中,采用目标哈希算法对目标对象进行哈希计算,得到目标哈希结果。然后,直接利用内存中与数据库内已有对象对应的位图文件确定目标哈希结果是否唯一。即,采用布隆算法初步确定目标对象算法唯一。具体的,当确定目标哈希结果唯一时,此时可直接确定目标对象唯一,而当目标哈希结果不唯一时,考虑到布隆算法可能存在误判的情况,因而可进一步通过访问数据库的方式确定目标对象是否唯一。可见,在本方法可大大减少访问数据库的次数,减少对数据库的影响,可保障计算机系统的服务性能(如响应效率),改善用户体验。
需要说明的是,基于上述实施例,本发明实施例还提供了相应的改进方案。在优选/改进实施例中涉及与上述实施例中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在本文的优选/改进实施例中不再一一赘述。
优选地,考虑到唯一检测的对象为用户名时,而一般系统有很多用户过一段时间会失效不可用。如果失效的用户名一直在BitMap存放,会造成碰撞率增加,所以可根据系统用户的增速与规模,重新指定BitMap进行替新。即,定期更换位图文件。又因若以双hash得到BitMap,则不可能直接将相应位置为0,这样会造成相应数据不准确。所以只能重构BitMap。需要重构新的BitMap。即,定期更换位图文件,具体包括:
步骤一、在达到更新周期时,根据数据库中的全部已有对象,重新创建新位图文件;
步骤二、将新位图文件替换位图文件。
新位图文件的创建方式与初始创建位图文件的方式可相互参照,在此不再一一赘述。
为便于本领域技术人员更好地理解本发明实施例所提供的唯一性校验方法,下面结合具体的应用场景对该唯一性校验方法进行详细说明。
为了便于理解,下文将以目标对象为用户名为例,对具体的校验过程进行详细说明,对于其他常见对象的唯一性校验过程可参照于用户名唯一性校验,在此不再一一赘述。
为了校验用户唯一性,在本唯一性校验方法中主要运用了Bloom Filter算法与定时刷新策略,从而减小BitMap中的碰撞率,减少与数据库的交互。请参考图2,该唯一性校验方法的具体实现过程,包括:
1、分析数据进行建模。
评估用户数据量,根据用户数据与redis(一种数据库)中bitMap位数,做出评估用到多少个BitMap来表示。
2、BitMap数据生成。
根据现有用户数据先做hash,再与BitMap总数求余,求得的对应的Key。用两个不同HASH算法对用户名做hash,生成相应位数,并将redis中的BitMap中的相应位置的值置为1。
3、用户注册校验。
在用户注册界面先对用户名做正则表达式校验(具体实现过程可参见现有的正则表达式校验),通过正则表达式交易后,做hash计算求出相应redis的key。用两个不同HASH算法对用户名做hash,取出相位相应位置数字,并两个数字做与操作,如果为0,说明此用户名可用(即用户名唯一),此时可将相应位置的值置为1,以便下出现同样的用户名可确定其以存在;如果为1,则去查找数据库,如果数据库存在该用户名,即用户名不唯一,新注册不可用,若不存在则可用。
4、无效数据清理。
系统有很多用户过一段时间会失效不可用,如果一直在BitMap存放,会造成碰撞率增加,所以根据系统用户的增速与规模,制定相应BitMap数据更新。由于是双HASH得到BitMap,不可能直接将相应位置为0,这样会造成相应数据不准确。所以只能重构BitMap。需要重构新的BitMap。
5、重构BitMap,动态切换。
为了业务的不间断,系统需要做生成新的BitMap,可在系统里做个定时器,定时生成新了BitMap,优选地,更新时机最好定为业务不繁忙的时间。具体的,可定义一个配置项,如定时器启动重构BitMap,从数据库读数据重构新BitMap,同时会更新配置项,如用户名校验唯一性时,会以旧BitMap查询,更新两个BitMap,这样新旧BitMap都是最新数据。当重构BitMap完成后,更新配置项。以后所有查询新BitMap,并更新新BitMap。将旧BitMap做相应清理。
6、数据备份。为了保证redis的安全性,可以做成一主两备。
可见,针对用户名唯一性校验所设计的,主要减少用户访问数据库、减少数据库业务,只需,减少对数据库的压力,提高数据处理速度。针对大量用户注册,可以分摊到各个BitMap,也减少对redis的压力。同时,此方法用到redis自带的bitMap类型,可以减小开发难度,又便于管理相应数据信息,也很好的进行扩容处理。本方法还可用于大数据排重、去掉校验等多方面,在此不再一一赘述。
实施例二:
相应于上面的方法实施例,本发明实施例还提供了一种唯一性校验装置,下文描述的唯一性校验装置与上文描述的唯一性校验方法可相互对应参照。
参见图3所示,该装置包括以下模块:
哈希计算模块101,用于利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;
判断模块102,用于利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一;
第一确定模块103,用于如果目标哈希结果唯一,则确定数据库内已存在目标对象;
第二确定模块104,用于如果目标哈希结果重合,则访问数据库,并在确认数据库中无目标对象时,确定目标对象唯一。
其中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
应用本发明实施例所提供的装置,利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;利用内存中与数据库内已有对象匹配的位图文件,确定目标哈希结果是否唯一;如果是,则确定目标对象唯一;如果否,则访问数据库,并在确认数据库中无目标对象时,确定目标对象唯一。
考虑到唯一性验证时,往往需要将待验证的目标对象与大量已有对象进行比对确定,以确定唯一性。为了减少访问数据库,在本装置中,采用目标哈希算法对目标对象进行哈希计算,得到目标哈希结果。然后,直接利用内存中与数据库内已有对象对应的位图文件确定目标哈希结果是否唯一。即,采用布隆算法初步确定目标对象算法唯一。具体的,当确定目标哈希结果唯一时,此时可直接确定目标对象唯一,而当目标哈希结果不唯一时,考虑到布隆算法可能存在误判的情况,因而可进一步通过访问数据库的方式确定目标对象是否唯一。可见,在本装置可大大减少访问数据库的次数,减少对数据库的影响,可保障计算机系统的服务性能(如响应效率),改善用户体验。
在本发明的一种具体实施方式中,哈希计算模块101,具体用于利用两种以上的哈希算法对目标对象进行哈希计算,获得相应数量目标哈希结果;相应地,判断模块102,具体用于利用位图文件,确定各个目标哈希结果是否均唯一。
在本发明的一种具体实施方式中,还包括:位图文件更换模块,用于定期更换位图文件。
在本发明的一种具体实施方式中,位图文件更换模块,具体用于在达到更新周期时,根据数据库中的全部已有对象,重新创建新位图文件;将新位图文件替换位图文件。
在本发明的一种具体实施方式中,位图文件设置模块,用于在利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果之前,利用目标哈希算法对数据库中所有已有对象进行分别哈希计算,获得各个哈希结果;
利用各个哈希结果构建位图文件。
在本发明的一种具体实施方式中,目标对象为用户名、账号、订单和请求中的任一种信息。
在本发明的一种具体实施方式中,还包括:位图文件更新模块,用于在确定目标对象唯一之后,利用目标哈希结果对位图文件进行修改。
实施例三:
相应于上面的方法实施例,本发明实施例还提供了一种唯一性校验设备,下文描述的一种唯一性校验设备与上文描述的一种唯一性校验方法可相互对应参照。
参见图4所示,该唯一性校验设备包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例的唯一性校验方法的步骤。
具体的,请参考图5,为本实施例提供的一种唯一性校验设备的具体结构示意图,该唯一性校验设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在唯一性校验设备301上执行存储介质330中的一系列指令操作。
唯一性校验设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。例如,Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
上文所描述的唯一性校验方法中的步骤可以由唯一性校验设备的结构实现。
实施例四:
相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种唯一性校验方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的唯一性校验方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

Claims (10)

1.一种唯一性校验方法,其特征在于,包括:
利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;
利用内存中与数据库内已有对象匹配的位图文件,确定所述目标哈希结果是否唯一;
如果是,则确定所述目标对象唯一;
如果否,则访问所述数据库,并在确认所述数据库中无所述目标对象时,确定所述目标对象唯一。
2.根据权利要求1所述的唯一性校验方法,其特征在于,所述利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果,包括:
利用两种以上的哈希算法对所述目标对象进行哈希计算,获得相应数量所述目标哈希结果;
相应地,所述利用内存中与数据库内已有对象匹配的位图文件,确定所述目标哈希结果是否唯一,包括:
利用所述位图文件,确定各个所述目标哈希结果是否均唯一。
3.根据权利要求1所述的唯一性校验方法,其特征在于,还包括:
定期更换所述位图文件。
4.根据权利要求3所述的唯一性校验方法,其特征在于,所述定期更换所述位图文件,包括:
在达到更新周期时,根据所述数据库中的全部已有对象,重新创建新位图文件;
将所述新位图文件替换所述位图文件。
5.根据权利要求1所述的唯一性校验方法,其特征在于,在利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果之前,还包括:
利用所述目标哈希算法对所述数据库中所有所述已有对象进行分别哈希计算,获得各个所述哈希结果;
利用各个所述哈希结果构建所述位图文件。
6.根据权利要求1所述的唯一性校验方法,其特征在于,所述目标对象为用户名、账号、订单和请求中的任一种信息。
7.根据权利要求1至6任一项所述的唯一性校验方法,其特征在于,在确定所述目标对象唯一之后,还包括:
利用所述目标哈希结果对所述位图文件进行修改。
8.一种唯一性校验装置,其特征在于,包括:
哈希计算模块,用于利用目标哈希算法对目标对象进行哈希计算,获得目标哈希结果;
判断模块,用于利用内存中与数据库内已有对象匹配的位图文件,确定所述目标哈希结果是否唯一;
第一确定模块,用于如果所述目标哈希结果唯一,则确定所述数据库内已存在所述目标对象;
第二确定模块,用于如果所述目标哈希结果重合,则访问所述数据库,并在确认所述数据库中无所述目标对象时,确定所述目标对象唯一。
9.一种唯一性校验设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述唯一性校验方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述唯一性校验方法的步骤。
CN201910995289.8A 2019-10-18 2019-10-18 一种唯一性校验方法、装置、设备及可读存储介质 Pending CN110781464A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910995289.8A CN110781464A (zh) 2019-10-18 2019-10-18 一种唯一性校验方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910995289.8A CN110781464A (zh) 2019-10-18 2019-10-18 一种唯一性校验方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN110781464A true CN110781464A (zh) 2020-02-11

Family

ID=69385967

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910995289.8A Pending CN110781464A (zh) 2019-10-18 2019-10-18 一种唯一性校验方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110781464A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383034A (zh) * 2008-09-18 2009-03-11 腾讯科技(深圳)有限公司 一种广告统计和投放的方法及系统
CN103873371A (zh) * 2014-02-21 2014-06-18 北京邮电大学 一种名字路由快速匹配查找方法与装置
CN106970930A (zh) * 2016-10-10 2017-07-21 阿里巴巴集团控股有限公司 消息发送确定方法及装置、数据表创建方法及装置
CN107491487A (zh) * 2017-07-17 2017-12-19 中国科学院信息工程研究所 一种全文数据库架构及位图索引创建、数据查询方法、服务器及介质
US20180011893A1 (en) * 2015-01-29 2018-01-11 Hewlett-Packard Enterprise Development LP Hash index
CN107832343A (zh) * 2017-10-13 2018-03-23 天津大学 一种基于位图的mbf数据索引结构对数据快速检索的方法
CN108572789A (zh) * 2017-03-13 2018-09-25 阿里巴巴集团控股有限公司 磁盘存储方法和装置、消息推送方法和装置及电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383034A (zh) * 2008-09-18 2009-03-11 腾讯科技(深圳)有限公司 一种广告统计和投放的方法及系统
CN103873371A (zh) * 2014-02-21 2014-06-18 北京邮电大学 一种名字路由快速匹配查找方法与装置
US20180011893A1 (en) * 2015-01-29 2018-01-11 Hewlett-Packard Enterprise Development LP Hash index
CN106970930A (zh) * 2016-10-10 2017-07-21 阿里巴巴集团控股有限公司 消息发送确定方法及装置、数据表创建方法及装置
CN108572789A (zh) * 2017-03-13 2018-09-25 阿里巴巴集团控股有限公司 磁盘存储方法和装置、消息推送方法和装置及电子设备
CN107491487A (zh) * 2017-07-17 2017-12-19 中国科学院信息工程研究所 一种全文数据库架构及位图索引创建、数据查询方法、服务器及介质
CN107832343A (zh) * 2017-10-13 2018-03-23 天津大学 一种基于位图的mbf数据索引结构对数据快速检索的方法

Similar Documents

Publication Publication Date Title
CN111324596B (zh) 数据库集群的数据迁移方法、装置及电子设备
CN107273455B (zh) 区块链数据访问方法和装置
US9367598B2 (en) Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation
US10031935B1 (en) Customer-requested partitioning of journal-based storage systems
US7702640B1 (en) Stratified unbalanced trees for indexing of data items within a computer system
CN112579606A (zh) 工作流数据处理方法、装置、计算机设备及存储介质
CN106934048A (zh) 数据在线迁移方法、代理节点
CN109033278B (zh) 数据处理方法、装置、电子设备及计算机存储介质
CN109241023A (zh) 分布式存储系统数据存储方法、装置、系统及存储介质
CN107391033B (zh) 数据迁移方法及装置、计算设备、计算机存储介质
CN111522502B (zh) 数据去重方法、装置、电子设备及计算机可读存储介质
CN110222030A (zh) 数据库动态扩容的方法、存储介质
EP3467670B1 (en) Light weight redundancy tool for performing transactions
WO2019000535A1 (zh) 云平台的构建方法及云平台
CN112749039A (zh) 用于数据写入和数据恢复的方法、设备和程序产品
CN111026711A (zh) 基于区块链数据存储方法、装置、计算机设备及存储介质
EP3264254B1 (en) System and method for a simulation of a block storage system on an object storage system
CN117178265A (zh) 基于快照的数据损坏检测
CN117075821A (zh) 一种分布式存储方法、装置、电子设备及存储介质
CN109815047B (zh) 一种数据处理的方法和相关装置
CN110781464A (zh) 一种唯一性校验方法、装置、设备及可读存储介质
US20210034484A1 (en) Multi-page optimization of asynchronous data replication transfer
CN110532243A (zh) 数据处理方法、装置和电子设备
CN116303789A (zh) 多分片多副本数据库并行同步方法、装置及可读介质
Long et al. The reliability of regeneration-based replica control protocols

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200211

RJ01 Rejection of invention patent application after publication