JP5445138B2 - Data distributed storage method and data distributed storage system - Google Patents
Data distributed storage method and data distributed storage system Download PDFInfo
- Publication number
- JP5445138B2 JP5445138B2 JP2009547948A JP2009547948A JP5445138B2 JP 5445138 B2 JP5445138 B2 JP 5445138B2 JP 2009547948 A JP2009547948 A JP 2009547948A JP 2009547948 A JP2009547948 A JP 2009547948A JP 5445138 B2 JP5445138 B2 JP 5445138B2
- Authority
- JP
- Japan
- Prior art keywords
- replica
- file
- storage
- network
- host 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 49
- 238000013500 data storage Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000010187 selection method Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
Images
Classifications
-
- 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/2053—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 persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- 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/2002—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 interconnections or communication control functionality are redundant
- G06F11/2007—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 interconnections or communication control functionality are redundant using redundant communication media
-
- 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/2053—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 persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2089—Redundant storage control functionality
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明はデータ分散格納方法およびシステムに関し、特にネットワークに接続された複数のストレージノードにデータとそのレプリカ(複製)を分散して格納するようにしたデータ分散格納方法およびシステムに関する。 The present invention relates to a distributed data storage method and system, and more particularly to a distributed data storage method and system in which data and replicas (replicas) thereof are distributed and stored in a plurality of storage nodes connected to a network.
ストリーミング配信サーバのバックエンドのストレージシステムやウェブサーチエンジンのインデックス情報を格納しているストレージシステムなどでは、ディスク装置などの記憶装置を1つ以上備えるストレージノードを、ネットワークで複数接続し、大規模なストレージシステムを構築することが行われている。このようにして構築されたデータ分散格納システムを、以降、ストレージクラスタと呼ぶ。 In a streaming distribution server back-end storage system or a storage system storing web search engine index information, a plurality of storage nodes including at least one storage device such as a disk device are connected via a network, A storage system is being built. The data distributed storage system constructed in this way is hereinafter referred to as a storage cluster.
ストレージクラスタにおいてストレージノードの障害によるデータ損失を避けることを目的に、複数のストレージノードにデータを冗長構成にして記憶しておく例が、例えば特許文献1に記載されており、またRAIN(Redundant Array of Independent Nodes)として知られている。図20は特許文献1に記載されたデータ分散格納システムの概要を示すブロック図であり、2つのストレージノードSN1、SN2が、ネットワークを構成するスイッチSWを通じてホストサーバHに接続されており、ストレージノードSN1に格納したデータのレプリカをストレージノードSN2に格納することで、何れかのストレージノードに障害が発生してもデータが失われないようにしている。 In order to avoid data loss due to a storage node failure in a storage cluster, an example in which data is stored in a redundant configuration in a plurality of storage nodes is described in Patent Document 1, for example, and RAIN (Redundant Array) of Independent Nodes). FIG. 20 is a block diagram showing an outline of a data distributed storage system described in Patent Document 1, in which two storage nodes SN1 and SN2 are connected to a host server H through a switch SW constituting a network. By storing a replica of the data stored in SN1 in the storage node SN2, data is not lost even if a failure occurs in any storage node.
しかし、図20の構成では、スイッチSWおよびホストサーバHに障害が発生すると、ストレージノードに記憶されたデータを利用したホストサーバによる処理、例えばストリーミング配信サービスや検索サービスなどの処理が停止する。そこで、ストレージノードだけでなく、ホストHおよびスイッチSWも冗長化することで耐障害性を高めたデータ分散格納システムが、特許文献2の図11に記載されている。図21は特許文献2に記載されたデータ分散格納システムの概要を示すブロック図であり、2つのストレージノードSN1、SN2が、ネットワークを構成する2つのスイッチSW1、SW2を通じて2つのホストサーバH1、H2に接続されており、ストレージノードSN1に格納したデータのレプリカをストレージノードSN2に格納することで、何れかのストレージノードに障害が発生してもデータが失われないようにし、またホストサーバとスイッチを多重化することで、何れかのスイッチおよびホストサーバに障害が発生してもサービスが停止しないようにしている。 However, in the configuration of FIG. 20, when a failure occurs in the switch SW and the host server H, processing by the host server using data stored in the storage node, for example, processing such as streaming distribution service and search service is stopped. Therefore, FIG. 11 of Patent Document 2 discloses a data distributed storage system in which not only a storage node but also a host H and a switch SW are made redundant to improve fault tolerance. FIG. 21 is a block diagram showing an outline of a data distributed storage system described in Patent Document 2. Two storage nodes SN1 and SN2 are connected to two host servers H1 and H2 through two switches SW1 and SW2 constituting a network. By storing a replica of the data stored in the storage node SN1 in the storage node SN2, the data is not lost even if a failure occurs in any storage node, and the host server and switch Is multiplexed so that the service is not stopped even if a failure occurs in any of the switches and the host server.
図21の構成では、ストレージノードSN1、SN2は、2つのスイッチSW1、SW2と接続されるため、それぞれ2つのネットワークインタフェースを備えている。同様に、ストサーバH1、H2は、2つのスイッチSW1、SW2と接続されるため、それぞれ2つのネットワークインタフェースを備えている。 In the configuration of FIG. 21, since the storage nodes SN1 and SN2 are connected to the two switches SW1 and SW2, each has two network interfaces. Similarly, since the strike servers H1 and H2 are connected to the two switches SW1 and SW2, they each have two network interfaces.
ホストサーバとストレージノードを専用のネットワークで接続するストレージエリアネットワーク(SAN)において、入出力要求およびデータの送受信を行うネットワーク経路の障害性向上を目的に、ネットワークインターフェース、ネットワークスイッチ、経路に冗長性を持たせるマルチパス技術は、例えば非特許文献1に記載されるように公知の技術である。 In a storage area network (SAN) in which host servers and storage nodes are connected by a dedicated network, redundancy is provided for network interfaces, network switches, and paths for the purpose of improving the failure of network paths for sending and receiving I / O requests and data. The multipath technique to be provided is a known technique as described in Non-Patent Document 1, for example.
図21に示した冗長構成によれば、信頼性の高いデータ分散格納システムを構築することができるものの、ストレージノードおよびホストサーバ共に、ネットワークインタフェースを多重に実装する必要があるため、コストが嵩むという課題と、ネットワークインタフェースを増設するための実装スペースを確保しなければならないという課題がある。 According to the redundant configuration shown in FIG. 21, although a highly reliable data distributed storage system can be constructed, both storage nodes and host servers need to implement multiple network interfaces, which increases costs. There is a problem and a problem that a mounting space for adding a network interface must be secured.
本発明はこのような従来の課題を解決したものであり、その目的は、ネットワークインタフェースを増設することなしに、データ分散格納システムの耐障害性を高めることにある。 The present invention solves such a conventional problem, and an object of the present invention is to improve fault tolerance of a data distributed storage system without adding a network interface.
本発明の第1のデータ分散格納システムは、複数のストレージノードと、複数のホストサーバと、それぞれ異なる前記ストレージノードおよび前記ホストサーバに接続される複数のエッジスイッチと、前記複数のエッジスイッチ間を複数のネットワーク経路で接続するネットワークと、多重化されたデータを同じデータが同じエッジスイッチに接続されたストレージノードに格納されないように複数のストレージノードに分散して格納するメタサーバとを備える。 A first distributed data storage system according to the present invention includes a plurality of storage nodes, a plurality of host servers, a plurality of edge switches connected to the storage nodes and the host servers, and a plurality of edge switches. A network connected by a plurality of network paths, and a meta server that stores multiplexed data in a plurality of storage nodes so that the same data is not stored in storage nodes connected to the same edge switch.
本発明の第1のデータ分散格納方法は、複数のストレージノードと、複数のホストサーバと、それぞれ異なる前記ストレージノードおよび前記ホストサーバに接続される複数のエッジスイッチと、前記複数のエッジスイッチ間を複数のネットワーク経路で接続するネットワークとを備えたデータ分散格納システムにおけるデータ分散格納方法であって、メタサーバが、多重化されたデータを同じデータが同じエッジスイッチに接続されたストレージノードに格納されないように複数のストレージノードに分散して格納するファイル格納ステップを含む。 A first distributed data storage method according to the present invention includes a plurality of storage nodes, a plurality of host servers, a plurality of edge switches connected to different storage nodes and host servers, and a plurality of edge switches. A distributed data storage method in a distributed data storage system having a network connected by a plurality of network paths, wherein the meta server prevents the same data from being stored in storage nodes connected to the same edge switch. Includes a file storing step for distributing and storing in a plurality of storage nodes.
本発明の第1のプログラムは、複数のストレージノードと、複数のホストサーバと、それぞれ異なる前記ストレージノードおよび前記ホストサーバに接続される複数のエッジスイッチと、前記複数のエッジスイッチ間を複数のネットワーク経路で接続するネットワークと、多重化されたデータを同じデータが同じエッジスイッチに接続されたストレージノードに格納されないように複数のストレージノードに分散して格納するメタサーバとを備えるデータ分散格納システムにおける前記メタサーバを構成するコンピュータを、前記エッジスイッチと前記ストレージノードとの接続関係を示すエッジスイッチ構成情報を記憶するエッジスイッチ構成情報記憶手段を参照して、格納対象となるファイルを複数に分割し、個々の部分データを多重化し、多重化した部分データが同じエッジスイッチに接続されたストレージノードに格納されないような配置を決定するレプリカ配置決定手段と、該レプリカ配置決定手段で決定された配置に従って、多重化された部分データを前記ストレージノードに格納し、前記ファイルを構成する部分データの前記ストレージノードへの配置状況をレプリカ配置記憶手段に記憶するレプリカ配置処理手段として機能させる。 The first program of the present invention includes a plurality of storage nodes, a plurality of host servers, a plurality of edge switches connected to the storage nodes and the host servers, respectively, and a plurality of networks between the plurality of edge switches. A data distributed storage system comprising: a network connected by a path; and a meta server that stores multiplexed data in a plurality of storage nodes so that the same data is not stored in storage nodes connected to the same edge switch. The computer constituting the meta server is divided into a plurality of files to be stored with reference to edge switch configuration information storage means for storing edge switch configuration information indicating the connection relationship between the edge switch and the storage node. Multiplexed partial data Replica arrangement determining means for determining an arrangement in which the multiplexed partial data is not stored in a storage node connected to the same edge switch, and the multiplexed partial data according to the arrangement determined by the replica arrangement determining means. It is stored in the storage node and functions as a replica placement processing means for storing the placement status of the partial data constituting the file in the storage node in the replica placement storage means.
本発明の第2のプログラムは、複数のストレージノードと、複数のホストサーバと、それぞれ異なる前記ストレージノードおよび前記ホストサーバに接続される複数のエッジスイッチと、前記複数のエッジスイッチ間を複数のネットワーク経路で接続するネットワークと、多重化されたデータを同じデータが同じエッジスイッチに接続されたストレージノードに格納されないように複数のストレージノードに分散して格納するメタサーバとを備え、前記メタサーバは、前記ホストサーバからのファイル取得要求に応答して、要求されたファイルを構成する部分データが格納されている前記ストレージノードと要求元のホストサーバから当該ストレージノードへアクセスするネットワーク経路とを指定した取得情報を、要求元のホストサーバへ通知するレプリカ検索手段を備えたデータ分散格納システムにおける前記ホストサーバを構成するコンピュータを、前記メタサーバに対してファイル取得要求を送信し、その応答として通知される前記取得情報に基づいて前記ストレージノードをアクセスして部分データを取得するファイル取得手段として機能させる。 A second program of the present invention includes a plurality of storage nodes, a plurality of host servers, a plurality of edge switches connected to the storage nodes and the host servers, respectively, and a plurality of networks between the plurality of edge switches. A network connected by a path, and a metaserver that stores multiplexed data in a plurality of storage nodes so that the same data is not stored in storage nodes connected to the same edge switch. In response to a file acquisition request from the host server, acquisition information specifying the storage node storing the partial data constituting the requested file and the network path for accessing the storage node from the requesting host server To the requesting host server The computer constituting the host server in the distributed data storage system having the replica search means to know, sends a file acquisition request to the meta server, and determines the storage node based on the acquisition information notified as a response thereto. It functions as a file acquisition means for accessing and acquiring partial data.
本発明の第3のプログラムは、複数のストレージノードと、複数のホストサーバと、それぞれ異なる前記ストレージノードおよび前記ホストサーバに接続される複数のエッジスイッチと、前記複数のエッジスイッチ間を複数のネットワーク経路で接続するネットワークと、多重化されたデータを同じデータが同じエッジスイッチに接続されたストレージノードに格納されないように複数のストレージノードに分散して格納するメタサーバとを備え、前記メタサーバは、前記ホストサーバからのファイル取得要求に応答して、要求されたファイルを構成する部分データが格納されている前記ストレージノードのリストを要求元のホストサーバへ通知するレプリカ検索手段を備えたデータ分散格納システムにおける前記ホストサーバを構成するコンピュータを、前記メタサーバに対してファイル取得要求を送信し、その応答として通知される前記リストに記載されたストレージノードをアクセスして部分データを取得するファイル取得手段として機能させる。 A third program of the present invention includes a plurality of storage nodes, a plurality of host servers, a plurality of edge switches connected to the storage nodes and the host servers, respectively, and a plurality of networks between the plurality of edge switches. A network connected by a path, and a metaserver that stores multiplexed data in a plurality of storage nodes so that the same data is not stored in storage nodes connected to the same edge switch. A data distributed storage system comprising replica search means for notifying a requesting host server of a list of the storage nodes storing partial data constituting the requested file in response to a file acquisition request from the host server The host server constituting the host server in The computer transmits a file acquisition request to the meta server, to function as a file acquiring means for acquiring the partial data by accessing a storage node listed in the list that is notified as a response.
本発明によれば、ネットワークインタフェースを増設することなしに、データ分散格納システムの耐障害性を高めることができる。 According to the present invention, it is possible to improve the fault tolerance of a data distributed storage system without adding a network interface.
100〜115…ストレージノード
120〜123…ホストノード
124…メタサーバ
130〜133…エッジスイッチ(ネットワークスイッチ)
140…ネットワーク100 to 115
140 ... network
次に本発明の実施の形態について図面を参照して詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
『第1の実施の形態』
図1を参照すると、本発明の第1の実施の形態に係るデータ分散格納システムは、ストレージノードSN1とホストサーバH1とがスイッチSW1に接続され、ストレージノードSN2とホストサーバH2とがスイッチSW2に接続され、スイッチSW1とスイッチSW2との間が複数のネットワーク経路L1、L2により接続されている。また、ストレージノードSN1に格納されるデータのレプリカが、ストレージノードSN2に格納されている。なお、同じスイッチに接続されるホストサーバとストレージノードとは物理的に別々の計算機で構成されていても良いし、同じ計算機で構成されていても良い。“First Embodiment”
Referring to FIG. 1, in the data distributed storage system according to the first embodiment of the present invention, the storage node SN1 and the host server H1 are connected to the switch SW1, and the storage node SN2 and the host server H2 are connected to the switch SW2. The switches SW1 and SW2 are connected by a plurality of network paths L1 and L2. A replica of data stored in the storage node SN1 is stored in the storage node SN2. Note that the host server and the storage node connected to the same switch may be configured by physically different computers, or may be configured by the same computer.
本実施の形態のデータ分散格納システムは、このような構成を備えているため、ストレージノード、スイッチ、ネットワーク経路、ホストサーバの何れか1つに障害が発生しても、残りの要素を使用して処理を継続することができる。 Since the data distribution storage system of this embodiment has such a configuration, even if a failure occurs in any one of the storage node, switch, network path, and host server, the remaining elements are used. To continue processing.
例えば、ストレージノードSN1、SN2の何れか一方、例えばストレージノードSN1に障害が発生しても、ストレージノードSN1に格納されているデータのレプリカが他方のストレージノードSN2に格納されているので、ホストサーバH1またはH2はストレージノードSN2を利用することで処理を継続することができる。 For example, even if a failure occurs in one of the storage nodes SN1, SN2, for example, the storage node SN1, a replica of the data stored in the storage node SN1 is stored in the other storage node SN2. H1 or H2 can continue processing by using the storage node SN2.
また、スイッチSW1、SW2の何れか一方、例えばスイッチSW1に障害が発生した場合、ホストサーバH1はストレージノードSN1、SN2をアクセスできなくなるために、ホストサーバH1の処理は停止するが、多重化された他方のホストサーバH2はスイッチSW2を通じて、多重化された他方のストレージノードSN2をアクセスできるため、システム全体としては処理を継続することができる。 In addition, when a failure occurs in one of the switches SW1 and SW2, for example, the switch SW1, the host server H1 cannot access the storage nodes SN1 and SN2, so the processing of the host server H1 is stopped but multiplexed. Since the other host server H2 can access the other storage node SN2 multiplexed through the switch SW2, the processing as the entire system can be continued.
また、ネットワーク経路L1、L2の何れか一方、例えばネットワーク経路L1に障害が発生しても、ホストサーバH1は、スイッチSW1を通じてストレージノードSN1をアクセスできると共に残りのネットワーク経路L2およびスイッチSW2を通じてストレージノードSN2をアクセスでき、また、ホストサーバH2は、スイッチSW2を通じてストレージノードSN2をアクセスできると共に残りのネットワーク経路L2およびスイッチSW1を通じてストレージノードSN1をアクセスできるため、処理を継続することができる。 Even if one of the network paths L1 and L2, for example, the network path L1 fails, the host server H1 can access the storage node SN1 through the switch SW1, and the storage node through the remaining network path L2 and the switch SW2. Since the SN2 can be accessed and the host server H2 can access the storage node SN2 through the switch SW2 and can access the storage node SN1 through the remaining network path L2 and the switch SW1, the processing can be continued.
また、ホストサーバH1、H2の何れか一方、例えばホストサーバH1に障害が発生しても、多重化された他方のホストサーバH2により処理を継続することができる。 Further, even if a failure occurs in one of the host servers H1, H2, for example, the host server H1, the processing can be continued by the other multiplexed host server H2.
このように本実施の形態に係るデータ分散格納システムは、ストレージノード、スイッチ、ネットワーク経路、ホストサーバの何れもSPOF(Single Point of Failure)にならないために、耐障害性を高めることができ、かつ、図21と比較すると明らかなように、ストレージノードおよびホストサーバ共に、ネットワークインタフェースを多重に実装する必要がない。 As described above, the distributed data storage system according to the present embodiment can improve fault tolerance because none of the storage nodes, switches, network paths, and host servers becomes a single point of failure (SPOF), and As is clear from comparison with FIG. 21, neither the storage node nor the host server needs to mount multiple network interfaces.
『第2の実施の形態』
図2を参照すると、本発明の第2の実施の形態に係るデータ分散格納システムは、16台のストレージノード100〜115と、4台のホストサーバ120〜123と、ストレージノード100〜115およびホストサーバ120〜123を4つの組に分けた場合の各組毎に設けられ、その組に含まれるストレージノードとホストサーバとが接続される4台のエッジスイッチ130〜133と、エッジスイッチ130〜133間を複数のネットワーク経路で接続するネットワーク140と、多重化されたデータを、同じデータが同じエッジスイッチに接続されたストレージノードに格納されないように、複数のストレージノードに分散して格納するメタサーバ124とを備えている。“Second Embodiment”
Referring to FIG. 2, the distributed data storage system according to the second embodiment of the present invention includes 16
本実施の形態では、ストレージノードが16台、ホストサーバが4台であるが、これらの台数は複数であれば任意で良い。また、同じエッジスイッチに接続されるホストサーバとストレージノードとは物理的に別々の計算機で構成されていても良いし、同じ計算機で構成されていても良い。 In this embodiment, there are 16 storage nodes and 4 host servers, but any number may be used as long as there are a plurality of them. Further, the host server and storage node connected to the same edge switch may be configured with physically different computers, or may be configured with the same computer.
図3を参照すると、ストレージノード100は、1以上の記憶部200と、通信部201と、これらに接続されたストレージ制御部202とを含んで構成される。記憶部200は、例えばハードディスク装置で構成され、ホストサーバ上で稼動するユーザアプリケーションプログラムがI/Oを行うデータ保存の単位であるファイルを記憶する。通信部201は、ホストサーバおよびメタサーバとの間の通信を制御する。ストレージ制御部202は、ホストサーバおよびメタサーバから与えられるコマンドに従って記憶部200を制御し、記憶部200上にファイルを作成したり、作成されたファイルを参照、更新する。他のストレージノード101〜115も、ストレージノード100と同様の構成を有する。
Referring to FIG. 3, the
図4を参照すると、ホストサーバ120は、記憶部210と、通信部211、212と、これらに接続されたホスト制御部213とを含んで構成される。記憶部210は、ホストサーバ120で実行するユーザアプリケーションプログラムやその他のプログラム、ストレージノードから読み書きするファイルなどを記憶する。通信部211は、メタサーバおよびスレージノードとの間の通信を制御する。通信部212は、図2には図示しないインターネット等のネットワークを通じて行われるサービス要求元のユーザ端末との間の通信を制御する。ホスト制御部213は、ユーザアプリケーションプログラムを実行することにより、ストリーミング配信サービスやウェブ検索サービスなどの所定のサービスをユーザ端末に対して提供する。
Referring to FIG. 4, the
図5を参照すると、メタサーバ124は、記憶部220と、通信部221と、入出力部222と、これらに接続されたメタ制御部223とを含んで構成される。記憶部220は、メタサーバ124で実行するプログラム、ストレージノードに分散配置されているファイルに関する管理情報などを記憶する。通信部221は、ホストサーバおよびストレージノードとの間の通信を制御する。入出力部222は、オペレータからの指示や分散配置するファイルなどを入力する。メタ制御部223は、プログラムを実行することにより、データ分散格納システム全体の制御を司る。
Referring to FIG. 5, the
エッジスイッチ130〜133は、複数の入出力ポートを有し、複数の入出力ポートのペアで同時に並行して通信することができるネットワークスイッチである。このようなエッジスイッチは、例えばファイバー・チャネル・スイッチで実現される。本明細書では、ストレージノードが直接接続されているネットワークスイッチを、それ以外のネットワークスイッチと区別するために、エッジスイッチと呼ぶ。 The edge switches 130 to 133 are network switches that have a plurality of input / output ports and can simultaneously communicate in parallel through pairs of input / output ports. Such an edge switch is realized by, for example, a fiber channel switch. In this specification, a network switch to which a storage node is directly connected is referred to as an edge switch in order to distinguish it from other network switches.
エッジスイッチ130〜133間を接続する複数経路を持つネットワーク140の一例を図6に示す。この例のネットワーク140は、ネットワークスイッチ134〜137とEthernet(登録商標)のVLAN機能とによって実現されている。通常、Ethernetではネットワーク中にループが存在した場合にはネットワークスイッチの持つMACテーブルが不正な状態になり通信障害が発生するため、ループフリーなネットワークトポロジーを維持するための機構(たとえば、Spanning Tree Protocol(STP))がネットワークスイッチに実装されており、複数経路を持つネットワークトポロジーは構築できないようになっている。図6の構成では、VLANによってネットワークセグメントを分離することによって、物理的には複数経路を持つネットワークトポロジーを取りつつも、論理ネットワークとしてはループフリーなネットワークの実現を利用する。
An example of the
図6の構成例では4つのタグベースVLANを利用しており、各エッジスイッチ130〜133は、他のエッジスイッチ130〜133と4通りのネットワーク経路によって相互に接続されている。なお、ここでは、4通りのネットワーク経路によって相互に接続したが、2以上であれば任意の数で良い。
In the configuration example of FIG. 6, four tag-based VLANs are used, and each
各ストレージノード100〜115とエッジスイッチ130〜133間の接続は、物理的に4つのネットワークインターフェースとケーブルを用いて接続しても良いし、1つのネットワークインターフェースとケーブル上に仮想インターフェースを4つ構築して接続しても良い。後者の方式で接続される場合、ネットワーク140は、VLANごとに異なるネットワークアドレスを持っており、またストレージノード100〜115の各仮想インターフェースはそれぞれのネットワークアドレスに対応したIPアドレスを割り当てられており、通信の際にあて先アドレスを使い分けることによって、通信に使用する経路を選択する。
Connections between the
図6に示したネットワークトポロジーはVBFT(VLAN Based Fat Tree)であるが、特定のネットワークスイッチや経路がSPOF(Single Point of Failure)になっていなければ、メッシュやハイパーキューブなど他のネットワークトポロジーでもかまわない。また、ネットワークそのものに関しても、EthernetのVLAN機能に限らず、EthernetのLayer3ルーティング、Myricom社のMyrinetなどの複数経路の存在を許すようなネットワークを用いてもよい。 The network topology shown in FIG. 6 is VBFT (VLAN Based Fat Tree), but other network topologies such as mesh and hypercube may be used as long as a specific network switch or route is not a single point of failure (SPOF). Absent. In addition, the network itself is not limited to the Ethernet VLAN function, but a network that allows the existence of multiple routes such as Ethernet Layer 3 routing and Myricom Myrinet may be used.
なお、ネットワーク140は、メタサーバ124とストレージサーバ100〜115およびホストサーバ120〜123とを接続するためにも使用される。図6にはそのためのネットワーク経路が省略されているが、例えば、メタサーバ124とエッジスイッチ130〜133を接続するネットワーク経路をネットワーク140に設けても良いし、ネットワーク140とは別のネットワークによってメタサーバ124と全てのストレージサーバ100〜115を接続するようにしても良い。
The
次に、本実施の形態の動作を説明する。 Next, the operation of the present embodiment will be described.
[データ格納時]
まず、1つのファイルを複数の部分データに分割し、個々の部分データを多重化して複数のストレージノードに分散して格納する動作について説明する。以降、部分データのことをチャンクと呼ぶ。ファイルが1つのチャンクからなるときには、ファイル=チャンクとなる。また、チャンクの複製をレプリカと呼ぶ。本明細書では、複製元と複製先を特に区別することなく、双方ともレプリカと呼ぶ。[When storing data]
First, an operation of dividing one file into a plurality of partial data, multiplexing each partial data, and distributing and storing the data in a plurality of storage nodes will be described. Hereinafter, the partial data is called a chunk. When a file consists of one chunk, file = chunk. A replica of a chunk is called a replica. In this specification, both the replication source and the replication destination are referred to as replicas without particular distinction.
メタサーバ124は、外部オペレータからファイルの格納要求を受けると、ファイルをチャンクに分割し、各チャンクのレプリカを複数生成し、同一のチャンクのレプリカが同一のエッジスイッチ130〜133に接続されたストレージノードに配置されないように、言い換えると異なる2以上のエッジスイッチに接続された複数のストレージノードに分散するように配置する。
When the
ファイルの格納例を図7に示す。この例は、本実施の形態をストリーム配信サーバのバックエンドストレージとして利用した場合のものである。ストリーム配信の対象となるコンテンツファイル(例えばビデオファイル)をチャンク0〜チャンク7の8つのチャンクに分割し、各々のチャンク0〜7のレプリカを2つ生成し、チャンク0〜3の2つのレプリカのうち一方のレプリカをエッジスイッチ130に接続されたストレージノード100〜103に、他方のレプリカをエッジスイッチ131に接続されたストレージノード104〜107に格納している。また、チャンク4〜7の2つのレプリカのうち一方のレプリカをエッジスイッチ132に接続されたストレージノード108〜111に、他方のレプリカをエッジスイッチ133に接続されたストレージノード112〜115に格納している。
An example of file storage is shown in FIG. In this example, the present embodiment is used as a back-end storage of a stream distribution server. A content file (for example, a video file) to be streamed is divided into eight chunks of chunk 0 to chunk 7, two replicas of each chunk 0 to 7 are generated, and two replicas of chunks 0 to 3 are generated. One replica is stored in the
[ファイル読み出し時]
次に、ホストサーバ120〜123が、複数のストレージノードに分散して格納されたファイルを読み出すときの動作を説明する。[When reading a file]
Next, an operation when the
ホストサーバ120〜123は、ファイルの読み出しを行う場合、メタサーバ124に対して問い合わせを行うことにより、ファイルを構成する各チャンクのレプリカがどのストレージノードに存在しているかを認識し、ファイルを構成するチャンクを格納するストレージノードからチャンクを取得し、取得した複数のチャンクをつなげることによってファイルを再構成する。そして、ストリーム配信サーバの場合には、再構築したファイルの配信を行う。ここで、ホストサーバ120〜123は、ファイルを構成する複数のチャンクを同時に異なるストレージノード、重ならないネットワーク経路を用いて取得することにより、スループットを向上させることができる。また、同一チャンクに関しても、より近いレプリカを利用することでスループットを向上させることができる。さらに、チャンクのレプリカがエッジスイッチをまたがって格納されているために、ネットワーク上のいかなる箇所で障害が発生しても、障害箇所がレプリカ数を下回っている限りにおいては、読み出し可能である。
When reading the file, the
・実施例1
次に本発明の第2の実施の形態の実施例1について詳細に説明する。Example 1
Next, Example 1 according to the second embodiment of the present invention will be described in detail.
図8を参照すると、実施例1におけるメタサーバ124は、エッジスイッチ構成情報データベース301およびレプリカ配置データベース302を記憶部220に備え、エッジスイッチ構成取得部311、レプリカ配置決定部312、レプリカ配置処理部313、レプリカ検索部314、レプリカ取得先選択部315およびレプリカ取得ネットワーク経路決定部316をメタ制御部223に備えている。
Referring to FIG. 8, the
エッジスイッチ構成情報データベース301は、図9に示すように、エッジスイッチ130〜133毎のエッジスイッチ構成情報321を保持する。エッジスイッチ構成情報321は、エッジスイッチ識別子322と、このエッジスイッチ識別子322で一意に識別されるエッジスイッチに接続されているストレージノードの識別子のリスト323とから構成される。
As illustrated in FIG. 9, the edge switch
レプリカ配置データベース302は、図10に示すように、ファイル毎のファイル情報331と、チャンク毎のチャンク情報332とを保持する。ファイル情報331は、ファイル識別子333と、このファイル識別子333で一意に識別されるファイルを構成するチャンクの識別子のリスト334とから構成される。チャンク情報332は、チャンク識別子335と、このチャンク識別子335で一意に識別されるチャンクの配置先ストレージノードの識別子のリスト336とから構成される。
As shown in FIG. 10, the
エッジスイッチ構成取得部311は、エッジスイッチ構成情報を取得して、エッジスイッチ構成情報データベース301に格納する処理を行う。
The edge switch
レプリカ配置決定部312は、入出力部224から入力された格納対象ファイルの各チャンクを、どのストレージノードに配置(格納)するかを決定する処理を行う。
The replica
レプリカ配置処理部313は、レプリカ配置決定部312で決定された配置先に従って、格納対象ファイルの各チャンクをストレージノードに格納する処理を行う。
The replica
レプリカ検索部314は、ホストサーバからファイル取得要求を受信し、ファイル取得要求で指定された取得対象ファイルを構成する各チャンクを取得するためのレプリカ取得情報をホストサーバに対して通知する。レプリカ取得情報には、チャンクを取得するストレージノードの識別子および取得するネットワーク経路が含まれる。
The
レプリカ取得先選択部315は、複数のストレージノードに分散して配置されているチャンクの複数のレプリカの中から取得対象とするレプリカを選択する処理を行う。選択の方法としては、例えば、ホストサーバからのレプリカ取得が特定のストレージノードに集中せず負荷分散されるように、例えば履歴情報を元にラウンドロビンさせることでレプリカ取得先を選択する。勿論、選択の方法はこのような方法に限定されず、任意の方法を使用することができる。
The replica acquisition
レプリカ取得ネットワーク経路決定部316は、ホストサーバからストレージノードに至る複数のネットワーク経路の計算と、この計算で得られた複数のネットワーク経路の中から実際に使用するネットワーク経路を選択する処理とを行う。選択の方法としては、複数のホストサーバからのレプリカ取得が特定のネットワーク経路に集中せずに負荷分散され、好ましくはそれぞれ異なるネットワーク経路が同時に使用されるように選択する。勿論、選択の方法はこのような方法に限定されず、任意の方法を使用することができる。
The replica acquisition network
図11を参照すると、実施例1におけるホストサーバ120〜123は、再構成ファイル341を記憶部210に備え、ファイル取得部351およびサービス提供部352をホスト制御部213に備えている。
Referring to FIG. 11, the
ファイル取得部351は、ストリーミング配信の対象となるコンテンツファイルなどのファイルを構成するチャンクを取得するためのチャンク取得情報をメタサーバに問い合わせ、取得したチャンク取得情報に従ってストレージノードをアクセスし、取得したチャンクをつなげて記憶部210上に再構成ファイル341を作成する処理を行う。
The
サービス提供部352は、再構成ファイル341を記憶部210から読み込み、通信部212を通じてユーザ端末へ配信すると言ったサービスを実行する。
The
次に本実施例1の動作を説明する。 Next, the operation of the first embodiment will be described.
[エッジスイッチ構成情報の取得]
図12を参照すると、メタサーバ124のエッジスイッチ構成取得部311は、システム構成変更時(システムの初回稼働開始時を含む)もしくは定期的に、システムに存在するストレージノード100〜115とそれが接続されているエッジスイッチ130〜133の組み合わせの情報をエッジスイッチ構成情報として収集し(ステップS101)、エッジスイッチ構成情報データベース301に格納する(ステップS102)。[Obtain edge switch configuration information]
Referring to FIG. 12, the edge switch
具体的なエッジスイッチ構成情報の取得方法としては、(1)静的に設定ファイルなどに記述しておく、(2)エッジスイッチがSNMP(Simple Network Management Protocol)に対応していて、各ネットワークポートに接続されている機器のIPアドレスもしくはMACアドレスなどが取得可能ならば、その情報を利用する、(3)各ストレージノードにプローブを入れておき、各ノード間の通信に要する時間(レイテンシ)を元に同一エッジスイッチに接続されているストレージノードを推定する、などの方法がある。 As specific edge switch configuration information acquisition methods, (1) statically described in a configuration file or the like, (2) the edge switch supports SNMP (Simple Network Management Protocol), and each network port If the IP address or MAC address of the device connected to the server can be acquired, use that information. (3) Insert a probe into each storage node, and set the time (latency) required for communication between the nodes. There are methods such as estimating storage nodes that are originally connected to the same edge switch.
[データ格納時]
図13を参照すると、メタサーバ124のレプリカ配置決定部312は、入出力部224を通じて外部オペレータからファイル格納要求を受け取ると、格納対象となるファイル(ターゲットファイル)をチャンクに分割する(ステップS201)。次に、エッジスイッチ構成情報データベース301を参照して、ストレージノードとその接続されたエッジスイッチとの関係を確認し、同一チャンクの複数のレプリカが同一エッジスイッチに接続されるストレージノードに重ならないようにレプリカの格納先を決定する(ステップS202)。[When storing data]
Referring to FIG. 13, upon receiving a file storage request from an external operator through the input /
本実施の形態のように、各エッジスイッチ130〜133に接続されているストレージノードの数が一定の場合、例えば以下のようなルールに従ってレプリカの格納先を決定することができる。 When the number of storage nodes connected to each of the edge switches 130 to 133 is constant as in the present embodiment, for example, the replica storage destination can be determined according to the following rules.
(a)レプリカ配置決定方法1
エッジスイッチごとのストレージノード数を一定値p、レプリカ数をrとしたとき、
1.リーダーノードがプライマリノード(m0)を決定する。
2.mi+1=(mi+p)%n(nは全ストレージノード数)をセカンダリレプリカノードに決定する。
3.指定した数rのレプリカが選ばれていれば終了し、未だ選ばれていなければ段階2へ戻る。(A) Replica placement determination method 1
When the number of storage nodes for each edge switch is a constant value p and the number of replicas is r,
1. The leader node determines the primary node (m0).
2. Determine mi + 1 = (mi + p)% n (where n is the total number of storage nodes) as secondary replica nodes.
3. If the specified number r of replicas has been selected, the process ends. If not, the process returns to step 2.
他方、各エッジスイッチに接続されるストレージノード数が一定でない場合には、例えば以下のようなルールに従ってレプリカの格納先を決定することができる。 On the other hand, if the number of storage nodes connected to each edge switch is not constant, the storage location of the replica can be determined according to the following rules, for example.
(b)レプリカ配置決定方法2
エッジスイッチiに接続されるストレージノード数をp(i)、レプリカ数をrとしたとき、
1.リーダーノードがプライマリノード(m0)を決定する。
2.mi+1=(mi+p(j))%n(jはΣp(j)>miとなる最小のj)をセカンダリレプリカノードに決定する。
3.指定した数rのレプリカが選ばれていれば終了し、未だ選ばれていなければ段階2へ戻る。(B) Replica placement determination method 2
When the number of storage nodes connected to edge switch i is p (i) and the number of replicas is r,
1. The leader node determines the primary node (m0).
2. Determine mi + 1 = (mi + p (j))% n (j is the minimum j that satisfies Σp (j)> mi) as the secondary replica node.
3. If the specified number r of replicas has been selected, the process ends. If not, the process returns to step 2.
勿論、レプリカ配置決定方法は上述した例に限らないことは言うまでもない。 Of course, it goes without saying that the replica arrangement determination method is not limited to the above-described example.
レプリカ配置決定部312によってレプリカの配置が決定すると、レプリカ配置処理部313は、レプリカ配置決定部312の決定に従って、各レプリカをストレージノードに格納する(ステップS203)。レプリカ配置決定部312は、レプリカ配置処理部313のレプリカ配置処理の完了を待って、レプリカ配置データベース302を更新する(ステップS204)。具体的には、図10に示したように、今回のファイルの識別子333とそのチャンクの識別子のリスト334とから構成されるファイル情報331と、チャンク識別子335とその配置先ストレージノードの識別子のリスト336とから構成されるチャンク毎のチャンク情報332とをレプリカ配置データベース302に登録する。
When the replica
[データ読み出し時]
図14を参照すると、各ホストサーバ120〜123のファイル取得部351は、取得対象とするファイルの識別子を指定したファイル取得要求をメタサーバ124へ送信し(ステップS301)、メタサーバ124からの応答を待つ。[When reading data]
Referring to FIG. 14, the
図15Aと図15Bは、本実施例におけるファイルのデータ読み出し時のメタサーバ側の処理の流れを示すフローチャートである。図示のように、メタサーバ124のレプリカ検索部314は、ホストサーバから送信されたファイル取得要求を受信すると(ステップS401)、ファイル識別子をキーにレプリカ配置データベース302を検索して、ホストサーバが取得を要求したファイルの識別子333を含むファイル情報331からそのファイルを構成するチャンクの識別子のリスト334を取得する(ステップS402)。レプリカ検索部314は、若し、このリスト334が取得できない場合には(ステップS403でNO)、要求されたファイルが本データ分散格納システムに格納されていないことを意味するので、ファイル発見不能をホストサーバに通知し(ステップS419)、ファイル取得要求受信時の処理を終える。
FIG. 15A and FIG. 15B are flowcharts showing the flow of processing on the metaserver side when reading file data in this embodiment. As illustrated, when the
チャンク識別子のリスト334を取得した場合、次にレプリカ検索部314は、取得したリストに記述された先頭のチャンクに注目し(ステップS404)、注目したチャンクの識別子をキーにレプリカ配置データベース302を検索して、そのチャンク識別子を含むチャンク情報332からそのチャンクの配置先ストレージノードの識別子のリスト336であるレプリカリストを取得する(ステップS405)。次にレプリカ検索部314は、この取得したリストが空でなければ(ステップS406でNO)、そのリストをレプリカ取得先選択部315に伝達し、レプリカ取得先選択部315は、ストレージノードの負荷が分散されるように、リストの中から1つの配置先ストレージノードの識別子を選択し、結果をレプリカ検索部314に通知する(ステップS407)。また、レプリカ検索部314は、リストが空であれば(ステップS406でYES)、ファイル発見不能をホストサーバに通知し(ステップS419)、ファイル取得要求受信時の処理を終える。
When the
次にレプリカ検索部314は、レプリカ取得先選択部315から通知された配置先ストレージノードと要求元のホストサーバの識別子をレプリカ取得ネットワーク経路決定部316に伝達し、レプリカ取得ネットワーク経路決定部316は、要求元のホストサーバから配置先ストレージノードに至る複数のネットワーク経路を計算し、ネットワーク経路集合に記憶する(ステップS408)。続いてレプリカ取得ネットワーク経路決定部316は、ネットワーク経路の負荷が分散されるように、ネットワーク経路集合から1つのネットワーク経路を選択し、レプリカ検索部314へ通知する(ステップS410)。
Next, the
レプリカ検索部314は、レプリカ取得先選択部315から通知された配置先ストレージノードとレプリカ取得ネットワーク経路決定部316から通知されたネットワーク経路と取得対象とするチャンクの識別子とを含むレプリカ取得情報を、要求元のホストサーバへ通知する(ステップS411)。そして、ホストサーバからの応答を待つ。
The
ホストサーバのファイル取得部351は、ファイル取得要求に対する応答としてメタサーバ124からレプリカ取得情報を受信すると(図14のステップS302でYES)、このレプリカ取得情報で指定されたネットワーク経路を通じて、同じくレプリカ取得情報で指定された配置先ストレージノードをアクセスしてチャンクを取得する(ステップS303)。そして、取得に成功すれば(ステップS304でYES)、取得したチャンクで再構成ファイル341の一部を再構成し(ステップS305)、取得成功をメタサーバ124へ通知する(ステップS306)。他方、ネットワークエラーや配置先ストレージノードの障害などによってチャンクの取得に失敗した場合(ステップS304でNO)、失敗した原因を付加して取得失敗をメタサーバ124へ通知する(ステップS307)。
When the
また、ファイル取得部351は、ファイル取得要求に対する応答としてメタサーバ124からファイル発見不能の通知を受信すると(ステップS309でYES)、要求したファイルの読み出しに失敗したことを意味し、ファイル取得の異常終了を行う。
Further, when the
メタサーバ124のレプリカ検索部314は、レプリカ取得情報に対する応答としてホストサーバから取得成功が通知されると(ステップS412でYES)、要求されたファイルの最後のチャンクまで読み出しを終えたかどうかを判定し、終えていなければ(ステップS413でNO)、ステップS402で取得したチャンク識別子のリスト中の次のチャンクに注目を移して(ステップS414)、ステップS405に戻り、上述した処理と同様の処理を繰り返す。最後のチャンクまで読み出しを終えていれば(ステップS413でYES)、ファイル読み出し完了をホストサーバに通知し(ステップS415)、ファイル取得要求受信時の処理を終える。このファイル読み出し完了の通知を受信したホストサーバのファイル取得部351は、ファイル取得の正常終了となる(ステップS308でYES)。
When the
また、レプリカ検索部314は、レプリカ取得情報に対する応答としてホストサーバから取得失敗が通知されると(ステップS412でNO)、失敗の原因がネットワークエラーかどうかを判別し、ネットワークエラーであれば(ステップS416でYES)、レプリカ取得ネットワーク経路決定部316に次のネットワーク経路の選択を指示する。レプリカ取得ネットワーク経路決定部316は、前回選択したネットワーク経路をネットワーク経路集合から削除し(ステップS417)、残りのネットワーク経路から1つのネットワーク経路を選択してレプリカ検索部314へ通知する。また、残りのネットワーク経路が1つも無ければ、その旨をレプリカ検索部314へ通知する。レプリカ検索部314は、ネットワーク経路が通知されると、この通知されたネットワーク経路とステップS407においてレプリカ取得先選択部315で選択されていた取得先ストレージノードとを含むレプリカ取得情報をホストサーバへ通知し(ステップS411)、その応答を再び待つ。
Further, when the acquisition failure is notified from the host server as a response to the replica acquisition information (NO in step S412), the
他方、レプリカ検索部314は、残りのネットワーク経路が無い旨の通知をレプリカ取得ネットワーク経路決定部316から受けると、注目中チャンクのレプリカリストから今回の取得先ストレージノードを削除し(ステップS418)、リストが空でなければ、リストをレプリカ取得先選択部315に伝達し、レプリカ取得先選択部315はそのリスト中から1つの取得先ストレージノードを選択してレプリカ検索部314へ通知する(ステップS407)。以降、上述した処理と同様の処理が行われ、ホストサーバに対してレプリカ取得情報が通知される。また、リストが空であれば、要求されたファイルは本データ分散格納システムに格納されている可能性はあるがアクセス不能であることを意味するので、ファイル発見不能をホストサーバに通知し(ステップS419)、ファイル取得要求受信時の処理を終える。
On the other hand, when the
次に本実施例1の効果を説明する。 Next, the effect of the first embodiment will be described.
本実施例1によれば、ストレージノード、エッジスイッチ、ネットワーク経路、ホストサーバの何れか1つに障害が発生しても、残りの要素を使用して処理を継続することができる。 According to the first embodiment, even if a failure occurs in any one of the storage node, edge switch, network path, and host server, the processing can be continued using the remaining elements.
例えば、ストレージノード100〜115の何れか1つ、例えばストレージノード100に障害が発生しても、ストレージノード100に格納されているデータのレプリカが別のストレージノード104(図7の例の場合)に格納されているので、ホストサーバ120〜123はストレージノード104を利用することで処理を継続することができる。
For example, even if a failure occurs in any one of the
また、エッジスイッチ130〜133の何れかのエッジスイッチ、例えばエッジスイッチ130に障害が発生した場合、ホストサーバ120はストレージノード100〜155をアクセスできなくなるために処理が停止し、またストレージノード100〜103を他のホストサーバ121〜123からアクセスできなくなるが、他のホストサーバ121〜123はエッジスイッチ131〜133を通じて、多重化された他のストレージノード104〜115をアクセスできるため、システム全体としては処理を継続することができる。
Further, when a failure occurs in any one of the edge switches 130 to 133, for example, the
また、ネットワーク140中の何れかのネットワーク経路に障害が発生しても、各ホストサーバ120〜123はネットワークの残りのネットワーク経路を通じて、自ホストサーバが接続されたエッジスイッチ以外のエッジスイッチに接続されたストレージノードをアクセスできるため、処理を継続することができる。
Even if a failure occurs in any of the network paths in the
また、ホストサーバ120〜123の何れかのホストサーバに障害が発生しても、多重化された他方のホストサーバにより処理を継続することができる。
Further, even if a failure occurs in any of the
このように本実施例に係るデータ分散格納システムは、ストレージノード、スイッチ、ネットワーク経路、ホストサーバの何れもSPOF(Single Point of Failure)にならないために、耐障害性を高めることができ、かつ、図2に示す接続構成から明らかなように、ストレージノード100〜115およびホストサーバ120〜123は、ネットワークインタフェースを多重に実装する必要がない。
As described above, the data distributed storage system according to the present embodiment can increase the fault tolerance because none of the storage nodes, switches, network paths, and host servers becomes a single point of failure (SPOF), and As is apparent from the connection configuration shown in FIG. 2, the
・実施例2
図16を参照すると、実施例2におけるメタサーバ124は、図8に示した実施例1におけるメタサーバと比較して、レプリカ取得先選択部315およびレプリカ取得ネットワーク経路決定部316が取り除かれている点と、レプリカ検索部314がレプリカ検索部317に置き換えられている点で相違する。Example 2
Referring to FIG. 16, the
レプリカ検索部317は、ホストサーバからファイル取得要求を受信し、ファイル取得要求で指定された取得対象ファイルを構成する各チャンクの配置先ストレージノードの識別子のリストであるレプリカリストをホストサーバに対して通知する。
The
図17を参照すると、実施例2におけるホストサーバ120〜123は、図11に示した実施例1におけるホストサーバと比較して、ファイル取得部351がファイル取得部353に置き換えられている点と、レプリカ取得先選択部354およびレプリカ取得ネットワーク経路決定部355が新たに追加されている点で相違する。
Referring to FIG. 17, the
レプリカ取得先選択部354は、複数のストレージノードに分散して配置されているチャンクの複数のレプリカの中から取得対象とするレプリカを選択する処理を行う。選択の方法としては、例えば、ホストサーバからのレプリカ取得が特定のストレージノードに集中せず負荷分散されるように、例えば履歴情報を元にラウンドロビンさせることでレプリカ取得先を選択する。勿論、選択の方法はこのような方法に限定されず、任意の方法を使用することができる。 The replica acquisition destination selection unit 354 performs processing for selecting a replica to be acquired from a plurality of replicas of chunks distributed and arranged in a plurality of storage nodes. As a selection method, for example, the replica acquisition destination is selected by round robin based on history information so that the replica acquisition from the host server is not concentrated on a specific storage node but is distributed. Of course, the selection method is not limited to such a method, and an arbitrary method can be used.
レプリカ取得ネットワーク経路決定部355は、ホストサーバからストレージノードに至る複数のネットワーク経路の計算と、この計算で得られた複数のネットワーク経路の中から実際に使用するネットワーク経路を選択する処理とを行う。選択の方法としては、ホストサーバからのレプリカ取得が特定のネットワーク経路に集中せずに負荷分散されるように選択する。勿論、選択の方法はこのような方法に限定されず、任意の方法を使用することができる。
The replica acquisition network
ファイル取得部353は、ストリーミング配信の対象となるコンテンツファイルなどのファイルを構成する各チャンクの配置先ストレージノードの識別子のリストであるレプリカリストをメタサーバに問い合わせ、取得したレプリカリストに記載されたストレージノードをアクセスし、取得したチャンクをつなげて記憶部210上に再構成ファイル341を作成する処理を行う。
The
次に本実施例2の動作を説明する。本実施例2の動作のうち、データ読み出し時以外の動作は実施例1と同じなので、以下ではデータ読み出し時の動作を説明する。 Next, the operation of the second embodiment will be described. Since the operations of the second embodiment other than the data reading operation are the same as those of the first embodiment, the operation at the data reading time will be described below.
[データ読み出し時]
図18Aと図18Bは、本実施例におけるファイルのデータ読み出し時のホストサーバ側の処理の流れを示すフローチャートである。図示のように、各ホストサーバ120〜123のファイル取得部353は、取得対象とするファイルの識別子を指定したファイル取得要求をメタサーバ124へ送信し(ステップS501)、メタサーバ124からの応答を待つ。[When reading data]
FIG. 18A and FIG. 18B are flowcharts showing the flow of processing on the host server side when reading file data in this embodiment. As illustrated, the
図19を参照すると、メタサーバ124のレプリカ検索部317は、ホストサーバから送信されたファイル取得要求を受信すると(ステップS601)、ファイル識別子をキーにレプリカ配置データベース302を検索して、ホストサーバが取得を要求したファイルの識別子333を含むファイル情報331からそのファイルを構成するチャンクの識別子のリスト334を取得する(ステップS602)。レプリカ検索部317は、若し、このリスト334が取得できない場合には(ステップS603でNO)、要求されたファイルが本データ分散格納システムに格納されていないことを意味するので、ファイル発見不能をホストサーバに通知し(ステップS611)、ファイル取得要求受信時の処理を終える。
Referring to FIG. 19, when receiving a file acquisition request transmitted from the host server (step S601), the
チャンク識別子のリスト334を取得した場合、次にレプリカ検索部317は、取得したリストに記述された先頭のチャンクに注目し(ステップS604)、注目したチャンクの識別子をキーにレプリカ配置データベース302を検索して、そのチャンク識別子を含むチャンク情報332からそのチャンクの配置先ストレージノードの識別子のリスト(レプリカリスト)336を取得する(ステップS605)。次にレプリカ検索部317は、この取得したレプリカリスト336を要求元のホストサーバへ通知する(ステップS606)。そして、ホストサーバからの応答を待つ。
If the
ホストサーバのファイル取得部353は、ファイル取得要求に対する応答としてメタサーバ124からファイル発見不能通知を受信すると(図18AのステップS516でYES)、ファイル取得要求受信時の処理を異常終了とする。他方、ファイル取得要求に対する応答としてメタサーバ124からレプリカリストを受信すると(図18AのステップS502でYES)、この取得したリストが空でなければ(ステップS503でNO)、そのリストをレプリカ取得先選択部354に伝達する。レプリカ取得先選択部354は、ストレージノードの負荷が分散されるようにリストの中から1つの配置先ストレージノードの識別子を選択し、結果をファイル取得部353に通知する(ステップS504)。また、ファイル取得部353は、リストが空であれば(ステップS503でYES)、取得失敗をメタサーバに通知し(ステップS517)、ファイル取得要求の受信時の処理を異常終了とする。
When the
次にファイル取得部353は、レプリカ取得先選択部354から通知された配置先ストレージノードをレプリカ取得ネットワーク経路決定部355に伝達する。レプリカ取得ネットワーク経路決定部355は、自ホストサーバから配置先ストレージノードに至る複数のネットワーク経路を計算し、ネットワーク経路集合に記憶する(ステップS505)。続いてレプリカ取得ネットワーク経路決定部355は、ネットワーク経路の負荷が分散されるように、ネットワーク経路集合から1つのネットワーク経路を選択し、ファイル取得部353へ通知する(ステップS507)。
Next, the
ファイル取得部353は、レプリカ取得先選択部354から通知された配置先ストレージノードとレプリカ取得ネットワーク経路決定部355から通知されたネットワーク経路と取得対象とするチャンクの識別子とを含むレプリカ取得情報に基づいて、配置先ストレージノードをアクセスしてチャンクを取得する(ステップS508)。そして、取得に成功すれば(ステップS509でYES)、取得したチャンクで再構成ファイル341の一部を再構成し(ステップS510)、取得成功をメタサーバ124へ通知する(ステップS511)。他方、ネットワークエラーや配置先ストレージノードの障害などによってチャンクの取得に失敗した場合(ステップS509でNO)、失敗の原因がネットワークエラーかどうかを判別し(ステップS512)、ネットワークエラーであれば、レプリカ取得ネットワーク経路決定部355に次のネットワーク経路の選択を指示する。レプリカ取得ネットワーク経路決定部355は、前回選択したネットワーク経路をネットワーク経路集合から削除し(ステップS513)、残りのネットワーク経路から1つのネットワーク経路を選択してファイル取得部353へ通知する。また、残りのネットワーク経路が1つも無ければ、その旨をファイル取得部353へ通知する。ファイル取得部353は、ネットワーク経路が通知されると、この通知されたネットワーク経路とステップS504においてレプリカ取得先選択部354で選択されていた取得先ストレージノードとを含むレプリカ取得情報に基づいて、配置先ストレージノードをアクセスしてチャンクを取得する(ステップS508)。以降、チャンクの取得に成功するか、ネットワーク経路集合が空になるまで同様の動作が繰り返される。そして、最後のネットワーク経路によっても取得に成功しなかった場合(ステップS506でYES)、ファイル取得部353は、注目中チャンクのレプリカリストから今回の取得先ストレージノードを削除し(ステップS514)、リストが空でなければ、リストをレプリカ取得先選択部354に伝達し、レプリカ取得先選択部354はそのリスト中から1つの取得先ストレージノードを選択してファイル取得部353へ通知する(ステップS504)。以降、チャンクの取得に成功するか、レプリカリストが空になるまで同様の動作が繰り返される。そして、最後のストレージノードからもチャンクの取得に成功しなかった場合(ステップS503でYES)、当該チャンクは本データ分散格納システムに格納されている可能性はあるがアクセス不能であることを意味するので、取得失敗をメタサーバに通知し(ステップS517)、ファイル取得要求の処理を異常終了とする。
The
メタサーバ124のレプリカ検索部317は、レプリカ取得情報に対する応答としてホストサーバから取得成功が通知されると(ステップS607でYES)、要求されたファイルの最後のチャンクまで読み出しを終えたかどうかを判定し(ステップS608)、終えていなければ、ステップS602で取得したチャンク識別子のリスト中の次のチャンクに注目を移して(ステップS609)、ステップS605に戻り、上述した処理と同様の処理を繰り返す。最後のチャンクまで読み出しを終えていれば(ステップS608でYES)、ファイル読み出し完了をホストサーバに通知し(ステップS610)、ファイル取得要求受信時の処理を正常終了とする。このファイル読み出し完了の通知を受信したホストサーバのファイル取得部353は、ファイル取得要求の処理が正常終了となる(ステップS515でYES)。
The
また、レプリカ検索部317は、レプリカリストに対する応答としてホストサーバから取得失敗が通知されると(ステップS603でNO)、ファイル発見不能をホストサーバに通知する(ステップS611)。ホストサーバのファイル取得部353は、ファイル発見不能の通知をメタサーバから受信すると(ステップS516でYES)、ファイル取得要求の処理を異常終了とする。
Further, when the acquisition failure is notified from the host server as a response to the replica list (NO in step S603), the
次に本実施例2の効果を説明する。 Next, the effect of the second embodiment will be described.
本実施例2によれば、実施例1と同様の効果を得ることができると同時に、実施例1においてメタサーバに設けていたレプリカ取得先選択部およびレプリカ取得ネットワーク経路決定部をホストサーバに設けるようにしたことにより、メタサーバのレプリカ取得先を選択するコスト、レプリカ取得ネットワーク経路を計算するコストを軽減でき、メタサーバのスケーラビリティが向上する。また、ホストサーバは、メタサーバからレプリカリストを受信しているため、レプリカリスト中の何れかのストレージノードからチャンクのレプリカを取得することができなかった場合でも、実施例1のようにメタサーバに再度問い合わせを行う必要がなく、問い合わせに要するオーバヘッドを軽減することができる。 According to the second embodiment, the same effect as that of the first embodiment can be obtained, and at the same time, the replica acquisition destination selection unit and the replica acquisition network path determination unit provided in the meta server in the first embodiment are provided in the host server. By doing so, the cost of selecting the replica acquisition destination of the meta server and the cost of calculating the replica acquisition network path can be reduced, and the scalability of the meta server is improved. In addition, since the host server receives the replica list from the meta server, even if the replica of the chunk cannot be obtained from any storage node in the replica list, the host server again returns to the meta server as in the first embodiment. There is no need to make an inquiry, and the overhead required for the inquiry can be reduced.
『その他の実施例』
実施例1および実施例2では、ホストサーバは、ファイルを構成するチャンクをその先頭のチャンクから最後のチャンクまで順番に、1チャンクずつ、直前のチャンクの取得完了後に次のチャンクの読み出しを開始したが、連続する複数のチャンクの読み出しを並行して行うようにしても良い。例えば、図7に示したようにファイルのチャンクが配置されている場合、ホストサーバ120は、ストレージノード100からチャンク0の読み出しを開始し、そのチャンク0の読み出しの完了を待たずに、ストレージノード105からチャンク1の読み出しを開始することで、連続する複数のチャンクの読み出しを異なるストレージノード、異なるネットワーク経路を用いて並列に行うようにしても良い。このような処理によって、特にストリーミングデータの送出時に顕著なチャンクの連続読み出しを行った際に、スループットの向上が達成でき、ネットワークボトルネックを生じさせないストレージクラスタを構築できる。"Other examples"
In the first and second embodiments, the host server starts reading the next chunk after completing the acquisition of the previous chunk, one by one, in order from the first chunk to the last chunk. However, a plurality of consecutive chunks may be read in parallel. For example, when a chunk of a file is arranged as shown in FIG. 7, the
上述したような処理を可能にするために、メタサーバ124のレプリカ配置決定部312は、連続するチャンクが異なるネットワーク経路でアクセス可能な異なるストレージノードに配置するように、レプリカの配置を決定する。また、実施例1ではメタサーバのレプリカ検索部314、レプリカ取得先選択部315およびレプリカ取得ネットワーク経路決定部316が、また実施例2ではホストサーバのファイル取得部353、レプリカ取得先選択部354およびレプリカ取得ネットワーク経路決定部355が、連続する複数のチャンクの読み出しを異なるストレージノードおよび異なるネットワーク経路を用いて並列に行えるように、チャンクを取得するストレージノードおよびそのネットワーク経路を決定する。
In order to enable the processing as described above, the replica
以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the embodiments (and examples), the present invention is not limited to the above embodiments (and examples). Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
この出願は、2007年12月28日に出願された日本出願特願2007−339575を基礎とする優先権を主張し、その開示のすべてをここに取り込む。 This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2007-339575 for which it applied on December 28, 2007, and takes in those the indications of all here.
本発明によれば、高信頼、高スループット、低コストを要求する状況におけるストレージ、例えば、ストリーミング配信サーバのバックエンドとしてのストレージ、メールデータのリポジトリ、などといった用途に適用できる。 INDUSTRIAL APPLICABILITY According to the present invention, the present invention can be applied to uses such as storage in a situation requiring high reliability, high throughput, and low cost, for example, storage as a back end of a streaming distribution server, a mail data repository, and the like.
Claims (10)
前記エッジスイッチ毎の、該エッジスイッチに接続された1つ以上のストレージノードと1つ以上のホストサーバと、
前記複数のエッジスイッチを複数のネットワーク経路で接続するネットワークと、
前記ネットワークを介して前記複数のエッジスイッチと接続されたメタサーバとを備え、
前記ホストサーバは、自身と同一の前記エッジスイッチに接続された各前記ストレージノードにアクセス可能であると共に、前記複数のエッジスイッチを介して他の各前記ストレージノードにアクセス可能であり、
前記メタサーバは、
ファイルの格納指示がなされたときに、該ファイルを複数のチャンクに分割し、夫々のチャンクについて、そのレプリカを複数複製すると共に、同一のチャンクのレプリカが同一のエッジスイッチに接続されたストレージノードに格納されないように、複数の前記レプリカを複数のエッジスイッチに分散して格納する、
データ分散格納システム。 Multiple edge switches,
For each edge switch, one or more storage nodes and one or more host servers connected to the edge switch;
A network connecting the plurality of edge switches through a plurality of network paths;
A meta server connected to the plurality of edge switches via the network;
The host server can access each of the storage nodes connected to the same edge switch as the host server, and can access each of the other storage nodes via the plurality of edge switches,
The metaserver is
When a file is instructed to be stored, the file is divided into a plurality of chunks, and a replica of each chunk is duplicated, and a replica of the same chunk is stored in a storage node connected to the same edge switch. A plurality of the replicas are distributed and stored in a plurality of edge switches so as not to be stored.
Distributed data storage system.
前記エッジスイッチと前記ストレージノードとの接続関係を示すエッジスイッチ構成情報を記憶するエッジスイッチ構成情報記憶手段と、
前記エッジスイッチ構成情報を参照して、夫々の前記レプリカの格納先となるストレージノードを決定するレプリカ配置決定手段と、
各前記レプリカを前記レプリカ配置決定手段で決定された前記ストレージノードに格納するレプリカ配置処理手段と、
前記ファイルを構成する各前記チャンクの前記ストレージノードへの配置状況を記憶するレプリカ配置記憶手段と、
を有することを特徴とする請求項1に記載のデータ分散格納システム。 The metaserver is
Edge switch configuration information storage means for storing edge switch configuration information indicating a connection relationship between the edge switch and the storage node;
With reference to the edge switch configuration information, replica placement determining means for determining a storage node to store each of the replicas ;
And the replica processing means for storing each said replica before Symbol storage node determined by the replica placement determining means,
Replica arrangement storage means for storing the arrangement status of each chunk constituting the file in the storage node;
The data distributed storage system according to claim 1, comprising:
前記ホストサーバは、前記メタサーバに対して前記ファイル取得要求を送信し、その応答として通知される前記取得情報に基づいて前記ストレージノードをアクセスして各当該レプリカを取得することを特徴とする請求項1または2に記載のデータ分散格納システム。 In response to a file acquisition request from the host server, the meta server receives the storage node from the storage node storing the replica corresponding to each chunk constituting the requested file and the requesting host server. Further comprising replica search means for notifying the requesting host server of acquisition information specifying a network path to access to,
The host server, the claims transmitting the file acquisition request to the meta server, and obtains each said replica by accessing the storage node based on the acquired information notified as a response The data distributed storage system according to 1 or 2.
前記レプリカ検索手段は、前記ホストサーバにおける連続する複数のチャンクのレプリカの読み出しが異なるストレージノードおよび異なるネットワーク経路を用いて並列に行えるように、ホストサーバがレプリカを取得するストレージノードおよびそのネットワーク経路を決定することを特徴とする請求項3に記載のデータ分散格納システム。 The replica arrangement determining means determines an arrangement in which replicas of a plurality of consecutive chunks constituting a file are arranged in different storage nodes accessible via different network paths,
The replica search means determines a storage node from which the host server obtains a replica and its network path so that reading of replicas of a plurality of successive chunks in the host server can be performed in parallel using different storage nodes and different network paths. 4. The data distribution storage system according to claim 3, wherein the data distribution storage system is determined.
前記メタサーバが、ファイルの格納指示がなされたときに、該ファイルを複数のチャンクに分割し、夫々のチャンクについて、そのレプリカを複数複製すると共に、同一のチャンクのレプリカが同一のエッジスイッチに接続されたストレージノードに格納されないように、複数の前記レプリカを複数のエッジスイッチに分散して格納するファイル格納ステップを実行することを特徴とするデータ分散格納方法。 A plurality of edge switches, for each of the edge switches, one or more storage nodes connected to the edge switch, one or more host servers, and a network connecting the plurality of edge switches through a plurality of network paths; A meta server connected to the plurality of edge switches via the network, the host server being able to access each of the storage nodes connected to the same edge switch as the host server, and the plurality of edges A data distributed storage method in a data distributed storage system that is accessible to each of the other storage nodes via a switch ,
When the meta server is instructed to store a file, the meta server divides the file into a plurality of chunks, and for each chunk, duplicates a plurality of replicas, and replicas of the same chunk are connected to the same edge switch. A data distribution storage method comprising: executing a file storage step of distributing and storing a plurality of the replicas in a plurality of edge switches so as not to be stored in the storage node .
ファイルの格納指示がなされたときに、該ファイルを複数のチャンクに分割し、夫々のチャンクについて、そのレプリカを複数複製すると共に、同一のチャンクのレプリカが同一のエッジスイッチに接続されたストレージノードに格納されないように、複数の前記レプリカを複数のエッジスイッチに分散して格納する処理を実行せしめることを特徴とするプログラム。 A plurality of edge switches, for each of the edge switches, one or more storage nodes connected to the edge switch, one or more host servers, and a network connecting the plurality of edge switches through a plurality of network paths; A meta server connected to the plurality of edge switches via the network, the host server being able to access each of the storage nodes connected to the same edge switch as the host server, and the plurality of edges In the computer constituting the meta server in the distributed data storage system accessible to each other storage node via a switch ,
When a file is instructed to be stored, the file is divided into a plurality of chunks, and a replica of each chunk is duplicated, and a replica of the same chunk is stored in a storage node connected to the same edge switch. A program for causing a plurality of replicas to be distributed and stored in a plurality of edge switches so as not to be stored .
前記ホストサーバからのファイル取得要求に応答して、要求されたファイルを構成する各チャンクに夫々対応する前記レプリカが格納されている前記ストレージノードと要求元のホストサーバから当該ストレージノードへアクセスするネットワーク経路とを指定した取得情報を、要求元のホストサーバへ通知する処理をさらに実行せしめることを特徴とする請求項9に記載のプログラム。 In the computer constituting the meta server,
In response to a file acquisition request from the host server, the storage node storing the replica corresponding to each chunk constituting the requested file and a network that accesses the storage node from the requesting host server The program according to claim 9, further executing a process of notifying acquisition information specifying a route to a requesting host server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009547948A JP5445138B2 (en) | 2007-12-28 | 2008-10-23 | Data distributed storage method and data distributed storage system |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007339575 | 2007-12-28 | ||
JP2007339575 | 2007-12-28 | ||
JP2009547948A JP5445138B2 (en) | 2007-12-28 | 2008-10-23 | Data distributed storage method and data distributed storage system |
PCT/JP2008/069218 WO2009084314A1 (en) | 2007-12-28 | 2008-10-23 | Distributed data storage method and distributed data storage system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009084314A1 JPWO2009084314A1 (en) | 2011-05-12 |
JP5445138B2 true JP5445138B2 (en) | 2014-03-19 |
Family
ID=40824037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009547948A Active JP5445138B2 (en) | 2007-12-28 | 2008-10-23 | Data distributed storage method and data distributed storage system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5445138B2 (en) |
WO (1) | WO2009084314A1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101374655B1 (en) * | 2010-09-29 | 2014-03-24 | 네이버비즈니스플랫폼 주식회사 | System and method for distributely processing file volume for chunk unit |
JP5271392B2 (en) * | 2011-07-19 | 2013-08-21 | 日本電信電話株式会社 | Distributed file management system, distributed file arrangement method and program |
US10177907B2 (en) * | 2015-07-20 | 2019-01-08 | Sony Corporation | Distributed object routing |
CN110162441A (en) * | 2019-04-16 | 2019-08-23 | 平安普惠企业管理有限公司 | Centralized monitoring method and device, electronic equipment, the storage medium of application system |
CN114650198B (en) * | 2022-03-31 | 2023-01-06 | 联想(北京)有限公司 | Method and device for determining storage architecture |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003316522A (en) * | 2002-04-26 | 2003-11-07 | Hitachi Ltd | Computer system and method for controlling the same system |
JP2005505035A (en) * | 2001-09-28 | 2005-02-17 | マランティ ネットワークス インコーポレイテッド | Pooling and provisioning of storage resources in storage networks |
JP2005505814A (en) * | 2001-09-28 | 2005-02-24 | マランティ ネットワークス インコーポレイテッド | Load balancing in storage networks |
JP2005507201A (en) * | 2001-09-28 | 2005-03-10 | マランティ ネットワークス インコーポレイテッド | Quality of service execution in the storage network |
JP2005227807A (en) * | 2004-02-10 | 2005-08-25 | Hitachi Ltd | Storage system |
-
2008
- 2008-10-23 JP JP2009547948A patent/JP5445138B2/en active Active
- 2008-10-23 WO PCT/JP2008/069218 patent/WO2009084314A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005505035A (en) * | 2001-09-28 | 2005-02-17 | マランティ ネットワークス インコーポレイテッド | Pooling and provisioning of storage resources in storage networks |
JP2005505814A (en) * | 2001-09-28 | 2005-02-24 | マランティ ネットワークス インコーポレイテッド | Load balancing in storage networks |
JP2005507201A (en) * | 2001-09-28 | 2005-03-10 | マランティ ネットワークス インコーポレイテッド | Quality of service execution in the storage network |
JP2003316522A (en) * | 2002-04-26 | 2003-11-07 | Hitachi Ltd | Computer system and method for controlling the same system |
JP2005227807A (en) * | 2004-02-10 | 2005-08-25 | Hitachi Ltd | Storage system |
Also Published As
Publication number | Publication date |
---|---|
WO2009084314A1 (en) | 2009-07-09 |
JPWO2009084314A1 (en) | 2011-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI813743B (en) | Independent datastore in a network routing environment | |
JP4237515B2 (en) | Network storage virtualization method and network storage system | |
US8301654B2 (en) | Geographical distributed storage system based on hierarchical peer to peer architecture | |
JP4520802B2 (en) | Storage network management server, storage network management method, storage network management program, and storage network management system | |
US10320905B2 (en) | Highly available network filer super cluster | |
US8560627B2 (en) | Virtual switch for use in fibre channel applications | |
US9071532B2 (en) | Method for discovery and load balancing of path computation elements based on transport plane link metrics | |
JP6438719B2 (en) | Communication system and communication program | |
KR101694288B1 (en) | Method for managing data in asymmetric cluster file system | |
JP5445138B2 (en) | Data distributed storage method and data distributed storage system | |
JP2014044677A (en) | Transmission control program, communication node, and transmission control method | |
JP5136585B2 (en) | Information communication system, node device, information processing method, and information processing program | |
JP4815547B2 (en) | Data synchronization system, data synchronization method, and synchronization management server | |
US9544371B1 (en) | Method to discover multiple paths to disk devices cluster wide | |
JP7154978B2 (en) | Device management server, method and program | |
JP6011786B2 (en) | Distributed storage system, distributed storage data allocation control method, and distributed storage data allocation control program | |
JP5610397B2 (en) | Resource reservation apparatus, method and program | |
JP2006100906A (en) | Method for managing operation of network system and storage device | |
TW201832094A (en) | Software-defined storage apparatus, system, and storage method | |
JP5168333B2 (en) | P2P terminal and content distribution system | |
JP2020078007A (en) | Control device and control method | |
JP2006003962A (en) | Network storage system | |
JP2006209343A (en) | Data processing system, central unit, auxiliary unit, requester unit, central service method, auxiliary service method, requester method and program | |
JP4981412B2 (en) | File transfer system and method, management apparatus and server | |
JP2018005456A (en) | Image distribution program, image distribution device and image distribution method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130625 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130822 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131126 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131209 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5445138 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |