CN113342261A - 伺服器与应用于伺服器的控制方法 - Google Patents
伺服器与应用于伺服器的控制方法 Download PDFInfo
- Publication number
- CN113342261A CN113342261A CN202110226132.6A CN202110226132A CN113342261A CN 113342261 A CN113342261 A CN 113342261A CN 202110226132 A CN202110226132 A CN 202110226132A CN 113342261 A CN113342261 A CN 113342261A
- Authority
- CN
- China
- Prior art keywords
- data
- node
- processor
- memory
- server
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 239000007787 solid Substances 0.000 claims abstract description 22
- 238000004891 communication Methods 0.000 claims description 43
- 230000007246 mechanism Effects 0.000 claims description 11
- 230000002093 peripheral effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 238000013403 standard screening design Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0629—Configuration or reconfiguration of storage systems
-
- 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
- G06F3/065—Replication mechanisms
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Hardware Redundancy (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种伺服器与应用于伺服器的控制方法。伺服器包含一固态硬盘、一第一节点及一第二节点,其中该第一节点包含一第一处理器及一第一存储器,该第二节点包含一第二处理器及一第二存储器,当该第一处理器藉由网络从其他装置接收一数据时,该第一处理器将该数据储存在该第一存储器中,并进一步将该数据发送至该第二节点,当该第二处理器从该第一节点接收该数据时,该第二处理器将该数据储存在该第二存储器中并且更向该第一节点发送一通知,以报告该数据已成功储存在该第二存储器中,并且只有在该第一处理器接收该通知之后,该第一处理器才开始将该数据写入该固态硬盘。
Description
技术领域
本发明关于存储器控制,尤指一种用以执行全快闪存储器阵列(All FlashArray,简称AFA)伺服器的数据存取管理的方法以及相关设备(apparatus)诸如AFA伺服器及其控制电路等。
背景技术
数据储存伺服器可以被设置来储存一个或多个用户的用户数据,并且在现有技术中已经提出了针对数据储存伺服器的各种控制方法,以便给用户带来良好的用户体验。由于非挥发性(non-volatile,NV)存储器诸如快闪存储器(Flash memory)已经被广泛应用于各种数据储存装置诸如固态硬盘(solid state drive,SSD)等,现有技术已提出将数据储存伺服器用非挥发性存储器作为其储存介质的非挥发性存储器类型数据储存伺服器来实现,例如其中安装有多个SSD的AFA伺服器。但是,可能会出现某些问题。例如,存取该多个SSD中的任一SSD的快闪存储器的管理会很复杂。为了确保这个SSD中的快闪存储器的存取控制符合相关规范,这个SSD中的快闪存储器的控制器通常配备有某些管理机制以妥善地管理其内部操作。虽然SSD制造商可能试着使SSD看起来像是替代硬式磁碟机(HDD)的不错的解决方案,但是SSD的某些特性与HDD完全不同。如此一来,上述控制方法对于安装有多个SSD的AFA伺服器可能变得不适合或无效,进而导致AFA伺服器的整体效能下降。因此,需要以在没有副作用或较不会带来副作用的情况下提供一种新颖的方法和相关的架构来解决这些问题。
发明内容
本发明之一目的在于提供一种关于一伺服器的控制方法,以解决上述的问题。
本发明一实施例揭示了一种包含一固态硬盘(solid state drive,SSD)、一第一节点以及一第二节点的伺服器,该第一节点包含一第一网络模块用以经由网络与一其他电子装置通信、一第一处理器、一第一存储器以及一第一通信电路耦接至该第一处理器以及该第一存储器,该第二节点包含一第二网络模块用以经由网络与该其他电子装置通信、一第二处理器、一第二存储器以及一第二通信电路耦接至该第二处理器、该第二存储器以及该第一通信电路,当该第一处理器藉由该第一网络模块从该其他电子装置接收一数据时,该第一处理器将该数据储存于该第一存储器中,且该第一处理器进一步将该数据发送至该第二节点;当该第二处理器藉由该第二通信电路从该第一节点接收该数据时,该第二处理器将该数据储存于该第二存储器中,且该第二处理器进一步将一通知发送至该第一节点以报告该数据已成功储存于该第二存储器中;并且只有在该第一处理器接收到该第二节点的该通知之后,该第一处理器才开始将该数据写入该固态硬盘。
本发明一实施例揭示了一种应用于一伺服器的控制方法,包含:将该伺服器内的一第一节点设置为一主装置;将该伺服器内的一第二节点设置为一从属装置;控制该第一节点以藉由网络从一其他电子装置接收一数据;将该数据储存到该第一节点内的一第一存储器中;从该第一节点向该第二节点发送该数据;将该数据储存到该第二节点内的一第二存储器中,且该第二节点向该第一节点发送一通知,以报告该数据已成功储存在该第二存储器中;以及只有在该第一处理器从该第二节点收到该通知后,才开始将该数据写入一固态硬盘(solid state drive,SSD)。
附图说明
图1是依据本发明一实施例的一全快闪存储器阵列(All Flash Array,简称AFA)伺服器的示意图。
图2是依据本发明一实施例中如图1所示的该AFA伺服器的某些实施细节的示意图。
图3是依据本发明一实施例所绘示的如图1所示的该AFA伺服器的一双节点架构的示意图。
图4是依据本发明一实施例所绘示的如图1所示的多个节点的任一节点中的某些程序模块的示意图。
图5是依据本发明一实施例所绘示的用于执行AFA伺服器的一写入控制方案的流程图。
图6是依据本发明一实施例所绘示的用于执行AFA伺服器的一快取镜像机制的示意图。
【符号说明】
10A,10B:机架顶交换机
12A,12B:固态硬盘群组
100:全快闪存储器阵列伺服器
100A,100B:节点
100S:固态硬盘
100R:背板电路
110A,110B:处理器
112:程序模块
112A,112B:程序模块
120A,120B:动态随机存取存储器
122A,122B:复制到快闪存储器固态硬盘
130A,130B:网络接口模块
132A,132B,134A,134B:网络接口电路
140A,140B:非透明网桥通信电路
150A,150B:主机板管理控制器
152A,152B:暂存器电路
160A,160B:储存接口模块
162A,162B,164A,164B:储存接口电路
170A,170B:备用电源单元
610A,610B:表
500,502,504,506,508,510,512,514:步骤
具体实施方式
图1是依据本发明一实施例的一全快闪存储器阵列(All Flash Array,简称AFA)伺服器100的示意图。AFA伺服器100可以包含多个节点,诸如二节点,分别为节点100A和节点100B,其中该多个节点中的任一个(例如节点100A和节点100B的其中一个)可以具有与该多个节点中的另一个(例如节点100A和节点100B中的另一个)相同或相似的架构。例如,节点100A可包含可以被统称为处理器110A的至少一处理器(例如,一个或多个处理器诸如一个或多个中央处理单元(Central Processing Units.CPU)),并包含一动态随机存取存储器(Dynamic Random Access Memory,DRAM)120A、一复制到快闪存储器(Copy-to-Flash,简称C2F)固态硬盘(Solid State Drive,简称SSD)122A、包含有一个或多个网络接口(interface,IF)电路诸如网络接口电路132A和134A(分别标示为“网络IF CKT”以求简明)的一网络接口(IF)模块130A、一非透明网桥(Non-Transparent Bridge,简称NTB)模块(或NTB)诸如一NTB通信电路140A(标示为“NTB CKT”以求简明)、一主机板管理控制器(BoardManagement Controller,简称BMC)150A、一暂存器(register)电路152A(标示为“REG CKT”以求简明)其耦接至BMC 150A、一储存接口(IF)模块160A其包含一个或多个储存接口电路诸如储存接口电路162A和164A(分别标示为“储存IF CKT”以求简明)以及一备用电源诸如一备用电源单元170A(例如,电池),其中这些组件的至少一部分(例如,一部分或全部)可以藉由节点100A的总线彼此耦接,但本发明不限于此。依据某些实施例,节点100A的架构可以作不同变化。
相似地,节点100B可包含可以统称为处理器110B的至少一处理器(例如,一个或多个处理器诸如一个或多个CPU),并包含一DRAM 120B、一C2F SSD 122B、包含有一个或多个网络接口(IF)电路诸如网络接口电路132B和134B(分别标示为“Network IF CKT”以求简明)的一网络接口(IF)模块130B、一NTB模块(或NTB)诸如一NTB通信电路140B标示为「NTBCKT」以求简明)、一BMC 150B、一暂存器电路152B(标示为“Register CKT”以求简明)其耦接至BMC 150B、一储存接口(IF)模块160B其包含一个或多个储存接口电路诸如储存接口电路162B和164B(分别标示为“Storage IF CKT”以求简明)以及一备用电源诸如一备用电源单元170B(例如,电池),其中这些组件的至少一部分(例如,一部分或全部)可以藉由节点100B的总线彼此耦接,但本发明不限于此。依据某些实施例,节点100B的架构可以作不同变化。
如图1所示,AFA伺服器100可以还包含耦接到节点100A和100B的多个SSD,诸如一SSD群组12A和一SSD群组12B,SSD群组12A和12B可以耦接到节点100A和100B,且可以预设分别连接/连线(link)到节点100A和100B,其中节点100A和100B与SSD群组12B和12A之间的虚线可指出多个可选的(optional)连线。举例来说,节点100A可以利用储存接口模块160A以启动储存接口电路164A和SSD群组12A之间的连线,以存取SSD群组12A中的数据,且节点100B可以利用储存接口模块160B启动储存接口电路164B和SSD群组12B之间的连线,以进一步存取SSD群组12B中的数据。当需要时,节点100A和100B与SSD群组12A和12B之间的连线关系可以改变。例如节点100A可以利用储存接口模块160A来启动储存接口电路162A和SSD群组12B之间的连线,以存取SSD群组12B中的数据,且节点100B可以利用储存接口模块160B来启动储存接口电路162B和SSD群组12A之间的连线,以存取SSD群组12A中的数据。
运行着程序模块112A的处理器110A可用以控制节点100A的操作。DRAM120A可用以缓冲数据(例如待写入SSD群组12A的数据),并且C2F SSD 122A可用以将DRAM 120A中的缓冲后数据(简称“缓冲数据”)复制到C2F SSD 122A中的快闪存储器中,以在需要时防止缓冲数据的数据遗失(data loss)。举例来说,C2F SSD 122A可以藉由安装在节点100A内的主电路板(例如主机板或母板)上的一扩充卡诸如一M.2模块(例如具有符合M.2规范的连接器的电路板)来实现,其中C2F SSD 122A可以包含一储存控制器、一个或多个快闪存储器芯片等,但本发明不限于此。另外,包含有网络接口电路132A和134A的网络接口模块130A可用以将节点100A(例如该主电路板上的处理器110A、DRAM 120A等)藉由至少一网络交换机诸如机架顶(top-of-rack,可简称TOR)交换机10A和10B耦接到至少一网络(例如区域网络(Local Area Network,LAN)、广域网络(Wide Area Network,WAN)、网际网络(Internet)等)。另外,包含储存接口电路162A和164A的储存接口模块160A可用以将节点100A(例如该主电路板上的处理器110A、DRAM 120A等)耦接到多个快闪储存装置(例如节点100A和100B共享的SSD群组12A和12B),用以存取(例如读取或写入)该多个快闪储存装置中的数据。如此一来,AFA伺服器100可用以藉由节点100A提供用户储存服务。
相似地,运行着程序模块112B的处理器110B可用以控制节点100B的操作。DRAM120B可用以缓冲数据(例如待写入SSD群组12B的数据),并且C2F SSD122B可用以将DRAM120B中的缓冲后数据(简称“缓冲数据”)复制到C2F SSD122B中的快闪存储器中,以在需要时防止缓冲数据的数据遗失。举例来说,C2F SSD 122B可以藉由安装在节点100B内的主电路板(例如主机板或母板)上的一扩充卡诸如一M.2模块(例如具有符合M.2规范的连接器的电路板)来实现,其中C2F SSD 122B可以包含一储存控制器、一个或多个快闪存储器芯片等,但本发明不限于此。另外,包含有网络电路132B和134B的网络接口模块130B可用以将节点100B(例如该主电路板上的处理器110B、DRAM 120B等)藉由至少一网络交换机诸如TOR交换机10A和10B耦接到至少一网络(例如LAN、WAN、网际网络等)。另外,包含储存接口电路162B和164B的储存接口模块160B可用以将节点100B(例如该主电路板上的处理器110B、DRAM 120B等)耦接到多个快闪储存装置(例如节点100A和100B共享的SSD群组12A和12B),用以存取(例如读取或写入)该多个快闪储存装置中的数据。如此一来,AFA伺服器100可用以藉由节点100B提供用户储存服务。
关于节点100A及其对等(peer)节点(例如节点100B)之间的通信,该NTB模块(例如NTB通信电路140A)可用以藉由在节点100A和100B之间的一NTB路径(标示为“NTB”以求简明)与对应的NTB模块(例如NTB通信电路140B)通信,使节点100A和100B的数据和储存状态同步,并进一步使它们相同。相似地,关于节点100B及其对等节点(例如节点100A)之间的通信,该NTB模块(例如NTB通信电路140B)可用以藉由在节点100A和100B之间的该NTB路径(标示为“NTB”以求简明)与对应的NTB模块(例如NTB通信电路140A)通信,使节点100A和100B的数据和储存状态同步,并进一步使它们相同。尤其,诸如NTB通信电路140A和140B的NTB模块可以提供节点100A和100B之间一传输桥的功能以及分离节点100A和100B的各自的地址域以使节点100A和100B分别有彼此独立的地址域,以在没有任何地址冲突的情况下提供/加强节点100A和100B之间的通信。例如,节点100A和100B的各个总线可以符合快捷外设组件互联(Peripheral Component Interconnect Express,PCIe)标准,并且节点100A和100B中的每一节点的NTB模块可以被认为是该节点的一端点(endpoint),其中节点100A和100B可以透过该传输桥彼此通信和共享装置,但本发明不限于此。依据某些实施例,诸如NTB通信电路140A和140B的NTB模块可以透过客制化的网络接口电路来实现,以控制节点100A和100B彼此通信,使得它们就像正在透过网络接口电路进行通信一样。
在运行着程序模块112A的处理器110A和运行着程序模块112B的处理器110B的控制下,节点100A和100B可维持和监控NTB上的脉搏,以确定对等节点的可用性,以进行高可用性(High Availability,HA)控制。举例来说,节点100B可用以向节点100A发送脉搏信号,且节点100A可用以检测并监控来自节点100B的脉搏信号以确定节点100B的可用性,其中来自节点100B的脉搏信号是否存在可以指出节点100B是否可用(或健康程度)。对于另一个例子来说,节点100A可用以向节点100B发送脉搏信号,并且节点100B可用以检测并监控来自节点100A的脉搏信号以确定节点100A的可用性,其中来自节点100A的脉搏信号是否存在可以指出节点100A是否可用(或健康程度)。依据图1所示的架构,如图1所示,当节点100A和100B其中一个不可使用时,节点100A和100B其中的另一个可以继续为用户提供AFA伺服器100的储存服务。
需注意的是,AFA伺服器100配备了超过一个的节点间(inter-node)通信路径(例如节点之间的超过一个的相互通信路径)。除NTB路径外,AFA伺服器100还可配置为具有一个或多个其他通信路径,例如BMC 150A和150B之间的一BMC路径,其中BMC 150A可用以管理节点100A的硬件层的至少一部分(例如一部分或全部),而BMC 150B可用以管理节点100B的硬件层的至少一部分(例如一部分或全部)。关于节点100A及其对等节点(例如节点100B)之间的通信,BMC 150A可用以透过该BMC路径与BMC 150B通信以存取(例如读取或写入)暂存器电路152B中的一个或多个暂存器的一个或多个暂存器值,以在节点100B上进行状态检查操作等。相似地,关于节点100B及其对等节点(例如节点100A)之间的通信,BMC 150B可用以透过该BMC路径与BMC 150A通信以存取(例如读取或写入)暂存器电路152A中一个或多个暂存器的一个或多个暂存器值,以在节点100A上进行状态检查操作等。尤其,BMC 150A与BMC150B可独立地管理节点100A与100B的各自的硬件层,而不需要仰赖处理器110A与110B。举例来说,当处理器110A发生故障时,BMC 150A可以处理节点100A的未完成的工作,而当处理器110B发生故障时,BMC 150B可以处理节点100B的未完成的工作,但本发明不限于此。依据某些实施例,BMC 150A和150B可用以分别接管(take over)节点100A和100B,以进行紧急处理操作来减少数据遗失的机率。
依据本实施例,AFA伺服器100可以被配置为由多个类型的电源供电。节点100A和100B的每一节点可以包含至少一主电源(例如至少一电源供应器),用以于主电源处于正常电源状况下提供电力给该节点的其他组件。举例来说,节点100A的主电源可以供电给节点100A的主电路板,并且节点100B的主电源可以供电给节点100B的主电路板。当检测到一个或多个节点(例如节点100A及/或节点100B)的异常电源状况时,AFA伺服器100中的一个或多个相关的备用电源(例如备用电源单元170A及/或备用电源单元170B)可用以提供备用电力。举例来说,当节点100A的主电源发生电源故障时,备用电源单元170A可以供电给节点100A的主电路板(例如处理器110A、DRAM 120A、C2F SSD 122A、NTB通信电路140A、BMC150A、暂存器电路152A等),当节点100B的主电源发生电源故障时,备用电源单元170B可以供电给节点100B的主电路板(例如处理器110B、DRAM 120B、C2F SSD 122B、NTB通信电路140B、BMC150B、暂存器电路152B等)。
依据某些实施例,节点100A和100B的每一节点(例如节点100A和100B的各自的主电路板中的每一节点)可以还包含多个感测器(sensor)/检测器(detector)用以至少对该节点的组件进行检测以产生检测结果(例如从这些传感器/检测器中的任一个所获得的状态信息)。举例来说,这些检测结果中的一功率检测结果可以表示该节点的主电源的功率状态,尤其,可以指出该节点是否发生异常电源状况,以供触发该节点启动备用电源(例如备用电源单元170A或备用电源单元170B)以提供备用电力。
图2依据本发明一实施例绘示图1所示的AFA伺服器100的某些实施细节,其中,可以将SSD 100S作为图1所示实施例中提到的多个SSD的例子。除了节点100A和100B以及SSD100S,AFA伺服器100可还包含一背板(backplane)电路100R。背板电路100R可用以将诸如SSD群组12A和12B的SSD 100S电气连接到节点100A和100B。举例来说,背板电路100R可以藉由具有相关连接器等的背板电路板来实现。另外,可以在背板电路100R内实现NTB通信电路140A和140B之间的该NTB路径的局部(partial)路径,以及BMC 150A和150B之间的该BMC路径的局部路径。由于该BMC路径和该NTB路径中的每一路径都不通过可能易于损坏的任何电缆,所以节点100A和100B之间的通信路径很稳健,且因此节点100A和100B可以保持有效的通信以及相关的控制,以确保AFA伺服器100的整体效能及正常运行。
依据某些实施例,SSD 100S中的每一SSD可以是一单埠(single port)SSD,尤其,可以是一单埠的基于装置的(device-based)SSD。另外,藉助于背板电路100R,AFA伺服器100可以支援SSD 100S中的每一SSD的热插拔。
依据某些实施例,两个节点100A和100B中的一个可以在AFA伺服器100的高可用性(High Availability简称HA)架构中用来作为一现用节点(active node),也就是扮演该现用节点的角色,并且两个节点100A和100B中的另一个可在AFA伺服器100的该HA架构中用来作为一待命节点(standby node),也就是扮演该待命节点的角色。诸如现用节点和待命节点的两个节点100A和100B可以彼此互动,尤其,可以藉由至少两条通信路径(诸如NTB通信电路140A和140B之间的NTB路径以及BMC 150A和150B之间的BMC路径)来交换节点信息,并且可以藉由NTB路径来同步数据,但本发明不限于此。依据某些实施例,AFA伺服器100可以配备有超过两个的节点间(inter-node)通信路径(例如节点之间的超过两个的相互通信路径)。
图3是依据本发明一实施例所绘示的如图1所示的AFA伺服器100的一双节点架构的示意图。依据本实施例,节点100A和100B可以被分别配置为该现用节点和该待命节点,但本发明不限于此。举例来说,节点100A和100B可以在需要时交换它们所扮演的角色。如图3所示,除了某些硬件(hardware,HW)组件诸如图1或图2所示的架构中的部分组件外,还可绘示某些软件(software,SW)程序/程序,例如HA框架程序、网络(Web)伺服器程序、数据库(database)程序、操作于一服务模式的储存控制模块程序以及操作于一待机模式的储存控制模块程序(分别标示为“HA框架”、“Web伺服器”、“数据库”、“于服务模式下的储存控制模块”以及“于待机模式下的储存控制模块”以求简明)以指出AFA伺服器100中的关联互动,其中,上述程序的名称分别代表其相关功能。
运行于节点100A上的软件程序(例如,HA框架程序,Web伺服器程序,数据库程序和操作于该服务模式的储存控制模块程序)可作为程序模块112A的例子,并且运行于节点100B上的软件程序(例如,HA框架程序,Web伺服器程序,数据库程序和操作于该待机模式的储存控制模块程序)可作为程序模块112B的例子,但本发明不限于此。另外,网络接口模块130A的该一个或多个网络接口电路可还包含网络接口电路136A,并且网络接口模块130B的该一个或多个网络接口电路可还包含网络接口电路136B。因此,AFA伺服器100可以配备有至少三个节点间(inter-node)通信路径(例如节点之间的至少三个相互通信路径),诸如NTB路径、BMC路径以及网络接口电路136A和136B之间的网络路径。举例来说,节点100A和100B可用以藉由NTB路径进行快取镜像(cache mirroring)操作,并透过BMC路径检查本地/远端控制器状态,以及藉由网络接口电路136A和136B之间的网络路径进行额外的通信操作。
图4是依据本发明一实施例所绘示的如图1所示的多个节点100A与100B的任一(例如每一)节点中的程序模块112的示意图。例如,程序模块112可以代表运行在节点100A的处理器110A上的程序模块112A或运行在节点100B的处理器110B上的程序模块112B。如图4所示,程序模块112可以包含某些主程序模块,例如储存协定及区块输入/输出(IO)接口模块、储存快取模块、储存池模块、储存服务连续HA模块、储存功能模块以及储存管理模块(分别标示为“储存协定及区块IO接口”、“储存快取”、“储存池”、“储存服务连续HA”、“储存功能”以及“储存管理”以求简明),其中这些主程序模块中的任一程序模块可以包含一个或多个子模块。另外,程序模块112中的某些程序模块之间的箭头指出这些程序模块可以彼此在各自所属的多个层的程序模块之间互动。举例来说,储存协定及区块IO接口模块可以被视为储存快取模块上方的一上层(例如一上层程序模块),储存池模块可以被视为储存快取模块下方一下层(例如一下层程序模块),储存功能模块和储存快取模块可被安排在一中间层以作为中间层程序模块,其中储存协定及区块IO接口模块以及储存池模块可用以与客户端装置和SSD群组互动,但本发明不限于此。当需要时,该节点可以触发其他程序模块与这些程序模块中的一个或多个进行互动。
储存协定及区块IO接口模块可以包含某些子模块诸如小型计算机系统接口(Small Computer System Interface,简称SCSI)模块、网际网络SCSI(Internet SCSI,简称iSCSI)模块和区块装置(Block Device)模块(分别标示为“SCSI”、“iSCSI”和“区块装置”以求简明)。储存快取模块可以包含某些子模块诸如使用软件实现的永久存储器(Persistent Memory using SW implementation)模块和写入缓冲模块(Write Buffermodule;也可称为“写入缓冲器模块”),于图中分别标示为“永久存储器(软件实现)”和“写入缓冲”以求简明。储存池模块可以包含一子模块诸如快闪存储器阵列(Flash Array)模块(为简便起见标示为“快闪存储器阵列”)。储存服务连续HA模块可以包含一子模块诸如HA框架模块(标示为“HA框架”以求简明)。储存功能模块可以包含某些子模块诸如卷管理器(Volume Manager)模块和数据减少模块(分别标示为“卷管理器”和“数据减少”以求简明),其中数据减少模块可以包含某些子模块诸如压缩引擎(Compression Engine)模块和重复数据删除引擎(Deduplication Engine)模块,可以分别称为“压缩引擎”和“重复数据删除引擎”。储存管理模块可以包含某些子模块诸如网络(Web)用户接口(User Interface,UI)模块、应用程序编程接口(Application Programming Interface,API)伺服器模块、请求代理(Request Broker)模块和数据库模块(分别标示为“网络UI”、“API伺服器”、“请求代理”和“数据库”以求简明)。上列模块的名称分别指出其相关功能。为了便于理解,对某一模块诸如卷管理器模块、压缩引擎模块、重复数据删除引擎模块等而言,某些实施例中所提到的咨询(consult)该模块的操作可包含对这个模块进行呼叫、查询等操作以从它取得对应的处理结果,但本发明不限于此。
依据某些实施例,AFA伺服器100(例如,该现用节点,诸如节点100A和100B的其中之一)可用以从AFA伺服器100外部的客户端装置接收请求诸如写入请求、读取请求等,并分别因应这些请求来操作。
图5是依据本发明一实施例所绘示的用于执行AFA伺服器100的一写入控制方案的流程图。在步骤500中,AFA伺服器100被启动电源(power on),且AFA伺服器100可以经由至少一网络(例如,LAN,WAN,网际网络等)以及TOR交换机10A和10B与其他电子装置通信。在步骤502中,AFA伺服器100的一节点作为一主装置,而另一节点则作为一从属装置。在本实施例中,节点100A作为可以经由TOR交换机10A和10B与其他电子装置通信并存取SSD 100S的主装置,并且当节点100A正常工作时,节点100B作为不允许存取SSD 100S的从属装置。在步骤504中,处理器110A在DRAM 120A内分配一DRAM空间给一写入缓冲器使用,并且处理器110A更通知节点100B的处理器110B在DRAM 120B内分配一DRAM空间给一写入缓冲器使用,其中DRAM 120A/120B内的该写入缓冲器可以具有任一合适的大小,诸如16GB(gigabytes)或32GB。在步骤506中,节点100A从一用户接收一数据,即该用户经由网络将该数据写入AFA伺服器100。在步骤508中,节点100A将该数据写入DRAM 120A内的该DRAM空间中,且处理器110A更建立图6所示的一表610A,其中表610A包含一独特识别码(unique ID)(例如用户识别码(ID))、该用户侧的数据的一逻辑地址、一数据长度以及DRAM 120A中的数据的一起始地址。在步骤510中,节点100A执行一快取镜像机制,以藉由NTB将数据及对应的一信息(information)发送至节点100B,其中,对应的信息可以是表610A的至少一部分,换句话说,对应的信息可以包含该用户ID、用户侧的数据的该逻辑地址和该数据长度。在步骤512中,节点100B的处理器110B将数据写入DRAM 120B内的该DRAM空间,且处理器110B更建立图6所示的表610B,其中表610B包含该用户ID、该逻辑地址、该数据长度以及DRAM 120B中的数据的一起始地址。在将数据完全写入DRAM 120B之后,节点100B的处理器110B向节点100A发送一通知以报告该快取镜像操作已经完成。在步骤514中,在处理器110A从节点100B接收到该通知之后(且仅在接收到该通知之后),节点100A才会经由TOR交换机10A/10B向用户的电子装置发送一讯息(massage)以通知数据已被成功接收,然后处理器110A开始将储存在DRAM120A中的数据移动到SSD100S中。在一实施例中,当储存在DRAM 120中且能够被移动的数据的大小超过一预定值(诸如64KB(kilobytes))时,才会将储存在DRAM 120A中的该数据移动到SSD 100S。
另外,当将储存在DRAM 120A中的数据成功移动到SSD 100S时,处理器110A删除DRAM 120A中的数据,并且更新表610A以移除该数据的信息。再者,处理器110A更告知节点100B该数据被储存在SSD 100S中,使处理器110B可以删除DRAM 120B中的数据,且表610B被更新以移除该数据的信息。
图5以及图6所示的上述实施例中的快取镜像机制是使用于一故障转移(failover)机制,以保护已经写入DRAM 120A但尚未写入SSD 100S的数据。也就是说,一旦主装置将接收到的数据储存在DRAM 120A中,则主装置立即将数据发送到从属装置,使得主装置和从属装置都具有该数据。因此,由于主装置和从属装置都具有该数据,所以一旦主装置无法正常工作,从属装置就可以立即代替主装置以执行应该由主装置执行的操作,即从属装置在一适当时间将储存在DRAM 120B中的数据移动到SSD 100S。
详细来说,如果主装置(例如节点100A)突然无法存取SSD 100S,例如主装置的作业系统崩溃、主装置内的存储器或一储存装置损坏、一下游连接埠(downstream port)被禁用(disable)或任何其他故障原因,AFA伺服器100可以立即执行故障转移机制,亦即由从属装置(例如节点100B)来代替主装置。具体来说,主装置和从属装置一直彼此通信,从属装置可以检测到主装置是否能够存取SSD 100S,例如,如果从属装置从主装置接收到指示一故障转移指令的一特殊信号、及/或从属装置未接收到从主装置定期发送的一信号、及/或从属装置将一信号发送到主装置但未接收到回应、或任一其他故障检测机制,则从属装置可以确定主装置无法存取SSD100S。
简要地总结,在本发明的快取镜像机制和故障转移机制中,AFA伺服器具有一主装置和一从属装置,并且主装置和从属装置藉由使用NTB进行通信。每当主装置接收到需要写入SSD的数据时,主装置都会将数据发送到从属装置,以使主装置和从属装置都具有该数据。一旦主装置无法正常工作,从属装置可立即代替主装置以将数据储存到SSD中。综合以上所述特点,藉由使用本发明的实施例,AFA伺服器可以为数据提供更好的保护。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (16)
1.一种伺服器,包含:
一固态硬盘(solid state drive,SSD);
一第一节点,包含:
一第一网络模块,用以经由网络与一其他电子装置通信;
一第一处理器;
一第一存储器;以及
一第一通信电路,耦接至该第一处理器以及该第一存储器;
一第二节点,包含:
一第二网络模块,用以经由网络与该其他电子装置通信;
一第二处理器;
一第二存储器;以及
一第二通信电路,耦接至该第二处理器、该第二存储器以及该第一通信电路;
其中当该第一处理器藉由该第一网络模块从该其他电子装置接收一数据时,该第一处理器将该数据储存于该第一存储器中,且该第一处理器进一步将该数据发送至该第二节点;当该第二处理器藉由该第二通信电路从该第一节点接收该数据时,该第二处理器将该数据储存于该第二存储器中,且该第二处理器进一步将一通知发送至该第一节点以报告该数据已成功储存于该第二存储器中;并且只有在该第一处理器接收到该第二节点的该通知之后,该第一处理器才开始将该数据写入该固态硬盘。
2.如权利要求1所述的伺服器,其特征在于,只有在该第一处理器接收到来自该第二节点的该通知后,该第一处理器会藉由该第一网络模块将一通知发送至该其他电子装置以报告该数据已成功接收,然后该第一处理器才开始将该数据写入该固态硬盘。
3.如权利要求1所述的伺服器,其特征在于,该第一节点以及该第二节点是该伺服器内的不同电路板,以及该第二通信电路以及该第一通信电路藉由一快捷外设组件互联(Peripheral Component Interconnect Express,PCIe)接口互相连接。
4.如权利要求1所述的伺服器,其特征在于,当该第一处理器藉由该第一网络模块从该其他电子装置接收该数据时,该第一处理器进一步建立一第一表,该第一表包含对应该其他电子装置的一用户标识(identify)、该数据的一逻辑地址、一数据长度以及该数据于该第一存储器内的一起始地址。
5.如权利要求4所述的伺服器,其特征在于,该第一处理器将该数据以及该第一表的至少一部分发送至该第二节点。
6.如权利要求5所述的伺服器,其特征在于,当该第二处理器藉由该第二通信电路从该第一节点接收到该数据时,该第二处理器将该数据储存在该第二存储器中,且该第二处理器进一步建立一第二表,该第二表包含对应该其他电子装置的该用户标识、该数据的该逻辑地址、该数据长度以及该数据于该第二存储器内的一起始地址。
7.如权利要求1所述的伺服器,其特征在于,于该数据成功写入该固态硬盘后,该第一处理器删除该第一存储器中的该数据,该第一处理器进一步通知该第二节点该数据已成功写入该固态硬盘,然后该第二处理器删除该第二存储器中的该数据。
8.如权利要求1所述的伺服器,其特征在于,如果该第一节点无法正常工作,并且该第一处理器无法将该数据成功写入该固态硬盘,则该第二节点将启用一故障转移机制来替换该第一节点,以将该数据从该第二存储器移动至该固态硬盘。
9.一种应用一伺服器的控制方法,包含:
将该伺服器内的一第一节点设置为一主装置;
将该伺服器内的一第二节点设置为一从属装置;
控制该第一节点以藉由网络从一其他电子装置接收一数据;
将该数据储存到该第一节点内的一第一存储器中;
从该第一节点向该第二节点发送该数据;
将该数据储存到该第二节点内的一第二存储器中,且该第二节点向该第一节点发送一通知,以报告该数据已成功储存在该第二存储器中;以及
只有在该第一处理器从该第二节点收到该通知后,才开始将该数据写入一固态硬盘(solid state drive,SSD)。
10.如权利要求9所述的控制方法,其特征在于,还包含:
只有在该第一处理器从该第二节点收到该通知后,该第一处理器才开始藉由一第一网络模块向该其他电子装置发送一通知,以报告该数据已成功接收。
11.如权利要求9所述的控制方法,其特征在于,该第一节点以及该第二节点是该伺服器内的不同电路板,以及第二节点的一第二通信电路以及该第一节点的一第一通信电路藉由一快捷外设组件互联(Peripheral Component Interconnect Express,PCIe)接口互相连接。
12.如权利要求9所述的控制方法,其特征在于,还包含:
当该第一处理器藉由一第一网络模块从该其他电子装置接收该数据时,建立一第一表,该第一表包含对应该其他电子装置的一用户标识(identify)、该数据的一逻辑地址、一数据长度以及该数据于该第一存储器内的一起始地址。
13.如权利要求12所述的控制方法,其特征在于,还包含:
该第一处理器将该数据以及该第一表的至少一部分发送至该第二节点。
14.如权利要求13所述的控制方法,其特征在于,还包含:
当该第二处理器藉由一第二通信电路从该第一节点接收到该数据时,建立一第二表,该第二表包含对应该其他电子装置的该用户标识、该数据的该逻辑地址、该数据长度以及该数据于该第二存储器内的一起始地址。
15.如权利要求9所述的控制方法,其特征在于,还包含:
于该数据成功写入该固态硬盘后,该第一处理器删除该第一存储器中的该数据,该第一处理器进一步通知该第二节点该数据已成功写入该固态硬盘,然后该第二处理器删除该第二存储器中的该数据。
16.如权利要求9所述的控制方法,其特征在于,还包含:
如果该第一节点无法正常工作,并且该第一处理器无法将该数据成功写入该固态硬盘,启用一故障转移机制来替换该第一节点,以将该数据从该第二存储器移动至该固态硬盘。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062983759P | 2020-03-02 | 2020-03-02 | |
US62/983,759 | 2020-03-02 | ||
US17/152,795 | 2021-01-20 | ||
US17/152,795 US11409471B2 (en) | 2020-03-02 | 2021-01-20 | Method and apparatus for performing data access management of all flash array server |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113342261A true CN113342261A (zh) | 2021-09-03 |
Family
ID=77464182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110226132.6A Pending CN113342261A (zh) | 2020-03-02 | 2021-03-01 | 伺服器与应用于伺服器的控制方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11409471B2 (zh) |
CN (1) | CN113342261A (zh) |
TW (1) | TWI773152B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11809289B2 (en) * | 2021-10-15 | 2023-11-07 | Dell Products L.P. | High-availability (HA) management networks for high performance computing platforms |
US11861211B2 (en) * | 2021-12-06 | 2024-01-02 | Mellanox Technologies, Ltd. | System which provides plural processes in a host with asynchronous access to plural portions of the memory of another host |
TWI802268B (zh) * | 2022-02-14 | 2023-05-11 | 神雲科技股份有限公司 | 伺服系統 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030221077A1 (en) * | 2002-04-26 | 2003-11-27 | Hitachi, Ltd. | Method for controlling storage system, and storage control apparatus |
US20040059734A1 (en) * | 2002-09-23 | 2004-03-25 | Hubbert Smith | Data access control |
US20080189382A1 (en) * | 2006-03-15 | 2008-08-07 | Broadband Royalty Corporation | Media stream distribution system |
CN101656104A (zh) * | 2008-08-22 | 2010-02-24 | 群联电子股份有限公司 | 快闪存储器储存系统及其数据写入方法 |
TW201445325A (zh) * | 2013-05-16 | 2014-12-01 | Aspeed Technology Inc | 基板管理系統架構 |
US20150106549A1 (en) * | 2013-10-14 | 2015-04-16 | International Business Machines Corporation | Robust Data Replication |
US20170091056A1 (en) * | 2015-09-24 | 2017-03-30 | Netapp, Inc. | High availability failover manager |
US20170300233A1 (en) * | 2014-11-28 | 2017-10-19 | Hitachi, Ltd. | Storage system |
CN107315697A (zh) * | 2016-04-27 | 2017-11-03 | 广达电脑股份有限公司 | 用于减少管理端口的计算机可读取存储装置、系统及方法 |
CN107346292A (zh) * | 2016-05-06 | 2017-11-14 | 广达电脑股份有限公司 | 服务器系统及其计算机实现的方法 |
US20180181315A1 (en) * | 2016-12-28 | 2018-06-28 | Amazon Technologies, Inc. | Data storage system with multiple durability levels |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013081620A1 (en) | 2011-12-01 | 2013-06-06 | Intel Corporation | Server including switch circuitry |
US11194501B2 (en) * | 2020-01-24 | 2021-12-07 | Netapp, Inc. | Standby copies withstand cascading fails |
-
2021
- 2021-01-20 US US17/152,795 patent/US11409471B2/en active Active
- 2021-02-24 TW TW110106514A patent/TWI773152B/zh active
- 2021-03-01 CN CN202110226132.6A patent/CN113342261A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030221077A1 (en) * | 2002-04-26 | 2003-11-27 | Hitachi, Ltd. | Method for controlling storage system, and storage control apparatus |
US20040059734A1 (en) * | 2002-09-23 | 2004-03-25 | Hubbert Smith | Data access control |
US20080189382A1 (en) * | 2006-03-15 | 2008-08-07 | Broadband Royalty Corporation | Media stream distribution system |
CN101656104A (zh) * | 2008-08-22 | 2010-02-24 | 群联电子股份有限公司 | 快闪存储器储存系统及其数据写入方法 |
TW201445325A (zh) * | 2013-05-16 | 2014-12-01 | Aspeed Technology Inc | 基板管理系統架構 |
US20150106549A1 (en) * | 2013-10-14 | 2015-04-16 | International Business Machines Corporation | Robust Data Replication |
US20170300233A1 (en) * | 2014-11-28 | 2017-10-19 | Hitachi, Ltd. | Storage system |
US20170091056A1 (en) * | 2015-09-24 | 2017-03-30 | Netapp, Inc. | High availability failover manager |
CN107315697A (zh) * | 2016-04-27 | 2017-11-03 | 广达电脑股份有限公司 | 用于减少管理端口的计算机可读取存储装置、系统及方法 |
CN107346292A (zh) * | 2016-05-06 | 2017-11-14 | 广达电脑股份有限公司 | 服务器系统及其计算机实现的方法 |
US20180181315A1 (en) * | 2016-12-28 | 2018-06-28 | Amazon Technologies, Inc. | Data storage system with multiple durability levels |
Also Published As
Publication number | Publication date |
---|---|
TW202134899A (zh) | 2021-09-16 |
US11409471B2 (en) | 2022-08-09 |
US20210271420A1 (en) | 2021-09-02 |
TWI773152B (zh) | 2022-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106776159B (zh) | 具有故障转移的快速外围元件互连网络系统与操作方法 | |
US8335899B1 (en) | Active/active remote synchronous mirroring | |
US8498967B1 (en) | Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome | |
US11573737B2 (en) | Method and apparatus for performing disk management of all flash array server | |
TWI773152B (zh) | 伺服器與應用於伺服器的控制方法 | |
US9823955B2 (en) | Storage system which is capable of processing file access requests and block access requests, and which can manage failures in A and storage system failure management method having a cluster configuration | |
US20140122816A1 (en) | Switching between mirrored volumes | |
US11636012B2 (en) | Method and apparatus for performing node information exchange management of all flash array server | |
WO2021012169A1 (zh) | 一种提高存储系统可靠性的方法和相关装置 | |
TWI756007B (zh) | 用以進行全快閃記憶體陣列伺服器的高可用性管理的方法與設備 | |
CN113342258B (zh) | 用以进行全快闪存储器阵列伺服器的数据存取管理的方法与设备 | |
TWI766590B (zh) | 伺服器及相關的控制方法 | |
TWI766594B (zh) | 伺服器與應用於伺服器的控制方法 | |
CN113342257B (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 |