CN112306388A - 存储装置 - Google Patents

存储装置 Download PDF

Info

Publication number
CN112306388A
CN112306388A CN202010103771.9A CN202010103771A CN112306388A CN 112306388 A CN112306388 A CN 112306388A CN 202010103771 A CN202010103771 A CN 202010103771A CN 112306388 A CN112306388 A CN 112306388A
Authority
CN
China
Prior art keywords
drive
switch
controller
storage
abnormality
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
CN202010103771.9A
Other languages
English (en)
Other versions
CN112306388B (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN112306388A publication Critical patent/CN112306388A/zh
Application granted granted Critical
Publication of CN112306388B publication Critical patent/CN112306388B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0784Routing of error reports, e.g. with a specific transmission path or data flow
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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/0653Monitoring storage devices or 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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0661Format or protocol conversion 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明提供一种存储装置,在存储装置中能够实现稳定的处理性能和适当的故障处理。存储装置包括:多个控制器;多个存储驱动器;和交换机装置,其包括与多个控制器分别连接的多个控制器侧端口、和与多个存储驱动器分别连接的多个驱动器侧端口;交换机装置在多个控制器侧端口与多个驱动器侧端口之间进行地址变换。

Description

存储装置
技术领域
本发明涉及存储装置。
背景技术
存储装置具备控制与存储装置连接的主机计算机和存储装置内的存储介质之间的数据传输的存储控制器。存储控制器包括连接主机计算机的前端接口、连接作为存储介质的多个驱动器的后端接口、控制存储装置用的处理器和与处理器连接的存储器等。
另外,作为将处理器、前端接口和后端接口等连接用的通信网络的标准规格之一,已知PCI Express(以下称为PCIe)。进而,为了与使用存储装置的用户的使用规模相符,存储装置大多也包括将多台存储装置相互连接用的互联。
关键任务业务中使用的存储装置中,最重视的要素之一是可用性。存储装置为了提供该可用性,例如使用使上述存储控制器成为冗余结构的、双控制器体系结构。
双控制器体系结构中,作为将控制器之间连接用的接口,例如有PCIe、Infiniband。双控制器中一方的控制器因某种原因而不能使用时,另一方的正常的控制器检测到异常,在直到不能使用的控制器恢复的时间中,使来自主机计算机的I/O继续,由此保证可用性。
近年来,因为单一驱动器容量增加、和虚拟化技术的进展,多个主机计算机或应用程序中使用的数据同时存在于单一驱动器中的情况较多。从而,例如在单一驱动器中检测到异常的情况下,需要对于双方的控制器通知异常。这是因为存储装置中,双方的控制器协调地工作,需要通过对双方的控制器通知发生异常,而迅速地无矛盾地进行适当的处理。
另一方面,闪存的廉价化、充分利用有进展,将闪存搭载在驱动器中的SSD(SolidState Drive)对存储装置的搭载正在进展。随着这样的SSD的普及,近年来,制定了NVMExpress(Non-Volatile Memory Express)作为以解决上述处理时间增大为目的之一的新的通信协议。NVM Express在协议层上位于应用层,物理层使用PCIe。
然而,PCI Express域采用以称为根复合体的设备为顶点、在树中连接交换机、桥、和端点设备的结构。根复合体是位于PCI Express系统中的最根部的设备。
桥在大多情况下用于进行与遗留设备、例如PCI或PCI-X端点用PCI Express连接用的协议变换。交换机用于增加PCI Express的端口数。端点例如是硬盘、SSD等进行I/O的设备。在PCI Express的规格上,端点只能属于1个PCI Express域。
关键任务业务中使用的存储装置中,最重视的要素之一是高性能。存储装置为了提供以上叙述的可用性和高性能,而采用能够从存储控制器访问任意驱动器的结构。存储控制器包括具有根复合体、根端口的多个处理器。进而,与装置规模相应地,存储装置包括多个存储控制器。然而,在PCI Express的规格上,作为端点的、支持NVMe的SSD只能属于1个PCI Express系统、即1个处理器管辖下。即,不能采取能够从存储控制器访问任意驱动器的结构。
作为解决该问题的手段,有Non-Transparent Bridge(以下称为NTB)。使用NTB的存储装置,例如已在专利文献1中公开。专利文献1公开了能够经由将存储控制部与存储设备之间连接的后端交换机、进行存储控制部之间的高效率的通信的技术。对于每个根端口设置将交换机逻辑分割得到的虚拟交换机(VS),将其之间用后端交换机的NTB连接。驱动器按照PCI Express的规格,属于某一个VS。
此处,着眼于可用性的观点,在驱动器一侧的PCI端口中检测出错误的情况下,驱动器通常对该驱动器属于的根端口通知。驱动器发出对处理器主存的规定区域通知该消息的存储器写命令。此时,按照PCI Express规格,从驱动器通知的目标是1个场所。
专利文献1:日本特开2018-190368号公报
发明内容
通过使用NTB技术和专利文献1中公开的技术,能够实现能够从存储控制器访问任意驱动器的结构。但是,专利文献1没有公开3个以上存储控制器的情况。
另一方面,专利文献1中公开了后端交换机内的虚拟交换机,根据PCI Express规格,对于每个根复合体(例如处理器)是必要的。专利文献1中,通过在1个以上后端交换机之间应用NTB,能够从存储控制器访问任意驱动器。专利文献1中,驱动器与后端交换机中包括的1个虚拟交换机关联。
这包括以下课题。即,处理器数增加时,虚拟交换机的数量也增加,所以处理器访问任意驱动器的情况下,经过的虚拟交换机的数量在驱动器之间不同。换言之,处理器访问任意驱动器的情况下,会发生经过虚拟交换机引起的性能不均一化导致的性能的误差。结果受性能低的驱动器访问拖累,存在系统全体的性能降低的风险。另外,因为经过多个虚拟交换机,所以设计存储装置时地址变换的设计变得繁琐。
另一方面,PCI端口发生了异常的情况下,处理器不能与驱动器通信,所以对于进行访问的驱动器,发生超时。该情况下,因为异常检测需要时间,所以对处理器迅速通知错误,停止驱动器访问,进行故障处理更好。如前所述,存在多个处理器的情况下,对能够访问该驱动器的全部处理器通知检测出异常的消息是重要的,但在PCI Express的规格下仅能对单一处理器通知。
从而,要求稳定的处理性能和能够实施适当的故障处理的存储装置和信息处理方法。
本公开的一个方式的存储装置特征在于,包括:多个控制器;多个存储驱动器;和交换机装置,其包括与所述多个控制器分别连接的多个控制器侧端口、和与所述多个存储驱动器分别连接的多个驱动器侧端口;所述交换机装置在所述多个控制器侧端口与所述多个驱动器侧端口之间进行地址变换。
根据本公开的一个方式,在存储装置中,能够实现稳定的处理性能和适当的故障处理。
附图说明
图1是表示存储装置中包括的节点的结构的图。
图2是表示存储装置中包括的驱动器盒的结构例的图。
图3是表示存储装置的一例的图。
图4是表示存储装置中、对处理器通知驱动器一侧发生的异常的流程的流程图。
图5是表示处理器对于从驱动器盒接收的异常通知的处理流程的流程图。
图6是表示存储装置中的、消息发送目标管理表的图。
符号说明
100……节点,105A、105B……存储控制器,200……驱动器盒,205A、205B……PCIe交换机,220A、220B……交换机控制模块,225A、225B……地址变换部
具体实施方式
以下参考附图说明本发明的实施方式。另外,以下说明中,有时用“管理表”等表达说明各种信息,但各种信息也可以用表以外的数据结构表达。另外,为了表示不依赖于数据结构,也能够将“管理表”称为“管理信息”。
另外,有时以“程序”为主语说明处理。该程序被处理器、例如CPU(CentralProcessing Unit)执行,进行规定的处理。另外,因为适当地使用存储资源(例如存储器)和通信接口装置(例如通信端口)进行,所以处理的主语也可以改为处理器。处理器也可以在CPU之外具有专用硬件。计算机程序可以从程序源安装至各计算机。程序源例如可以用程序发布服务器或存储介质等提供。
另外,各要素能够用编号等识别,但只要是能够识别的信息,就可以使用名称等其它种类的识别信息。本发明的图和说明中对于同一部分附加同一符号,但本发明不受本实施例限制,符合本发明的思想的所有应用例都包括在本发明的技术范围中。另外,只要没有特别限定,各构成要素就可以是多个也可以是单个。
以下公开存储装置和信息处理方法、例如适合应用于搭载了SSD(Solid StateDrive)作为存储驱动器(以下简称为驱动器)的存储装置的存储装置和信息处理方法。更具体而言,以下公开的存储装置的结构例中,包括存储驱动器的驱动器盒内的PCIe(PCIExpress)交换机(物理交换机)在多个存储控制器与多个存储驱动器之间的通信中进行协议变换。由此,能够实现稳定的处理性能和迅速地实施适当的故障处理。驱动器例如支持NVM Express(NVMe)。另外,也可以代替虚拟交换机地使用物理交换机。
以下使用附图对于本实施方式的详情进行说明。另外,PCIe规格和NVMe规格的详情是公知的,省略其详细说明,仅对于本实施方式的说明上必要的事项适当进行说明。
图1是表示本实施方式中的存储装置中包括的节点的结构的图。存储装置包括1个或多个驱动器(SSD等)(图1中未图示)、和1个或多个节点。节点包括控制对驱动器的数据输入输出的1个或多个存储控制器(也简称为控制器)。
本实施方式的节点100重视可用性,为了持续地提供服务而包括2个控制器105A、105B。2个控制器105A、105B在本例中具有相同的结构和功能。存储控制器105A包括处理器(CPU)110A、前端接口115A、后端接口120A、互联接口125A、和存储器130A。存储控制器105B包括处理器110B、前端接口115B、后端接口120B、互联接口125B、和存储器130B。
以下,存储控制器105、处理器110、和前端接口115分别表示任意的存储控制器、任意的处理器、任意的前端接口。后端接口120、互联接口125、和存储器130分别表示任意的后端接口、任意的互联接口、和任意的存储器。
处理器110对前端接口115等存储控制器105内的各构成要素进行控制。例如,处理器110设定前端接口115的数据传输参数。处理器110监视节点100内的故障,检测出故障的情况下执行与故障对应的处理。
前端接口115包括与主机计算机(未图示)连接的接口,对于接收的来自主机计算机的数据分组、和对主机计算机发送的数据分组实施规定的协议处理。主机计算机是具备处理器和存储器等信息处理资源的计算机装置,例如由开放系统的服务器、或大型计算机等构成。主机计算机经由网络对存储装置发送写命令和读命令。
例如,前端接口115从接收的来自主机计算机的数据分组中,取得后述的驱动器中的读数据或写数据的保存场所和该数据分组的容量等信息。另外,前端接口115识别数据分组中包括的命令,并且将接收的数据分组变换为在存储控制器105内部使用的形式。
前端接口115对于对主机计算机发送的数据分组,基于存储控制器105与主机计算机之间的通信协议,对读数据附加作为发送目标的主机计算机的识别数据、和关于对该主机计算机的命令的控制数据等,由此生成能够对主机计算机发送的数据分组。
后端接口120是使处理器110可以与后述的驱动器盒和驱动器盒内的驱动器进行数据通信用的接口。后端接口120的外侧的协议与处理器114一侧的协议不同的情况下,后端接口120进行协议变换。例如,处理器114一侧的协议是PCIe,后端接口120的外侧的协议是PCIe、Fibre Channel、或者Ethernet(注册商标)。
后端接口120包括将节点100与驱动器盒连接用的后端端口(下游端口)。图1的结构例中,存储控制器105A内的1个后端接口120A包括后端端口122A-1和122A-2,另1个后端接口120A包括后端端口122A-3和122A-4。存储控制器105B内的1个后端接口120B包括后端端口122B-1和122B-2,另1个后端接口120B包括后端端口122B-3和122B-4。
后端端口也可以是后端接口内的交换机的一部分。后端接口120也可以是处理器的一部分。该情况下,与驱动器盒连接用的后端端口也可以内置在处理器中。
互联接口125是多个(图1的结构例中是2个)存储控制器105之间的通信接口。存储控制器105之间的通信例如可以使用使用接口卡的Infiniband、或Ethernet,或者也可以使用应用了NTB(Non Transparent Bridge)的PCI Express。能够使用能够在处理器110之间、或者存储器130之间进行数据通信的任意的接口。
图2是表示存储装置中包括的驱动器盒200的结构例的图。
驱动器盒200包括PCIe交换机205A和205B(此后将任意的PCIe交换机记作PCIe交换机205)、以及存储驱动器230、240、250和260。
PCIe交换机205A包括根复合体连接虚拟交换机210A、210B、地址变换部225A、225B、驱动器连接虚拟交换机220A、和交换机控制模块215A。PCIe交换机205B包括根复合体连接虚拟交换机210C、210D、地址变换部225C、225D、驱动器连接虚拟交换机220B、和交换机控制模块215B。PCIe交换机205A、205B分别包括连接存储控制器的多个控制器侧端口(分别是虚拟端口或物理端口)、和连接存储驱动器的多个驱动器侧端口(分别是虚拟端口或物理端口)。
以下,PCIe交换机205、根复合体连接虚拟交换机(控制器侧交换机)210、地址变换部226、驱动器连接虚拟交换机(驱动器侧交换机)220和交换机控制模块215分别表示任意的PCIe交换机、任意的根复合体连接虚拟交换机、任意的地址变换部、任意的驱动器连接虚拟交换机和任意的交换机控制模块。
PCIe交换机205例如包括处理器和存储器。处理器通过按照存储器中保存的程序工作,而发挥根复合体连接虚拟交换机、地址变换部、驱动器连接虚拟交换机和交换机控制模块的功能。PCIe交换机205在处理器之外,也能够包括进行规定运算的逻辑电路。通过虚拟交换机,提高存储装置的可扩展性。
驱动器盒200进而包括驱动器连接虚拟交换机与驱动器之间的连接总线235A、235B、245A、245B、255A、255B、265A、265B。
PCIe交换机205是将存储控制器105的后端接口120与驱动器连接用的设备。为了存储装置的可用性提高和高性能化,驱动器大多是2个端口的、所谓双端口驱动器。因此,存储装置为了与双端口驱动器的各端口连接而包括2个PCIe交换机205。
根复合体连接虚拟交换机210是在PCIe交换机205内构成的逻辑的(虚拟的)PCIe交换机。根复合体连接虚拟交换机210将处理器中包括的PCIe域的根复合体与后述的驱动器连接虚拟交换机220之间连接。更具体而言,根复合体连接虚拟交换机210将存储控制器的后端接口120与驱动器连接虚拟交换机220之间连接。为了能够从多个处理器对各驱动器进行访问,基本而言,安装与访问各驱动器的处理器的数量相同数量的根复合体连接虚拟交换机210。
驱动器连接虚拟交换机220与根复合体连接虚拟交换机210同样地,是在PCIe交换机205内构成的逻辑的(虚拟的)PCIe交换机。驱动器连接虚拟交换机220将根复合体连接虚拟交换机210与驱动器连接。驱动器连接虚拟交换机220如图2所示,在PCIe交换机205内可以是单一的,也可以在PCIe交换机205中构成多个驱动器连接虚拟交换机。
地址变换部225参照地址变换信息,进行根复合体连接虚拟交换机210的通信协议、与驱动器连接虚拟交换机220的通信协议之间的变换。地址变换部225例如是Non-Transparent Bridge(NTB)。
地址变换部225将到达根复合体连接虚拟交换机210的PCIe数据分组的控制信息变换为包括发送目标驱动器的PCIe域中适合的控制信息。控制信息包括PCIe数据分组的头信息、访问目标的地址。地址变换部225将到达驱动器连接虚拟交换机220的PCIe数据分组的控制信息变换为包括发送目标处理器的PCIe域中适合的控制信息。控制信息包括PCIe数据分组的头信息和发送目标地址。
如上所述,PCIe交换机205包括根复合体连接虚拟交换机210、驱动器连接虚拟交换机220、和根复合体连接虚拟交换机210与驱动器连接虚拟交换机220之间的地址变换部225。它们实现的效果如下所述。
从存储控制器的处理器110来看,从处理器110对驱动器的访问,经过根复合体连接虚拟交换机210、地址变换部225、驱动器连接虚拟交换机220。这对于全部驱动器都是同样的。即,处理器110对于任意的驱动器,能够以同一距离进行访问。从而,通过采用图2所示的结构,作为存储装置能够提供稳定的处理性能。
驱动器230、240、250、260支持NVMe,是保存主机计算机的数据的装置。驱动器230、240、250、260也能够使用搭载了闪存等非易失性存储器的SSD、或MRAM(MagnetoresistiveRandom Access Memory)、相变存储器(Phase-Change Memory)、ReRAM(Resistive Random-Access Memory)、FeRAM(Ferroelectric Random Access Memory)等各种介质。另外,也可以在存储装置中应用将多个PCIe交换机205连结、进而连接驱动器的多级连接结构。
一般而言,存储装置可以由多个驱动器构成RAID(Redundant Arrays ofInexpensive Disks)组,在由该RAID组构成的逻辑存储区域即逻辑卷中,保存从主机计算机发送的数据。构成RAID组的驱动器中发生了故障的情况下,存储装置对于该发生了故障的驱动器中保存的数据,能够使用属于同一RAID组的其它驱动器的数据和奇偶校验进行还原。
图3是表示本实施方式中的存储装置300的一例的图。存储装置300包括2个节点100-1、100-2(此后将任意节点记作节点100)和4个驱动器盒200-1、200-2、200-3、200-4(此后将任意驱动器盒记作驱动器盒200)、以及将节点100与驱动器盒200之间连接的连接310。
节点100-1包括2个存储控制器105A-1、150B-1。存储控制器105A-1包括存储器130A-1、处理器110A-1、和2个后端接口120A-1。存储控制器105B-1包括存储器130B-1、处理器110B-1、和2个后端接口120B-1。
节点100-2包括2个存储控制器105A-2、150B-2。存储控制器105A-2包括存储器130A-2、处理器110A-2、和2个后端接口120A-2。存储控制器105B-2包括存储器130B-2、处理器110B-2、和2个后端接口120B-2。
驱动器盒200-1包括2个PCIe交换机205A-1、205B-1。驱动器盒200-2包括2个PCIe交换机205A-2、205B-2。驱动器盒200-3包括2个PCIe交换机205A-3、205B-3。驱动器盒200-4包括2个PCIe交换机205A-4、205B-4。节点100和驱动器盒200的结构要素的详情与如参考图1、图2所说明的相同。
图3所示的存储装置300中,以能够从单一存储控制器105访问全部4个驱动器盒200的方式将连接310连接。在存储装置的可用性的观点上,为了在节点100因某种异常而不能使用的情况下,能够从正常节点100继续访问,而例如偶数编号的存储控制器105与驱动器盒200的偶数编号的PCIe交换机205连接。
通过这样,节点内的存储控制器、或节点因某种异常而不能使用的情况下,能够从正常的存储控制器、或正常的节点继续访问存储装置300的全部驱动器,能够维持存储装置全体的可用性。
图4是表示本实施方式的存储装置300中、对处理器通知驱动器一侧发生的异常的流程的流程图。通过本流程,对于驱动器一侧发生的异常,能够迅速地实施适当的故障处理。图4所示的流程图的实施主体是图2所示的交换机控制模块215。首先,在步骤405中,交换机控制模块215如果没有检测出连接的驱动器的端口异常(405:NO),则前进至步骤410。交换机控制模块215在检测出驱动器的端口异常的情况下(405:YES),前进至步骤415。
在步骤410中,交换机控制模块215进行通常处理。通常处理的例子,包括PCIe交换机205全体的状态监视、与存储控制器的处理器的通信控制、对PCIe交换机205中发生的异常的处理等。交换机控制模块215在通常处理的一环中实施驱动器的端口异常检测确认。
在步骤415中,交换机控制模块215生成对存储控制器的处理器110通知驱动器的端口异常用的、表示驱动器的端口异常的消息。消息包括驱动器的识别符和异常的种类的信息。
在步骤418中,交换机控制模块215决定对哪个处理器110发送步骤415中生成的消息。交换机控制模块215参照消息发送目标管理表600,决定发送消息的处理器110和通路。关于消息发送目标管理表600,在后文中叙述。
在步骤420中,交换机控制模块215确认与步骤410中生成消息的发送目标处理器110分别对应的写入目标地址。写入目标地址表示发送目标处理器的存储器130内的地址。交换机控制模块为了确认写入目标地址,而例如参照PCIe交换机105内的PCIe配置寄存器中设置的消息地址字段。
在步骤425中,交换机控制模块215对存储控制器的处理器110发出将步骤415中生成的消息写入步骤420中确认的存储器130的写入目标地址中的写命令。处理器110按照写命令将消息写入指定的写入地址中。
接着,在步骤430中,交换机控制模块215对另一方的存储控制器的处理器110发出将步骤415中生成的消息写入步骤420中确认的写入目标地址中的写命令,并结束。
通过图4所示的流程图,对于能够访问存储驱动器的任意处理器(控制器),都能够通知驱动器一侧的异常,所以作为存储装置能够迅速地实施适当的故障处理。
图5是表示处理器对于从驱动器盒接收的异常通知的处理流程的流程图。通过图5的流程图的处理,对于存储驱动器一侧发生的异常,能够迅速地实施适当的故障处理。
图5所示的流程图的实施主体是在存储控制器的处理器110中运行的控制程序。另外,该控制程序保存在处理器110使用的存储器130中。
首先,控制程序在步骤505中进行通常处理。此处的通常处理,指的是控制存储装置用的处理、从主机计算机进行的读处理、写处理、将处理器110的存储器130中设置的缓存区域中保存的数据保存至驱动器的离台处理、以及提供业务连续性用的功能所需的处理等。
其中,控制程序确认从PCIe交换机205接收的、关于存储驱动器的异常通知。该处理可以在通常处理中按一定周期实施,也可以与中断相应地立即实施。
在步骤510中,控制程序在确认异常通知的条件不成立的情况下(510:NO),返回步骤505。控制程序在确认来自驱动器的异常通知的条件成立的情况下(510:YES),前进至步骤515。
在步骤515中,控制程序检查保存关于存储驱动器的异常通知用的存储器130中的区域。在步骤520中,控制程序如果没有保存异常通知则返回步骤505。控制程序如果保存了异常通知则前进至步骤525。
在步骤525中,控制程序参照保存的异常通知,确定发生了异常的存储驱动器。在步骤530中,控制程序参照存储器130中保存的管理已发出的IO请求的管理信息,确定是否存在对于步骤525中确定的存储驱动器已发出的IO请求。进而,控制程序参照存储器130内的IO请求队列,确认对于步骤525中确定的存储驱动器是否存在未发出的IO请求。
在步骤535中,控制程序取消步骤535中确认的、对于步骤525中确定的驱动器的已发出的IO请求、和未发出的IO请求(Abort或取消)。由此,能够避免对异常的存储驱动器发出IO请求,并且适当地处理未完成的IO请求。
通过实施直到步骤535的处理,能够访问步骤525中确定的驱动器的全部处理器都能够停止IO。由此,能够预先避免对步骤525中确定的驱动器的IO引起的超时,所以能够迅速地实施适当的故障处理。
在步骤540中,控制程序确认对于步骤525中确定的通知了异常的驱动器是否有其它控制程序正在实施故障处理。正在实施故障处理的控制程序的信息,例如保存在存储控制器105各自的共享存储器区域中。对于步骤525中确定的通知了异常的驱动器有其它控制程序正在实施故障处理的情况下,为了适当地完成故障处理,而委任于实施中的故障处理并返回步骤505。
对于步骤525中确定的通知了异常的驱动器其它控制程序并未实施故障处理的情况下,该控制程序负责步骤525中确定的通知了异常的驱动器的恢复处理545。由此,适当地执行恢复处理。此处的恢复处理,例如是清除PCIe交换机的故障信息、驱动器端口的初始化等。
通过实施图5所示的流程图,控制程序对于驱动器一侧发生的异常,能够迅速地实施适当的故障处理。
图6是表示本实施方式的存储装置300中的消息发送目标管理表的图。节点#栏605表示对存储装置300中的节点附加的序列编号。例如,图3中,能够将节点100-1的编号设为节点#0,将节点100-2的编号设为节点#1。
CTL#栏610表示对构成存储装置300中的节点的存储控制器附加的序列编号。例如,图3中,能够将节点100-1的存储控制器105A-1的编号设为CTL#0,将节点100-1的存储控制器105B-1的编号设为CTL#1。
CPU#栏615表示对存储装置300中的存储控制器中包括的处理器附加的序列编号。例如,图3中,能够将节点100-1的处理器110A-1的编号设为CPU#0,将节点100-1的处理器110B-1的编号设为CPU#1。
Port#栏620表示对存储装置300中的节点与驱动器盒之间的通信端口附加的序列编号。例如,图1中,能够将后端端口122A-1的编号设为Port#0,将后端端口122A-2的编号设为Port#1,将后端端口122A-3的编号设为Port#2,将后端端口122A-4的编号设为Port#3。
如上所述,各记录表示消息的发送目标的处理器和消息经过的端口(处理器与PCIe交换机进行通信的通路)。一个PCIe交换机经由1个或多个端口,与一个处理器进行通信。
Send Target栏625表示交换机控制模块为了发送图4的步骤415中生成的消息而选择的发送目标。例如,图6中,节点#0、CTL#0、CPU#0、Port#0的Send Target栏625的值是“1”。节点#0、CTL#0、CPU#0、Port#2的记录的Send Target栏625的值是“0”。
图6的消息发送目标管理表600的Send Target栏625中,“1”表示记录是消息发送目标。Send Target“0”表示不作为消息的发送目标。即,节点#0、CTL#0、CPU#0、Port#0是消息的发送目标,节点#0、CTL#0、CPU#0、Port#2不作为消息的发送目标。
图6的消息发送目标管理表600由存储控制器的处理器110中运行的控制程序生成,将其保存在交换机控制模块能够参照的PCIe交换机内的存储器(未图示)中。然后,存储控制器的处理器110与后端接口的运转状况等相应地,适当对消息发送目标管理表进行更新,每当此时将其保存在PCIe交换机内的存储器中。
对于图6的消息发送目标管理表600的效果进行说明。首先,交换机控制模块通过参照该消息发送目标管理表600,能够确认图4的步骤415中生成的消息的应当发送的发送目标。由此,能够减轻交换机控制模块的负荷。
例如,对于1个处理器,具备多个后端端口的情况下,均等地使用多个后端端口地与驱动器盒的驱动器通信的情况下,只要使用某一个后端端口发送消息即可,所以可以仅将图6的节点#0、CTL#0、CPU#1、Port#0的Send Target栏625的值设为“1”,将其它Port#1至Port#3的Send Target栏625的值设为“0”。
另外,取决于情况,存储装置300的后端接口120可能因某种原因而变得不能使用。此时,存储控制器的处理器110将变得不能使用的后端端口的Send Target栏625值设定为“0”。通过这样,交换机控制模块215通过参照消息发送目标管理表,能够得知不能使用的后端接口(后端端口),所以能够避免不必要的消息发送。由此,能够减轻交换机控制模块的负荷。另外,能够避免对不能使用的后端接口发送消息引起的错误。
如上所述,本实施方式的存储装置中,交换机装置(PCIe交换机)进行与处理器的通信协议、和与存储驱动器之间的通信协议之间的变换。由此,处理器与存储驱动器之间的通信性能被均匀化。
进而,交换机装置检测到与存储驱动器的通信中的异常时,对从连接的处理器中选择的处理器分别发送通知异常的消息。由此,能够对异常进行迅速的处理。另外,本实施方式的特征能够应用于使用与上述结构例的通信协议不同的通信协议的存储装置。
上述实施方式是为了易于理解地说明本发明而详细说明的,并不限定于必须具备说明的全部结构。另外,能够将某个实施例的结构的一部分置换为其它实施例的结构,也能够在某个实施例的结构上添加其它实施例的结构。另外,对于各实施例的结构的一部分,能够追加、删除、置换其它结构。
进而,对于上述各结构、功能、处理部、处理单元等,例如可以通过在集成电路中设计等而用硬件实现其一部分或全部。另外,上述各结构、功能等,也可以通过处理器解释、执行实现各功能的程序而用软件实现。
进而,实现各功能的程序、表、文件等信息,能够保存在存储器、硬盘、SSD等存储装置、或者IC卡、SD卡、DVD等存储介质中。进而,控制线和信息线示出了认为说明上必要的,并不一定示出了产品上全部的控制线和信息线。实际上也可以认为几乎全部结构都相互连接。

Claims (8)

1.一种存储装置,其特征在于,包括:
多个控制器;
多个存储驱动器;和
交换机装置,其包括与所述多个控制器分别连接的多个控制器侧端口、和与所述多个存储驱动器分别连接的多个驱动器侧端口;
所述交换机装置在所述多个控制器侧端口与所述多个驱动器侧端口之间进行地址变换。
2.如权利要求1所述的存储装置,其特征在于:
所述交换机装置包括:
控制器侧交换机,其经由所述多个控制器侧端口与所述多个控制器分别进行通信;
驱动器侧交换机,其经由所述多个驱动器侧端口与所述多个存储驱动器分别进行通信;和
地址变换部,其在所述控制器侧交换机与所述驱动器侧交换机之间进行地址变换。
3.如权利要求2所述的存储装置,其特征在于:
所述控制器侧交换机和所述驱动器侧交换机分别是虚拟交换机。
4.如权利要求1所述的存储装置,其特征在于:
所述交换机装置在所述多个驱动器侧端口的一个端口中检测出异常时,经由所述多个控制器侧端口分别对所述多个控制器通知表示所述异常的消息。
5.如权利要求4所述的存储装置,其特征在于:
被通知了所述异常的控制器取消对检测出所述异常的所述一个端口已发出和将要发出的IO请求。
6.如权利要求4所述的存储装置,其特征在于:
所述多个控制器中的一个控制器在其它控制器并未进行从所述异常的恢复处理的情况下,进行从所述异常的恢复处理。
7.如权利要求1所述的存储装置,其特征在于:
所述交换机装置在所述多个驱动器侧端口的一个端口中检测出异常时,参照指定通知所述异常的控制器的信息,从所述多个控制器中选择通知所述异常的控制器。
8.一种存储装置中的交换机装置的通信方法,其特征在于:
所述交换机装置经由多个控制器侧端口分别与多个控制器进行通信;
所述交换机装置经由多个驱动器侧端口分别与多个存储驱动器进行通信;
所述交换机装置在所述多个控制器侧端口与所述多个驱动器侧端口之间进行地址变换。
CN202010103771.9A 2019-08-02 2020-02-20 存储装置 Active CN112306388B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-142713 2019-08-02
JP2019142713A JP7080863B2 (ja) 2019-08-02 2019-08-02 ストレージ装置

Publications (2)

Publication Number Publication Date
CN112306388A true CN112306388A (zh) 2021-02-02
CN112306388B CN112306388B (zh) 2024-03-22

Family

ID=74191054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010103771.9A Active CN112306388B (zh) 2019-08-02 2020-02-20 存储装置

Country Status (3)

Country Link
US (2) US10901626B1 (zh)
JP (1) JP7080863B2 (zh)
CN (1) CN112306388B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11656992B2 (en) 2019-05-03 2023-05-23 Western Digital Technologies, Inc. Distributed cache with in-network prefetch
JP6942163B2 (ja) * 2019-08-06 2021-09-29 株式会社日立製作所 ドライブボックス、ストレージシステム及びデータ転送方法
US11765250B2 (en) 2020-06-26 2023-09-19 Western Digital Technologies, Inc. Devices and methods for managing network traffic for a distributed cache
US11675706B2 (en) 2020-06-30 2023-06-13 Western Digital Technologies, Inc. Devices and methods for failure detection and recovery for a distributed cache
US11736417B2 (en) 2020-08-17 2023-08-22 Western Digital Technologies, Inc. Devices and methods for network message sequencing
CN113259273B (zh) * 2021-07-07 2021-11-09 北京国科天迅科技有限公司 交换机的控制方法、交换机、计算机设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4491944A (en) * 1981-04-03 1985-01-01 Compagnie Industrielle Des Telecommunications Cit-Alcatel Distributed control time division exchange
CN101206906A (zh) * 2006-12-13 2008-06-25 株式会社日立制作所 存储控制装置
CN101282497A (zh) * 2008-06-02 2008-10-08 刘家伟 多路音频任意交换、混音的装置
CN101504592A (zh) * 2008-02-08 2009-08-12 株式会社日立制作所 存储子系统及其控制方法
US20100235562A1 (en) * 2009-03-13 2010-09-16 Gaither Blaine D Switch module based non-volatile memory in a server
CN102650975A (zh) * 2012-03-31 2012-08-29 中国人民解放军国防科学技术大学 用于多硬件平台飞腾服务器的i2c总线的实现方法
CN108804030A (zh) * 2017-04-28 2018-11-13 株式会社日立制作所 存储系统
CN109564558A (zh) * 2016-06-10 2019-04-02 利奇得公司 数据存储系统中的多端口插入器架构

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7478178B2 (en) * 2005-04-22 2009-01-13 Sun Microsystems, Inc. Virtualization for device sharing
JP5179031B2 (ja) * 2006-09-13 2013-04-10 株式会社日立製作所 空きポートを有効に活用したストレージシステム
JP2009267771A (ja) * 2008-04-25 2009-11-12 Hitachi Ltd 情報処理装置及びパス制御方法
US8788753B2 (en) * 2011-01-14 2014-07-22 Lsi Corporation Systems configured for improved storage system communication for N-way interconnectivity
US9250809B2 (en) * 2013-03-18 2016-02-02 Hitachi, Ltd. Compound storage system and storage control method to configure change associated with an owner right to set the configuration change
JP6070357B2 (ja) * 2013-03-28 2017-02-01 富士通株式会社 ストレージ装置
US9665309B2 (en) * 2014-06-27 2017-05-30 International Business Machines Corporation Extending existing storage devices in virtualized environments
JP6070732B2 (ja) 2015-01-27 2017-02-01 日本電気株式会社 入出力制御装置、入出力制御システム、入出力制御方法、および、プログラム
US9823849B2 (en) * 2015-06-26 2017-11-21 Intel Corporation Method and apparatus for dynamically allocating storage resources to compute nodes
US9626300B2 (en) * 2015-07-27 2017-04-18 Google Inc. Address caching in switches
JP6556404B2 (ja) * 2017-03-24 2019-08-07 株式会社日立製作所 ストレージシステム及びストレージシステムのバックエンド構築方法
WO2018198325A1 (ja) * 2017-04-28 2018-11-01 株式会社日立製作所 ストレージシステム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4491944A (en) * 1981-04-03 1985-01-01 Compagnie Industrielle Des Telecommunications Cit-Alcatel Distributed control time division exchange
CN101206906A (zh) * 2006-12-13 2008-06-25 株式会社日立制作所 存储控制装置
CN101504592A (zh) * 2008-02-08 2009-08-12 株式会社日立制作所 存储子系统及其控制方法
CN101282497A (zh) * 2008-06-02 2008-10-08 刘家伟 多路音频任意交换、混音的装置
US20100235562A1 (en) * 2009-03-13 2010-09-16 Gaither Blaine D Switch module based non-volatile memory in a server
CN102650975A (zh) * 2012-03-31 2012-08-29 中国人民解放军国防科学技术大学 用于多硬件平台飞腾服务器的i2c总线的实现方法
CN109564558A (zh) * 2016-06-10 2019-04-02 利奇得公司 数据存储系统中的多端口插入器架构
CN108804030A (zh) * 2017-04-28 2018-11-13 株式会社日立制作所 存储系统

Also Published As

Publication number Publication date
JP2021026421A (ja) 2021-02-22
US20210034250A1 (en) 2021-02-04
US11372552B2 (en) 2022-06-28
US10901626B1 (en) 2021-01-26
CN112306388B (zh) 2024-03-22
JP7080863B2 (ja) 2022-06-06
US20210109661A1 (en) 2021-04-15

Similar Documents

Publication Publication Date Title
CN112306388B (zh) 存储装置
CN111177029B (zh) 用于管理软件定义的永久性存储器的系统及方法
JP6273353B2 (ja) 計算機システム
US8402189B2 (en) Information processing apparatus and data transfer method
US9298648B2 (en) Method and system for I/O flow management using RAID controller with DMA capabilitiy to directly send data to PCI-E devices connected to PCI-E switch
JP6286542B2 (ja) 計算機システム
US10027532B2 (en) Storage control apparatus and storage control method
JP5635621B2 (ja) ストレージシステム及びストレージシステムのデータ転送方法
US9501372B2 (en) Cluster system including closing a bus using an uncorrectable fault upon a fault detection in an active server
US10719471B2 (en) Storage system and backend construction method for storage system having switch that is logically partitioned into multiple partitions
JP2008112399A (ja) ストレージ仮想化スイッチおよびコンピュータシステム
US20150169221A1 (en) Information processing apparatus and method for monitoring the same
JP2011154697A (ja) Raidと関連するアプリケーションの実行のための方法およびシステム
JP2006227856A (ja) アクセス制御装置及びそれに搭載されるインターフェース
US10241950B2 (en) Multipath I/O proxy device-specific module
US10915405B2 (en) Methods for handling storage element failures to reduce storage device failure rates and devices thereof
JP6461347B2 (ja) ストレージシステム、及び、記憶制御方法
JP5511546B2 (ja) フォールトトレラントの計算機システム、複数の物理サーバとストレージ装置とに接続されるスイッチ装置、及び、サーバ同期制御方法
JP7315753B2 (ja) ストレージ装置
US8352661B1 (en) Data storage systems having seamless software upgrades
WO2019043815A1 (ja) ストレージシステム
JP2018101440A (ja) 計算機システム
JP5856665B2 (ja) ストレージシステム及びストレージシステムのデータ転送方法
US20170270019A1 (en) Dangerous system command detection

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