CN112905128B - 门禁用户数据的管理方法和装置、存储介质及电子设备 - Google Patents
门禁用户数据的管理方法和装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN112905128B CN112905128B CN202110350796.3A CN202110350796A CN112905128B CN 112905128 B CN112905128 B CN 112905128B CN 202110350796 A CN202110350796 A CN 202110350796A CN 112905128 B CN112905128 B CN 112905128B
- Authority
- CN
- China
- Prior art keywords
- access control
- user data
- hash
- target
- control user
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了门禁用户数据的管理方法和装置、存储介质及电子设备,该方法包括:获取待存储的目标门禁用户数据;对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值,利用目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定目标门禁用户数据对应的目标散列扇区地址;在目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区。本发明解决了门禁用户数据的数据量较大导致门禁系统的检索效率低的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及门禁用户数据的管理方法和装置、存储介质及电子设备。
背景技术
随着社会安防建设不断发展,门禁系统的使用越来越多,对准确识别用户信息的需求也越来越强烈。由于门禁系统的内存性能限制,无法建立数据库存储用户信息,只能通过存储算法进行用户信息的匹配。在现有技术中,门禁系统常用的存储算法包括顺序存储法和索引表存储法,但顺序存储适合数据量较小的情景;而索引表存储法需要映射表和实际存储两块区域,比较浪费存储空间,而且在用户数据量大时,索引表存储法遍历查找效率较低,容易导致检索时间,使得用户体验差的问题。
针对上述,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了门禁用户数据的管理方法和装置、存储介质及电子设备,以至少解决门禁用户数据的数据量较大导致门禁系统的检索效率低的技术问题。
根据本发明实施例的一个方面,提供一种门禁用户数据的管理方法,包括:获取待存储的目标门禁用户数据;对上述目标门禁用户数据进行混合散列计算,以确定上述目标门禁用户数据对应的目标门禁散列值;利用上述目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定上述目标门禁用户数据对应的目标散列扇区地址;在上述目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将上述目标门禁用户数据存储到上述目标散列扇区。
作为一种可选的方案,上述对上述目标门禁用户数据进行混合散列计算,以确定上述目标门禁用户数据对应的目标门禁散列值包括:将上述目标门禁用户数据进行混合散列计算,得到上述目标门禁用户数据对应的数据字符串;计算上述数据字符串对应的消息摘要;对上述消息摘要进行哈希计算,以得到上述目标门禁散列值。
作为一种可选的方案,在上述计算上述数据字符串对应的消息摘要之后包括:从上述消息摘要中提取第一数值;将上述第一数值替换为第二数值,以更新上述消息摘要。
作为一种可选的方案,在上述利用上述门禁散列值对当前用于存储数据的散列扇区的总数进行取余,以确定上述门禁用户数据对应的目标存储扇区地址之后,还包括:在上述目标散列扇区地址所指示的目标散列扇区已存满的情况下,将上述目标门禁用户数据存储到公共溢出区。
作为一种可选的方案,在上述将上述目标门禁用户数据存储到上述目标散列扇区之后,包括:获取待检索的参考门禁用户数据;对上述参考门禁用户数据进行混合散列计算,以确定上述参考门禁用户数据对应的参考门禁散列值;利用上述参考门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定上述参考门禁用户数据对应的参考散列扇区地址;遍历上述参考散列扇区地址所指示的参考扇区,查找上述参考门禁用户数据匹配的门禁信息;根据查找的结果确定是否授权开启上述参考门禁用户数据所请求开启的门禁系统。
作为一种可选的方案,上述根据查找的结果确定是否授权开启上述参考门禁用户数据所请求开启的门禁系统包括:在查找的结果指示在上述参考扇区中查找到上述门禁信息的情况下,提取上述门禁信息;比对上述参考门禁用户数据及上述门禁信息;在比对的结果指示上述参考门禁用户数据与上述门禁信息匹配的情况下,授权开启上述门禁系统。
作为一种可选的方案,上述根据查找的结果确定是否授权开启上述参考门禁用户数据所请求开启的门禁系统,包括:在查找的结果指示在上述参考扇区中并未查找到上述门禁信息的情况下,遍历公共溢出区查找上述参考门禁用户数据匹配的上述门禁信息;在上述公共溢出区中查找到上述门禁信息的情况下,提取上述门禁信息;比对上述参考门禁用户数据及上述门禁信息;在比对的结果指示上述参考门禁用户数据与上述门禁信息匹配的情况下,授权开启上述门禁系统。
根据本发明实施例的又一方面,还提供一种门禁用户数据的管理装置,该装置包括:第一转换单元,用于获取待存储的目标门禁用户数据,对上述目标门禁用户数据进行混合散列计算,以确定上述目标门禁用户数据对应的目标门禁散列值;第二转换单元,用于利用上述目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定上述目标门禁用户数据对应的目标散列扇区地址;存储单元,用于在上述目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将上述目标门禁用户数据存储到上述目标散列扇区。
根据本发明实施例的又一方面,还提供一种存储介质,存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述的方法。
根据本发明实施例的又一方面,还提供一种电子设备,包括存储器和处理器,其特征在于,上述存储器中存储有计算机程序,上述处理器被设置为通过上述计算机程序执行上述方法。
在本发明实施例中,公开了门禁用户数据的管理方法和装置、存储介质及电子设备,该方法包括:获取待存储的目标门禁用户数据;对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值,利用目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定目标门禁用户数据对应的目标散列扇区地址;在目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区。
本发明通过改进存储算法,以扇区为单位存储门禁用户数据,有效解决了门禁用户数据的数据量较大导致门禁系统的检索效率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的门禁用户数据的管理方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的门禁用户数据的管理方法的流程图;
图3是根据本发明实施例的另一种可选的门禁用户数据的管理方法的流程图;
图4是根据本发明实施例的又一种可选的门禁用户数据的管理方法的流程图;
图5是根据本发明实施例的又一种可选的门禁用户数据的管理方法的流程图;
图6是根据本发明实施例的又一种可选的门禁用户数据的管理方法的流程图;
图7是根据本发明实施例的又一种可选的门禁用户数据的管理方法的流程图;
图8是根据本发明实施例的又一种可选的门禁用户数据的管理方法的流程图;
图9是根据本发明实施例的又一种可选的门禁用户数据的管理方法的流程图;
图10是根据本发明实施例的门禁用户数据的管理装置的结构示意图;
图11是根据本发明实施例的用于实施门禁用户数据的管理方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
门禁控制器是门禁系统的通讯中枢,实现用户数据的存储与处理。本文针对的门禁控制器是指单片机类的设备。单片机类的门禁设备因RAM(Random Access Memory,随机存取存储器)内存性能限制,无法建立数据库,用户信息在Flash(闪存)中需要一些存储方法。门禁用户信息包括工号、卡号、密码、指纹等。平台下发的用户信息存储在控制器的外部Flash(闪存)中,常见的Flash(闪存)存储空间大小有16MB、32MB等。有常用的存储的方法有:顺序存储法,索引表存储法。顺序存储法是以Flash(闪存)的块为单位,按照块的顺序依次存储用户信息。索引表存储法是,用一个索引表来映射与实际存储位置的关系。检索方式取决于存储方式,故检索的方法有:顺序遍历法,索引表定位法。顺序存储和顺序遍历检索法是最安全但同时也是效率最低的一个,适合数据量较小的情景;而索引表存储,需要映射表和实际存储两块区域,比较浪费存储空间,同时,在用户数据量大时,索引表遍历查找的效率也低。无论是以上哪种方法,都无法解决在数据量较大,如10万份用户数据量时,检索时间过长的问题,检索时间长会引起前端读卡器开门反应时间过长,平台端批量下发用户数据总时间过长等用户体验差的问题。
根据本发明实施例的一个方面,提供了一种门禁用户数据的管理方法,可选地,上述门禁用户数据的管理方法可以但不限于应用于如图1所示的环境中。门禁用户数据存储设备102中包含有目标门禁用户数据104,存储设备122中包含有目标散列扇区1222和公共溢出区1224。
在存储目标门禁用户数据时,门禁用户数据存储设备102将所包含待存储的目标门禁用户数据104的信息发送给处理器110,依次执行S102至S106,生成目标门禁散列值对应的目标散列区地址。存储设备122根据目标散列地址执行步骤S108或步骤S110将目标门禁用户数据存储在存储设备122中。
在检索门禁用户数据时,门禁用户数据存储设备102将所包含的待检索的参考门禁用户数据106的元素信息发送给处理器110,依次执行S112,获取待检索的参考门禁用户数据;S114,确定参考门禁用户数据对应的参考门禁散列值;S116,确定参考门禁用户数据对应的参考散列扇区地址。然后存储设备122依次执行S108遍历参考散列扇区地址所指示的参考扇区,查找参考门禁用户数据匹配的门禁信息;并获取对比结果。
作为一种可选的实施方式,如图1所示,处理器110处理待存储的目标门禁用户数据104包括步骤S102至S106,具体过程可以如下步骤:
步骤S102,获取待存储的目标门禁用户数据;
步骤S104,生成待存储的目标门禁用户数据对应的目标门禁散列值;
步骤S106,根据目标门禁散列值,确定目标散列扇区。
存储设备122根据目标散列区地址将待存储的目标门禁用户数据102存储到存储设备122包括步骤S108和S110,具体包括:
步骤S108,在目标散列扇区地址所指示的目标散列扇区1222尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区1222;
步骤S110,在目标散列扇区地址所指示的目标散列扇区已存满的情况下,执行S110,将目标门禁用户数据存储到公共溢出区1224。
步骤S112-S116用于处理器110处理待检索的参考门禁用户数据106,具体地:
步骤S112:获取待检索的参考门禁用户数据106。
步骤S114:确定参考门禁用户数据106对应的参考门禁散列值。
步骤S116:确定参考门禁用户数据106对应的参考散列扇区地址。
存储设备122根据参考散列扇区地址对参考门禁用户数据106进行检索;具体步骤:
步骤S118:存储设备122依次执行S108遍历参考散列扇区地址所指示的参考扇区,查找参考门禁用户数据106匹配的门禁信息;并获取对比结果。
可选地,在本实施例中,上述门禁用户数据存储设备102中的门禁用户数据包括但不限于工号、卡号、密码、指纹等。门禁用户数据存储设备102中的门禁用户数据通常来自数据平台或读卡器读取用户门禁卡的结果。待存储的目标门禁用户数据104通常指用户信息,待检索的参考门禁用户数据106通常指卡号信息。处理器110可以但不限于是Flash(闪存)。存储设备122可以包括但不限于RAM(Random Access Memory,随机存取存储器)。上述仅是一种示例,本实施例中对此不作任何限定。
可选地,作为一种可选的实施方式,如图2所示,门禁用户数据的管理方法包括:
S202,获取待存储的目标门禁用户数据;
S204,对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值;
S206,利用目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定目标门禁用户数据对应的目标散列扇区地址;
S208,在目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区。
在本实施例中,RAM(Random Access Memory,随机存取存储器)划分为多个散列扇区和公共溢出区,其中,存储器还对散列扇区进行编号命名,用于用户数据对应的散列扇区地址一一对应。可选地,一个散列扇区可以存储多个门禁用户数据。步骤S202中的门禁用户数据通常指用户信息,包括但不限于工号、卡号、密码、指纹等。通常待存储的目标门禁用户数据由平台端下发。在步骤S206中,获取的目标门禁散列值为4字节整型散列值,根据散列扇区的编号,对目标门禁散列值对应的4字节整型散列值进行取余计算,将目标门禁散列值划分到不同的散列扇区中,其中,取余结果对应的散列区编号为目标门禁用户数据对应的目标散列扇区地址。RAM(Random Access Memory,随机存取存储器)划分为多个散列扇区和公共溢出区,其中,存储器还对散列扇区进行编号命名,用于用户数据对应的散列扇区地址一一对应。可选地,一个散列扇区可以存储多个门禁用户数据。在步骤S206后,将门禁用户数据存储在目标散列扇区地址对应的扇区,如果目标散列扇区地址存满的情况下,执行步骤S208,将目标门禁用户数据存储到公共溢出区。
进一步举例说明,根据本发明实施例提供另一种可选的门禁用户数据的管理方法的流程示意图,如图3所示,步骤S204,对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值,包括:
S302:将目标门禁用户数据进行混合散列计算,得到目标门禁用户数据对应的数据字符串;
S304:计算数据字符串对应的消息摘要;
S306:对消息摘要进行哈希计算,以得到目标门禁散列值。
具体地,步骤S304是为了处理数据字符串,使得门禁用户数据对应的字符串之间的区别增大,便于后续存储。在步骤S306中,将目标门禁散列值都转换为4字节整型散列值,便于后续计算。
进一步地,根据本发明实施例提供另一种可选的门禁用户数据的管理方法的流程示意图,如图4所示,在步骤S304,在计算数据字符串对应的消息摘要之后,还包括:
S402,从消息摘要中提取第一数值;
S404,将第一数值替换为第二数值,以更新消息摘要。
具体地,将消息摘要结果中的00替换为127,更新信息摘要的目的是为了尽可能地使求出来的目标门禁散列值尽可能地在扇区中分布均匀,减少散列冲突。
结合图2至图4和应用场景,提供图5说明在本实施例中门禁用户数据的应用场景。图5是根据本发明实施例的一种可选的的应用场景图,目标门禁用户数据存储的过程,如图5所示:
具体地,步骤S202完成后,执行步骤S204,步骤S204包括步骤S302,S304,S402和S404以及S306,步骤S204中依次执行步骤S302获取字符串,步骤S304根据字符串获取信息摘要,步骤S402-步骤S404用于更新摘要信息,步骤S306用于根据摘要进行哈希计算得到混合散列值。步骤S204完成后进行步骤S206,获取目标散列扇区地址。完成步骤S206后执行判断条件S502,判断目标散列值是否存满,在判断为否的情况下,执行步骤S208,将目标门禁用户数据存储到目标散列扇区;在判断为是的情况下,执行步骤S504,则将目标门禁用户数据存储在公共溢出区。
在本实施例中,经过图5的步骤,将待存储的目标门禁用户数据存储后,获取待检索的参考门禁用户数据,并进行检索。
根据本发明实施例提供另一种可选的门禁用户数据的管理方法的流程示意图,具体地如图6所示,包括:
S602:获取待检索的参考门禁用户数据;
S604:对参考门禁用户数据进行混合散列计算,以确定参考门禁用户数据对应的参考门禁散列值;
S606:利用参考门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定参考门禁用户数据对应的参考散列扇区地址;
S608:遍历参考散列扇区地址所指示的参考扇区,查找参考门禁用户数据匹配的门禁信息;
S610:根据查找的结果确定是否授权开启参考门禁用户数据所请求开启的门禁系统。
在步骤S602中,参考门禁用户数据通常为用户信息,通常存储在门禁卡中。步骤S604中,参考门禁散列值通常为4字节整型散列值。
具体地,提供根据本发明实施例的另一种可选的门禁用户数据的管理方法的流程示意图,如图7所示,步骤S610包括:
S702:在查找的结果指示在参考扇区中查找到门禁信息的情况下,提取门禁信息;
S704:比对参考门禁用户数据及门禁信息;
S706:在比对的结果指示参考门禁用户数比对参考门禁用户数据及门禁信息据与门禁信息匹配的情况下,授权开启门禁系统。
在步骤S704中显示比对结果失败的情况下,需要在公共溢出去对门禁信息进行检索。具体地,根据本发明实施例提供另一种可选的门禁用户数据的管理方法的流程示意图,如图8所示,步骤S610还包括:
S802:在查找的结果指示在参考扇区中并未查找到门禁信息的情况下,遍历公共溢出区查找参考门禁用户数据匹配的门禁信息;
S804:在公共溢出区中查找到门禁信息的情况下,提取门禁信息;
S806:比对参考门禁用户数据及门禁信息;
S808:在比对的结果指示参考门禁用户数据与门禁信息匹配的情况下,授权开启门禁系统。
在步骤S808中,若显示比对结果不匹配,门禁系统发出提示音显示匹配失败。
结合图6至图8和应用场景,本发明实施例还提供一种目标门禁用户数据的匹配场景的流程示意图,具体地,如图9所示:
具体地,图9包括:步骤S902,获取待检索的参考门禁用户数据;步骤S904:获取参考散列扇区地址;步骤S906:遍历参考扇区,查找参考门禁用户数据(如图中表示为相关信息);在S906中查找到相关信息的情况下,执行步骤S908:提取相关信息,进行匹配;在S906中并未查找到信息(即无信息)的情况下,执行步骤S910,判断公共溢出区是否有数据;在S910判断为是的情况下,执行步骤S912,判断公共溢出区是否能找到相关信息。在步骤S910判断为否的情况下,执行步骤S914,显示查找失败。在通过步骤S912判断出公共溢出区能找到相关信息的情况下,执行步骤S908;在找不到有关信息的情况下,执行步骤S914,显示查找失败。在步骤S908中完成匹配或在步骤S914确定查找失败后,结束检索过程。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的又一个方面,如图10还提供了一种门禁用户数据的管理装置用于实施上述门禁用户数据的管理方法,该门禁用户数据的管理装置包括:
第一转换单元1002,用于获取待存储的目标门禁用户数据,对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值;
第二转换单元1004,用于利用目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定目标门禁用户数据对应的目标散列扇区地址;
存储单元1006,用于在目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区。
在本实施例中,存储单元1006包括目标散列扇区和公共溢出区,目标散列扇区根据存储单位大小依次划分扇区,对扇区进行编号便于目标门禁用户数据根据散列区地址进行存储。在目标散列扇区存满的情况下,将门禁用户数据存储到公共溢出区。
根据本发明实施例的又一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述门禁用户数据管理各种可选实现方式中提供的方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤其中,计算机程序被设置为执行上述门禁用户数据管理方法,具体包括:
S1:获取待存储的目标门禁用户数据;
S2:对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值;
S3:利用目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定目标门禁用户数据对应的目标散列扇区地址;
S4:在目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区。
可选地,本领域普通技术人员可以理解,图11所示的结构仅为示意,电子设备也可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图11其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图11中所示更多或者更少的组件(如网络接口等),或者具有与图11所示不同的配置。
其中,存储器1102可用于存储软件程序以及模块,如本发明实施例中的门禁用户数据的管理装置对应的程序指令/模块,处理器1104通过运行存储在存储器1102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的门禁用户数据的管理方法。存储器1102可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1102可进一步包括相对于处理器1104远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1102具体可以但不限于用于存储计算机程序。作为一种示例,如图11所示,上述存储器1102中可以但不限于包括上述管理门禁用户数据装置中的第一转换单元1002,第二转换单元1004,存储单元1006。此外,还可以包括但不限于上述门禁用户数据的管理装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1106包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1106为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1108,用于显示上述管理门禁用户数据的信息以及匹配结果;和连接总线1110,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述门禁用户数据的管理方法方面的各种可选实现方式中提供的方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1:获取待存储的目标门禁用户数据;
S2:对目标门禁用户数据进行混合散列计算,以确定目标门禁用户数据对应的目标门禁散列值;
S3:利用目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定目标门禁用户数据对应的目标散列扇区地址;
S4:在目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将目标门禁用户数据存储到目标散列扇区。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (9)
1.一种门禁用户数据的管理方法,其特征在于,包括:
获取待存储的目标门禁用户数据;
对所述目标门禁用户数据进行混合散列计算,以确定所述目标门禁用户数据对应的目标门禁散列值;
利用所述目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,得到取余结果,基于所述取余结果对应的散列区编号确定所述目标门禁用户数据对应的目标散列扇区地址,其中,每个所述散列扇区均对应有编号;
在所述目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将所述目标门禁用户数据存储到所述目标散列扇区;
其中,在所述将所述目标门禁用户数据存储到所述目标散列扇区之后,还包括:
获取待检索的参考门禁用户数据;
对所述参考门禁用户数据进行混合散列计算,以确定所述参考门禁用户数据对应的参考门禁散列值;
利用所述参考门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定所述参考门禁用户数据对应的参考散列扇区地址;
遍历所述参考散列扇区地址所指示的参考扇区,查找所述参考门禁用户数据匹配的门禁信息;
根据查找的结果确定是否授权开启所述参考门禁用户数据所请求开启的门禁系统。
2.根据权利要求1所述的方法,其特征在于,所述对所述目标门禁用户数据进行混合散列计算,以确定所述目标门禁用户数据对应的目标门禁散列值包括:
将所述目标门禁用户数据进行混合散列计算,得到所述目标门禁用户数据对应的数据字符串;
计算所述数据字符串对应的消息摘要;
对所述消息摘要进行哈希计算,以得到所述目标门禁散列值。
3.根据权利要求2所述的方法,其特征在于,在所述计算所述数据字符串对应的消息摘要之后,还包括:
从所述消息摘要中提取第一数值;
将所述第一数值替换为第二数值,以更新所述消息摘要。
4.根据权利要求1所述的方法,其特征在于,在基于所述取余结果对应的散列区编号确定所述目标门禁用户数据对应的目标存储扇区地址之后,还包括:
在所述目标散列扇区地址所指示的目标散列扇区已存满的情况下,将所述目标门禁用户数据存储到公共溢出区。
5.根据权利要求1所述的方法,其特征在于,所述根据查找的结果确定是否授权开启所述参考门禁用户数据所请求开启的门禁系统包括:
在查找的结果指示在所述参考扇区中查找到所述门禁信息的情况下,提取所述门禁信息;
比对所述参考门禁用户数据及所述门禁信息;
在比对的结果指示所述参考门禁用户数据与所述门禁信息匹配的情况下,授权开启所述门禁系统。
6.根据权利要求5所述的方法,其特征在于,所述根据查找的结果确定是否授权开启所述参考门禁用户数据所请求开启的门禁系统,还包括:
在查找的结果指示在所述参考扇区中并未查找到所述门禁信息的情况下,遍历公共溢出区查找所述参考门禁用户数据匹配的所述门禁信息;
在所述公共溢出区中查找到所述门禁信息的情况下,提取所述门禁信息;
比对所述参考门禁用户数据及所述门禁信息;
在比对的结果指示所述参考门禁用户数据与所述门禁信息匹配的情况下,授权开启所述门禁系统。
7.一种管理门禁用户数据的装置,用于实施如权利要求1至6任一项所述的方法,其特征在于,所述装置包括:
第一转换单元,获取待存储的目标门禁用户数据,对所述目标门禁用户数据进行混合散列计算,以确定所述目标门禁用户数据对应的目标门禁散列值;
第二转换单元,利用所述目标门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,得到取余结果,基于所述取余结果对应的散列区编号确定所述目标门禁用户数据对应的目标散列扇区地址,其中,每个所述散列扇区均对应有编号;
存储单元,在所述目标散列扇区地址所指示的目标散列扇区尚未存满的情况下,将所述目标门禁用户数据存储到所述目标散列扇区;
其中,所述装置还用于:在所述将所述目标门禁用户数据存储到所述目标散列扇区之后,获取待检索的参考门禁用户数据;对所述参考门禁用户数据进行混合散列计算,以确定所述参考门禁用户数据对应的参考门禁散列值;利用所述参考门禁散列值对当前用于存储门禁用户数据的散列扇区的总数进行取余计算,以确定所述参考门禁用户数据对应的参考散列扇区地址;遍历所述参考散列扇区地址所指示的参考扇区,查找所述参考门禁用户数据匹配的门禁信息;根据查找的结果确定是否授权开启所述参考门禁用户数据所请求开启的门禁系统。
8.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其特征在于,所述计算机程序被设置为运行时执行所述权利要求1至6任一项中所述的方法。
9.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至6任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110350796.3A CN112905128B (zh) | 2021-03-31 | 2021-03-31 | 门禁用户数据的管理方法和装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110350796.3A CN112905128B (zh) | 2021-03-31 | 2021-03-31 | 门禁用户数据的管理方法和装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112905128A CN112905128A (zh) | 2021-06-04 |
CN112905128B true CN112905128B (zh) | 2023-08-01 |
Family
ID=76109872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110350796.3A Active CN112905128B (zh) | 2021-03-31 | 2021-03-31 | 门禁用户数据的管理方法和装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112905128B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012077162A1 (en) * | 2010-12-08 | 2012-06-14 | Hitachi, Ltd. | Storage apparatus |
CN107135661A (zh) * | 2016-12-26 | 2017-09-05 | 深圳前海达闼云端智能科技有限公司 | 数据处理方法、装置、系统及信息采集设备 |
CN110716796A (zh) * | 2019-09-02 | 2020-01-21 | 中国平安财产保险股份有限公司 | 智能任务调度方法及装置、存储介质、电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593477A (zh) * | 2013-11-29 | 2014-02-19 | 华为技术有限公司 | 一种哈希数据库的配置方法和装置 |
CN111199601B (zh) * | 2019-09-02 | 2022-06-14 | 腾讯科技(深圳)有限公司 | 门禁控制方法、装置、智能终端、服务器及存储介质 |
CN111489478A (zh) * | 2020-04-24 | 2020-08-04 | 英华达(上海)科技有限公司 | 门禁控制方法、系统、设备及存储介质 |
-
2021
- 2021-03-31 CN CN202110350796.3A patent/CN112905128B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012077162A1 (en) * | 2010-12-08 | 2012-06-14 | Hitachi, Ltd. | Storage apparatus |
CN107135661A (zh) * | 2016-12-26 | 2017-09-05 | 深圳前海达闼云端智能科技有限公司 | 数据处理方法、装置、系统及信息采集设备 |
CN110716796A (zh) * | 2019-09-02 | 2020-01-21 | 中国平安财产保险股份有限公司 | 智能任务调度方法及装置、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112905128A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6435398B2 (ja) | 端末識別子を促進する方法及びシステム | |
CN110677384B (zh) | 钓鱼网站的检测方法及装置、存储介质、电子装置 | |
CN108154024B (zh) | 一种数据检索方法、装置及电子设备 | |
CN106960391A (zh) | 一种用户信息聚合方法、系统和装置 | |
CN113706100B (zh) | 配电网物联终端设备实时探测识别方法与系统 | |
CN113315811A (zh) | 基于联盟区块链的标识解析方法、装置、存储介质及服务器 | |
CN113672692B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111291002A (zh) | 文件对账方法、装置、计算机设备及存储介质 | |
CN112364022B (zh) | 信息推导管理方法、装置、计算机设备及可读存储介质 | |
CN111414528B (zh) | 确定设备标识的方法、装置、存储介质及电子设备 | |
CN104424316A (zh) | 一种数据存储方法、数据查询方法、相关装置和系统 | |
CN113612705A (zh) | 基于哈希算法分片及重组的电网监控系统数据传输方法 | |
JP6683839B2 (ja) | モバイル装置識別子を設定する方法及び装置 | |
CN110457600B (zh) | 查找目标群体的方法、装置、存储介质和计算机设备 | |
CN112905128B (zh) | 门禁用户数据的管理方法和装置、存储介质及电子设备 | |
CN113094415B (zh) | 数据抽取方法、装置、计算机可读介质及电子设备 | |
CN115687276B (zh) | 一种文件处理方法、装置、电子设备及存储介质 | |
CN112433753A (zh) | 基于参数信息的接口文档生成方法、装置、设备和介质 | |
CN113434190B (zh) | 数据处理方法和装置、存储介质及电子设备 | |
CN113268506B (zh) | 缓存数据库的查询方法、装置、电子设备和可读存储介质 | |
CN115114289A (zh) | 一种数据查询方法、装置及电子设备 | |
CN113064898A (zh) | 一种基于链上合约微型索引的检索方法、装置和电子设备 | |
US20200112474A1 (en) | Gateway device and information processing method thereof | |
CN115834179B (zh) | 策略聚合方法及装置、电子设备 | |
CN110287265B (zh) | 一种登录请求处理方法、装置、服务器及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |