CN110098945B - 应用于节点系统的数据处理方法及装置 - Google Patents
应用于节点系统的数据处理方法及装置 Download PDFInfo
- Publication number
- CN110098945B CN110098945B CN201810094902.4A CN201810094902A CN110098945B CN 110098945 B CN110098945 B CN 110098945B CN 201810094902 A CN201810094902 A CN 201810094902A CN 110098945 B CN110098945 B CN 110098945B
- Authority
- CN
- China
- Prior art keywords
- data
- node
- state
- request
- node controller
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Abstract
本申请实施例提供了一种应用于节点系统的数据处理方法及装置,方法包括:第一节点控制器接收第一节点发送的数据访问请求,确定第一数据不是由第一节点控制器管理;第一节点控制器向与第二节点连接的所有节点中的处理器发送侦听请求;第一节点控制器接收第一目标处理器发送的针对第一数据的侦听响应,第一目标处理器为与第二节点连接的所有节点中的处理器中缓存有第一数据的处理器;第一节点控制器根据侦听响应中第一数据的状态获取第一数据并向第一节点发送第一数据。本方案可以在第二节点控制器出现故障时,通过将业务转移到另一个NC平面的第一节点控制器处理并进行广播侦听,使得系统依然可以正常的进行数据处理而不会宕机。
Description
技术领域
本申请涉及电子技术领域,尤其涉及一种应用于节点系统的数据处理方法及装置。
背景技术
在高性能处理器组建的缓存一致性-非对称存储器访问(CC-NUMA,CacheCoherence Non-Uniform Memory Access)系统中,包括多个节点,由于处理器本身的扩展能力有限,所以需要将每个节点中的处理器分成多个,再用节点控制器(NC,NodeController)进行多处理器的扩展,以增加并行处理的处理器个数,提升系统性能。各节点上所有的处理器可以对系统中所有的处理器的内存进行一致性的访问,由于访问本节点内和其他各远端节点内存的时延不同,所以称为CC-NUMA系统。
在CC-NUMA系统中,一个节点由若干个处理器构成,跨节点之间由节点控制器进行互联。但是,一个节点控制器处理能力有限,带宽有限。因此,为了缓解带宽压力,经常使用双节点控制器进行跨节点扩展,也即一个节点的两个节点控制器分别与另一个节点的两个节点控制器对应相连,形成两个NC平面,两个NC平面共同分担负载。但是,这里两个平面的负载分担指的仅仅是性能上的负载分担。实际上,两个平面分别处理各自管理范围的业务,并记录对应的目录信息,互相之间没有业务交集。
这种方案的问题在于,两个平面相互没有对方的目录信息,因此任意一个节点控制器发生故障导致其对应的平面无法工作时,另一个平面并不能正确处理故障平面的相关业务,从而可能导致整个系统宕机。
申请内容
本申请实施例提供了一种应用于节点系统的数据处理方法及装置,以期解决任意一个节点控制器发生故障时的系统宕机问题。
第一方面,本申请实施例提供了一种应用于节点系统的数据处理方法,节点系统包括多个节点,各节点中均包括两个节点控制器以及至少一个处理器,其中,多个节点包括第一节点和第二节点,第二节点包括第一节点控制器,包括:
第一节点控制器接收第一节点发送的数据访问请求,数据访问请求用于请求获取第一数据;
第一节点控制器确定第一数据不是由第一节点控制器管理;
第一节点控制器向与第二节点连接的所有节点中的处理器发送侦听请求,侦听请求用于指示与第二节点连接的所有节点中的处理器根据侦听请求的类型确定第一数据的状态;
第一节点控制器接收第一目标处理器发送的针对第一数据的侦听响应,第一目标处理器为与第二节点连接的所有节点中的处理器中缓存有第一数据的处理器,针对第一数据的侦听响应包括第一数据的状态;
第一节点控制器根据侦听响应中第一数据的状态获取第一数据;
第一节点控制器向第一节点发送第一数据。
在该技术方案中,在第二节点控制器出现故障时,通过将第二节点控制器所在的NC平面处理的业务转移到第一节点控制器所在的另一个NC平面处理并进行广播侦听,使得系统依然可以正常的进行数据处理而不会宕机。
在第一方面的第一种可能的实现方式中,第一数据的状态为无效状态,针对第一数据的侦听响应还包括第一数据;则第一节点控制器根据侦听响应中第一数据的无效状态从侦听响应中获取第一数据。
在该技术方案中,第一数据的状态为无效状态,侦听响应中包括第一数据,说明系统中的其他节点中有对第一数据进行过更改的,那么第一节点控制器需要将最新的第一数据返回给数据访问请求的请求方即第一节点。
在第一方面的第二种可能的实现方式中,第一数据的状态为共享状态,则第一节点控制器根据侦听响应中第一数据的共享状态从第二节点的内存储器中获取第一数据。
在该技术方案中,第一数据的状态为共享状态,侦听响应不包括第一数据,说明系统中的其他节点中没有对第一数据进行过更改,因此第一节点控制器只需从内存储器中取出第一数据返回给数据访问请求的请求方即第一节点。
结合第一方面或第一方面的第一种至第二种可能的实现方式,在第一方面的第三种可能的实现方式中,侦听请求的类型包括共享侦听请求或独占侦听请求。
第二方面,本申请实施例提供了一种应用于节点系统的数据处理方法,节点系统包括多个节点,各节点中均包括两个节点控制器以及至少一个处理器,其中,多个节点包括第二节点,第二节点包括第二节点控制器,包括:
第二节点控制器向与第二节点连接的所有节点中的处理器发送独占侦听请求,独占侦听请求用于指示与第二节点连接的所有节点中的处理器根据独占侦听请求的类型确定第二数据的状态为无效状态;
第二节点控制器接收第二目标处理器发送的针对第二数据的独占侦听响应,第二目标处理器与第二节点连接的所有节点中的处理器中缓存有第二数据的处理器,针对第二数据的侦听响应包括第二数据的状态为无效状态;
第二节点控制器确定第二节点控制器管理的第二数据的数据缓存目录为无效态,第二数据的数据缓存目录为无效态指示与第二节点连接的所有节点中的处理器中的第二数据的状态为无效状态。
在该技术方案中,第二节点控制器恢复工作后,发送独占侦听广播,可以将缓存在其他所有节点中的第二数据都进行无效化,仅存在自身的内存储器中的第二数据是有效的,从而恢复对第二数据的控制。
在第二方面的第一种可能的实现方式中,独占侦听响应还包括第二数据;则第二节点控制器还向第二节点的内存储器发送第二数据,第二数据用于替换内存储器中原有的第二数据。
在该技术方案中,独占侦听响应中包括第二数据,说明系统中的其他节点中有对第二数据进行过更改的,那么第二节点控制器需要将最新的第二数据替换内存储器中的第二数据,以使内存储器中保存的是最新的第二数据
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,多个节点还包括第三节点;
第二节点控制器接收第三节点发送的数据访问请求,数据访问请求用于请求获取第二数据;
第二节点控制器向与第二节点连接的所有节点中的处理器发送侦听请求,侦听请求用于指示与第二节点连接的所有节点中的处理器根据侦听请求的类型确定第二数据的状态;
第二节点控制器接收第三目标处理器发送的针对第二数据的侦听响应,第三目标处理器与第二节点连接的所有节点中的处理器中缓存有第二数据的处理器,针对第二数据的侦听响应包括第二数据的状态;
第二节点控制器根据侦听响应中第二数据的状态获取第二数据并向第三节点发送第二数据;
第二节点控制器在第二数据的数据缓存目录中记录第二数据的状态。
在该技术方案中,在数据缓存目录无效化的同时,第二节点控制器也可以同步地利用广播侦听的方式对数据访问请求进行处理,保证在目录无效化完成之前,系统也可以正常运行。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,第二节点控制器向与第二节点连接的所有节点中的处理器发送侦听请求之前,第二节点控制器还接收内存访问控制器发送的针对第二数据的独占访问请求;则第二节点控制器向第二处理器发送针对第二数据的侦听请求之前,第二节点控制器还确定未接收到内存访问控制器发送的内存扫描结束通知,内存扫描结束通知用于指示第二节点控制器所属节点内存中第二节点控制器管理的所有数据的数据缓存目录均为无效态。
在该技术方案中,内存扫描结束通知用于指示第二节点控制器所属节点内存中第二节点控制器管理的所有数据的数据缓存目录均为无效态。也即在数据缓存目录无效化完成之前,还需要以广播侦听的方式对数据访问请求进行处理。当数据缓存目录无效化完成之后,第二节点控制器就可以恢复到出故障前的正常工作状态,只需按照其记录的数据缓存目录进行数据处理,而不需要再进行广播侦听。
本申请第三方面提供了一种应用于节点系统的数据处理装置。包括缓存一致性协议处理器、存储器以及通信接口。缓存一致性协议处理器连接到存储器和通信接口,例如缓存一致性协议处理器可以通过总线连接到存储器和通信接口。通信接口用于与其他设备进行通信。存储器用于存储程序代码和目录数据等。缓存一致性协议处理器用于执行上述各方面或各方面所述的任意一种可能的实现方式。
本申请第四方面提供了另一种应用于节点系统的数据处理装置,包括处理模块、接收模块和发送模块。上述处理模块用于实现第三方面中的缓存一致性协议处理器,上述接收模块和发送模块共同用于实现第三方面中的通信接口。该数据处理装置通过上述模块实现上述各方面或各方面所述的任意一种可能的实现方式。
第五方面,本申请提供了一种计算机程序产品,计算机程序产品包括:计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行上述各方面中任意可能的实现方式中的方法。
第六方面,本申请提供了一种计算机可读介质,计算机可读介质存储有程序代码,当计算机程序代码在计算机上运行时,使得计算机执行上述各方面的实现方式中的方法。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
图1是本申请实施例提供的一种应用于节点系统的数据处理系统的结构示意图;
图2是本申请实施例提供的一种应用于节点系统的数据处理方法的流程示意图;
图3是本申请实施例提供的另一种应用于节点系统的数据处理方法的流程示意图;
图4是本申请实施例提供的一种应用于节点系统的数据处理系统的系统结构图;
图5是本申请实施例提供的一种应用于节点系统的数据处理装置的结构示意图;
图6是本申请实施例提供的另一种应用于节点系统的数据处理装置的结构示意图;
图7是本申请实施例提供的另一种应用于节点系统的数据处理装置的结构示意图;
图8是本申请实施例提供的另一种应用于节点系统的数据处理装置的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
请参见图1,图1是本申请实施例提供的一种应用于节点系统的数据处理系统的结构示意图,本申请实施例中的节点可以包括服务器、个人计算机、接入网设备、核心网设备等各类终端设备或通信设备,节点系统则是由多个节点相互连接后组成的互联系统。该数据处理系统包括多个节点(图1示出节点10和节点20),其中,每个节点中都包括多个处理器(图1示出节点10包括处理器101和处理器102,节点20包括处理器201和处理器202)以及两个节点控制器(图1示出节点10包括节点控制器103和节点控制器104,节点20包括节点控制器203和节点控制器204)。进一步地,每个节点的处理器都存在相应的扩展内存储器(例如处理器101对应的内存储器105,处理器102对应的内存储器106,处理器201对应的内存储器205,处理器202对应的内存储器206)。其中,每个处理器中还包括自身的缓存Cache。每个节点的两个节点控制器共同管理该节点中的多个处理器并分担负载。
本申请实施例的数据处理系统中,每个节点的两个节点控制器分别与另一个节点的两个节点控制器对应相连,形成两个NC平面,两个NC平面共同分担负载。例如,图1中节点10中的节点控制器103与节点20中的节点控制器203相连接,形成一个NC平面00;节点10中的节点控制器104与节点20中的节点控制器204相连接,形成另一个NC平面01。
以节点10与节点20之间的两个NC平面00与01为例,平面00可以负责路由和处理节点10包括的多个处理器上的一部分业务,平面01可以负责路由和处理节点10包括的多个处理器上的另一部分业务;相应地,平面00也可以负责路由和处理节点20包括的多个处理器上的一部分业务,平面01也可以负责路由和处理节点20包括的多个处理器上的另一部分业务。
本申请实施例的数据处理系统中,各节点上所有的处理器可以对系统中所有的处理器的内存储器进行一致性的访问。而为了保证这种跨节点的数据访问的一致性,每个节点中都会保存一份数据缓存目录(Directory),记录本节点内数据被其他节点的处理器访问的情况,具体包括记录数据的状态和位置。数据缓存目录可以存储在独立的实体中,也可以存储在节点控制器中,还可以存储上述提到的其他实体中。
例如,如果节点10的处理器101缓存了节点20的处理器201对应的内存储器205中的数据,那么节点20就会在数据缓存目录中记录该数据被节点10或节点10中的处理器101缓存,并标记该数据的状态为共享状态还是独占状态。其中,共享状态是指该数据处于可读状态,不会被节点20修改,其他节点也可以共享该数据;独占状态是指该数据仅能被节点20独占,独占时可能发生数据的修改,因此为了保证数据的一致性,其他节点不能同时共享该数据。
需要说明的是,本申请实施例的数据处理系统属于双NC平面处理系统,每个节点中对应的两个NC平面各自处理其负责的一部分业务并记录在相应得到数据缓存目录中,即两个NC平面之间的业务是独立的,不会产生交集,因此某一NC平面上对应的节点控制器也没有另一NC平面所处理的业务的数据缓存目录。
本申请实施例适用于某一节点中的某一个节点控制器出现故障但系统未宕机的场景中,描述了该场景下未出故障的节点控制器对数据的处理方法,以及出故障的节点控制器重新工作后数据的处理方法以及目录的重建方法。
请参见图2,图2是本申请实施例提供的一种应用于节点系统的数据处理方法的流程示意图。该方法包括但不限于如下步骤:
结合图4的系统结构图,在本申请实施例的场景中,首先,第二节点中的第二节点控制器出现故障,管理员启动热移除流程,系统进入静默(即所有进程都暂停工作)状态,将原本应该由第二节点控制器所在的NC平面01处理的所有业务都配置由第一节点控制器所在的NC平面00处理,从而执行S201-S206。
S201,第一节点向第二节点的第一节点控制器发送数据访问请求。
第一数据存储在第二节点的内存储器中,当第一节点的第一处理器希望缓存第一数据,从而对第一数据进行读/写操作时,会发送针对第一数据的数据访问请求,数据访问请求用于请求获取第一数据。其中可以携带第一数据的地址信息,用于指示希望获取的是该地址信息对应的第一数据。
第一节点发送的数据访问请求可以是第一节点中的第一处理器通过第三节点控制器透传给第一节点控制器的,即第三节点控制器并不解析针对第一数据的数据访问请求;第一节点发送的数据访问请求也可以是第一处理器先发送给第三节点控制器的,第三节点控制器解析后进行目的地址的更改等操作,向管理第一数据的第一节点控制器发送的。
在本申请实施例中,第一数据的业务原本是由NC平面01负责,第一处理器应该将针对第一数据的数据访问请求发送给第四节点控制器并通过NC平面01路由至第二节点的第二节点控制器,由第二节点控制器根据数据缓存目录进行处理。但是由于第二节点控制器出现故障,NC平面01上的所有业务都配置由NC平面00处理,因此,此时第一处理器会将针对第一数据的数据访问请求发送给第三节点控制器并通过NC平面00路由至第二节点的第一节点控制器,由第一节点控制器进行处理。例如,原本NC平面00处理所有路由地址的最后一位为0的数据业务,NC平面01处理所有路由地址的最后一位为1的数据业务;但是,由于第二节点控制器出现故障,则路由地址的最后一位为0的数据业务也会被配置为由NC平面01处理。S202,第一节点控制器确定第一数据不是由第一节点控制器管理。
由于在双NC系统中,每个节点的两个节点控制器分担负载,因此第一节点控制器中存有自己负责管理的那一部分数据的地址信息,并存在相应的数据缓存目录。
当第一节点控制器接收到数据访问请求后,可以根据第一数据的地址信息判断第一数据是否是由其自身管理的。若是由其自身管理,则第一节点控制器则会根据第一数据对应的数据缓存目录对该数据访问请求进行处理;若不是由其自身管理,那么第一节点控制器则需要采用广播侦听的方法进行处理,即执行S203。
S203,第一节点控制器向与第二节点连接的所有节点中的处理器发送侦听请求。
本申请实施例中,与第二节点连接的所有节点中的处理器即为系统中除第二节点以外的所有其他节点中的所有处理器。也就是说,第一节点控制器在系统中发起广播侦听。侦听请求用于指示与第二节点连接的所有节点中的处理器根据侦听请求的类型确定第一数据的状态。
不同的数据访问请求对应不同的侦听请求。例如,当数据访问请求指示的是希望共享第一数据即不修改第一数据,那么第一节点控制器发出的侦听请求的类型就为共享侦听请求;当针对第一数据的数据访问请求指示的是希望独占第一数据即有可能修改第一数据,那么第一节点控制器发出的侦听请求的类型就为独占侦听请求。
S204,与第二节点连接的所有节点中的处理器根据侦听请求的类型确定第一数据的状态。
与第二节点连接的所有节点中的处理器接收到侦听请求后,可以首先查询自身是否缓存有第一数据,若没有缓存第一数据,则可以反馈第一数据不存在的侦听响应。若缓存有第一数据,则可以获取第一数据当前的状态,然后结合侦听请求的类型确定第一数据的状态。
若侦听请求的类型为共享侦听请求,与第二节点连接的所有节点中的处理器根据侦听请求以及第一数据当前的状态,确定第一数据的状态为共享状态。也就是说,如果侦听请求为共享侦听请求,可以说明当前有其他处理器希望共享该第一数据,此时与第二节点连接的所有节点中的处理器中缓存的第一数据当前的状态如果是共享状态,那么就不用改动,继续处于共享状态即可;此时与第二节点连接的所有节点中的处理器中缓存的第一数据当前的状态如果是独占状态,那么需要将独占状态更改为共享状态,以支持其他处理器共享该第一数据,更改为共享状态后,与第二节点连接的所有节点中的处理器也不能够再对第一数据进行修改。
若侦听请求的类型为独占侦听请求,与第二节点连接的所有节点中的处理器根据侦听请求以及第一数据当前的状态,确定第一数据的状态为无效状态。也就是说,如果侦听请求为独占侦听请求,可以说明当前有其他处理器希望独占该第一数据,此时与第二节点连接的所有节点中的处理器中缓存的第一数据当前的状态无论是共享状态还是独占状态,都需要修改为无效状态,即与第二节点连接的所有节点中的处理器目前不再能够读/写第一数据,如果需要再读/写第一数据,则需要再向第一节点控制器请求。
S205,第一目标处理器向第一节点控制器发送针对第一数据的侦听响应。
第一目标处理器即为与第二节点连接的所有节点中的处理器中缓存有第一数据的处理器。第一目标处理器在确定第一数据的状态之后,向第一节点控制器发送针对第一数据的侦听响应。其中,针对第一数据的侦听响应包括第一数据的状态。
需要说明的是,与第二节点连接的所有节点中的处理器中没有缓存第一数据的处理器也可以向第一节点控制器发送的侦听响应,但是该侦听响应中则用于指示第一数据不存在。
可选的,若第一目标处理器中第一数据当前的状态为独占状态,则确定第一数据的状态为无效状态,那么针对第一数据的侦听响应还包括第一目标处理器中缓存的第一数据。也即第一目标处理器有可能修改过第一数据,那么第一目标处理器需要将其最新的第一数据返回给第一节点控制器。
S206,第一节点控制器根据侦听响应中第一数据的状态获取第一数据。
若针对第一数据的侦听响应中第一数据的状态为无效状态,还包括第一数据,也即侦听响应中的是最新的第一数据,那么第一节点控制器直接从侦听响应中获取第一数据。
若针对第一数据的侦听响应中第一数据的状态为共享状态,不包括第一数据,也即第一目标处理器是共享第一数据,没有修改第一数据,那么第一节点控制器可以从第二节点的内存储器中获取第一数据。
可选的,第一节点控制器由于暂时处理第二节点控制器的部分业务,因此可以不记录第一数据的数据缓存目录。
S207,第一节点控制器向第一节点发送第一数据。
根据S206所述的两种实施场景,第一节点控制器可以从第一目标处理器发送的侦听响应或第二节点的内存储器中获取第一数据,然后将第一数据发送给第一节点以响应数据访问请求。与S201对应的,向第一节点发送第一数据可以是通过第三节点控制器透传给第一处理器,也可以是先发送给第三节点控制器,第三节点控制器解析后进行目的地址的更改等操作,向第一处理器发送的。
这样,在第二节点的第二节点控制器出现故障时,通过将第二节点控制器所在的NC平面处理的业务转移到另一个NC平面处理并进行广播侦听,使得系统依然可以正常的进行数据处理而不会宕机。
图3是本申请实施例提供的另一种应用于节点系统的数据处理方法的流程示意图。该方法包括但不限于如下步骤:
结合图4的系统结构图,在第二节点更换了新的第二节点控制器后,管理员启动热添加流程,系统进入静默状态,将原本应该由第二节点控制器所在的NC平面01处理的所有业务恢复配置为还是由NC平面01处理,从而执行S301-S314。
S301,第二节点控制器向与第二节点连接的所有节点中的处理器发送独占侦听请求。
本申请实施例中,与第二节点连接的所有节点中的处理器即为系统中除第二节点以外的所有其他节点中的所有处理器。也就是说,更换了新的第二节点控制器后,第二节点控制器就在系统中发起广播独占侦听。独占侦听请求用于指示与第二节点连接的所有节点中的处理器根据独占侦听请求的类型确定第二数据的状态为无效状态。
可选的,S301之前还可以包括S300:
S300,内存访问控制器向第二节点控制器发送针对第二数据的独占访问请求。
热添加流程启动后,内存访问(DMA,Direct Memory Access)控制器可以开始遍历第二节点控制器所管理的所有地址信息,并向第二节点控制器分别发送针对其管理的每个地址信息对应的数据的独占访问请求,以触发第二节点控制器广播针对其管理的每个地址信息对应的数据的独占侦听请求。这里以第二数据为例,即内存访问控制器获取到第二数据的地址信息时,向第二节点控制器发送针对第二数据的独占访问请求,以触发第二节点控制器执行S301。当针对第二数据的广播独占侦听结束后,内存访问控制器可以接着读取下一个数据,并触发针对该数据的广播独占侦听流程,直到内存访问控制器对第二节点控制器所管理的所有地址信息遍历结束。
S302,与第二节点连接的所有节点中的处理器根据独占侦听请求的类型确定第二数据的状态为无效状态。
独占侦听请求的目的在于,可以使与第二节点连接的所有节点中的处理器中缓存的第一数据无论是共享状态还是独占状态,都变为无效状态,即与第二节点连接的所有节点中的处理器目前不再能够读/写第一数据。
S303,第二目标处理器向第二节点控制器发送针对第二数据的独占侦听响应。
第二目标处理器即为与第二节点连接的所有节点中的处理器中缓存有第二数据的处理器。第二目标处理器在确定第二数据的状态之后,向第二节点控制器发送针对第二数据的独占侦听响应。其中,针对第二数据的侦听响应包括第二数据的状态为无效状态。
需要说明的是,与第二节点连接的所有节点中的处理器中没有缓存第二数据的处理器也可以向第二节点控制器发送的独占侦听响应,但是该独占侦听响应中则用于指示第二数据不存在。
S304,第二节点控制器确定第二节点控制器管理的第二数据的数据缓存目录为无效态。
第二数据的数据缓存目录为无效态指示的是第二处理器中的第二数据的状态为无效状态。也即第二节点控制器将缓存在其他所有节点中的第二数据都进行无效化,仅存在自身的内存储器中的第二数据是有效的,从而恢复对第二数据的控制。
可选的,若第二目标处理器中第二数据当前的状态为独占状态,则针对第二数据的独占侦听响应还包括第二目标处理器中缓存的第二数据,则S303之后还包括:
S305,第二节点控制器向第二节点的内存储器发送第二数据。
独占侦听响应中的第二数据用于替换内存储器中的第二数据,也即在第二节点的内存储器中存储最新的第二数据。
进一步的,在对第二数据的数据缓存目录进行无效态的同时,若接收到其他节点(例如图3所示的第三节点)的处理器针对第二数据的数据访问请求,则第二节点控制器执行S306-S313。
S306,第三节点向第二节点的第二节点控制器发送数据访问请求。
数据访问请求用于请求获取所述第二数据。
S306的具体实现方法可以参考S201,此处不再赘述。
S308,第二节点控制器向与第二节点连接的所有节点中的处理器发送侦听请求。
S308的具体实现方法可以参考S203,此处不再赘述。
可选的,若第二节点控制器接收内存访问控制器发送的针对第二数据的独占访问请求,即执行S300,则S308之前还可以包括S307:
S307,第二节点控制器确定未接收到内存访问控制器发送的内存扫描结束通知。
内存扫描结束通知是用于通知第二节点控制器其管理的其管理的每个地址信息对应的数据已经遍历完成并进行了广播独占侦听,也即指示第二节点控制器所属节点内存中第二节点控制器管理的所有数据的数据缓存目录均为无效态。
在第二节点控制器接收到内存访问控制器发送的内存扫描结束通知之后,会按照数据缓存目录进行数据处理而不会再进行广播侦听,因此,在执行S308进行广播侦听之前,需要确认未接收到内存扫描结束通知。
S309,与第二节点连接的所有节点中的处理器根据侦听请求的类型确定第二数据的状态。
S310,第三目标处理器向第二节点控制器发送针对第二数据的侦听响应。
第三目标处理器与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器。S309-S310的具体实现方法可以参考S204-S205,此处不再赘述。
S311,第二节点控制器根据侦听响应中第二数据的状态获取第二数据。
S312,第二节点控制器向第三节点发送第二数据。
S311-S312的具体实现方法可以参考S206-S207,此处不再赘述。
S313,第二节点控制器在第二数据的数据缓存目录中记录第二数据的状态。
在对第二数据的数据访问请求处理之后,第二节点控制器在第二数据的数据缓存目录中记录第二数据的状态。也就是说,第二节点控制器根据反馈的侦听响应,记录第二数据都被缓存于哪些节点的处理器中,以及第二数据在这些处理器中的状态。例如,某一节点A的处理器123返回的侦听响应中包括第二数据被侦听后的状态为共享状态,那么第二节点控制器就在第二数据的数据缓存目录中记录“节点A的处理器123,共享状态”。
这样,在数据缓存目录无效化的同时,第二节点控制器也可以同步地利用广播侦听的方式对数据访问请求进行处理,保证在目录无效化完成之前,系统也可以正常运行。
需要说明的是,S301-S305与S306-S313可以之间不区先后顺序,可以同时执行。
S314,当确定第二节点控制器管理的所有数据的数据缓存目录无效态完成,第二节点控制器根据数据缓存目录进行数据处理。
第二节点控制器管理的所有数据的数据缓存目录均为无效态即认为第二节点控制器管理的所有数据的数据缓存目录无效态完成,之后,第二节点控制器会按照数据缓存目录进行数据处理而不会再执行S306-S313进行广播侦听的数据处理方法。
可选的,若第二节点控制器接收内存访问控制器发送的针对第二数据的独占访问请求,即执行S300,则第二节点控制器确定其管理的所有数据的数据缓存目录无效态完成的方法可以为:接收到内存访问控制器发送的内存扫描结束通知,指示第二节点控制器所属节点内存中第二节点控制器管理的所有数据的数据缓存目录均为无效态。
这样,当数据缓存目录无效化完成之后,第二节点控制器就可以恢复到出故障前的正常工作状态,只需按照其记录的数据缓存目录进行数据处理,而不需要再进行广播侦听。
上文主要从不同网元之间交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是,应用于节点系统的数据处理装置为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。结合本申请中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的技术方案的范围。
本申请实施例可以根据上述方法示例对应用于节点系统的数据处理装置进行功能模块或功能单元的划分,例如,可以对应各个功能划分各个功能模块或功能单元,也可以将两个或两个以上的功能集成在一个处理模块或处理单元中。上述集成的模块或单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块或单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。请参见以下具体介绍。
请参阅图5,图5是本申请实施例提供的一种应用于节点系统的数据处理装置的结构示意图。该装置可以用于实现上述图2所示的实施例中的第一节点控制器。如图5所示,该装置包括:
接收模块501,用于接收所述第一节点发送的数据访问请求,所述数据访问请求用于请求获取第一数据;
处理模块502,确定所述第一数据不是由所述第一节点控制器管理;
发送模块503,用于向与所述第二节点连接的所有节点中的处理器发送侦听请求,所述侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述侦听请求的类型确定所述第一数据的状态;
所述接收模块501还用于:接收第一目标处理器发送的针对所述第一数据的侦听响应,所述第一目标处理器为与所述第二节点连接的所有节点中的处理器中缓存有所述第一数据的处理器,所述针对所述第一数据的侦听响应包括所述第一数据的状态;
所述处理模块502还用于:根据所述侦听响应中所述第一数据的状态获取所述第一数据;
所述发送模块503还用于:向所述第一节点发送所述第一数据。
可选的,所述第一数据的状态为无效状态,所述针对所述第一数据的侦听响应还包括所述第一数据;
所述处理模块502用于:根据所述侦听响应中所述第一数据的所述无效状态从所述侦听响应中获取所述第一数据。
可选的,所述第一数据的状态为共享状态,所述处理模块502用于:
根据所述侦听响应中所述第一数据的所述共享状态从所述第二节点的内存储器中获取所述第一数据。
可选的,所述侦听请求的类型包括共享侦听请求或独占侦听请求。
上述图5所示实施例中的应用于节点系统的数据处理装置可以以图6所示的应用于节点系统的数据处理装置600实现。如图6所示,为本申请实施例提供了另一种应用于节点系统的数据处理装置的结构示意图,图6所示的应用于节点系统的数据处理装置600包括:缓存一致性协议处理器601和通信接口603,所述缓存一致性协议处理器601用于支持数据处理装置600与其他设备之间的信息传输。缓存一致性协议处理器601和通信接口603通信连接,例如通过总线相连。所述应用于节点系统的数据处理装置600还可以包括存储器602。存储器602用于存储供数据处理装置600执行的程序代码和目录数据,缓存一致性协议处理器601用于执行存储器602中存储的应用程序代码,以实现图2所示实施例提供的第一节点控制器的动作。
存储器602可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM);存储器602也可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器602还可以包括上述种类的存储器的组合。
在本申请实施例中还提供了一种计算机存储介质,可以用于存储图2所示实施例中第一节点控制器所用的计算机软件指令,其包含用于执行上述实施例中为第一节点控制器所设计的程序。该存储介质包括但不限于快闪存储器、硬盘、固态硬盘。
在本申请实施例中还提供了一种计算机程序产品,该计算机产品被计算设备运行时,可以执行上述图2实施例中为第一节点控制器所设计的应用于节点系统的数据处理方法。
请参阅图7,图7是本申请实施例提供的另一种应用于节点系统的数据处理装置的结构示意图。该装置可以用于实现上述图3所示的实施例中的第二节点控制器。如图7所示,该装置包括:
发送模块701,用于向与所述第二节点连接的所有节点中的处理器发送独占侦听请求,所述独占侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述独占侦听请求的类型确定所述第二数据的状态为无效状态;
接收模块702,用于接收第二目标处理器发送的针对所述第二数据的独占侦听响应,所述第二目标处理器与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器,所述针对所述第二数据的侦听响应包括所述第二数据的状态为无效状态;
处理模块703,用于确定所述第二节点控制器管理的所述第二数据的数据缓存目录为无效态,所述第二数据的数据缓存目录为无效态指示所述与所述第二节点连接的所有节点中的处理器中的所述第二数据的状态为无效状态。
可选的,所述独占侦听响应还包括所述第二数据;
所述发送模块701还用于:
向所述第二节点的内存储器发送所述第二数据,所述第二数据用于替换所述内存储器中原有的第二数据。
可选的,所述多个节点还包括第三节点;
所述接收模块702还用于:接收所述第三节点发送的数据访问请求,所述数据访问请求用于请求获取所述第二数据;
所述发送模块701还用于:向与所述第二节点连接的所有节点中的处理器发送侦听请求,所述侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述侦听请求的类型确定所述第二数据的状态;
所述接收模块702还用于:接收第三目标处理器发送的针对所述第二数据的侦听响应,所述第三目标处理器与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器,所述针对所述第二数据的侦听响应包括所述第二数据的状态;
所述处理模块703还用于:根据所述侦听响应中所述第二数据的状态获取所述第二数据并向所述第三节点发送所述第二数据;在所述第二数据的数据缓存目录中记录所述第二数据的状态。
可选的,所述接收模块702还用于:所述第二节点控制器接收内存访问控制器发送的所述针对所述第二数据的独占访问请求;
所述处理模块703还用于:所述第二节点控制器确定未接收到所述内存访问控制器发送的内存扫描结束通知,所述内存扫描结束通知用于指示所述第二节点控制器所属节点内存中所述第二节点控制器管理的所有数据的数据缓存目录均为无效态。
上述图7所示实施例中的应用于节点系统的数据处理装置可以以图8所示的应用于节点系统的数据处理装置800实现。如图8所示,为本申请实施例提供了另一种应用于节点系统的数据处理装置的结构示意图,图8所示的应用于节点系统的数据处理装置800包括:缓存一致性协议处理器801和通信接口803,所述缓存一致性协议处理器801用于支持数据处理装置800与其他设备之间的信息传输。缓存一致性协议处理器801和通信接口803通信连接,例如通过总线相连。所述应用于节点系统的数据处理装置800还可以包括存储器802。存储器802用于存储供数据处理装置800执行的程序代码和目录数据,缓存一致性协议处理器801用于执行存储器802中存储的应用程序代码,以实现图3所示实施例提供的第二节点控制器的动作。
存储器802可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM);存储器802也可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器802还可以包括上述种类的存储器的组合。
在本申请实施例中还提供了一种计算机存储介质,可以用于存储图3所示实施例中第二节点控制器所用的计算机软件指令,其包含用于执行上述实施例中为第二节点控制器所设计的程序。该存储介质包括但不限于快闪存储器、硬盘、固态硬盘。
在本申请实施例中还提供了一种计算机程序产品,该计算机产品被计算设备运行时,可以执行上述图3实施例中为第二节点控制器所设计的应用于节点系统的数据处理方法。
Claims (16)
1.一种应用于节点系统的数据处理方法,其特征在于,所述节点系统包括多个节点,各节点中均包括两个节点控制器以及至少一个处理器,其中,所述多个节点包括第一节点和第二节点,所述第二节点包括第一节点控制器,所述方法包括:
所述第一节点控制器接收所述第一节点发送的数据访问请求,所述数据访问请求用于请求获取第一数据;
所述第一节点控制器确定所述第一数据不是由所述第一节点控制器管理;
所述第一节点控制器向与所述第二节点连接的所有节点中的处理器发送侦听请求,所述侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述侦听请求的类型确定所述第一数据的状态;
所述第一节点控制器接收第一目标处理器发送的针对所述第一数据的侦听响应,所述第一目标处理器为与所述第二节点连接的所有节点中的处理器中缓存有所述第一数据的处理器,所述针对所述第一数据的侦听响应包括所述第一数据的状态;
所述第一节点控制器根据所述侦听响应中所述第一数据的状态获取所述第一数据;
所述第一节点控制器向所述第一节点发送所述第一数据。
2.如权利要求1所述的方法,其特征在于,所述第一数据的状态为无效状态,所述针对所述第一数据的侦听响应还包括所述第一数据;
所述第一节点控制器根据所述侦听响应中所述第一数据的状态获取所述第一数据包括:
所述第一节点控制器根据所述侦听响应中所述第一数据的所述无效状态从所述侦听响应中获取所述第一数据。
3.如权利要求1所述的方法,其特征在于,所述第一数据的状态为共享状态,
所述第一节点控制器根据所述侦听响应中所述第一数据的状态获取所述第一数据包括:
所述第一节点控制器根据所述侦听响应中所述第一数据的所述共享状态从所述第二节点的内存储器中获取所述第一数据。
4.如权利要求1-3任一项所述的方法,其特征在于,所述侦听请求的类型包括共享侦听请求或独占侦听请求。
5.一种应用于节点系统的数据处理方法,其特征在于,所述节点系统包括多个节点,各节点中均包括两个节点控制器以及至少一个处理器,其中,所述多个节点包括第二节点,所述第二节点包括第二节点控制器,所述方法包括:
所述第二节点控制器接收内存访问控制器发送的针对第二数据的独占访问请求;
所述第二节点控制器向与所述第二节点连接的所有节点中的处理器发送独占侦听请求,所述独占侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述独占侦听请求的类型确定所述第二数据的状态为无效状态;
所述第二节点控制器接收第二目标处理器发送的针对所述第二数据的独占侦听响应,所述第二目标处理器为与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器,所述针对所述第二数据的侦听响应包括所述第二数据的状态为无效状态;
所述第二节点控制器确定所述第二节点控制器管理的所述第二数据的数据缓存目录为无效态,所述第二数据的数据缓存目录为无效态指示所述与所述第二节点连接的所有节点中的处理器中的所述第二数据的状态为无效状态。
6.如权利要求5所述的方法,其特征在于,所述独占侦听响应还包括所述第二数据;
所述方法还包括:
所述第二节点控制器向所述第二节点的内存储器发送所述第二数据,所述第二数据用于替换所述内存储器中原有的第二数据。
7.如权利要求5或6所述的方法,其特征在于,所述多个节点还包括第三节点;
所述方法还包括:
所述第二节点控制器接收所述第三节点发送的数据访问请求,所述数据访问请求用于请求获取所述第二数据;
所述第二节点控制器向与所述第二节点连接的所有节点中的处理器发送侦听请求,所述侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述侦听请求的类型确定所述第二数据的状态;
所述第二节点控制器接收第三目标处理器发送的针对所述第二数据的侦听响应,所述第三目标处理器与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器,所述针对所述第二数据的侦听响应包括所述第二数据的状态;
所述第二节点控制器根据所述侦听响应中所述第二数据的状态获取所述第二数据并向所述第三节点发送所述第二数据;
所述第二节点控制器在所述第二数据的数据缓存目录中记录所述第二数据的状态。
8.如权利要求7所述的方法,其特征在于,所述第二节点控制器向与所述第二节点连接的所有节点中的处理器发送侦听请求之前,还包括:
所述第二节点控制器接收内存访问控制器发送的所述针对所述第二数据的独占访问请求;
所述第二节点控制器向与所述第二节点连接的所有节点中的处理器发送侦听请求之前,还包括:
所述第二节点控制器确定未接收到所述内存访问控制器发送的内存扫描结束通知,所述内存扫描结束通知用于指示所述第二节点控制器所属节点内存中所述第二节点控制器管理的所有数据的数据缓存目录均为无效态。
9.一种应用于节点系统的数据处理装置,其特征在于,所述节点系统包括多个节点,各节点中均包括两个节点控制器以及至少一个处理器,其中,所述多个节点包括第一节点和第二节点,所述第二节点包括第一节点控制器,所述数据处理装置为第一节点控制器,包括:
接收模块,用于接收所述第一节点发送的数据访问请求,所述数据访问请求用于请求获取第一数据;
处理模块,确定所述第一数据不是由所述第一节点控制器管理;
发送模块,用于向与所述第二节点连接的所有节点中的处理器发送侦听请求,所述侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述侦听请求的类型确定所述第一数据的状态;
所述接收模块还用于:接收第一目标处理器发送的针对所述第一数据的侦听响应,所述第一目标处理器为与所述第二节点连接的所有节点中的处理器中缓存有所述第一数据的处理器,所述针对所述第一数据的侦听响应包括所述第一数据的状态;
所述处理模块还用于:根据所述侦听响应中所述第一数据的状态获取所述第一数据;
所述发送模块还用于:向所述第一节点发送所述第一数据。
10.如权利要求9所述的装置,其特征在于,所述第一数据的状态为无效状态,所述针对所述第一数据的侦听响应还包括所述第一数据;
所述处理模块用于:根据所述侦听响应中所述第一数据的所述无效状态从所述侦听响应中获取所述第一数据。
11.如权利要求9所述的装置,其特征在于,所述第一数据的状态为共享状态,
所述处理模块用于:
根据所述侦听响应中所述第一数据的所述共享状态从所述第二节点的内存储器中获取所述第一数据。
12.如权利要求9-11任一项所述的装置,其特征在于,所述侦听请求的类型包括共享侦听请求或独占侦听请求。
13.一种应用于节点系统的数据处理装置,其特征在于,所述节点系统包括多个节点,各节点中均包括两个节点控制器以及至少一个处理器,其中,所述多个节点包括第二节点,所述第二节点包括第二节点控制器,所述数据处理装置为第二节点控制器,包括:
发送模块,用于向与所述第二节点连接的所有节点中的处理器发送独占侦听请求,所述独占侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述独占侦听请求的类型确定第二数据的状态为无效状态;
接收模块,用于接收第二目标处理器发送的针对所述第二数据的独占侦听响应,所述第二目标处理器为与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器,所述针对所述第二数据的侦听响应包括所述第二数据的状态为无效状态;
处理模块,用于确定所述第二节点控制器管理的所述第二数据的数据缓存目录为无效态,所述第二数据的数据缓存目录为无效态指示所述与所述第二节点连接的所有节点中的处理器中的所述第二数据的状态为无效状态;
所述接收模块,还用于接收内存访问控制器发送的针对所述第二数据的独占访问请求。
14.如权利要求13所述的装置,其特征在于,所述独占侦听响应还包括所述第二数据;所述发送模块还用于:
向所述第二节点的内存储器发送所述第二数据,所述第二数据用于替换所述内存储器中原有的第二数据。
15.如权利要求13或14所述的装置,其特征在于,所述多个节点还包括第三节点;
所述接收模块还用于:接收所述第三节点发送的数据访问请求,所述数据访问请求用于请求获取所述第二数据;
所述发送模块还用于:向与所述第二节点连接的所有节点中的处理器发送侦听请求,所述侦听请求用于指示所述与所述第二节点连接的所有节点中的处理器根据所述侦听请求的类型确定所述第二数据的状态;
所述接收模块还用于:接收第三目标处理器发送的针对所述第二数据的侦听响应,所述第三目标处理器与所述第二节点连接的所有节点中的处理器中缓存有所述第二数据的处理器,所述针对所述第二数据的侦听响应包括所述第二数据的状态;
所述处理模块还用于:根据所述侦听响应中所述第二数据的状态获取所述第二数据并向所述第三节点发送所述第二数据;在所述第二数据的数据缓存目录中记录所述第二数据的状态。
16.如权利要求15所述的装置,其特征在于,
所述接收模块还用于:接收内存访问控制器发送的所述针对所述第二数据的独占访问请求;
所述处理模块还用于:确定未接收到所述内存访问控制器发送的内存扫描结束通知,所述内存扫描结束通知用于指示所述第二节点控制器所属节点内存中所述第二节点控制器管理的所有数据的数据缓存目录均为无效态。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810094902.4A CN110098945B (zh) | 2018-01-30 | 2018-01-30 | 应用于节点系统的数据处理方法及装置 |
PCT/CN2019/070388 WO2019149031A1 (zh) | 2018-01-30 | 2019-01-04 | 应用于节点系统的数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810094902.4A CN110098945B (zh) | 2018-01-30 | 2018-01-30 | 应用于节点系统的数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110098945A CN110098945A (zh) | 2019-08-06 |
CN110098945B true CN110098945B (zh) | 2021-10-19 |
Family
ID=67442405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810094902.4A Active CN110098945B (zh) | 2018-01-30 | 2018-01-30 | 应用于节点系统的数据处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110098945B (zh) |
WO (1) | WO2019149031A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113138851B (zh) * | 2020-01-16 | 2023-07-14 | 华为技术有限公司 | 一种数据管理方法、相关装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870435A (zh) * | 2014-03-12 | 2014-06-18 | 华为技术有限公司 | 服务器及数据访问方法 |
CN104899160A (zh) * | 2015-05-30 | 2015-09-09 | 华为技术有限公司 | 一种缓存数据控制方法、节点控制器和系统 |
US9189424B2 (en) * | 2011-05-31 | 2015-11-17 | Hewlett-Packard Development Company, L.P. | External cache operation based on clean castout messages |
-
2018
- 2018-01-30 CN CN201810094902.4A patent/CN110098945B/zh active Active
-
2019
- 2019-01-04 WO PCT/CN2019/070388 patent/WO2019149031A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9189424B2 (en) * | 2011-05-31 | 2015-11-17 | Hewlett-Packard Development Company, L.P. | External cache operation based on clean castout messages |
CN103870435A (zh) * | 2014-03-12 | 2014-06-18 | 华为技术有限公司 | 服务器及数据访问方法 |
CN104899160A (zh) * | 2015-05-30 | 2015-09-09 | 华为技术有限公司 | 一种缓存数据控制方法、节点控制器和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2019149031A1 (zh) | 2019-08-08 |
CN110098945A (zh) | 2019-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108363641B (zh) | 一种主备机数据传递方法、控制节点以及数据库系统 | |
TWI431475B (zh) | 用於在本地代理者之記憶體鏡像及遷移之裝置、系統及方法 | |
US20090240880A1 (en) | High availability and low capacity thin provisioning | |
US6654858B1 (en) | Method for reducing directory writes and latency in a high performance, directory-based, coherency protocol | |
CN104935654A (zh) | 一种服务器集群系统中的缓存方法、写入点客户端和读客户端 | |
CN103119568A (zh) | 利用目录信息扩展高速缓存一致性监听广播协议 | |
CN108989432B (zh) | 用户态的文件发送方法、文件接收方法和文件收发装置 | |
CN107329704B (zh) | 一种缓存镜像方法及控制器 | |
CN107341114B (zh) | 一种目录管理的方法、节点控制器和系统 | |
KR102412978B1 (ko) | 이중 쓰기를 수행하는 스토리지 시스템 및 그것의 이중 쓰기 방법 | |
JP4201447B2 (ja) | 分散処理システム | |
CN103294611A (zh) | 一种基于有限数据一致性状态的服务器节点数据缓存方法 | |
WO2016149880A1 (zh) | 数据读取方法、设备和系统 | |
US9208100B2 (en) | Directory replacement method and device | |
EP2568379B1 (en) | Method for preventing node controller deadlock and node controller | |
EP4407461A1 (en) | Cache state recording method and apparatus, data access method and apparatus, and device | |
CN110098945B (zh) | 应用于节点系统的数据处理方法及装置 | |
US8510513B2 (en) | Network load reducing method and node structure for multiprocessor system with distributed memory | |
US9720603B1 (en) | IOC to IOC distributed caching architecture | |
US7904676B2 (en) | Method and system for achieving varying manners of memory access | |
CN106406745B (zh) | 根据目录信息维护Cache数据一致性的方法及装置 | |
CN110083548B (zh) | 数据处理方法及相关网元、设备、系统 | |
CN116414563A (zh) | 内存控制装置、缓存一致性系统和缓存一致性方法 | |
CN108415873B (zh) | 转发对监听请求的响应 | |
US20180113808A1 (en) | Memory access method and multiprocessor system |
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 |