CN110837499A - 数据访问处理方法、装置、电子设备和存储介质 - Google Patents
数据访问处理方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN110837499A CN110837499A CN201810937242.1A CN201810937242A CN110837499A CN 110837499 A CN110837499 A CN 110837499A CN 201810937242 A CN201810937242 A CN 201810937242A CN 110837499 A CN110837499 A CN 110837499A
- Authority
- CN
- China
- Prior art keywords
- storage area
- target storage
- modulus
- result
- region
- 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.)
- Granted
Links
- 238000003860 storage Methods 0.000 title claims abstract description 181
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000012545 processing Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000013507 mapping Methods 0.000 claims description 20
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- 241000238557 Decapoda Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据访问处理方法、装置、电子设备和存储介质,所述的方法包括:接收写请求,依据所述写请求确定用户标识;依据所述用户标识的取模结果,确定对应的目标存储区域;在所述目标存储区域中对所述用户标识对应的业务数据进行更新。写请求在数据的目标存储区域内进行处理,不会集中占用一个区域的资源,而是使各区域的资源得到合理的使用。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据访问处理方法、一种数据访问处理装置、一种电子设备和一种存储介质。
背景技术
系统在处理过程中,有时会同时接收到对一个数据的多个写请求,也即接收到并发写请求。通常对并发写请求的处理是各个请求排队进行处理,从而一个时刻该数据只更改一次,从而保证了数据的一致性。
有些系统对于数据采用区域访问的方式,此时数据存在于多个区域对应的机房中,因此,对于用户的数据请求可就近选择用户所在的区域机房进行数据处理并返回。但是,若是写请求采用就近访问区域,在数据写完进行数据同步时,就可能出现数据冲突,导致数据同步出现问题。因此在区域访问的情况下,通常是指定一个写操作的中心区域,从而所有区域的写请求都在该中心区域中进行写操作。
但是,这种方式使得所有的写请求都会路由到中心区域进行处理,使得中心区域耗费较多资源。
发明内容
本申请实施例提供了一种数据访问处理方法,以解决写请求消耗中心区域资源的问题。
相应的,本申请实施例还提供了一种数据访问处理装置、一种电子设备和一种存储介质,用以保证上述系统的实现及应用。
为了解决上述问题,本申请实施例公开了一种数据访问处理方法,所述的方法包括:接收写请求,依据所述写请求确定用户标识;依据所述用户标识的取模结果,确定对应的目标存储区域;在所述目标存储区域中对所述用户标识对应的业务数据进行更新。
可选的,所述依据所述用户标识的取模结果,确定对应的目标存储区域,包括:将所述用户标识按照设定模值进行取模运算,得到对应的取模结果;按照取模结果查询对应的目标存储区域。
可选的,所述将所述用户标识按照设定模值进行取模运算,得到对应的取模结果,包括:在哈希表的第一层表项中按照第一关键词查询所述设定模值;将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
可选的,所述按照取模结果查询对应的目标存储区域,包括:在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项,所述第二层表项用于存储取模结果和存储区域的映射关系;以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。
可选的,所述取模结果和所述存储区域的映射关系存储于多层嵌套的哈希表中。
可选的,所述在所述目标存储区域中对所述用户标识对应的业务数据进行更新,包括:判断本区域是否为所述目标存储区域;若本区域为所述目标存储区域,则在本区域内对所述用户标识对应的业务数据进行更新;若本区域不为所述目标存储区域,则访问所述目标存储区域,对所述用户标识对应的业务数据进行更新。
可选的,所述对所述用户标识对应的业务数据进行更新,包括:对所述用户标识对应的业务数据进行累加。
可选的,应用于投票业务和/或点赞业务。
本申请实施例还公开了一种数据访问处理装置,所述的装置包括:接收模块,用于接收写请求,依据所述写请求确定用户标识;区域确定模块,用于依据所述用户标识的取模结果,确定对应的目标存储区域;数据更新模块,用于在所述目标存储区域中对所述用户标识对应的业务数据进行更新。
可选的,所述区域确定模块,包括:取模处理子模块,用于将所述用户标识按照设定模值进行取模运算,得到对应的取模结果;区域查询子模块,用于按照取模结果查询对应的目标存储区域。
可选的,所述取模处理子模块,用于在哈希表的第一层表项中按照第一关键词查询所述设定模值;将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
可选的,所述区域查询子模块,用于在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项,所述第二层表项用于存储取模结果和存储区域的映射关系;以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。
可选的,所述取模结果和所述存储区域的映射关系存储于多层嵌套的哈希表中。
可选的,所述数据更新模块,用于判断本区域是否为所述目标存储区域;若本区域为所述目标存储区域,则在本区域内对所述用户标识对应的业务数据进行更新;若本区域不为所述目标存储区域,则访问所述目标存储区域,对所述用户标识对应的业务数据进行更新。
可选的,所述数据更新模块,用于对所述用户标识对应的业务数据进行累加。
可选的,应用于投票业务和/或点赞业务。
本申请实施例还公开了一种电子设备,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例中一个或多个所述的数据访问处理方法。
本申请实施例还公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例中一个或多个所述的数据访问处理方法。
与现有技术相比,本申请实施例包括以下优点:
在本申请实施例中,写操作在用户标识对应存储区域内执行,因此在接收到写请求后,可确定该写请求对应的用户标识,依据所述用户标识的取模结果,确定对应的目标存储区域,从而在数据对应的目标存储区域内对用户标识对应的业务数据进行更新,写请求在数据的目标存储区域内进行处理,不会集中占用一个区域的资源,而是使各区域的资源得到合理的使用。
附图说明
图1是本申请实施例的一种数据访问处理的示意图;
图2是本申请实施例中哈希表的一种结构示例的示意图;
图3是本申请的一种数据访问处理方法实施例的步骤流程图;
图4是本申请的另一种数据访问处理方法实施例的步骤流程图;
图5是本申请一种数据访问处理装置实施例的结构框图;
图6是本申请一种数据访问处理装置实施例的结构框图;
图7是本申请一实施例提供的装置的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例中,通过区域访问的方式进行数据请求的处理,数据请求可先就近选择用户所在的区域机房进行访问处理,对于读请求各存储区域均可获取所需的数据,而对于写操作在用户标识对应存储区域内执行,因此若该数据请求为写请求,则可确定写请求对应用户标识的存储区域,然后在该存储区域内进行处理。本申请实施例中,写请求对应的用户标识可依据业务确定,如依据要更新的业务数据对应的用户确定用户标识。其中,用户标识(Identity,ID)为用户的唯一标识,可唯一表示一个用户。本申请实施例中业务数据为业务场景对应的数据,不同业务场景具有相应的业务数据。一个用户可在一个或多个业务场景下执行操作,一个业务场景也支持一个或多个用户执行操作。
从而针对写请求,无需在一个指定的中心区内处理,而是依据用户标识确定对应数据的存储区域,到相应的存储区域中执行处理,能够使各区域的资源得到合理的使用。
参照图1,示出了本申请实施例的一种数据访问处理的示意图。
在数据处理系统中包括n个存储区域,如图1中存储区域1-存储区域n,每个存储区域对应一个区域标识,该区域标识可为区域的唯一标识,如为0-(n-1)的区域编号等。本申请实施例可依据存储区域的数量设置取模的模值,其中模值指的是取模的模数,模值=存储区域的数量n。其中,为了便于执行取模运算,用户标识可为一串数字构成的数字串,或者该用户标识对应一个唯一的数字串,从而可将用户标识的数字串对n取模来确定存储区域。
在步骤102中接收写请求。依据该写请求确定用户标识,例如从写请求的携带参数中获取用户标识,又如依据写请求的携带参数映射得到用户标识等。例如对于点赞业务,写请求为写入点赞数据,如写入A用户为B用户的点赞,则可将点赞数据所属的B用户确定为目标用户,确定该目标用户的用户标识,则该用户标识为业务数据所属目标用户的用户标识。
然后在步骤104中依据用户标识确定对应的目标存储区域。其中,可以获取设定模值,然后将用户标识按照该设定模值进行取模运算,得到对应的取模结果,然后可依据该取模结果查询取模结果和存储区域的映射关系,从而确定出该用户标识对应的目标存储区域。
然后在步骤106中访问该目标存储区域,对所述用户标识对应的业务数据进行更新。在该目标存储区域中确定写请求对应的业务,并对该业务对对应的业务数据进行更新。例如业务为对用户的消息进行点赞操作,则可对应写请求为写入点赞数据,查询到用户的目标存储区域后,可在该目标存储区域中对该用户的点赞数量+1。其中,点赞表征对于该用户的信息的反馈,如同意该信息、觉得信息写得好,或者已阅读该信息等。
本申请实施例中,对于取模结果和存储区域的映射关系可存储于多层嵌套的哈希表中,基于该多层嵌套的哈希表能够快速的进行取模运算并查询取模结果对应的存储区域。
以两层嵌套的哈希表为例,一种结构示例如图2所示,假设数据系统中具有4个存储区域,区域标识分别为A、B、C和D,则模值为4。在该哈希表中,包括第一层表项和第二层表项,第1个第一层表项用于确定存储区域的区域标识,在该表项中,关键词key为key1,索引值value指向第二层表项;该第二层表项用于存储取模结果和存储区域的对应关系,在该表项中关键词key为取模结果,索引值value为区域标识,因此可以将取模结果作为关键词查询对应的区域标识作为索引值;第2个第一层表项用于确定取模的模值,在该表项中关键词key为key2,索引值value为取模的模值,从而通过key2可查询到模值。本申请实施例中key1、key2等均用于区分不同的关键词,与操作的先后顺序无关,具体处理过程可依据需求确定。
在一个可选实施例中,所述将所述用户标识按照设定模值进行取模运算,得到对应的取模结果,包括:在哈希表的第一层表项中按照第一关键词查询所述设定模值;将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。可以确定出查询模值所需的第一关键词,然后在哈希表的第一层表项中,以所述第一关键词为key,查询对应的value作为设定模值,如图2中依据key2确定设定模值为4,然后将该用户标识按照设定模值进行取模运算,得到对应的取模结果。例如用户标识为12345,则12345对4取模,得到取模结果为1。
在另一个可选实施例中,所述按照取模结果查询对应的存储区域,包括:在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项,所述第二层表项用于存储取模结果和存储区域的映射关系;以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。确定进行取模结果和存储区域的映射关系查询的第二关键词,可在哈希表的第一层表项中以第二关键词为key进行查询,如依据key进行查询,得到相应的value为指向第二层表项的指针,依据该指针可确定第二层表项,然后在第二层表项中将取模结果作为key(称为第三关键词)进行查询,确定对应的value为区域标识,从而确定出对应的目标存储区域。如图2中依据key1确定指向的第二层表项,然后依据取模结果1确定对应的区域标识B,确定目标存储区域为区域B。
上述实施例以两层嵌套为例,实际处理中还可能使用多于两层嵌套的哈希表,例如系统中存储分区包括多层分区,则可通过多于两层嵌套的哈希表查询,本申请实施例对此不作限制。
本申请实施例中,通过区域访问的方式进行数据请求的处理,其中,针对写请求在用户标识对应存储区域内执行。接收该写请求的存储区域为本区域,在确定出处理该写请求的目标存储区域后,若本区域为所述目标存储区域,则在本区域内可以直接对所述用户标识对应的业务数据进行更新;若本区域不为所述目标存储区域,则可以访问所述目标存储区域,如将写请求转发给所述目标存储区域,然后在目标存储区域内对所述用户标识对应的业务数据进行更新。
本申请实施例中,所述对所述用户标识对应的业务数据进行更新,包括:对所述用户标识对应的业务数据进行累加。其中,业务数据可包括数值类的数据,例如计数值等,因此针对业务数据,在接收到写请求后,可在该用户标识对应存储区域中查询业务数据,然后依据写请求对该业务数据进行累加,如累加投票、点赞的计数值等。从而对于数据的写请求在该用户标识对应的存储区域内执行,使得写操作能够分布在不同的存储区域执行,合理利用各个存储区域的资源。
参照图3,示出了本申请的一种数据访问处理方法实施例的步骤流程图。
步骤302,接收写请求,依据所述写请求确定用户标识。
通过区域访问的方式进行数据请求的处理,因此对于数据请求可先就近选择用户所在的区域机房进行访问处理。在接收到数据请求后,对于写请求可确定用户标识,例如从写请求的携带参数中获取用户标识,又如依据写请求的携带参数映射得到用户标识等。
步骤304,依据所述用户标识的取模结果,确定对应的目标存储区域。
然后可以按照用户标识进行取模运算,得到取模结果,再依据取模结果确定目标存储区域。其中,依据所述用户标识的取模结果,确定对应的目标存储区域,包括:将所述用户标识按照设定模值进行取模运算,得到对应的取模结果;按照取模结果查询对应的目标存储区域。可以获取设定模值,然后将用户标识按照该设定模值进行取模运算,得到对应的取模结果,然后可依据该取模结果查询取模结果和存储区域的映射关系,从而确定出该用户标识对应的目标存储区域。
步骤306,在所述目标存储区域中对所述用户标识对应的业务数据进行更新。
在该目标存储区域中确定写请求对应的业务,并对该业务对对应的业务数据进行更新。例如业务为从多个对象中选择目标对象进行投票,则可对应写请求为写入投票对象,查询到该用户对应写操作的目标存储区域后,可在该目标存储区域中对该对应对象的投票数量+1。其中,投票表征对于该选择该项目对应的对象。
综上,写操作在用户标识对应存储区域内执行,因此在接收到写请求后,可确定该写请求对应的用户标识,依据所述用户标识的取模结果,确定对应的目标存储区域,从而在数据对应的目标存储区域内对用户标识对应的业务数据进行更新,写请求在数据的目标存储区域内进行处理,不会集中占用一个区域的资源,而是使各区域的资源得到合理的使用。
参照图4,示出了本申请的另一种数据访问处理方法实施例的步骤流程图。
步骤402,接收写请求,依据所述写请求确定用户标识。
通过区域访问的方式进行数据请求的处理,因此对于数据请求可先就近选择用户所在的区域机房进行访问处理。在接收到数据请求后,可基于该写请求确定用户标识。系统对于写请求的处理方式是在用户标识对应的存储区域内进行数据的写入,因此该用户标识为业务数据所属目标用户的用户标识,从而后续能够对业务数据进行更新。
本申请实施例中,为了便于确定目标存储区域,可以将存储区域的索引按照多层嵌套的哈希表存储,从而通过第一层确定出模值计算出取模结果,并能够指向第二层的模结果和存储区域的映射关系,依据取模结果确定出目标存储区域。
步骤404,在哈希表的第一层表项中按照第一关键词查询所述设定模值。
步骤406,将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
确定查询的第一关键词,该第一关键词用于进行模值的查询,从而在哈希表中可通过第一关键词查询哈希表的第一层表项,获取对应的索引值作为设定模值。然后将用户标识按照该设定模值进行取模运算,得到取模结果。
步骤408,在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项。
确定查询的第二关键词,该第二关键词用于进行映射关系的查询,可采用第二关键词查询哈希表的第一层表项,获取到对应的索引值为指向第二层表项的信息,如指向第二层表项的指针等。
步骤410,以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。
第二层表项中存储了取模结果和存储区域的映射关系,其中,以取模结果为关键词,以存储区域的区域标识为索引值。从而可以将计算得到的取模结果为第三关键词查询第二层表项,得到索引值为区域标识,该区域标识即为目标存储区域的区域标识。
步骤412,判断本区域是否为所述目标存储区域。
接收该写请求的存储区域为本区域,可获取本区域的区域标识,将本区域的区域标识和目标存储区域的区域标识进行匹配,若匹配则本区域为所述目标存储区域,否则本区域不为所述目标存储区域。
若是,执行步骤414;若否,执行步骤416。
步骤414,在本区域内对所述用户标识对应的业务数据进行更新。
本区域作为目标存储区域,可直接执行该写请求所需的写操作,可确定写请求对应的业务数据,并依据写请求对该业务数据进行更新。
步骤416,访问所述目标存储区域,对所述用户标识对应的业务数据进行更新。
若本区域不为所述目标存储区域,则访问所述目标存储区域,将写请求路由到该目标存储区域中,然后在目标存储区域中确定写请求对应的业务数据,并依据写请求对该业务数据进行更新。
在一个示例中结合图1、2进行论述,假设在社交网络的页面中,用户U1(用户标识8000)给用户U2(用户标识8001)发的一条消息XX点赞,从而生成针对用户U2的消息XX点赞的写请求。该写请求会基于用户U1的位置,就近路由给存储区域A,则存储区域A为该写请求的本区域,针对用户U2的消息进行处理,则确定目标用户标识为U2的用户标识8001。依据第一关键词key2查询哈希表的第一层表项,对应得到设定模值为4,对8001按照4取模,得到取模结果为1;依据第二关键词key1查询哈希表的第一层表项,对应可指向第二层表项,依据取模结果为1查询第二层表项,得到目标存储区域的区域标识为B,则将存储区域B作为目标存储区域,本区域为存储区域A,则可将该写请求路由到存储区域B,然后在存储区域B中确定该用户U2的消息XX,将点赞数量+1。
在另一个示例中结合图1、2进行论述,假设在社交网络的页面中,用户U1(用户标识8000)给用户U3(用户标识8004)发的一条投票消息XXXX投票,从而生成针对用户U3的投票消息XXXX进行投票的写请求。该写请求会基于用户U1的位置,就近路由给存储区域A,则存储区域A为该写请求的本区域,针对用户U3的消息进行处理,则确定目标用户标识为U3的用户标识8004。依据第一关键词key2查询哈希表的第一层表项,对应得到设定模值为4,对8004按照4取模,得到取模结果为0;依据第二关键词key1查询哈希表的第一层表项,对应可指向第二层表项,依据取模结果为0查询第二层表项,得到目标存储区域的区域标识为A,则将存储区域A作为目标存储区域,本区域即为目标存储区域,则确定该用户U3的投票消息XXXX,将选择的投票项目对应的投票数量+1。
从而基于区域访问方式能够降低了网络延迟,提升了用户体验,在此基础上针对区域访问的并发写请求,可针对用户标识确定执行写操作的存储区域,从而均衡流量分配且能够是各个存储区域的计算资源都能得到有效利用。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
在上述实施例的基础上,本实施例还提供了一种数据访问处理装置,应用于服务器等电子设备中。
参照图5,示出了本申请一种数据访问处理装置实施例的结构框图,具体可以包括如下模块:
接收模块502,用于接收写请求,依据所述写请求确定用户标识。
区域确定模块504,用于依据所述用户标识的取模结果,确定对应的目标存储区域。
数据更新模块506,用于在所述目标存储区域中对所述用户标识对应的业务数据进行更新
综上,写操作在用户标识对应存储区域内执行,因此在接收到写请求后,可确定该写请求对应的用户标识,依据所述用户标识的取模结果,确定对应的目标存储区域,从而在数据对应的目标存储区域内对用户标识对应的业务数据进行更新,写请求在数据的目标存储区域内进行处理,不会集中占用一个区域的资源,而是使各区域的资源得到合理的使用。
参照图6,示出了本申请另一种数据访问处理装置实施例的结构框图,具体可以包括如下模块:
接收模块502,用于接收写请求,依据所述写请求确定用户标识。
区域确定模块504,用于依据所述用户标识的取模结果,确定对应的目标存储区域。
数据更新模块506,用于在所述目标存储区域中对所述用户标识对应的业务数据进行更新
所述区域确定模块504,包括:取模处理子模块5042和区域查询子模块5044,其中:
取模处理子模块5042,用于将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
区域查询子模块5044,用于按照取模结果查询对应的目标存储区域。
所述取模处理子模块5042,用于在哈希表的第一层表项中按照第一关键词查询所述设定模值;将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
所述区域查询子模块5044,用于在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项,所述第二层表项用于存储取模结果和存储区域的映射关系;以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。
所述取模结果和所述存储区域的映射关系存储于多层嵌套的哈希表中。
所述数据更新模块506,用于判断本区域是否为所述目标存储区域;若本区域为所述目标存储区域,则在本区域内对所述用户标识对应的业务数据进行更新;若本区域不为所述目标存储区域,则访问所述目标存储区域,对所述用户标识对应的业务数据进行更新。
所述数据更新模块506,用于对所述用户标识对应的业务数据进行累加。
应用于投票业务和/或点赞业务。
从而基于区域访问方式能够降低了网络延迟,提升了用户体验,在此基础上针对区域访问的并发写请求,可针对用户标识确定执行写操作的存储区域,从而均衡流量分配且能够是各个存储区域的计算资源都能得到有效利用。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例中各方法步骤的指令(instructions)。
本申请实施例提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。本申请实施例中,所述电子设备包括服务器(集群)、终端设备等。
本公开的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括服务器(集群)、终端设备等电子设备。图7示意性地示出了可被用于实现本申请中所述的各个实施例的示例性装置700。
对于一个实施例,图7示出了示例性装置700,该装置具有一个或多个处理器702、被耦合到(一个或多个)处理器702中的至少一个的控制模块(芯片组)704、被耦合到控制模块704的存储器706、被耦合到控制模块704的非易失性存储器(NVM)/存储设备708、被耦合到控制模块704的一个或多个输入/输出设备710,以及被耦合到控制模块706的网络接口712。
处理器702可包括一个或多个单核或多核处理器,处理器702可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置700能够作为本申请实施例中所述服务器等设备。
在一些实施例中,装置700可包括具有指令714的一个或多个计算机可读介质(例如,存储器706或NVM/存储设备708)以及与该一个或多个计算机可读介质相合并被配置为执行指令714以实现模块从而执行本公开中所述的动作的一个或多个处理器702。
对于一个实施例,控制模块704可包括任意适当的接口控制器,以向(一个或多个)处理器702中的至少一个和/或与控制模块704通信的任意适当的设备或组件提供任意适当的接口。
控制模块704可包括存储器控制器模块,以向存储器706提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
存储器706可被用于例如为装置700加载和存储数据和/或指令714。对于一个实施例,存储器706可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,存储器706可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM)。
对于一个实施例,控制模块704可包括一个或多个输入/输出控制器,以向NVM/存储设备708及(一个或多个)输入/输出设备710提供接口。
例如,NVM/存储设备708可被用于存储数据和/或指令714。NVM/存储设备708可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD)、一个或多个光盘(CD)驱动器和/或一个或多个数字通用光盘(DVD)驱动器)。
NVM/存储设备708可包括在物理上作为装置700被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如,NVM/存储设备708可通过网络经由(一个或多个)输入/输出设备710进行访问。
(一个或多个)输入/输出设备710可为装置700提供接口以与任意其他适当的设备通信,输入/输出设备710可以包括通信组件、音频组件、传感器组件等。网络接口712可为装置700提供接口以通过一个或多个网络通信,装置700可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi、2G、3G、4G等,或它们的组合进行无线通信。
对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器(例如,存储器控制器模块)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器的逻辑封装在一起以形成系统级封装(SiP)。对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(SoC)。
在各个实施例中,装置700可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置700可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置700包括一个或多个摄像机、键盘、液晶显示器(LCD)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC)和扬声器。
本申请实施例提供了一种服务器,包括:一个或多个处理器;和,其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如本申请实施例中一个或多个所述的设备间通信方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种数据访问处理方法、一种数据访问处理装置、一种电子设备和一种存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (18)
1.一种数据访问处理方法,其特征在于,所述的方法包括:
接收写请求,依据所述写请求确定用户标识;
依据所述用户标识的取模结果,确定对应的目标存储区域;
在所述目标存储区域中对所述用户标识对应的业务数据进行更新。
2.根据权利要求1所述的方法,其特征在于,所述依据所述用户标识的取模结果,确定对应的目标存储区域,包括:
将所述用户标识按照设定模值进行取模运算,得到对应的取模结果;
按照取模结果查询对应的目标存储区域。
3.根据权利要求2所述的方法,其特征在于,所述将所述用户标识按照设定模值进行取模运算,得到对应的取模结果,包括:
在哈希表的第一层表项中按照第一关键词查询所述设定模值;
将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
4.根据权利要求2所述的方法,其特征在于,所述按照取模结果查询对应的目标存储区域,包括:
在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项,所述第二层表项用于存储取模结果和存储区域的映射关系;
以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。
5.根据权利要求1所述的方法,其特征在于,所述取模结果和所述存储区域的映射关系存储于多层嵌套的哈希表中。
6.根据权利要求1所述的方法,其特征在于,所述在所述目标存储区域中对所述用户标识对应的业务数据进行更新,包括:
判断本区域是否为所述目标存储区域;
若本区域为所述目标存储区域,则在本区域内对所述用户标识对应的业务数据进行更新;
若本区域不为所述目标存储区域,则访问所述目标存储区域,对所述用户标识对应的业务数据进行更新。
7.根据权利要求1或6所述的方法,其特征在于,所述对所述用户标识对应的业务数据进行更新,包括:
对所述用户标识对应的业务数据进行累加。
8.根据权利要求7所述的方法,其特征在于,应用于投票业务和/或点赞业务。
9.一种数据访问处理装置,其特征在于,所述的装置包括:
接收模块,用于接收写请求,依据所述写请求确定用户标识;
区域确定模块,用于依据所述用户标识的取模结果,确定对应的目标存储区域;
数据更新模块,用于在所述目标存储区域中对所述用户标识对应的业务数据进行更新。
10.根据权利要求9所述的装置,其特征在于,所述区域确定模块,包括:
取模处理子模块,用于将所述用户标识按照设定模值进行取模运算,得到对应的取模结果;
区域查询子模块,用于按照取模结果查询对应的目标存储区域。
11.根据权利要求10所述的装置,其特征在于,
所述取模处理子模块,用于在哈希表的第一层表项中按照第一关键词查询所述设定模值;将所述用户标识按照设定模值进行取模运算,得到对应的取模结果。
12.根据权利要求10所述的装置,其特征在于,
所述区域查询子模块,用于在所述哈希表的第一层表项中按照第二关键词进行查询,确定第二层表项,所述第二层表项用于存储取模结果和存储区域的映射关系;以所述取模结果为第三关键词查询所述第二层表项,确定对应的目标存储区域。
13.根据权利要求9所述的装置,其特征在于,所述取模结果和所述存储区域的映射关系存储于多层嵌套的哈希表中。
14.根据权利要求9所述的装置,其特征在于,
所述数据更新模块,用于判断本区域是否为所述目标存储区域;若本区域为所述目标存储区域,则在本区域内对所述用户标识对应的业务数据进行更新;若本区域不为所述目标存储区域,则访问所述目标存储区域,对所述用户标识对应的业务数据进行更新。
15.根据权利要求9或14所述的装置,其特征在于,
所述数据更新模块,用于对所述用户标识对应的业务数据进行累加。
16.根据权利要求15所述的装置,其特征在于,应用于投票业务和/或点赞业务。
17.一种电子设备,其特征在于,包括:
处理器;和
存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如权利要求1-8中一个或多个所述的数据访问处理方法。
18.一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如权利要求1-8中一个或多个所述的数据访问处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810937242.1A CN110837499B (zh) | 2018-08-16 | 2018-08-16 | 数据访问处理方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810937242.1A CN110837499B (zh) | 2018-08-16 | 2018-08-16 | 数据访问处理方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110837499A true CN110837499A (zh) | 2020-02-25 |
CN110837499B CN110837499B (zh) | 2023-08-22 |
Family
ID=69573402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810937242.1A Active CN110837499B (zh) | 2018-08-16 | 2018-08-16 | 数据访问处理方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110837499B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312414A (zh) * | 2020-07-30 | 2021-08-27 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、设备和存储介质 |
CN114844951A (zh) * | 2022-04-22 | 2022-08-02 | 百果园技术(新加坡)有限公司 | 请求处理方法、系统、设备、存储介质及产品 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050251511A1 (en) * | 2004-05-07 | 2005-11-10 | Shrikanth Shankar | Optimizing execution of a database query by using the partitioning schema of a partitioned object to select a subset of partitions from another partitioned object |
WO2014101894A1 (zh) * | 2012-12-31 | 2014-07-03 | 华为技术有限公司 | 一种确定缓存策略的方法及设备 |
CN105094710A (zh) * | 2015-09-06 | 2015-11-25 | 国电南瑞科技股份有限公司 | 基于哈希表的单进程动态存储管理方法 |
CN105447023A (zh) * | 2014-08-25 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 业务标识生成方法和装置 |
CN105612503A (zh) * | 2013-08-09 | 2016-05-25 | 桑迪士克科技股份有限公司 | 持久性数据结构 |
WO2017166744A1 (zh) * | 2016-04-01 | 2017-10-05 | 乐视控股(北京)有限公司 | 移动终端会员服务数据交互方法、装置和电子设备 |
CN107508892A (zh) * | 2017-08-29 | 2017-12-22 | 努比亚技术有限公司 | 一种页面访问方法、服务器及计算机可读存储介质 |
CN108196796A (zh) * | 2017-12-29 | 2018-06-22 | 暴风集团股份有限公司 | 一种数据处理的方法、装置、电子设备、程序和介质 |
-
2018
- 2018-08-16 CN CN201810937242.1A patent/CN110837499B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050251511A1 (en) * | 2004-05-07 | 2005-11-10 | Shrikanth Shankar | Optimizing execution of a database query by using the partitioning schema of a partitioned object to select a subset of partitions from another partitioned object |
WO2014101894A1 (zh) * | 2012-12-31 | 2014-07-03 | 华为技术有限公司 | 一种确定缓存策略的方法及设备 |
CN105612503A (zh) * | 2013-08-09 | 2016-05-25 | 桑迪士克科技股份有限公司 | 持久性数据结构 |
CN105447023A (zh) * | 2014-08-25 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 业务标识生成方法和装置 |
CN105094710A (zh) * | 2015-09-06 | 2015-11-25 | 国电南瑞科技股份有限公司 | 基于哈希表的单进程动态存储管理方法 |
WO2017166744A1 (zh) * | 2016-04-01 | 2017-10-05 | 乐视控股(北京)有限公司 | 移动终端会员服务数据交互方法、装置和电子设备 |
CN107508892A (zh) * | 2017-08-29 | 2017-12-22 | 努比亚技术有限公司 | 一种页面访问方法、服务器及计算机可读存储介质 |
CN108196796A (zh) * | 2017-12-29 | 2018-06-22 | 暴风集团股份有限公司 | 一种数据处理的方法、装置、电子设备、程序和介质 |
Non-Patent Citations (2)
Title |
---|
CENGIZ KARAKOYUNLU等: ""Exploiting user metadata for energy-aware node allocation in a cloud storage system"", 《JOURNAL OF COMPUTER AND SYSTEM SCIENCES》, vol. 82, no. 2, pages 282 - 309, XP029318761, DOI: 10.1016/j.jcss.2015.09.003 * |
张伟;许海洋;周百顺;: "多进程共享的高效哈希表", 计算机工程与设计, no. 05 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312414A (zh) * | 2020-07-30 | 2021-08-27 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、设备和存储介质 |
CN113312414B (zh) * | 2020-07-30 | 2023-12-26 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、设备和存储介质 |
CN114844951A (zh) * | 2022-04-22 | 2022-08-02 | 百果园技术(新加坡)有限公司 | 请求处理方法、系统、设备、存储介质及产品 |
CN114844951B (zh) * | 2022-04-22 | 2024-03-19 | 百果园技术(新加坡)有限公司 | 请求处理方法、系统、设备、存储介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN110837499B (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2701124C2 (ru) | Составные функции разбиения | |
CN107798038B (zh) | 数据响应方法及数据响应设备 | |
CN104090897B (zh) | 访问元数据的方法、服务器及系统 | |
CN109885786B (zh) | 数据缓存处理方法、装置、电子设备及可读存储介质 | |
US20160277537A1 (en) | Method and device for the management of applications | |
US20170052979A1 (en) | Input/Output (IO) Request Processing Method and File Server | |
CN110837499B (zh) | 数据访问处理方法、装置、电子设备和存储介质 | |
CN110728379A (zh) | 配置信息管理方法及装置、电子设备和非暂态存储介质 | |
CN114116656B (zh) | 数据处理方法及相关装置 | |
CN113849524B (zh) | 一种数据处理方法及装置 | |
CN113296977B (zh) | 一种消息处理方法及装置 | |
US20180196886A1 (en) | Devices and methods for implementing dynamic collaborative workflow systems | |
CN113849482A (zh) | 一种数据迁移方法、装置及电子设备 | |
CN111147556A (zh) | 一种负载均衡方法、装置、设备及存储介质 | |
CN117041980B (zh) | 一种网元管理方法、装置、存储介质及电子设备 | |
US20130339502A1 (en) | Techniques to manage transitions between private and public networks | |
CN117453759B (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN117271529B (zh) | 索引处理方法、设备及存储介质 | |
CN113268279B (zh) | 一种数据处理方法及装置 | |
CN117725098A (zh) | 海量用户多渠道数据管理方法及电子设备 | |
CN117094023A (zh) | 隐私号码的绑定关系冲突校验方法及相关设备 | |
CN116226199A (zh) | 单元化架构下业务数据处理方法、装置、设备及介质 | |
CN117931058A (zh) | 数据存储和查询方法、装置、电子设备和存储介质 | |
CN116483930A (zh) | 数据处理系统、方法和装置 | |
CN116881318A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240226 Address after: 51 Belarusian Road, Singapore Patentee after: Alibaba Singapore Holdings Ltd. Country or region after: Singapore Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands Patentee before: ALIBABA GROUP HOLDING Ltd. Country or region before: Cayman Islands |
|
TR01 | Transfer of patent right |