CN103634374A - 一种并发访问请求的处理方法及装置 - Google Patents

一种并发访问请求的处理方法及装置 Download PDF

Info

Publication number
CN103634374A
CN103634374A CN201310549721.3A CN201310549721A CN103634374A CN 103634374 A CN103634374 A CN 103634374A CN 201310549721 A CN201310549721 A CN 201310549721A CN 103634374 A CN103634374 A CN 103634374A
Authority
CN
China
Prior art keywords
access
concurrency
engine
agent
hash
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
Application number
CN201310549721.3A
Other languages
English (en)
Other versions
CN103634374B (zh
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310549721.3A priority Critical patent/CN103634374B/zh
Publication of CN103634374A publication Critical patent/CN103634374A/zh
Priority to PCT/CN2014/075558 priority patent/WO2015067004A1/zh
Application granted granted Critical
Publication of CN103634374B publication Critical patent/CN103634374B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches

Landscapes

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

Abstract

本发明公开了一种并发访问请求的处理方法及装置,以避免并发访问冲突。本发明中接收对同一数据资源的至少两个并发访问请求,并对所述至少两个并发访问请求进行排序;依照排序后的并发访问请求,依次访问所述同一数据资源。通过本发明能够保证同一时刻只有一个请求访问对应的数据资源,进而能够避免并发访问冲突。

Description

一种并发访问请求的处理方法及装置
技术领域
本发明涉及计算机数据存储技术领域,尤其涉及一种并发访问请求的处理方法及装置。
背景技术
基于HTTP(Hyper Text Transfer Protocol,超文本传输协议)的对象存储技术迅速发展,而以容器Container和对象Object的两层业务模型为基础的对象存储技术,应用越来越广泛。
容器可以理解成一个特殊的顶层目录,对象可以是一个文件或者一个目录,对象隶属于容器。通常用户数据以对象方式、采用上层应用在底层分布式存储引擎上面建立对象存储的技术架构,存储于容器中。而容器中对象的个数是不加限制的,当容器内对象非常多时,会存在一个非常庞大的容器与对象之间的索引关系表。普通的单机数据库已经无法满足存储要求,因此一般选择基于弱一致性的存储引擎采用B树结构进行维护。
图1所示为一种简易的B树结构;图2所示为基于底层分布式存储引擎架设的对象存储系统。图1中B树结构的子数据块N1、N2、N3......可存储于图2中分布式存储引擎中的子节点1、2、3......中的一个或多个上,例如可以将子数据块N1存储在子节点2、子节点4和子节点6上。向B树结构中写入记录时,一般采用“读取-修改-写入”的过程。在图2中基于底层分布式存储引擎架设的对象存储系统上,则体现为客户端对数据资源发起访问请求,当访问得到数据资源后,对数据资源进行修改后再写回访问存储引擎中。该发起访问请求过程为:基于HTTP协议的客户端发送访问数据资源的访问请求,上层应用从接收到的访问请求中分析得出相关的容器和对象的元数据以及需要访问的数据资源,继而由上层应用对应的引擎访问代理向底层的分布式存储引擎请求数据资源。
在进行对象存储时,当存在多个客户端同时向同一容器内添加对象时,会造成B树结构中的子数据块成为热点。例如可能存在多个客户端同时需要将子数据块N1写入B树中,此时则会导致B树结构中的子数据块N1成为热点。体现在图2中的基于底层分布式存储引擎架设的对象存储系统上,则为多个客户端发起并发访问请求,使得多个引擎访问代理同时请求访问存储引擎中存储子数据块N1的子节点,造成底层存储引擎的并发访问冲突。如图3所示,假如子数据块N1存储在子节点6上,则上层应用APP1、APP2和APP3将分别通过各自对应的引擎访问代理同时请求访问子节点6。
基于弱一致性的存储引擎采用B树结构进行维护索引列表时,当底层存储引擎发生并发访问冲突时,底层分布式存储引擎会向上层应用返回数据冲突响应,并由上层应用根据具体的业务来选择重新写入。然而当有多个并发冲突时,则会影响B树结构的写入性能,甚至导致无法完成数据的重新写入,最终导致容器内的对象丢失。
因此,在基于底层分布式存储引擎架设的对象存储系统中,对于成为热点的数据资源进行并发访问请求时,如何避免并发访问冲突至关重要。
发明内容
本发明实施例提供一种并发访问请求的处理方法及装置,以避免并发访问冲突。
第一方面,提供一种并发访问请求的处理方法,包括:
接收对同一数据资源的至少两个并发访问请求,并对所述至少两个并发访问请求进行排序;
依照排序后的并发访问请求,依次访问所述同一数据资源。
结合第一方面,在第一种可能的实现方式中,对所述并发访问请求进行排序,包括:
在一个引擎访问代理中,对所述至少两个并发访问请求进行排序。
结合第一方面,在第二种可能的实现方式中,所述对所述至少两个并发访问请求进行排序,包括:
将存储引擎上的每个数据资源对应哈希键值,构成哈希空间;
划分哈希空间为N个子哈希空间,其中N为存储系统中引擎访问代理的数目;
将N个子哈希空间分配给N个引擎访问代理,使每一引擎访问代理被分配一个子哈希空间,且不同引擎访问代理被分配的子哈希空间不同;
根据所述至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,确定对所述至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理;
将不处于所述排序引擎访问代理上的访问请求,路由到所述排序引擎访问代理上,由所述排序引擎访问代理,对所述至少两个并发访问请求进行排序。
结合第一方面的第二种可能实现方式,在第三种可能的实现方式中,划分哈希空间为N个子哈希空间之后,该方法还包括:
监测引擎访问代理的数目,当引擎访问代理的数目发生变化时,重新划分哈希空间。
结合第一方面的第一种可能实现方式,在第四种可能的实现方式中,在对所述并发访问请求进行排序的引擎访问代理中,缓存所述同一数据资源。
第二方面,提供一种并发访问请求的处理装置,包括接收单元、排序单元和访问单元,其中,
所述接收单元,用于接收对同一数据资源的至少两个并发访问请求,并向所述排序单元传输所述至少两个并发访问请求;
所述排序单元,用于接收所述接收单元传输的所述至少两个并发访问请求,并对所述至少两个并发访问请求进行排序,将排序后的并发访问请求向所述访问单元传输;
所述访问单元,用于接收所述排序单元传输的排序后的并发访问请求,并依照排序后的并发访问请求,依次访问所述同一数据资源。
结合第二方面,在第一种可能的实现方式中,所述排序单元,具体用于:
在一个引擎访问代理中,对所述至少两个并发访问请求进行排序。
结合第二方面,在第二种可能的实现方式中,所述排序单元,具体用于:
将存储引擎上的每个数据资源对应哈希键值,构成哈希空间;
划分哈希空间为N个子哈希空间,其中N为存储系统中引擎访问代理的数目;
将N个子哈希空间分配给N个引擎访问代理,使每一引擎访问代理被分配一个子哈希空间,且不同引擎访问代理被分配的子哈希空间不同;
根据所述至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,确定对所述至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理;
将不处于所述排序引擎访问代理上的访问请求,路由到所述排序引擎访问代理上,由所述排序引擎访问代理,对所述至少两个并发访问请求进行排序。
结合第二方面的第二种可能实现方式,在第三种可能的实现方式中,所述排序单元,还用于:
监测引擎访问代理的数目,当引擎访问代理的数目发生变化时,重新划分哈希空间。
结合第二方面的第一种可能实现方式,在第四种可能的实现方式中,还包括缓存单元,其中,
所述缓存单元,用于在对所述并发访问请求进行排序的引擎访问代理中,缓存所述同一数据资源。
本发明第一方面提供的并发访问请求处理方法和第二方面提供的并发访问请求处理装置,当接收到对同一数据资源的至少两个并发访问请求后,对该至少两个并发访问请求进行排序,依照排序后的并发访问请求,依次访问同一数据资源,能够保证同一时刻只有一个请求访问对应的数据资源,进而能够避免并发访问冲突。
附图说明
图1为现有技术中基于B树结构的索引表组织结构示意图;
图2为现有技术中基于底层分布式存储引擎架设的对象存储系统构架示意图;
图3为现有技术中并发访问请求发生访问冲突示意图;
图4为本发明实施例中并发访问请求处理方法流程示意图;
图5为本发明实施例中并发访问请求排序方法流程图;
图6为本发明实施例中哈希空间划分示意图;
图7为本发明实施例中并发访问请求排序过程示意图;
图8为本发明实施例提供的并发访问请求处理装置结构示意图;
图9为本发明实施例提供的并发访问请求处理装置另一结构示意图;
图10为本发明实施例提供的控制器构成示意图;
图11为本发明实施例提供的控制器构成又一示意图;
图12为本发明实施例提供的控制器构成再一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。
基于底层分布式存储引擎架设的对象存储系统,不同客户端可能对同一数据资源发起并发访问请求,上层应用则会接收到同一数据资源的至少两个并发访问请求,该至少两个并发访问请求由不同的APP(上层应用)以及引擎访问代理进行处理。本发明实施例中在上层应用中对该至少两个并发访问请求进行处理,以保证同一时刻只有一个请求访问对应的数据资源,进而能够免并发访问冲突。
实施例一
本发明实施例一提供一种并发访问请求处理方法,如图4所示,包括:
S101:接收对同一数据资源的至少两个并发访问请求。
具体的,对于存在热点访问的数据资源,在基于底层分布式存储引擎架设的对象存储系统中,会由基于HTTP协议的不同客户端发起对该数据资源的访问请求,即对同一数据资源存在至少两个并发访问请求。上层应用接收该对同一数据资源的至少两个并发访问请求。
S102:对接收到的至少两个并发访问请求进行排序。
具体的,本发明实施例中对上层应用接收到的同一数据资源的至少两个并发访问请求进行排序,可以在对底层存储引擎请求数据资源的不同引擎访问代理上直接进行排序,也可将不同引擎访问代理上的访问请求路由到一个引擎访问代理上进行排序。本发明实施例优选将不同引擎访问代理上的访问请求路由到一个引擎访问代理上进行排序,使得在对并发访问请求进行排序时,无需不同引擎访问代理之间进行状态查询。
S103:依照排序后的并发访问请求,依次访问数据资源。
本发明实施例中,对访问同一数据资源的至少两个并发访问请求进行排序。依照排序后的并发访问请求,依次访问该数据资源,能够保证同一时刻只有一个请求访问该数据资源,进而能够避免并发访问冲突。
实施例二
本发明实施例二将结合实际应用对实施例一中涉及的并发访问请求处理方法进行详细说明。
对于以容器和对象的两层业务模型为基础的对象存储技术,当有不止一个客户端同时向一个容器内添加对象时,会导致索引关系表的子数据块数据成为热点,即存在不止一个访问请求。请求访问容器与对象之间的索引表,本发明实施例中将对同一索引表的并发访问请求进行排序,保证同一索引表同一时刻只有一个读写操作,避免并发访问冲突。
本发明实施例中对访问请求进行排序的过程进行详细说明,其他对并发访问请求的处理步骤可参考实施例一,在此不再赘述。
本发明实施例中在一个引擎访问代理中,对同一数据资源的至少两个并发访问请求进行排序,将不同引擎访问代理上的访问请求路由到一个引擎访问代理上进行排序,使得在对并发访问请求进行排序时,无需不同引擎访问代理之间进行状态查询。
本发明实施例,在一个引擎访问代理中,对至少两个并发访问请求进行排序的过程如图5所示,包括:
S201:将存储引擎上的每个数据资源对应哈希键值,构成哈希空间。
本发明实施例中,当存在不止一个访问请求,请求访问容器与对象之间的索引表时,根据各个上层应用之间统一的哈希算法对存储引擎上的数据资源进行哈希。每个数据资源对应哈希键值,构成哈希空间。哈希空间为一个相对上层应用APP的个数足够大的一维空间。
S202:划分S201中的哈希空间为N个子哈希空间。
本发明实施例中,划分的子哈希空间的数目与上层应用对应的引擎访问代理数目相同。若上层应用的数目为N,则将哈希空间划分为N份,得到N个子哈希空间,例如本发明实施例中上层应用包括APP1、APP2和APP3,则哈希空间划分过程示意图如图6所示。
进一步的,本发明实施例中进行哈希空间划分时,可采用等分方式进行划分,也可采用不等分方式进行划分,只要使得划分的子哈希空间数目与上层应用对应的引擎访问代理数目相同即可。例如,本发明实施例中上层应用的数目为N,若哈希空间能够等分为N份,则本发明实施例中可采用等分方式将哈希空间划分为N份,得到N个哈希空间相等的子哈希空间;若哈希空间不能够等分为N份,则本发明实施例中可采用不等分方式将哈希空间划分为N-1个哈希空间相等的子哈希空间,将剩余的哈希空间划分为1个子哈希空间,最终得到N个子哈希空间。
S203:将N个子哈希空间分配给N个引擎访问代理。
本发明实施例中可在上层应用的引擎访问代理之间建立简单的集群,为每一个引擎访问代理编号,为每个引擎访问代理自身的序号分配一段子哈希空间。将S202中划分得到的N个子哈希空间分配给N个引擎访问代理,每一引擎访问代理分配一个子哈希空间,且不同引擎访问代理分配的子哈希空间不同。
S204:确定至少两个请求访问的数据资源的哈希值,并根据分配给子引擎访问代理的子哈希空间,确定对至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理。
本发明实施例中对数据资源进行哈希后,每个数据资源对应一个哈希值,该哈希值归属于S202中划分得到的一个子哈希空间。而每个哈希空间被分配给一个引擎访问代理。故根据至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,则可确定对该至少两个并发访问请求进行排序的引擎访问代理。将该确定的引擎访问代理称之为排序引擎访问代理,通过该排序引擎访问代理对至少两个并发访问请求进行排序。
S205:将不处于排序引擎访问代理上的并发访问请求,转发到排序引擎访问代理上。
本发明实施例中每一个访问请求,都被发送至上层应用APP中,故不同的访问请求将处于不同的引擎访问代理上。本发明实施例中当在S204中确定了排序引擎访问代理后,则将不处于该确定的排序引擎访问代理上的访问请求路由到排序引擎访问代理上,由排序引擎访问代理,对路由到其上的所有并发访问请求进行排序。例如,当前有3个并发访问请求需要访问位于存储引擎子节点6上的数据资源,且存储引擎子节点6上的数据资源哈希后得到的哈希值,属于APP1对应的引擎访问代理。则将APP2和APP3分别对应的引擎访问代理上的访问请求路由到APP1对应的引擎访问代理上。由APP1对应的引擎访问代理对3个并发访问请求进行排序,如图7所示。
本发明实施例中,通过上述对并发访问请求的处理方式,将对同一容器的索引表的请求被路由到了同一个应用的引擎访问代理上进行排序处理,依照排序后的并发访问请求,依次访问索引表,能够确保没有访问冲突,从而避免了底层分布式存储引擎的数据冲突问题。
进一步的,本发明实施例中在S202划分子哈希空间后,监测引擎访问代理的数目。当引擎访问代理的数目发生变化时,重新划分哈希空间,以适应上层应用节点退出或新加入的情况。
更进一步的,由于对B树结构中索引表子数据块中的数据写入都是在上一次已完成数据的基础上进行的。故本发明实施例中,当采用一个引擎访问代理对并发访问请求进行排序时,可在该对并发访问请求进行排序的引擎访问代理中增加读写缓存,缓存数据资源,以提高对数据资源的访问速度。
实施例三
基于实施例一和实施例二提供的并发访问请求处理方法,本发明实施例提供一种并发访问请求处理装置,如图8所示,本发明实施例提供的并发访问请求处理装置,包括接收单元801、排序单元802和访问单元803,其中,
接收单元801,用于接收对同一数据资源的至少两个并发访问请求,并向排序单元802传输至少两个并发访问请求;
排序单元802,用于接收接收单元801传输的至少两个并发访问请求,并对至少两个并发访问请求进行排序,将排序后的并发访问请求向访问单元803传输;
访问单元803,用于接收排序单元802传输的排序后的并发访问请求,并依照排序后的并发访问请求,依次访问同一数据资源。
具体的,本发明实施例中排序单元802用于在一个引擎访问代理中,对至少两个并发访问请求进行排序。
其中,排序单元802,具体用于:
将存储引擎上的每个数据资源对应哈希键值,构成哈希空间;
划分哈希空间为N个子哈希空间,其中N为存储系统中引擎访问代理的数目;
将N个子哈希空间分配给N个引擎访问代理,使每一引擎访问代理被分配一个子哈希空间,且不同引擎访问代理被分配的子哈希空间不同;
根据至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,确定对至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理;
将不处于排序引擎访问代理上的访问请求,路由到排序引擎访问代理上,由排序引擎访问代理,对至少两个并发访问请求进行排序。
进一步的,本发明实施例中排序单元802,还用于:
监测引擎访问代理的数目,当引擎访问代理的数目发生变化时,重新划分哈希空间。
本发明实施例提供的并发访问请求处理装置,还包括缓存单元804,如图9所示,其中,缓存单元804,用于在对并发访问请求进行排序的引擎访问代理中,缓存同一数据资源。
本发明实施例提供的并发访问请求处理装置,当对同一数据资源存在至少两个并发访问请求时,对该至少两个并发访问请求进行排序,依照排序后的并发访问请求,依次访问该同一数据资源,能够保证同一时刻只有一个请求访问对应的数据资源,进而能够避免并发访问冲突。
本发明实施例提供的上述并发访问请求处理装置,可以是独立的部件,也可以是集成于其他部件中,例如本发明实施例提供的上述并发访问请求处理装置可以是引擎访问代理,也可以是集成于引擎访问代理内的新的部件。
需要说明的是,本发明实施例中的并发访问请求处理装置的各个模块/单元的功能实现以及交互方式可以进一步参照相关方法实施例的描述。
实施例四
基于本发明实施例提供的并发访问请求处理方法和装置,本发明实施例提供一种控制器,该控制器可应用于以容器和对象两层业务模型为基础的对象存储业务,如图10所示,该控制器包括:处理器1001和I/O接口1002,其中,
处理器1001,用于接收对同一数据资源的至少两个并发访问请求,并对接收到的上述至少两个并发访问请求进行排序,将排序后的并发访问请求向I/O接口1002传输;
I/O接口1002,用于接收处理器1001传输的排序后的并发访问请求,并将排序后的并发访问请求输出。
进一步的,处理器1001用于在一个引擎访问代理中,对至少两个并发访问请求进行排序。
其中,处理器1001具体用于:将存储引擎上的每个数据资源对应哈希键值,构成哈希空间;划分哈希空间为N个子哈希空间,其中N为引擎访问代理的数目;将N个子哈希空间分配给N个引擎访问代理,使每一引擎访问代理被分配一个子哈希空间,且不同引擎访问代理被分配的子哈希空间不同;根据至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,确定对至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理;将不处于排序引擎访问代理上的访问请求,路由到排序引擎访问代理上,由排序引擎访问代理,对至少两个并发访问请求进行排序。
进一步的,本发明实施例中控制器,还包括监测器1003,如图11所示,监测器1003监测引擎访问代理的数目,当引擎访问代理的数目发生变化时,向处理器1001发送重新划分哈希空间的指令。
更进一步的,本发明实施例中控制器还包括缓存器1004,如图12所示,缓存器1004用于在处理器1001对并发访问请求进行排序的引擎访问代理中,缓存同一数据资源。
本发明实施例提供的控制器,当对同一数据资源存在至少两个并发访问请求时,对该至少两个并发访问请求进行排序,依照排序后的并发访问请求,依次访问该同一数据资源,能够保证同一时刻只有一个请求访问对应的数据资源,进而能够避免并发访问冲突。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种并发访问请求的处理方法,其特征在于,包括:
接收对同一数据资源的至少两个并发访问请求,并对所述至少两个并发访问请求进行排序;
依照排序后的并发访问请求,依次访问所述同一数据资源。
2.如权利要求1所述的方法,其特征在于,对所述并发访问请求进行排序,包括:
在一个引擎访问代理中,对所述至少两个并发访问请求进行排序。
3.如权利要求1所述的方法,其特征在于,所述对所述至少两个并发访问请求进行排序,包括:
将存储引擎上的每个数据资源对应哈希键值,构成哈希空间;
划分哈希空间为N个子哈希空间,其中N为存储系统中引擎访问代理的数目;
将N个子哈希空间分配给N个引擎访问代理,使每一引擎访问代理被分配一个子哈希空间,且不同引擎访问代理被分配的子哈希空间不同;
根据所述至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,确定对所述至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理;
将不处于所述排序引擎访问代理上的访问请求,路由到所述排序引擎访问代理上,由所述排序引擎访问代理,对所述至少两个并发访问请求进行排序。
4.如权利要求3所述的方法,其特征在于,划分哈希空间为N个子哈希空间之后,该方法还包括:
监测引擎访问代理的数目,当引擎访问代理的数目发生变化时,重新划分哈希空间。
5.如权利要求2所述的方法,其特征在于,该方法还包括:
在对所述并发访问请求进行排序的引擎访问代理中,缓存所述同一数据资源。
6.一种并发访问请求的处理装置,其特征在于,包括接收单元、排序单元和访问单元,其中,
所述接收单元,用于接收对同一数据资源的至少两个并发访问请求,并向所述排序单元传输所述至少两个并发访问请求;
所述排序单元,用于接收所述接收单元传输的所述至少两个并发访问请求,并对所述至少两个并发访问请求进行排序,将排序后的并发访问请求向所述访问单元传输;
所述访问单元,用于接收所述排序单元传输的排序后的并发访问请求,并依照排序后的并发访问请求,依次访问所述同一数据资源。
7.如权利要求6所述的处理装置,其特征在于,所述排序单元,具体用于:
在一个引擎访问代理中,对所述至少两个并发访问请求进行排序。
8.如权利要求6所述的处理装置,其特征在于,所述排序单元,具体用于:
将存储引擎上的每个数据资源对应哈希键值,构成哈希空间;
划分哈希空间为N个子哈希空间,其中N为存储系统中引擎访问代理的数目;
将N个子哈希空间分配给N个引擎访问代理,使每一引擎访问代理被分配一个子哈希空间,且不同引擎访问代理被分配的子哈希空间不同;
根据所述至少两个并发访问请求访问的同一数据资源的哈希值所属的子哈希空间,确定对所述至少两个并发访问请求进行排序的引擎访问代理,得到排序引擎访问代理;
将不处于所述排序引擎访问代理上的访问请求,路由到所述排序引擎访问代理上,由所述排序引擎访问代理,对所述至少两个并发访问请求进行排序。
9.如权利要求8所述的处理装置,其特征在于,所述排序单元,还用于:
监测引擎访问代理的数目,当引擎访问代理的数目发生变化时,重新划分哈希空间。
10.如权利要求7所述的处理装置,其特征在于,还包括缓存单元,其中,所述缓存单元,用于在对所述并发访问请求进行排序的引擎访问代理中,缓存所述同一数据资源。
CN201310549721.3A 2013-11-07 2013-11-07 一种并发访问请求的处理方法及装置 Active CN103634374B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310549721.3A CN103634374B (zh) 2013-11-07 2013-11-07 一种并发访问请求的处理方法及装置
PCT/CN2014/075558 WO2015067004A1 (zh) 2013-11-07 2014-04-17 一种并发访问请求的处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310549721.3A CN103634374B (zh) 2013-11-07 2013-11-07 一种并发访问请求的处理方法及装置

Publications (2)

Publication Number Publication Date
CN103634374A true CN103634374A (zh) 2014-03-12
CN103634374B CN103634374B (zh) 2017-04-12

Family

ID=50214990

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310549721.3A Active CN103634374B (zh) 2013-11-07 2013-11-07 一种并发访问请求的处理方法及装置

Country Status (2)

Country Link
CN (1) CN103634374B (zh)
WO (1) WO2015067004A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015067004A1 (zh) * 2013-11-07 2015-05-14 华为技术有限公司 一种并发访问请求的处理方法及装置
CN105354328A (zh) * 2015-11-25 2016-02-24 南京莱斯信息技术股份有限公司 一种解决NoSQL数据库并发访问冲突的系统及方法
CN106649141A (zh) * 2016-11-02 2017-05-10 郑州云海信息技术有限公司 一种基于ceph的存储交互装置及存储系统
CN108733310A (zh) * 2017-04-17 2018-11-02 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机可读存储介质
CN111600940A (zh) * 2020-05-06 2020-08-28 中国银行股份有限公司 一种分布式会话管理方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101064604A (zh) * 2006-04-29 2007-10-31 西门子公司 远程访问方法、系统及设备
CN102204324A (zh) * 2011-04-27 2011-09-28 华为技术有限公司 提高移动互联网用户访问速度的方法及设备
CN102739440A (zh) * 2012-05-24 2012-10-17 大唐移动通信设备有限公司 一种硬件设备的访问方法及装置
CN102999377A (zh) * 2012-11-30 2013-03-27 北京东方通科技股份有限公司 服务并发访问控制方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2663920B1 (en) * 2011-01-11 2020-05-27 Hewlett-Packard Development Company, L.P. Concurrent request scheduling
CN103297456B (zh) * 2012-02-24 2016-09-28 阿里巴巴集团控股有限公司 一种分布式系统下共享资源的访问方法及分布式系统
CN103634374B (zh) * 2013-11-07 2017-04-12 华为技术有限公司 一种并发访问请求的处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101064604A (zh) * 2006-04-29 2007-10-31 西门子公司 远程访问方法、系统及设备
CN102204324A (zh) * 2011-04-27 2011-09-28 华为技术有限公司 提高移动互联网用户访问速度的方法及设备
CN102739440A (zh) * 2012-05-24 2012-10-17 大唐移动通信设备有限公司 一种硬件设备的访问方法及装置
CN102999377A (zh) * 2012-11-30 2013-03-27 北京东方通科技股份有限公司 服务并发访问控制方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
P.J. COURTOIS,*F. HEYMANS,ETC.,: ""Concurrent control with "Readers" and "Writers""", 《COMMUNICATIONS OF THE ACM》 *
王兆永,: ""面向大规模批量日志数据存储方法的研究"", 《中国优秀硕士学位论文全文数据库-信息科技辑 》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015067004A1 (zh) * 2013-11-07 2015-05-14 华为技术有限公司 一种并发访问请求的处理方法及装置
CN105354328A (zh) * 2015-11-25 2016-02-24 南京莱斯信息技术股份有限公司 一种解决NoSQL数据库并发访问冲突的系统及方法
CN106649141A (zh) * 2016-11-02 2017-05-10 郑州云海信息技术有限公司 一种基于ceph的存储交互装置及存储系统
CN106649141B (zh) * 2016-11-02 2019-10-18 郑州云海信息技术有限公司 一种基于ceph的存储交互装置及存储系统
CN108733310A (zh) * 2017-04-17 2018-11-02 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机可读存储介质
CN108733310B (zh) * 2017-04-17 2021-05-28 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机可读存储介质
US11099992B2 (en) 2017-04-17 2021-08-24 EMC IP Holding Company LLC Method, device and computer readable storage media for managing storage system
CN111600940A (zh) * 2020-05-06 2020-08-28 中国银行股份有限公司 一种分布式会话管理方法及系统
CN111600940B (zh) * 2020-05-06 2022-11-11 中国银行股份有限公司 一种分布式会话管理方法及系统

Also Published As

Publication number Publication date
CN103634374B (zh) 2017-04-12
WO2015067004A9 (zh) 2015-09-03
WO2015067004A1 (zh) 2015-05-14

Similar Documents

Publication Publication Date Title
CN107169083B (zh) 公安卡口海量车辆数据存储与检索方法及装置、电子设备
EP2932370B1 (en) System and method for performing a transaction in a massively parallel processing database
EP3058690B1 (en) System and method for creating a distributed transaction manager supporting repeatable read isolation level in a mpp database
US20160188594A1 (en) Resource management in a distributed computing environment
CN111105006B (zh) 一种深度学习网络训练系统及方法
CN105138679B (zh) 一种基于分布式缓存的数据处理系统及处理方法
CN103646073A (zh) 一种基于HBase表的条件查询优化方法
CN103634374A (zh) 一种并发访问请求的处理方法及装置
CN109063196A (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
US20170228422A1 (en) Flexible task scheduler for multiple parallel processing of database data
CN102779183B (zh) 数据查询的方法、设备及系统
Arfat et al. Big data for smart infrastructure design: Opportunities and challenges
CN103312624A (zh) 一种消息队列服务系统和方法
Gandomi et al. HybSMRP: a hybrid scheduling algorithm in Hadoop MapReduce framework
CN116450355A (zh) 一种多集群模型训练方法、装置、设备及介质
CN105786603A (zh) 一种基于分布式的高并发业务处理系统及方法
Silberstein et al. Pnuts in flight: Web-scale data serving at yahoo
Zhang et al. Oceanrt: Real-time analytics over large temporal data
CN116108057B (zh) 一种分布式数据库访问方法、装置、设备及存储介质
CN102760073B (zh) 一种任务调度方法、系统及装置
CN109614241A (zh) 基于Yarn队列实现多集群多租户资源隔离的方法及系统
CN109241194A (zh) 基于高性能集群分布的数据库系统的负载均衡方法及装置
Shabeera et al. Optimising virtual machine allocation in MapReduce cloud for improved data locality
Liu et al. KubFBS: A fine‐grained and balance‐aware scheduling system for deep learning tasks based on kubernetes
CN110347654B (zh) 一种上线集群特性的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant