CN109407998B - 一种缓存中io流同步的方法、系统及相关组件 - Google Patents

一种缓存中io流同步的方法、系统及相关组件 Download PDF

Info

Publication number
CN109407998B
CN109407998B CN201811333914.4A CN201811333914A CN109407998B CN 109407998 B CN109407998 B CN 109407998B CN 201811333914 A CN201811333914 A CN 201811333914A CN 109407998 B CN109407998 B CN 109407998B
Authority
CN
China
Prior art keywords
node
stream
cache pool
cache
streams
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
Application number
CN201811333914.4A
Other languages
English (en)
Other versions
CN109407998A (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201811333914.4A priority Critical patent/CN109407998B/zh
Publication of CN109407998A publication Critical patent/CN109407998A/zh
Application granted granted Critical
Publication of CN109407998B publication Critical patent/CN109407998B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system

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)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种缓存中IO流同步的方法,应用于双节点存储系统,所述方法包括将第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;判断第一本地缓存池中的IO流数量是否大于预设值;若是,则将第一本地缓存池中的IO流下刷至第一节点对应的虚拟磁盘;当第一本地缓存池中的全部IO流下刷至虚拟磁盘后,向第二节点发送第一缓存释放指令,以便第二节点根据第一缓存释放指令释放第二对端缓存池中的IO流。本方法能够在双节点存储系统下刷IO流时保证数据不会被重复下刷及覆盖且保证数据的一致性操作。本申请还公开了一种缓存中IO流同步的系统、一种计算机可读存储介质及一种电子设备,具有以上有益效果。

Description

一种缓存中IO流同步的方法、系统及相关组件
技术领域
本申请涉及数据存储技术领域,特别涉及一种缓存中IO流同步的方法、系统、一种计算机可读存储介质及一种电子设备。
背景技术
现在随着国家大数据战略的推进,存储系统承载的数据量会越来越大。缓存下刷是IO流里面的一个主要部分,如何做好保证缓存下刷时数据的一致性,对系统数据安全及性能有着至关重要的影响。
现有技术中双节点存储系统,由主节点和从节点分别向虚拟磁盘下刷IO流,但是这种下刷方法可能会导致数据被重复下刷及覆盖,无法保证数据的一致性操作。
因此,如何在双节点存储系统下刷IO流时保证数据不会被重复下刷及覆盖且保证数据的一致性操作是本领域技术人员目前需要解决的技术问题。
申请内容
本申请的目的是提供一种缓存中IO流同步的方法、系统、一种计算机可读存储介质及一种电子设备,能够在双节点存储系统下刷IO流时保证数据不会被重复下刷及覆盖且保证数据的一致性操作。
为解决上述技术问题,本申请提供一种缓存中IO流同步的方法,应用于双节点存储系统,该方法包括:
当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;
判断所述第一本地缓存池中的IO流数量是否大于预设值;
若是,则将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;
当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流。
可选的,还包括:
将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
可选的,在将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池之后,还包括:
当接收到所述第二节点发送的第二缓存释放指令后,根据所述第二缓存释放指令释放所述第一对端缓存池中的IO流,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
可选的,所述第一本地缓存池中的IO流为上层应用以轮询的方式分配的IO流。
可选的,将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘包括:
按照预设粒度依次将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘。
本申请还提供了一种缓存中IO流同步的系统,应用于双节点存储系统,该系统包括:
第一镜像模块,用于当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;
判断模块,用于判断所述第一本地缓存池中的IO流数量是否大于预设值;
下刷模块,用于当所述IO流数量大于所述预设值时,将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;
第一同步模块,用于当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流。
可选的,还包括:
第二镜像模块,用于将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
可选的,还包括:
第二同步模块,用于当接收到所述第二节点发送的第二缓存释放指令后,根据所述第二缓存释放指令释放所述第一对端缓存池中的IO流,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述缓存中IO流同步的方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述缓存中IO流同步的方法执行的步骤。
本申请提供了一种缓存中IO流同步的方法,应用于双节点存储系统,该方法包括:当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;判断所述第一本地缓存池中的IO流数量是否大于预设值;若是,则将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流。
本申请通过将第一节点对应的第一本地缓存池中的IO流镜像同步至第二节点,使得第二节点具有IO流的镜像备份,当需要进行IO流下刷时,本申请仅将第一本地缓存池中的IO流下刷至第一节点对应的虚拟磁盘,而第二节点并不参与IO流的下刷操作流程。进一步,本申请在第一节点下刷IO流之后向第二节点发送释放指令以便释放第二节点中备份的IO流。因此本申请能够在双节点存储系统下刷IO流时保证数据不会被重复下刷及覆盖且保证数据的一致性。本申请同时还提供了一种缓存中IO流同步的系统、一种计算机可读存储介质和一种电子设备,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种缓存中IO流同步的方法的流程图;
图2为本申请实施例所提供的一种缓存中IO流同步的系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种缓存中IO流同步的方法的流程图。
具体步骤可以包括:
S101:当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;
其中,本实施例应用于双控存储系统,双控存储系统中可以包括两个节点。本步骤默认在此之前存在IO流首先到达upper forwarding(多路径)层,再由多路径层分发至第一节点和第二节点。作为一种优选的实施方式,上层应用(即多路径层)通过round bin(即,轮询)的方式将IO流分发至第一节点和第二节点,以使每一个节点处理的IO流的数量相等,使处理效率最大化。
本实施例默认在进行缓存初始化的时候,对每一个节点都分配两个缓存池作为本地节点IO流和对端节点IO流的内存空间,具体的在本实施例中为第一节点分配第一本地缓存池和第一对端缓存池,为第二节点分配第二本地缓存池和第二对端缓存池。其中,第一本地缓存池用于存储上层应用分配给第一节点的IO流,第一对端缓存池镜像同步第二对端缓存池中的IO流,第二本地缓存池用于存储上层应用分配给第二节点的IO流,第二对端缓存池镜像同步第一对端缓存池中的IO流。设置第一对端缓存池和第二对端缓存池的意义在于,保持第一节点对应的IO流与第二节点对应的IO流保持一致性。
S102:判断第一本地缓存池中的IO流数量是否大于预设值;若是,则进入S103;若否,则结束流程。
一般的,下刷IO流都是按照预设粒度进行下刷的,即当缓存中的IO流数量达到预设要求后一批IO流同一进行下刷,具体的,在本实施例中并不限定预设值的具体数值,本领域的技术人员可以根据实际应用情况灵活设定。需要说明的是,此处可以仅判断第一本地缓存池中的IO流数量是否大于预设值,与第一对端缓存池中的IO流数量无关。
作为一种优选的实施方式,可以在第一本地缓存池中按照是否是本地节点对应的IO流来挂载到不同的链表上,当为本地节点对应的链积攒到一定的数量后,需要对其进行落盘操作,此时只有本地节点(即本步骤中的第一节点)会进行下刷操作。作为双控存储系统,本实施例还可以存在判断第二本地缓存池中的IO流数量是否大于预设值的操作,若大于则将所述第二本地缓存池中的IO流下刷至所述第二节点对应的虚拟磁盘。
S103:将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;
其中,本步骤的操作可以具体为:按照预设粒度依次将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘。需要说明的是,本实施例默认双控存储系统中的第一节点和第二节点均有与其对应的虚拟磁盘。由于系统中两个节点缓存里面的数据是一致的,所以为了保证数据不被重复刷写,本实施例规定第一节点只将第一本地缓存池中的数据进行刷写,第二节点只将第二本地缓存池中的IO流进行刷写,第一节点和第二节点不刷写第一对端缓存池和第二对端缓存池中的IO流。
S104:当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流。
其中,本步骤默认存在判断第一本地缓存池中的IO流是否全部已经下刷至虚拟磁盘操作,当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向第二节点发送第一缓存释放指令,该第一缓存释放指令为通知第二节点本地IO流已下刷完毕的指令,当第二节点接收到第一缓存释放指令后,为了保持第一节点与第二节点的数据一致性,第二节点可以释放第二对端缓存池中的IO流。
本实施例通过将第一节点对应的第一本地缓存池中的IO流镜像同步至第二节点,使得第二节点具有IO流的镜像备份,当需要进行IO流下刷时,本申请仅将第一本地缓存池中的IO流下刷至第一节点对应的虚拟磁盘,而第二节点并不参与IO流的下刷操作流程。进一步,本实施例在第一节点下刷IO流之后向第二节点发送释放指令以便释放第二节点中备份的IO流。因此本实施例能够在双节点存储系统下刷IO流时保证数据不会被重复下刷及覆盖且保证数据的一致性。
作为一种优选的实施方式,在图1对应的实施例的基础上还可以包括以下步骤:
步骤A:将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
步骤B:当接收到所述第二节点发送的第二缓存释放指令后,根据所述第二缓存释放指令释放所述第一对端缓存池中的IO流,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
这种优选的实施方式是对图1对应的实施例的补充,当第二节点IO流下刷后,通过释放第一对端缓存池中的IO流来保持数据的一致性,避免重复下刷。在本实施例中,当IO流写到某一个节点时,该节点会将IO做镜像操作,镜像到对端节点(第一节点和第二节点互为对端节点),镜像完成后两个节点里面会保存相同的两份数据,当第一节点或第二节点根据缓存中数据量的大小做下刷操作,当第一节点或第二节点下刷完成某部分数据后,会通知对端节点将其下刷完成的数据做回收处理,如此则保证数据不会被重复下刷及覆盖,而且同时保证数据的一致性操作。
下面通过在实际应用中的实施例说明上述实施例描述的流程。
步骤1、IO流首先到达upper forwarding(多路径)层,在该层系统会利用roundbin方式对IO进行分发,如此则每个节点处理的IO量相当,处理效率最大化。
步骤2、缓存初始化时候,每个node要分配两个缓存池来分别为本地节点IO和对端节点镜像来的IO分配内存空间。分配空间大小,系统会做计算,提前给出分配值。
步骤3、每个IO流都有对应的vdisk(虚拟磁盘),vdisk在创建的时候会由用户或者是系统指定owner node(主节点),由于步骤1里面系统利用round bin的方式进行分发,则此时节点为该IO的owner,或者是对端节点为owner。但不管是否为owner,都需要对IO进行顺序处理,并且将IO镜像到对端节点后,系统会认为写IO操作完成。
步骤4、IO在缓存中会按照是否是owner节点来挂载到不同的链表上,当为owner节点的链积攒到一定的数量后,需要对其进行落盘操作,此时只有owner节点会进行下刷操作,由于系统中两个节点缓存里面的数据是一致的,所以为了保证数据不被重复刷写,系统规定只有owner节点来将缓存中的数据进行刷写。
步骤5、当owner节点将缓存中的数据成功刷写到磁盘上后,则owner节点会向对端节点。发送成功刷写IO的消息,对端节点会将对应的IO释放掉,从而保证两边的数据一致。
上述实际应用中的实施例主要利用缓存的功能,在两个node上提前创建好两个缓存池,利用缓存镜像的功能实现两个node之间的数据一致性操作。在缓存下刷的时候,owner node主导下刷,当下刷完成后,需要通知partner node释放掉owner node下刷完成的数据,如此则保证数据的一致。每个node创建两个缓存池,一个用于存放当前节点数据,另一个存放partner node镜像过来的数据,如此两个缓存池中数据可保持一致。缓存下刷的时候只是owner node进行下刷,owner node将下刷完成的数据通知给partner node,partner node再根据owner node镜像过来的消息,将对应的数据释放掉,同样可以保证数据的一致性,如此还可以避免重复下刷。
请参见图2,图2为本申请实施例所提供的一种缓存中IO流同步的系统的结构示意图;
该系统可以包括:
第一镜像模块100,用于当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;
判断模块200,用于判断所述第一本地缓存池中的IO流数量是否大于预设值;
下刷模块300,用于当所述IO流数量大于所述预设值时,将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;
第一同步模块400,用于当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流。
本实施例通过将第一节点对应的第一本地缓存池中的IO流镜像同步至第二节点,使得第二节点具有IO流的镜像备份,当需要进行IO流下刷时,本申请仅将第一本地缓存池中的IO流下刷至第一节点对应的虚拟磁盘,而第二节点并不参与IO流的下刷操作流程。进一步,本实施例在第一节点下刷IO流之后向第二节点发送释放指令以便释放第二节点中备份的IO流。因此本实施例能够在双节点存储系统下刷IO流时保证数据不会被重复下刷及覆盖且保证数据的一致性。
进一步的,还包括:
第二镜像模块,用于将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
进一步的,还包括:
第二同步模块,用于当接收到所述第二节点发送的第二缓存释放指令后,根据所述第二缓存释放指令释放所述第一对端缓存池中的IO流,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (6)

1.一种缓存中IO流同步的方法,其特征在于,应用于双节点存储系统,所述IO流同步方法包括:
当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;
判断所述第一本地缓存池中的IO流数量是否大于预设值;
若是,则将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;
当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流;
其中,还包括:
将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同;
当接收到所述第二节点发送的第二缓存释放指令后,根据所述第二缓存释放指令释放所述第一对端缓存池中的IO流,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
2.根据权利要求1所述方法,其特征在于,所述第一本地缓存池中的IO流为上层应用以轮询的方式分配的IO流。
3.根据权利要求1所述方法,其特征在于,将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘包括:
按照预设粒度依次将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘。
4.一种缓存中IO流同步的系统,其特征在于,应用于双节点存储系统,所述IO流同步系统包括:
第一镜像模块,用于当第一节点对应的第一本地缓存池接收到IO流时,将所述第一本地缓存池中的IO流镜像同步至第二节点对应的第二对端缓存池;
判断模块,用于判断所述第一本地缓存池中的IO流数量是否大于预设值;
下刷模块,用于当所述IO流数量大于所述预设值时,将所述第一本地缓存池中的IO流下刷至所述第一节点对应的虚拟磁盘;
第一同步模块,用于当所述第一本地缓存池中的全部IO流下刷至所述虚拟磁盘后,向所述第二节点发送第一缓存释放指令,以便所述第二节点根据所述第一缓存释放指令释放所述第二对端缓存池中的IO流;
第二镜像模块,用于将所述第二节点对应的第二本地缓存池中的IO流镜像至所述第一节点对应的第一对端缓存池,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同;
第二同步模块,用于当接收到所述第二节点发送的第二缓存释放指令后,根据所述第二缓存释放指令释放所述第一对端缓存池中的IO流,以使所述第一节点对应的IO流与所述第二节点对应的IO流相同。
5.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至3任一项所述缓存中IO流同步的方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述缓存中IO流同步的方法的步骤。
CN201811333914.4A 2018-11-09 2018-11-09 一种缓存中io流同步的方法、系统及相关组件 Active CN109407998B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811333914.4A CN109407998B (zh) 2018-11-09 2018-11-09 一种缓存中io流同步的方法、系统及相关组件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811333914.4A CN109407998B (zh) 2018-11-09 2018-11-09 一种缓存中io流同步的方法、系统及相关组件

Publications (2)

Publication Number Publication Date
CN109407998A CN109407998A (zh) 2019-03-01
CN109407998B true CN109407998B (zh) 2022-02-18

Family

ID=65472582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811333914.4A Active CN109407998B (zh) 2018-11-09 2018-11-09 一种缓存中io流同步的方法、系统及相关组件

Country Status (1)

Country Link
CN (1) CN109407998B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111881067B (zh) * 2020-07-30 2022-07-08 北京浪潮数据技术有限公司 一种内存申请方法、装置、电子设备和介质
CN113986148B (zh) * 2021-12-27 2022-03-22 苏州浪潮智能科技有限公司 一种数据读取方法、装置及相关设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101149668A (zh) * 2007-11-02 2008-03-26 杭州华三通信技术有限公司 一种包括读写缓存的存储设备及缓存实现方法
CN101840309A (zh) * 2009-10-28 2010-09-22 创新科存储技术有限公司 多路径环境下双控磁盘阵列的访问控制方法及系统
CN102681794A (zh) * 2012-04-23 2012-09-19 浪潮(北京)电子信息产业有限公司 基于双控制器实现磁盘冗余阵列保护的方法及系统
CN103150267A (zh) * 2013-02-21 2013-06-12 浪潮电子信息产业股份有限公司 一种多控制器间的缓存同步方法
CN106775472A (zh) * 2016-12-09 2017-05-31 郑州云海信息技术有限公司 一种控制器缓存方法、存储控制器及多控制器存储系统
CN107817953A (zh) * 2017-11-20 2018-03-20 杭州宏杉科技股份有限公司 一种双控存储设备访问硬盘的方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7689759B2 (en) * 2007-08-29 2010-03-30 International Business Machines Corporation Method and apparatus for providing continuous access to shared tape drives from multiple virtual tape servers within a data storage system
US8120935B2 (en) * 2011-03-29 2012-02-21 American Superconductor Corporation Power converter with dual ring network control

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101149668A (zh) * 2007-11-02 2008-03-26 杭州华三通信技术有限公司 一种包括读写缓存的存储设备及缓存实现方法
CN101840309A (zh) * 2009-10-28 2010-09-22 创新科存储技术有限公司 多路径环境下双控磁盘阵列的访问控制方法及系统
CN102681794A (zh) * 2012-04-23 2012-09-19 浪潮(北京)电子信息产业有限公司 基于双控制器实现磁盘冗余阵列保护的方法及系统
CN103150267A (zh) * 2013-02-21 2013-06-12 浪潮电子信息产业股份有限公司 一种多控制器间的缓存同步方法
CN106775472A (zh) * 2016-12-09 2017-05-31 郑州云海信息技术有限公司 一种控制器缓存方法、存储控制器及多控制器存储系统
CN107817953A (zh) * 2017-11-20 2018-03-20 杭州宏杉科技股份有限公司 一种双控存储设备访问硬盘的方法及装置

Also Published As

Publication number Publication date
CN109407998A (zh) 2019-03-01

Similar Documents

Publication Publication Date Title
JP6713906B2 (ja) ソリッドステートドライブ及びその動作方法
KR102352257B1 (ko) 분산 스토리지 시스템 노드 및 그것의 동작 방법
JP4594928B2 (ja) フラッシュバックデータベース
CN102239479B (zh) 使用写队列机制实施多阵列一致性组的方法
JP5191062B2 (ja) ストレージ制御システム、ストレージ制御システムに関する操作方法、データ・キャリア及びコンピュータ・プログラム
CN102265277B (zh) 数据存储系统的操作方法和装置
CN109376197B (zh) 一种数据同步方法、服务器及计算机存储介质
CN111104069B (zh) 分布式存储系统的多区域数据处理方法、装置及电子设备
CN105426271B (zh) 对分布式存储系统的锁管理的方法和装置
JP2007286860A (ja) データ転送方法及び情報処理装置
CN107018185B (zh) 云存储系统的同步方法和装置
CN103152390B (zh) 分布式存储系统的节点配置方法、装置、节点及系统
US9864772B2 (en) Log-shipping data replication with early log record fetching
CN109407998B (zh) 一种缓存中io流同步的方法、系统及相关组件
CN114637475A (zh) 一种分布式存储系统控制方法、装置及可读存储介质
CN110990432A (zh) 一种跨机房同步分布式缓存集群的装置和方法
CN104346373A (zh) 分区日志队列同步管理方法及设备
CN108197159A (zh) 基于分布式文件系统的数据读取、写入方法及装置
CN110099084B (zh) 一种保证存储服务可用性的方法、系统及计算机可读介质
CA2969210A1 (en) Method, apparatus, and computer-readable medium for processing a message by a message broker system
CN109739435A (zh) 文件存储和更新方法及装置
CN109871295B (zh) 一种数据备份方法、备份装置、电子设备及存储介质
CN106855834B (zh) 一种数据备份方法、装置和系统
CN105808374A (zh) 一种快照处理方法及相关设备
CN116400855A (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