JP2017182286A - Storage management system and storage management method - Google Patents

Storage management system and storage management method Download PDF

Info

Publication number
JP2017182286A
JP2017182286A JP2016065875A JP2016065875A JP2017182286A JP 2017182286 A JP2017182286 A JP 2017182286A JP 2016065875 A JP2016065875 A JP 2016065875A JP 2016065875 A JP2016065875 A JP 2016065875A JP 2017182286 A JP2017182286 A JP 2017182286A
Authority
JP
Japan
Prior art keywords
data
storage
unit
proxy server
identifier
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
JP2016065875A
Other languages
Japanese (ja)
Other versions
JP6330840B2 (en
Inventor
裕貴 早川
Hiroki Hayakawa
裕貴 早川
野中 肇
Hajime Nonaka
肇 野中
真 中島
Makoto Nakajima
真 中島
宗之 吉川
Muneyuki Yoshikawa
宗之 吉川
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2016065875A priority Critical patent/JP6330840B2/en
Publication of JP2017182286A publication Critical patent/JP2017182286A/en
Application granted granted Critical
Publication of JP6330840B2 publication Critical patent/JP6330840B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To reduce storage cost, and to reduce response time required in reading data.SOLUTION: A storage management system applies identifier to data transmitted together with a request, and transmits data, on receipt of a write request, to a storage device of a plurality of storage device, which is determined in accordance with the identifier and a predetermined rule and stores the data as master data, and a storage device different from the above storage device and storing the data as replica data of the master data. Each of the storage devices includes first storage means of determining whether to store data as master data or replica data, on the basis of an identifier and a predetermined rule, to store the data, and second storage means which is storage means of a migration destination. When the data is determined to be stored as replica data, the data is stored in the second storage means.SELECTED DRAWING: Figure 10

Description

ストレージ装置を管理する技術に関する。   The present invention relates to a technology for managing storage devices.

データの冗長化を目的としたレプリカを作成し保管するストレージシステムが提案されている(特許文献1、2)。しかしながら、冗長化したデータを記憶するストレージシステムにおいて磁気ディスクのみを使用する場合、該磁気ディスクはマスタデータだけでなく該マスタデータのレプリカデータを記憶する必要があるため、多重度をあげればあげるほど、記憶領域を確保する必要がある。このような記憶領域に対する記憶コストを低減するために、記憶装置が空き領域不足に陥ることを防ぐ方法が提案されている(特許文献3)。   Storage systems that create and store replicas for the purpose of data redundancy have been proposed (Patent Documents 1 and 2). However, when only a magnetic disk is used in a storage system for storing redundant data, the magnetic disk needs to store not only master data but also replica data of the master data. It is necessary to secure a storage area. In order to reduce the storage cost for such a storage area, a method for preventing the storage device from running out of free space has been proposed (Patent Document 3).

また、ストレージシステムにおいて使用される磁気ディスクは、データにアクセスしていないアイドル状態においても電力を消費してしまうため、該磁気ディスクは、消費電力の面においてもコストがかかる。なお、電力の節約を行うストレージクラスタに関する技術が特許文献4に記載されている。   In addition, since the magnetic disk used in the storage system consumes power even in an idle state in which data is not accessed, the magnetic disk is expensive in terms of power consumption. Patent Document 4 describes a technology related to a storage cluster that saves power.

なお、非特許文献1には、ストレージシステムの一例として、オブジェクトという単位でデータを扱うオブジェクトストレージが記載されている。   Non-Patent Document 1 describes an object storage that handles data in units of objects as an example of a storage system.

特開2015−156071号公報Japanese Patent Laying-Open No. 2015-156071 国際公開第2008/120340号International Publication No. 2008/120340 特開2003−015917号公報Japanese Patent Laid-Open No. 2003-015917 特開2014−194803号公報JP 2014-194803 A

喜連川優著、「ストレージ技術クラウドとビッグデータの時代」、第1版、株式会社オーム社、2015年5月15日、p.121―132Kitsuregawa Yuu, "The Age of Storage Technology Cloud and Big Data", 1st Edition, Ohm Corporation, May 15, 2015, p. 121-132

記憶コストを低減する方法として、一般的なHSM(Hierarchical Storage Management)機能を使用すると、使用頻度が低いデータをテープに格納する。使用頻度が低いマスタデータがテープに格納されると、そのマスタデータに読み出しが発生した場合、テープから読み出しを行うため、読み出しに時間がかかってしまう。   As a method for reducing the storage cost, when a general HSM (Hierarchical Storage Management) function is used, data that is not frequently used is stored on the tape. When master data that is used infrequently is stored on a tape, if the master data is read out, it takes time to read out the data because it is read from the tape.

特許文献1に関連する技術は、データ毎に該データをマスタとして格納するマスタノードと該データをスレーブとして格納するスレーブノードとを設定して、データの冗長化を行っている。しかしながら、特許文献1に関連する技術に、上記HSM機能を適用した場合、マスタノードおよびスレーブノードの両方において、使用頻度が低いデータがテープに移動することになり、該テープに移動したデータの読み出しに時間がかかってしまう。特許文献3に関連する技術でも、同様に、使用頻度が低いデータがテープに移動することになり、該テープに移動したデータの読み出しに時間がかかってしまう。   In the technique related to Patent Document 1, for each data, a master node that stores the data as a master and a slave node that stores the data as a slave are set to make data redundant. However, when the HSM function is applied to the technology related to Patent Document 1, data that is used infrequently moves to the tape in both the master node and the slave node, and the data that has been moved to the tape is read. Takes time. Similarly, in the technique related to Patent Document 3, data that is used infrequently moves to the tape, and it takes time to read the data moved to the tape.

また、特許文献2に関連する技術に、データ毎に該データをマスタとして格納するストレージと該データをスレーブとして格納するストレージとを適用する場合、プライマリデータを格納するディスクストレージと、セカンダリデータを格納するテープストレージとが同じ装置内に構成される。この場合、同じ装置内に同じデータが存在することになり、記憶コストが上がってしまう。   Further, in the case of applying a storage that stores the data as a master and a storage that stores the data as a slave to the technology related to Patent Document 2, a disk storage that stores primary data and a secondary data are stored. The tape storage is configured in the same device. In this case, the same data exists in the same device, and the storage cost increases.

また、特許文献4に関連する技術では、アイドル状態のノードに対してデータのアクセスがあった場合、アイドル状態から復帰して処理を行うため、応答に時間がかかってしまう。   Further, in the technique related to Patent Document 4, when data is accessed to an idle node, processing is performed after returning from the idle state, and thus it takes a long time to respond.

本発明は、上記課題に鑑みてなされたものであり、その目的は、記憶コストを低減し、データの読み出しの際に掛かる応答時間を短くする技術を提供する。   The present invention has been made in view of the above problems, and an object of the present invention is to provide a technique for reducing the storage cost and shortening the response time required for reading data.

本発明の一形態に係るストレージ管理システムは、クライアント端末と、プロキシサーバと、複数のストレージ装置とを含み、前記プロキシサーバは、前記クライアント端末から、要求と共に送信されたデータに識別子を割り当てる割当手段と、前記要求が書き込み要求の場合、前記複数のストレージ装置のうち、前記識別子および所定のルールに応じて決定された、前記データをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとして前記データを格納するストレージ装置とに対し、前記データを送信する算出手段と、を備え、前記複数のストレージ装置の夫々は、自装置が前記プロキシサーバから送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、前記識別子および前記所定のルールに基づいて判定する判定処理を行う判定手段と、前記プロキシサーバから送信された前記データを記憶する第1記憶手段と、マイグレーション先の記憶手段である第2記憶手段と、を備え、前記判定手段は、前記プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データを前記第2記憶手段に記憶する。   A storage management system according to an aspect of the present invention includes a client terminal, a proxy server, and a plurality of storage devices, and the proxy server assigns an identifier to data transmitted together with a request from the client terminal. When the request is a write request, a storage device that stores the data as master data, which is determined according to the identifier and a predetermined rule, among the plurality of storage devices, and a storage device different from the storage device A storage device that stores the data as replica data of the master data, and each of the plurality of storage devices has its own proxy server. Store data sent from as master data Determination means for determining whether to store as replica data based on the identifier and the predetermined rule, a first storage means for storing the data transmitted from the proxy server, a migration destination A second storage unit that is a storage unit, and when the determination unit determines to store the data transmitted from the proxy server as replica data, the determination unit stores the data in the second storage unit.

本発明の一形態に係るストレージ管理方法は、クライアント端末と、プロキシサーバと、複数のストレージ装置とを含むストレージ管理システムのストレージ管理方法であって、前記プロキシサーバは、前記クライアント端末から、要求と共に送信されたデータに識別子を割り当て、前記要求が書き込み要求の場合、前記複数のストレージ装置のうち、前記識別子および所定のルールに応じて決定された、前記データをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとして前記データを格納するストレージ装置とに対し、前記データを送信し、前記複数のストレージ装置の夫々は、前記プロキシサーバから送信された前記データを記憶する第1記憶手段と、マイグレーション先の記憶手段である第2記憶手段と、を備え、自装置が前記プロキシサーバから送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、前記識別子および前記所定のルールに基づいて判定する判定処理を行い、前記プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データを前記第2記憶手段に記憶する。   A storage management method according to an aspect of the present invention is a storage management method for a storage management system including a client terminal, a proxy server, and a plurality of storage devices, and the proxy server receives a request from the client terminal. An identifier is assigned to the transmitted data, and when the request is a write request, a storage device that stores the data as master data determined according to the identifier and a predetermined rule among the plurality of storage devices; The storage device is different from the storage device, and the data is transmitted to a storage device that stores the data as replica data of the master data, and each of the plurality of storage devices is transmitted from the proxy server. A first storage for storing the processed data And a second storage unit that is a storage unit of a migration destination, and the identifier and the predetermined data indicate whether the device itself stores data transmitted from the proxy server as master data or replica data If it is determined to store the data transmitted from the proxy server as replica data, the data is stored in the second storage means.

本発明によれば記憶コストを低減し、データの読み出しの際に掛かる応答時間を短くすることができる。   According to the present invention, the storage cost can be reduced, and the response time required for reading data can be shortened.

本発明の第1実施形態に係るストレージ管理システムの概要を説明するための図である。It is a figure for demonstrating the outline | summary of the storage management system which concerns on 1st Embodiment of this invention. 本発明の第1実施形態に係るプロキシサーバの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the proxy server which concerns on 1st Embodiment of this invention. アクセスルールを説明するための図である。It is a figure for demonstrating an access rule. 本発明の第1実施形態に係るストレージ装置の構成の一例を示すブロック図である。1 is a block diagram illustrating an example of a configuration of a storage device according to a first embodiment of the present invention. 本発明の第1実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the storage management system which concerns on 1st Embodiment of this invention. 本発明の第1実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the storage management system which concerns on 1st Embodiment of this invention. 本発明の第1実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the storage management system which concerns on 1st Embodiment of this invention. 本発明の第2実施形態に係るストレージ管理システムの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the storage management system which concerns on 2nd Embodiment of this invention. 本発明の第2実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the storage management system which concerns on 2nd Embodiment of this invention. 本発明の第3実施形態に係るストレージ管理システムの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the storage management system which concerns on 3rd Embodiment of this invention. 本発明の各実施形態に係る支援装置を実現する情報処理装置のハードウェア構成の一例を示すブロック図である。It is a block diagram which shows an example of the hardware constitutions of the information processing apparatus which implement | achieves the assistance apparatus which concerns on each embodiment of this invention. 本発明に関連するHSM(Hierarchical Storage Management)を使用したマイグレーション処理の動作を説明するフローチャートである。It is a flowchart explaining the operation | movement of the migration process using HSM (Hierarchical Storage Management) relevant to this invention.

以下、適宜図面を参照し、本発明について詳細に説明する。   Hereinafter, the present invention will be described in detail with reference to the drawings as appropriate.

<第1実施形態>
図1は、本発明の第1実施形態に係るストレージ管理システム1の概要を説明するためのブロック図である。ストレージ管理システム1は、クライアント端末10と、プロキシサーバ20と、ストレージ装置30と、ストレージ装置40とを備える。クライアント端末10と、プロキシサーバ20とは、有線または無線のネットワークよって相互に接続されている。また、プロキシサーバ20と、ストレージ装置30と、ストレージ装置40とは、例えばIP(Internet Protocol)ネットワークによって相互に接続されている。なお、ストレージ装置の数は2つ以上でもよい。なお、クライアント端末の数は1つ以上でもよい。
<First Embodiment>
FIG. 1 is a block diagram for explaining an overview of the storage management system 1 according to the first embodiment of the present invention. The storage management system 1 includes a client terminal 10, a proxy server 20, a storage device 30, and a storage device 40. The client terminal 10 and the proxy server 20 are connected to each other via a wired or wireless network. The proxy server 20, the storage device 30, and the storage device 40 are connected to each other by, for example, an IP (Internet Protocol) network. The number of storage devices may be two or more. Note that the number of client terminals may be one or more.

クライアント端末10は、データに対する操作(書き込みまたは読み出し)を示す操作情報と、操作の対象となるデータまたはデータを特定する情報と、クライアント端末10を特定する端末情報と、を含む要求を、プロキシサーバ20に送信する。なお、クライアント端末10は複数でもよい。   The client terminal 10 sends a request including operation information indicating an operation (writing or reading) to data, data specifying data or data to be operated, and terminal information specifying the client terminal 10 to the proxy server. 20 to send. A plurality of client terminals 10 may be provided.

操作情報が示す操作が書き込みの場合、要求は、操作情報と、操作の対象となるオブジェクト(データ)と、端末情報とを含む。また、操作情報が示す操作が読み出しの場合、要求は、操作情報と、操作の対象となるオブジェクト(データ)を特定する情報と、端末情報とを含む。操作の対象となるデータを特定する情報とは、例えばオブジェクト名でもよい。以下、データをオブジェクトとも呼ぶ。   When the operation indicated by the operation information is writing, the request includes operation information, an object (data) to be operated, and terminal information. When the operation indicated by the operation information is a read operation, the request includes operation information, information for specifying an object (data) to be operated, and terminal information. The information for specifying data to be operated may be an object name, for example. Hereinafter, data is also referred to as an object.

プロキシサーバ20は、クライアント端末10から、要求を受信し、受信した要求を用いて、処理を行う。プロキシサーバ20は、受信した要求に含まれるオブジェクトにオブジェクトを特定するID(Identifier)であるオブジェクトIDを割り当てる。そして、プロキシサーバ20は、オブジェクトIDが割り当てられたオブジェクト(割当後オブジェクト)を多重化して複数のストレージ装置(30、40)に送信する。これにより、要求に含まれる操作情報が書き込みを示す場合において、プロキシサーバ20は、書き込みの対象となるデータ(オブジェクト)に冗長性を持たせることができる。なお、オブジェクトIDと、プロキシサーバ20が有する部材およびプロキシサーバ20が行う具体的な処理とについては、後述する。   The proxy server 20 receives a request from the client terminal 10 and performs processing using the received request. The proxy server 20 assigns an object ID that is an ID (Identifier) that identifies the object to the object included in the received request. Then, the proxy server 20 multiplexes the object to which the object ID is allocated (post-allocation object) and transmits the multiplexed object to the plurality of storage devices (30, 40). Thereby, when the operation information included in the request indicates writing, the proxy server 20 can provide redundancy to the data (object) to be written. In addition, object ID, the member which the proxy server 20 has, and the specific process which the proxy server 20 performs are mentioned later.

ストレージ装置30およびストレージ装置40は、プロキシサーバ20から、割当後オブジェクトを受信する。ストレージ装置30およびストレージ装置40は、受信した割当後オブジェクトのオブジェクトIDを、ファイルIDに変換する。ファイルIDについては後述する。そして、ストレージ装置30およびストレージ装置40は、ファイルIDと、割当後オブジェクトとを用いて、データの書き込みまたはデータの読み出しを行う。以下、図2〜図4を用いて、プロキシサーバ20と、ストレージ装置30およびストレージ装置40とが有する部材について説明する。   The storage device 30 and the storage device 40 receive the allocated object from the proxy server 20. The storage device 30 and the storage device 40 convert the received object ID of the allocated object into a file ID. The file ID will be described later. Then, the storage device 30 and the storage device 40 write data or read data using the file ID and the allocated object. Hereinafter, members of the proxy server 20, the storage device 30, and the storage device 40 will be described with reference to FIGS.

図2は、本発明の第1実施形態に係るストレージ管理システム1を示し、特にプロキシサーバ20の詳細な構成の一例を示すブロック図である。プロキシサーバ20は、割当部21と、算出部22と、変更部23と、サーバ記憶部24とを備える。   FIG. 2 is a block diagram showing the storage management system 1 according to the first embodiment of the present invention, and in particular an example of a detailed configuration of the proxy server 20. The proxy server 20 includes an allocation unit 21, a calculation unit 22, a change unit 23, and a server storage unit 24.

割当部21は、例えば、クライアント端末10から要求を受信し、受信した要求が書き込みの場合、該要求に含まれるオブジェクトに、オブジェクトを特定するオブジェクトIDを割り当てる。また、要求が読み出しの場合、割当部21は、該要求に含まれる操作の対象となるデータを特定する情報(例えば、オブジェクト名)によって特定されるオブジェクトに割り当てられているオブジェクトIDを、その情報に関連付ける。以降、操作の対象となるデータを特定する情報をオブジェクト名として説明を行う。そして、割当部21は、オブジェクトIDを割り当てたオブジェクト、またはオブジェクトIDと関連付けたオブジェクト名を割当後オブジェクトとし、割当後オブジェクトを算出部22に送信する。なお、要求が読み出しの場合、割当後オブジェクトは、オブジェクトIDのみを含んでいてもよい。ここで割り当てられるオブジェクトIDは、一意な文字列であり、例えば、GUID(Global Unique Identifier)である。また、割当部21は、どのオブジェクトにどのオブジェクトIDを割り当てたのか管理するために、オブジェクト名とオブジェクトIDとを関連付けて、サーバ記憶部24に格納する。したがって、同じオブジェクトには同じオブジェクトIDが割り当てられる。   For example, the allocating unit 21 receives a request from the client terminal 10, and when the received request is a write, the allocating unit 21 allocates an object ID that identifies the object to the object included in the request. Further, when the request is read, the assigning unit 21 displays the object ID assigned to the object specified by the information (for example, the object name) specifying the operation target data included in the request as the information. Associate with. Hereinafter, description will be made using information for specifying data to be operated as an object name. Then, the assigning unit 21 sets the object to which the object ID is assigned or the object name associated with the object ID as the assigned object, and transmits the assigned object to the calculating unit 22. When the request is read, the post-assignment object may include only the object ID. The object ID assigned here is a unique character string, for example, a GUID (Global Unique Identifier). Further, the assigning unit 21 associates the object name with the object ID and stores them in the server storage unit 24 in order to manage which object ID is assigned to which object. Therefore, the same object ID is assigned to the same object.

算出部22は、割当部21から割当後オブジェクトを受信し、受信した割当後オブジェクトのオブジェクトIDを用いて、ハッシュ関数に基づき、ハッシュ値を算出する。ハッシュ値は、規則性のない固定長の値である。そして、算出部22は、ハッシュ値に基づいて、サーバ記憶部24に格納されているアクセスルールを参照し、割当後オブジェクトを送信するストレージ装置を決定する。その後、算出部22は、決定したストレージ装置に割当後オブジェクトを送信する。アクセスルールについては後述する。   The calculating unit 22 receives the allocated object from the allocating unit 21 and calculates a hash value based on the hash function using the received object ID of the allocated object. The hash value is a fixed length value without regularity. Then, the calculation unit 22 refers to the access rule stored in the server storage unit 24 based on the hash value, and determines a storage device that transmits the post-allocation object. Thereafter, the calculation unit 22 transmits the allocated object to the determined storage device. The access rule will be described later.

また、算出部22は、例えばストレージ装置30からデータを受信する。そして、受信したデータを、クライアント端末10から送信された要求の応答として、クライアント端末10に送信する。例えば、算出部22は、ストレージ装置30から受信したデータにオブジェクトIDを付与し、どの要求に対する応答かクライアント端末10が認識できるようにしてもよい。   Further, the calculation unit 22 receives data from the storage device 30, for example. Then, the received data is transmitted to the client terminal 10 as a response to the request transmitted from the client terminal 10. For example, the calculation unit 22 may assign an object ID to the data received from the storage device 30 so that the client terminal 10 can recognize which request is a response.

図3は、アクセスルールを説明するための図である。図3に示すようにアクセスルールは、データを特定するハッシュ値と、データをマスタデータとして格納する場所(マスターデータの格納場所)と、データをレプリカデータとして格納する場所(レプリカデータの格納場所)との項目がそれぞれ関連付けられている。以下、マスタデータとして格納されるデータをマスタデータ、レプリカデータとして格納されるデータをレプリカデータと呼ぶ。   FIG. 3 is a diagram for explaining the access rule. As shown in FIG. 3, the access rule includes a hash value that identifies data, a location where data is stored as master data (storage location of master data), and a location where data is stored as replica data (storage location of replica data). Are associated with each other. Hereinafter, data stored as master data is referred to as master data, and data stored as replica data is referred to as replica data.

また、マスタデータの格納場所とレプリカデータの格納場所との各列には、ストレージ装置を特定する情報であるストレージ番号情報が夫々格納されている。このため、算出部22は、データのハッシュ値に基づき、アクセスルールを参照することで、複数のストレージ装置の中から割当後オブジェクトを送信するストレージ装置を一意に決定することができる。また、ストレージ管理システム1においては、複数のストレージ装置に割当後オブジェクトを送信するアルゴリズムとしてConsistent Hashingを使用してもよい。アクセスルールはこのConsistent Hashingを用いてユーザが設定してもよい。   Further, in each column of the master data storage location and the replica data storage location, storage number information that is information for specifying a storage device is stored. For this reason, the calculation unit 22 can uniquely determine the storage apparatus that transmits the allocated object from the plurality of storage apparatuses by referring to the access rule based on the hash value of the data. Further, in the storage management system 1, consistent hashing may be used as an algorithm for transmitting the allocated object to a plurality of storage apparatuses. The access rule may be set by the user using the consistent hashing.

具体的に、ハッシュ値が「ハッシュ3」で、要求が書き込みの場合、算出部22は、マスタデータの格納場所である「ストレージ装置40」と、レプリカデータの格納場所である「ストレージ装置30」とに割当後オブジェクトを送信することを決定し、決定したストレージ装置30とストレージ装置40とに割当後オブジェクトを送信する。   Specifically, when the hash value is “hash 3” and the request is a write, the calculation unit 22 “master device storage location” 40 “storage device 40” and replica data storage location “storage device 30”. And transmits the allocated object to the determined storage apparatus 30 and storage apparatus 40.

また、ハッシュ値「ハッシュ2」で、要求が読み出しの場合、算出部22は、マスタデータの格納場所である「ストレージ装置30」に割当後オブジェクトを送信することを決定し、決定したストレージ装置30に割当後オブジェクトを送信する。   When the request is read with the hash value “hash 2”, the calculation unit 22 determines to transmit the allocated object to the “storage device 30” that is the storage location of the master data, and the determined storage device 30 Send the assigned object to.

変更部23は、後述するストレージ装置30およびストレージ装置40に含まれる処理部33を介して、ストレージ装置30およびストレージ装置40の状態を適宜監視し、後述されるマイグレーション処理の結果により、サーバ記憶部24に格納されているアクセスルールを変更する。なお、アクセスルールはユーザによって変更されても良い。   The changing unit 23 appropriately monitors the status of the storage device 30 and the storage device 40 via the storage device 30 and the processing unit 33 included in the storage device 40, which will be described later, and the server storage unit according to the result of the migration process described later. The access rule stored in 24 is changed. The access rule may be changed by the user.

例えば、ストレージ装置30またはストレージ装置40のどちらか一方にデータが偏ってしまうことがある。変更部23は、ストレージ装置30及びストレージ装置40を監視し、ストレージ装置30またはストレージ装置40のどちらか一方にデータが偏っている場合、ストレージ装置30およびストレージ装置40の空き容量またはデータ容量に均衡がとれるように、アクセスルールを変更する。   For example, data may be biased to either the storage device 30 or the storage device 40. The change unit 23 monitors the storage device 30 and the storage device 40. If the data is biased to either the storage device 30 or the storage device 40, the change unit 23 balances with the free capacity or the data capacity of the storage device 30 and the storage device 40. Change the access rules so that

そして、変更部23は、変更したアクセスルールをストレージ装置30およびストレージ装置40に送信する。また、変更部23は、例えば、ユーザによってサーバ記憶部24に格納されているアクセスルールが変更された場合、その変更されたアクセルルールをストレージ装置30およびストレージ装置40に送信する。つまり、変更部23は、プロキシサーバ20のアクセスルールと、ストレージ装置30およびストレージ装置40のアクセスルールとが同じ内容になるようにファイル同期を行う。   Then, the change unit 23 transmits the changed access rule to the storage device 30 and the storage device 40. For example, when the access rule stored in the server storage unit 24 is changed by the user, the changing unit 23 transmits the changed accelerator rule to the storage device 30 and the storage device 40. That is, the changing unit 23 performs file synchronization so that the access rules of the proxy server 20 and the access rules of the storage device 30 and the storage device 40 have the same content.

図4は、本発明の第1実施形態に係るストレージ装置30と、ストレージ装置40との構成の一例を示すブロック図である。ストレージ装置30は、管理部31と、ストレージ記憶部32と、処理部33と、ディスク34と、テープ35と、判定部36とを備える。   FIG. 4 is a block diagram showing an example of the configuration of the storage device 30 and the storage device 40 according to the first embodiment of the present invention. The storage device 30 includes a management unit 31, a storage storage unit 32, a processing unit 33, a disk 34, a tape 35, and a determination unit 36.

管理部31は、割当後オブジェクトをプロキシサーバ20から受信し、受信した割当後オブジェクトのオブジェクトIDをファイルIDに変換する。ファイルIDは、例えば、処理部33が、ディスク34またはテープ35に格納されているデータをファイル単位で書き込みまたは読み出す際のデータを特定するためのIDである。例えば、ファイルIDは、パスやディレクトリを含むURI(Uniform Resource Identifier)の形式で記述される。例えば、オブジェクトストレージの構築にSwiftというソフトウェアを使用した場合、ファイルIDにはオブジェクトIDが含まれるため、ファイルIDからオブジェクトIDを一意に求めることができる。そして、管理部31は、ファイルIDと、割当後オブジェクトとを処理部33に送信する。また、管理部31は、ファイルIDとオブジェクトIDとを関連付けてストレージ記憶部32に格納してもよい。   The management unit 31 receives the allocated object from the proxy server 20 and converts the received object ID of the allocated object into a file ID. The file ID is, for example, an ID for specifying data when the processing unit 33 writes or reads data stored in the disk 34 or the tape 35 in units of files. For example, the file ID is described in a URI (Uniform Resource Identifier) format including a path and a directory. For example, when software called “Swift” is used to construct an object storage, the object ID is included in the file ID, and therefore the object ID can be uniquely obtained from the file ID. Then, the management unit 31 transmits the file ID and the allocated object to the processing unit 33. The management unit 31 may store the file ID and the object ID in the storage storage unit 32 in association with each other.

また、管理部31は、処理部33からデータを受信し、受信したデータをプロキシサーバ20の算出部22に送信する。また、管理部31は、プロキシサーバ20から変更したアクセスルールを受信し、受信したアクセスルールをストレージ記憶部32に格納する。   In addition, the management unit 31 receives data from the processing unit 33 and transmits the received data to the calculation unit 22 of the proxy server 20. Further, the management unit 31 receives the changed access rule from the proxy server 20 and stores the received access rule in the storage storage unit 32.

管理部31は、ストレージ記憶部32から、アクセスルールと、自装置を示す情報とを取得する。そして、管理部31は、取得したアクセスルールと、自装置を示す情報とを判定部36に送信する。例えば、ストレージ装置30のストレージ記憶部32には、自装置がストレージ装置30であることを示す情報が自装置を示す情報として格納されている。   The management unit 31 acquires an access rule and information indicating the own device from the storage storage unit 32. Then, the management unit 31 transmits the acquired access rule and information indicating the own device to the determination unit 36. For example, the storage storage unit 32 of the storage device 30 stores information indicating that the own device is the storage device 30 as information indicating the own device.

処理部33は、管理部31からファイルIDと、割当後オブジェクトとを受信し、受信したファイルIDに基づいて、ディスク34と、テープ35とに対して、割当後オブジェクトに含まれるデータの書き込みまたは割当後オブジェクトに含まれるオブジェクト名が示すデータの読み出しを行う。また、処理部33は、例えば、仮想ファイルシステムの機能を有する。具体的には、処理部33は、ディスク34とテープ35とを仮想的に同じ記憶装置として上位側へ見せかける機能を有している。   The processing unit 33 receives the file ID and the allocated object from the management unit 31, and writes or writes the data included in the allocated object to the disk 34 and the tape 35 based on the received file ID. Data indicated by the object name included in the assigned object is read. Further, the processing unit 33 has, for example, a virtual file system function. Specifically, the processing unit 33 has a function of making the disk 34 and the tape 35 appear virtually to the upper side as the same storage device.

また、処理部33は、ファイルIDに基づき、ディスク34またはテープ35に格納されているデータをファイルごとに管理する。以下、ファイルIDとそのファイルIDに関連するデータを併せてファイルとも呼ぶ。処理部33は、ファイルがディスクまたはテープに格納される位置(位置情報)、データへのアクセス頻度等のデータに関する情報(ファイル情報)とファイルIDとを夫々のファイルごとに関連付け、ファイル情報テーブルとして自身の図示しない記憶部に格納する。処理部33は、ファイルをディスク34またはテープ35に書き込む。   The processing unit 33 manages the data stored in the disk 34 or the tape 35 for each file based on the file ID. Hereinafter, a file ID and data related to the file ID are also referred to as a file. The processing unit 33 associates information (file information) related to data such as the position (position information) where the file is stored on the disk or tape, the frequency of access to the data, and the file ID for each file as a file information table. It is stored in its own storage unit (not shown). The processing unit 33 writes the file on the disk 34 or the tape 35.

具体的に、処理部33は、割当後オブジェクトにオブジェクトIDと、オブジェクトとが含まれている場合、ディスク34に該オブジェクトに関連するファイルを書き込む。また、処理部33は、割当後オブジェクトにオブジェクトIDと、オブジェクト名とが含まれている場合、ディスク34から該オブジェクト名に関連するファイルを読み出す。   Specifically, when the allocated object includes an object ID and an object, the processing unit 33 writes a file related to the object on the disk 34. Further, when the allocated object includes an object ID and an object name, the processing unit 33 reads a file related to the object name from the disk 34.

その後、処理部33は、読み出したファイルに含まれるデータを管理部31に送信する。そして、管理部31は、処理部33から、データを受信し、受信したデータをプロキシサーバ20を介し、クライアント端末10に送信する。   Thereafter, the processing unit 33 transmits data included in the read file to the management unit 31. Then, the management unit 31 receives data from the processing unit 33 and transmits the received data to the client terminal 10 via the proxy server 20.

判定部36は、定期的に処理部33のファイル情報テーブルを参照し、ファイルIDを取得する。そして、判定部36は取得したファイルIDに基づいてオブジェクトIDを取得する。そして、判定部36は取得したオブジェクトIDに基づいて、ハッシュ値を算出する。その後、判定部36は、管理部31から取得したアクセスルールと、自装置を示す情報と、算出したハッシュ値とを用いて、取得したファイルIDが示すファイルがレプリカデータであるか否か判定する。ファイルがレプリカデータである場合、判定部36は、ファイルをテープ35に移動する。判定部36は、例えばマイグレーションサービスの機能を有する。判定部36は、ファイルをテープ35に移動した際、このファイルのファイル情報に含まれる位置情報を更新するように処理部33に指示する。   The determination unit 36 refers to the file information table of the processing unit 33 periodically and acquires a file ID. Then, the determination unit 36 acquires the object ID based on the acquired file ID. Then, the determination unit 36 calculates a hash value based on the acquired object ID. Thereafter, the determination unit 36 determines whether or not the file indicated by the acquired file ID is replica data, using the access rule acquired from the management unit 31, information indicating the own device, and the calculated hash value. . If the file is replica data, the determination unit 36 moves the file to the tape 35. The determination unit 36 has a migration service function, for example. When the determination unit 36 moves the file to the tape 35, the determination unit 36 instructs the processing unit 33 to update the position information included in the file information of the file.

なお、管理部31は、プロキシサーバ20から割当後オブジェクトを受信した際、割当後オブジェクトに含まれるデータがレプリカデータなのかマスタデータなのかは分からない。また、処理部33も管理部31から受信した割当後オブジェクトに含まれるデータが、レプリカデータなのかマスタデータなのかは分からない。判定部36が、上述した判定を行うことによって、はじめてデータがレプリカデータであるかマスタデータであるかがわかる。   When receiving the allocated object from the proxy server 20, the management unit 31 does not know whether the data included in the allocated object is replica data or master data. Further, the processing unit 33 also does not know whether the data included in the allocated object received from the management unit 31 is replica data or master data. The determination unit 36 can determine whether the data is replica data or master data for the first time by performing the determination described above.

したがって、プロキシサーバ20がデータにマスタデータかレプリカデータの判定ができるような情報を付加することなく、ストレージ装置30およびストレージ装置40は、アクセスルールによって、プロキシサーバ20から送信されたデータがマスタデータかレプリカデータかが分かる。   Therefore, the storage device 30 and the storage device 40 can add the data transmitted from the proxy server 20 to the master data according to the access rule without adding information that allows the proxy server 20 to determine whether the master data or the replica data is included in the data. Or replica data.

図5は、本発明の第1実施形態に係るストレージ管理システム1の動作の一例を示すフローチャートである。具体的には、ストレージ管理システム1の書き込み処理の動作の一例を説明する。なお、プロキシサーバ20の処理とストレージ装置30の処理との間と、プロキシサーバ20の処理とストレージ装置40の処理との間とにある破線の矢印は、情報の流れを示している。   FIG. 5 is a flowchart showing an example of the operation of the storage management system 1 according to the first embodiment of the present invention. Specifically, an example of the write processing operation of the storage management system 1 will be described. The dashed arrows between the processing of the proxy server 20 and the processing of the storage device 30 and between the processing of the proxy server 20 and the processing of the storage device 40 indicate the flow of information.

まず、クライアント端末10がプロキシサーバ20に要求を送信する(ステップS101)。割当部21はクライアント端末10から要求を受信し(ステップS102)、受信した要求に含まれるオブジェクトにオブジェクトIDを割り当てる(ステップS103)。そして、割当部21は、オブジェクトIDを割り当てたオブジェクト(割当後オブジェクト)を算出部22に送信する。   First, the client terminal 10 transmits a request to the proxy server 20 (step S101). The assigning unit 21 receives a request from the client terminal 10 (step S102), and assigns an object ID to an object included in the received request (step S103). Then, the assigning unit 21 transmits the object (assigned object) to which the object ID is assigned to the calculating unit 22.

その後、算出部22は、割当部21から割当後オブジェクトを受信し、受信した割当後オブジェクトに含まれるオブジェクトIDを用いて、ハッシュ関数に基づきハッシュ値を算出する(ステップS104)。さらに算出部22は、算出したハッシュ値を用いて、サーバ記憶部24に格納されているアクセスルールを参照し、割当後オブジェクトを送信するストレージ装置を決定する(ステップS105)。そして、算出部22は、ステップS105において決定したストレージ装置(本例の場合、ストレージ装置30と、ストレージ装置40)とに割当後オブジェクトを送信する(ステップS106)。   Thereafter, the calculation unit 22 receives the allocated object from the allocation unit 21, and calculates a hash value based on the hash function using the object ID included in the received allocated object (step S104). Further, the calculation unit 22 refers to the access rule stored in the server storage unit 24 using the calculated hash value, and determines a storage device to which the post-allocation object is transmitted (step S105). Then, the calculation unit 22 transmits the allocated object to the storage device determined in step S105 (in this example, the storage device 30 and the storage device 40) (step S106).

そして、各ストレージ装置の管理部31は、プロキシサーバ20から割当後オブジェクトを受信する(ステップS107、ステップS109)。その後、管理部31は、受信した割当後オブジェクトのオブジェクトIDをファイルIDに変換する(ステップS108、ステップS110)。そして、管理部31は、ファイルIDと、割当後オブジェクトとを処理部33に送信する。その後、処理部33は、管理部31からファイルIDと、割当後オブジェクトとを受信する。   Then, the management unit 31 of each storage apparatus receives the allocated object from the proxy server 20 (step S107, step S109). Thereafter, the management unit 31 converts the received object ID of the post-assignment object into a file ID (step S108, step S110). Then, the management unit 31 transmits the file ID and the allocated object to the processing unit 33. Thereafter, the processing unit 33 receives the file ID and the allocated object from the management unit 31.

その後、処理部33は、ファイルIDと、割当後オブジェクトとに基づく処理を行う。本例では書き込み処理であるため、処理部33は、ファイルIDに基づいて、ファイルをディスク34に書き込む(ステップS111、ステップS112)。また、ステップS111またはステップS112の終了後、ストレージ装置30は、プロキシサーバ20を介し、クライアント端末10にACK(ACKnowledgement)を送信してもよい。   Thereafter, the processing unit 33 performs processing based on the file ID and the assigned object. In this example, since it is a writing process, the processing unit 33 writes the file to the disk 34 based on the file ID (steps S111 and S112). Further, after step S <b> 111 or step S <b> 112 is completed, the storage apparatus 30 may transmit ACK (ACKnowledgement) to the client terminal 10 via the proxy server 20.

図6は、本発明の第1実施形態に係るストレージ管理システム1の動作の一例を示すフローチャートである。具体的には、ストレージ管理システム1の読み出し処理の動作の一例を説明する。なお、プロキシサーバ20の処理とストレージ装置30の処理との間にある破線の矢印は、情報の流れを示している。また、以下の処理は、例として読み出しを行うマスタデータをストレージ装置30が格納していることを前提として説明する。   FIG. 6 is a flowchart showing an example of the operation of the storage management system 1 according to the first embodiment of the present invention. Specifically, an example of the read processing operation of the storage management system 1 will be described. A dashed arrow between the processing of the proxy server 20 and the processing of the storage device 30 indicates the information flow. The following processing will be described on the assumption that the storage device 30 stores master data to be read as an example.

まず、クライアント端末10がプロキシサーバ20に要求を送信する(ステップS201)。割当部21はクライアント端末10から要求を受信し(ステップS202)、受信した要求に含まれるオブジェクト名が示すオブジェクトに割り当てられたオブジェクトIDを、オブジェクト名に関連付ける(ステップS203)。そして、割当部21は、オブジェクトIDを関連付けたオブジェクト名(割当後オブジェクト)を算出部22に送信する。   First, the client terminal 10 transmits a request to the proxy server 20 (step S201). The assigning unit 21 receives the request from the client terminal 10 (step S202), and associates the object ID assigned to the object indicated by the object name included in the received request with the object name (step S203). Then, the assignment unit 21 transmits the object name (object after assignment) associated with the object ID to the calculation unit 22.

その後、算出部22は、割当部21から割当後オブジェクトを受信し、受信した割当後オブジェクトに含まれるオブジェクトIDを用いて、ハッシュ関数に基づきハッシュ値を算出する(ステップS204)。   Thereafter, the calculation unit 22 receives the allocated object from the allocation unit 21, and calculates a hash value based on the hash function using the object ID included in the received allocated object (step S204).

さらに算出部22は、算出したハッシュ値を用いて、サーバ記憶部24に格納されているアクセスルールを参照し、割当後オブジェクトを送信するストレージ装置が、例えばストレージ装置30であると決定する(ステップS205)。そして、算出部22は、ステップS205において決定したストレージ装置30に割当後オブジェクトを送信する(ステップS206)。   Further, the calculation unit 22 refers to the access rule stored in the server storage unit 24 using the calculated hash value, and determines that the storage device that transmits the allocated object is, for example, the storage device 30 (step S30). S205). Then, the calculation unit 22 transmits the allocated object to the storage device 30 determined in step S205 (step S206).

ストレージ装置30の管理部31は、プロキシサーバ20から割当後オブジェクトを受信する(ステップS207)。その後、管理部31は、受信した割当後オブジェクトのオブジェクトIDをファイルIDに変換し(ステップS208)、ファイルIDと、割当後オブジェクトとを処理部33に送信する。   The management unit 31 of the storage device 30 receives the allocated object from the proxy server 20 (step S207). Thereafter, the management unit 31 converts the received object ID of the allocated object into a file ID (step S208), and transmits the file ID and the allocated object to the processing unit 33.

次に、処理部33は、管理部31からファイルIDと、割当後オブジェクトとを受信する。そして、処理部33は、受信したファイルIDと、割当後オブジェクトとに基づく処理を行う。本例では読み出し処理であるため、処理部33は、ファイルIDに基づいて、ディスク34からファイルを読み出す(ステップS209)。   Next, the processing unit 33 receives the file ID and the allocated object from the management unit 31. Then, the processing unit 33 performs processing based on the received file ID and the assigned object. In this example, since it is a reading process, the processing unit 33 reads a file from the disk 34 based on the file ID (step S209).

その後処理部33は、読み出したファイルのデータを管理部31に送信する。そして、管理部31は、処理部33からファイルを受信し、受信したファイルのデータのみをプロキシサーバ20から送信された割当後オブジェクトの応答としてプロキシサーバ20に送信する(ステップS210)。   Thereafter, the processing unit 33 transmits the read file data to the management unit 31. And the management part 31 receives a file from the process part 33, and transmits only the data of the received file to the proxy server 20 as a response of the allocated object transmitted from the proxy server 20 (step S210).

次に、プロキシサーバ20は、マスタデータを格納しているストレージ装置30から割当後オブジェクトの応答としてデータを受信し(ステップS211)、受信したデータを要求に対する応答としてクライアント端末10に送信する(ステップS212)。そして、クライアント端末10は、プロキシサーバ20からデータを受信する(ステップS213)。   Next, the proxy server 20 receives data from the storage apparatus 30 storing the master data as a response to the allocated object (step S211), and transmits the received data to the client terminal 10 as a response to the request (step S211). S212). Then, the client terminal 10 receives data from the proxy server 20 (step S213).

図7は、本発明の第1実施形態に係るストレージ装置30とストレージ装置40とが行うマイグレーション処理の一例を示すフローチャートである。   FIG. 7 is a flowchart showing an example of migration processing performed by the storage device 30 and the storage device 40 according to the first embodiment of the present invention.

まず、判定部36は、処理部33のファイル情報テーブルからファイルIDを取得する(ステップS301)。次に、判定部36は、取得したファイル情報テーブルのファイルIDに基づいて、オブジェクトIDを取得し(ステップS302)、取り出したオブジェクトIDを用いて、ハッシュ値を算出する(ステップS303)。その後、判定部36は、管理部31を介しストレージ記憶部32から、アクセスルールと、自装置を示す情報とを取得する(ステップ304)。   First, the determination unit 36 acquires a file ID from the file information table of the processing unit 33 (step S301). Next, the determination unit 36 acquires an object ID based on the file ID of the acquired file information table (step S302), and calculates a hash value using the extracted object ID (step S303). Thereafter, the determination unit 36 acquires an access rule and information indicating the own device from the storage storage unit 32 via the management unit 31 (step 304).

そして、判定部36は、アクセスルールと、自装置を示す情報と、ハッシュ値とを用いて、取得したファイルIDが示すファイルに含まれるデータがレプリカデータであるか否か判定する(ステップS305)。ファイルIDが示すファイルに含まれるデータがレプリカデータである場合(ステップS305にてYES)、判定部36は、ファイルをテープ35に移動する(ステップS306)。一方で、ファイルIDが示すファイルに含まれるデータがマスタデータの場合(ステップS305にてNO)、判定部36は、全てのファイルを判定したか否か判定する(ステップS307)。そして、判定部36は、全てのファイルを判定していない場合(ステップS307にてNO)、次のファイルに対して、ステップS301〜ステップS306を繰り返す。ディスク34内のすべてのファイルについて、判定部36が判定した場合(ステップS307にてYES)、処理は終了する。なお、判定部36は、例えばディスク34にファイルが書き込まれたことを契機に上述のマイグレーション処理を行ってもよい。   Then, the determination unit 36 determines whether the data included in the file indicated by the acquired file ID is replica data using the access rule, the information indicating the own device, and the hash value (step S305). . If the data included in the file indicated by the file ID is replica data (YES in step S305), determination unit 36 moves the file to tape 35 (step S306). On the other hand, when the data included in the file indicated by the file ID is master data (NO in step S305), determination unit 36 determines whether all files have been determined (step S307). If determination unit 36 has not determined all the files (NO in step S307), it repeats steps S301 to S306 for the next file. If determination unit 36 determines all files in disk 34 (YES in step S307), the process ends. For example, the determination unit 36 may perform the above-described migration process when a file is written on the disk 34.

以上、ストレージ管理システム1は、データの格納にディスクのみでなく、テープを使用する。テープドライブは、アイドル状態において電力を消費しない。そのため、ストレージ管理システム1は、ディスクのみにデータを格納する場合と比べ、電力の消費量を削減することができる。   As described above, the storage management system 1 uses not only a disk but also a tape for storing data. The tape drive does not consume power in the idle state. Therefore, the storage management system 1 can reduce power consumption compared to the case where data is stored only on a disk.

ところで、マイグレーション処理の一例としてHSM(Hierarchical Storage Management)の技術を使用することがある。以下、HSMの技術を利用したマイグレーション処理について図12のフローチャートを用いて説明する。   Incidentally, as an example of migration processing, HSM (Hierarchical Storage Management) technology may be used. Hereinafter, migration processing using the HSM technology will be described with reference to the flowchart of FIG.

図12に示すように、ディスクに格納されているファイルのファイル情報が取得され(ステップS601)、そのファイル情報が予め定められた条件を満たすか否か判定される(ステップS602)。ファイル情報が予め定められた条件を満たす場合(ステップS602にてYES)、具体的には、ファイルへのアクセスが所定の時間以上されていない場合、そのファイル情報のファイルは、ディスクからテープに移される(ステップS603)。そして、そのファイルのファイル情報には、マイグレーション処理を行った旨を示すフラグが設定される(ステップS604)。   As shown in FIG. 12, file information of a file stored on the disk is acquired (step S601), and it is determined whether the file information satisfies a predetermined condition (step S602). If the file information satisfies a predetermined condition (YES in step S602), specifically, if the file has not been accessed for a predetermined time or longer, the file of the file information is transferred from the disk to the tape. (Step S603). Then, a flag indicating that the migration process has been performed is set in the file information of the file (step S604).

また、ファイル情報が予め定められた条件を満たさない場合(ステップS602にてNO)、処理はステップS605に進む。そして、全てのファイルをチェックするまで、ステップS601〜ステップS604の処理を繰り返す。   If the file information does not satisfy a predetermined condition (NO in step S602), the process proceeds to step S605. Then, the processes in steps S601 to S604 are repeated until all files are checked.

上述したマイグレーション処理は、例えば、ファイルへのアクセスが所定の時間以上されていない場合、そのファイル情報に関連付くファイルがディスクからテープに移される。そのため、例えばマスタデータのファイルにおいて、そのファイルへのアクセスが所定の時間以上されていない場合、そのファイルはディスクからテープに移される。その結果、例えばそのファイルにクライアント端末から読み出しがあった場合、テープからファイルが読み出される。つまり、ファイルの読み出しに時間がかかるため、ファイルがクライアント端末に送信されるまでに時間がかかってしまう。   In the migration process described above, for example, when access to a file has not been performed for a predetermined time or longer, the file associated with the file information is transferred from the disk to the tape. Therefore, for example, when a master data file is not accessed for a predetermined time or more, the file is transferred from the disk to the tape. As a result, for example, when the file is read from the client terminal, the file is read from the tape. That is, since it takes time to read the file, it takes time until the file is transmitted to the client terminal.

これに対し、ストレージ管理システム1は、アクセスルールにしたがって、レプリカデータのみをテープに移動する。これによって、例えばクライアント端末10から読み出しがあった場合、テープからではなくディスクから読み出すことが可能となる。したがって、上述のHSMの技術を利用したマイグレーション処理と比べ、ストレージ管理システム1は、応答時間を短縮することが可能となる。   In contrast, the storage management system 1 moves only the replica data to the tape according to the access rule. Thereby, for example, when reading is performed from the client terminal 10, it is possible to read from the disk instead of from the tape. Therefore, the storage management system 1 can shorten the response time compared to the migration processing using the above-described HSM technology.

<第2実施形態>
図8は本発明の第2実施形態に係るストレージ管理システム2の構成の一例を示すブロック図である。図8において、ストレージ管理システム2は、クライアント端末10と、プロキシサーバ20と、ストレージ装置50と、ストレージ装置60とを備える。クライアント端末10と、プロキシサーバ20とは、有線または無線のネットワークよって相互に接続されている。以下、ストレージ装置50とストレージ装置60との構成を説明するが、クライアント端末10と、プロキシサーバ20とは、第1実施形態と同じ構成をもつため、説明を省略する。ストレージ装置50と、ストレージ装置60とは、管理部51と、判定部52と、ストレージ記憶部53と、処理部54と、ディスク55と、テープ56とを含む。
Second Embodiment
FIG. 8 is a block diagram showing an example of the configuration of the storage management system 2 according to the second embodiment of the present invention. In FIG. 8, the storage management system 2 includes a client terminal 10, a proxy server 20, a storage device 50, and a storage device 60. The client terminal 10 and the proxy server 20 are connected to each other via a wired or wireless network. Hereinafter, the configuration of the storage device 50 and the storage device 60 will be described, but the client terminal 10 and the proxy server 20 have the same configuration as in the first embodiment, and thus the description thereof will be omitted. The storage device 50 and the storage device 60 include a management unit 51, a determination unit 52, a storage storage unit 53, a processing unit 54, a disk 55, and a tape 56.

管理部51は、プロキシサーバ20から、割当後オブジェクトを受信する。また、管理部51は、受信した割当後オブジェクトに含まれるオブジェクトIDをファイルIDに変換する。そして、管理部51は、ファイルIDと、割当後オブジェクトとを判定部52に送信する。また、管理部51は、ファイルIDとオブジェクトIDとを関連付けてストレージ記憶部53に格納する。   The management unit 51 receives the assigned object from the proxy server 20. Further, the management unit 51 converts the object ID included in the received post-allocation object into a file ID. Then, the management unit 51 transmits the file ID and the allocated object to the determination unit 52. In addition, the management unit 51 stores the file ID and the object ID in the storage storage unit 53 in association with each other.

判定部52は、管理部51からファイルIDと、割当後オブジェクトとを受信する。また、判定部52は、ファイルIDに基づき、ストレージ記憶部53からオブジェクトIDを取得する。そして、判定部52は、取得したオブジェクトIDに基づいて、ハッシュ値を算出する。   The determination unit 52 receives the file ID and the allocated object from the management unit 51. Further, the determination unit 52 acquires the object ID from the storage storage unit 53 based on the file ID. Then, the determination unit 52 calculates a hash value based on the acquired object ID.

また、判定部52は、ストレージ記憶部53に格納されているアクセスルールと、自装置を示す情報とを取り出す。そして、判定部52は、算出したハッシュ値と、アクセスルールと、自装置を示す情報とに基づき、ファイルに含まれるデータがレプリカデータであるか否か判定する。   In addition, the determination unit 52 extracts the access rule stored in the storage storage unit 53 and information indicating the own device. Then, the determination unit 52 determines whether the data included in the file is replica data based on the calculated hash value, the access rule, and the information indicating the device itself.

ファイルに含まれるデータがレプリカデータである場合、判定部52は、処理部54にファイルに対する操作(本例では書き込み)を行う先を指示する。つまり、ファイルをテープ56に書き込む指示と、ファイルとを送信する。   When the data included in the file is replica data, the determination unit 52 instructs the processing unit 54 to perform an operation (write in this example) on the file. That is, an instruction to write a file to the tape 56 and the file are transmitted.

一方で、ファイルに含まれるデータがマスタデータである場合、判定部52は、処理部54にファイルに対する操作を行う先を指示する。つまり、ファイルをディスク55に書き込む指示と、ファイルとを送信する。   On the other hand, when the data included in the file is master data, the determination unit 52 instructs the processing unit 54 where to operate the file. That is, an instruction to write a file to the disk 55 and the file are transmitted.

処理部54は、判定部52からファイルとファイルをディスク55に書き込む指示、またはファイルをテープ56に書き込む指示とを受信する。処理部54は、ファイルごとにファイルIDと、ファイル情報とを関連付け、ファイル情報テーブルとして自身の図示しない記憶部に格納する。   The processing unit 54 receives from the determination unit 52 an instruction to write a file and a file to the disk 55 or an instruction to write a file to the tape 56. The processing unit 54 associates the file ID with the file information for each file, and stores the file ID in a storage unit (not shown) as a file information table.

そして、処理部54は、ファイルをディスク55に書き込む指示、またはファイルをテープ56に書き込む指示に基づき、ファイルをディスク55またはテープ56に書き込む。また、処理部54は、判定部52に含まれる構成でもよい。   Then, the processing unit 54 writes the file to the disk 55 or the tape 56 based on the instruction to write the file to the disk 55 or the instruction to write the file to the tape 56. Further, the processing unit 54 may be included in the determination unit 52.

図9は、第2実施形態に係るストレージ装置50とストレージ装置60とにおける書き込み処理の一例を示すフローチャートである。   FIG. 9 is a flowchart showing an example of write processing in the storage device 50 and the storage device 60 according to the second embodiment.

まず、管理部51は、プロキシサーバ20から、割当後オブジェクトを受信する(ステップS401)。また、管理部51は、受信した割当後オブジェクトに含まれるオブジェクトIDをファイルIDに変換する(ステップS402)。そして、管理部51は、ファイルIDと、割当後オブジェクトとを判定部52に送信する。   First, the management unit 51 receives an assigned object from the proxy server 20 (step S401). Further, the management unit 51 converts the object ID included in the received post-allocation object into a file ID (step S402). Then, the management unit 51 transmits the file ID and the allocated object to the determination unit 52.

次に、判定部52は、管理部51からファイルIDと、割当後オブジェクトとを受信する。また、判定部52は、ファイルIDに基づき、ストレージ記憶部53からオブジェクトIDを取得する。そして、判定部52は、取得したオブジェクトIDに基づいて、ハッシュ値を算出する(ステップS403)。また、判定部52は、ストレージ記憶部53に格納されているアクセスルールと、自装置を示す情報とを取得する(ステップS404)。   Next, the determination unit 52 receives the file ID and the allocated object from the management unit 51. Further, the determination unit 52 acquires the object ID from the storage storage unit 53 based on the file ID. Then, the determination unit 52 calculates a hash value based on the acquired object ID (step S403). Further, the determination unit 52 acquires the access rules stored in the storage storage unit 53 and information indicating the own device (step S404).

そして、判定部52は、算出したハッシュ値と、自装置を示す情報とに基づき、取り出したアクセスルールを参照し、ファイルに含まれるデータがレプリカデータであるか否か判定する(ステップS405)。ファイルに含まれるデータがレプリカデータである場合(ステップS405にてYES)、判定部52は、処理部54に、ファイルをテープ56に書き込む指示と、ファイルとを送信する。処理部54は、判定部52から、ファイルをテープ56に書き込む指示と、ファイルとを受信する。   Then, the determination unit 52 refers to the extracted access rule based on the calculated hash value and information indicating the own device, and determines whether the data included in the file is replica data (step S405). When the data included in the file is replica data (YES in step S405), determination unit 52 transmits an instruction to write the file to tape 56 and the file to processing unit 54. The processing unit 54 receives an instruction to write a file on the tape 56 and the file from the determination unit 52.

そして、処理部54は、受信したテープ56に書き込む指示に基づき、テープ56にファイルを書き込む(ステップS406)。   Then, the processing unit 54 writes a file on the tape 56 based on the received instruction to write on the tape 56 (step S406).

一方で、ファイルに含まれるデータがマスタデータの場合(ステップS405にてNO)、判定部52は、処理部54に、ファイルをディスク55に書き込む指示と、ファイルとを送信する。そして、処理部54は、判定部52からファイルをディスク55に書き込む指示と、ファイルとを受信する。   On the other hand, when the data included in the file is master data (NO in step S405), determination unit 52 transmits an instruction to write the file to disk 55 and the file to processing unit 54. Then, the processing unit 54 receives an instruction to write a file to the disk 55 and the file from the determination unit 52.

そして、処理部54は、受信したファイルをディスク55に書き込む指示に基づき、ディスク55にファイルを書き込む(ステップS407)。   Then, based on the instruction to write the received file to the disk 55, the processing unit 54 writes the file to the disk 55 (step S407).

以上、ストレージ管理システム2は、ファイルの書き込みを行う際に、ファイルに含まれるデータがレプリカデータであるか否か判定し、ファイルに含まれるデータがレプリカデータである場合、ファイルをテープ56に書き込む。これによって、レプリカデータがディスク55に書き込まれることがなくなるため、ストレージ管理システム2は、ディスク55の容量を効率よく使用することができる。   As described above, when writing the file, the storage management system 2 determines whether or not the data included in the file is replica data. If the data included in the file is replica data, the file is written on the tape 56. . As a result, since the replica data is not written to the disk 55, the storage management system 2 can efficiently use the capacity of the disk 55.

また、各ストレージ装置は、アクセスルールに基づいて、ファイルに含まれるデータがレプリカデータであるか否か判定を行う。よって、プロキシサーバ20は、要求に含まれるデータにマスタデータかレプリカデータの判定ができるような情報を付加する必要がなくなる。   Each storage device determines whether the data included in the file is replica data based on the access rule. Therefore, the proxy server 20 does not need to add information that can determine master data or replica data to the data included in the request.

また、ストレージ管理システム2は、マスタデータをディスク55に書き込む。よって、ストレージ管理システム2は、必ずディスク55からデータを読み出す。テープ56からデータを読み出す場合と比べると、ストレージ管理システム2は、データの読出しの際に掛かる応答時間を短くすることができる。   In addition, the storage management system 2 writes master data to the disk 55. Therefore, the storage management system 2 always reads data from the disk 55. Compared to the case where data is read from the tape 56, the storage management system 2 can shorten the response time required for reading data.

<第3実施形態>
図10は、本発明の第3実施形態に係るストレージ管理システム3の構成の一例を示すブロック図である。ストレージ管理システム2は、クライアント端末90と、プロキシサーバ70と、ストレージ装置80(80−1、80−2、…、80−N(N:自然数))とを含む。本実施形態においては、複数のストレージ装置を総称してストレージ装置80と呼ぶ。クライアント端末90は、有線または無線のネットワークを介し、データをプロキシサーバ70に送信する。また、ストレージ装置は1つに限定されず、1つ以上でもよい。
<Third Embodiment>
FIG. 10 is a block diagram showing an example of the configuration of the storage management system 3 according to the third embodiment of the present invention. The storage management system 2 includes a client terminal 90, a proxy server 70, and storage devices 80 (80-1, 80-2,..., 80-N (N: natural number)). In the present embodiment, the plurality of storage devices are collectively referred to as a storage device 80. The client terminal 90 transmits data to the proxy server 70 via a wired or wireless network. Further, the number of storage devices is not limited to one and may be one or more.

プロキシサーバ70は、割当部71と、算出部72とを備える。割当部71は、クライアント端末90から、要求と共に送信されたデータに識別子を割り当てる。   The proxy server 70 includes an allocation unit 71 and a calculation unit 72. The assigning unit 71 assigns an identifier to data transmitted from the client terminal 90 together with the request.

算出部72は要求が書き込み要求の場合、ストレージ装置80のうち、識別子および所定のルールに応じて決定された、データをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとしてデータを格納するストレージ装置とに対し、データを送信する。   When the request is a write request, the calculation unit 72 is a storage device that is determined according to the identifier and a predetermined rule, and is a storage device that is different from the storage device that stores data as master data. Then, the data is transmitted to the storage apparatus that stores the data as replica data of the master data.

ストレージ装置80は、第1記憶部81と、判定部82と、第2記憶部83とを備える。第1記憶部81は、プロキシサーバ70から送信されたデータを記憶する。   The storage device 80 includes a first storage unit 81, a determination unit 82, and a second storage unit 83. The first storage unit 81 stores data transmitted from the proxy server 70.

判定部82は、自装置がプロキシサーバ70から送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、識別子および所定のルールに基づいて判定する。   The determination unit 82 determines whether the device itself stores data transmitted from the proxy server 70 as master data or replica data based on the identifier and a predetermined rule.

判定部82は、プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データをマイグレーション先の記憶部である第2記憶部83に記憶させる。   If the determination unit 82 determines to store the data transmitted from the proxy server as replica data, the determination unit 82 stores the data in the second storage unit 83 which is a migration destination storage unit.

ストレージ管理システム3は、データの書き込みを行う際に、データがレプリカデータであるか否か判定し、データがレプリカデータである場合、データをマイグレーション先である第2記憶部83(例えば、テープ)に書き込む。ストレージ管理システム3は、読み出しが行われるマスタデータを、マイグレーション先ではない第1記憶部81(例えば、ディスク)に書き込む。例えば、読み出しが行われるマスタデータが第2記憶部83に格納された場合と比較すると、ストレージ管理システム3は、データの読み出しの際に掛かる応答時間を短くすることができる。
When the data is written, the storage management system 3 determines whether or not the data is replica data. If the data is replica data, the storage management system 3 stores the data in the second storage unit 83 (for example, tape). Write to. The storage management system 3 writes the master data to be read into the first storage unit 81 (for example, a disk) that is not the migration destination. For example, as compared with the case where master data to be read is stored in the second storage unit 83, the storage management system 3 can shorten the response time required for reading the data.

本発明の各実施形態において、各システムの各構成要素は、機能単位のブロックを示している。各システムの各構成要素の一部又は全部は、例えば図11に示すような情報処理装置900とプログラムとの任意の組み合わせにより実現される。情報処理装置900は、一例として、以下のような構成を含む。   In each embodiment of the present invention, each component of each system represents a functional unit block. Part or all of each component of each system is realized by an arbitrary combination of an information processing apparatus 900 and a program as shown in FIG. 11, for example. The information processing apparatus 900 includes the following configuration as an example.

・CPU(Central Processing Unit)901
・ROM(Read Only Memory)902
・RAM(Random Access Memory)903
・RAM903にロードされるプログラム904
・プログラム904を格納する記憶装置905
・記録媒体906の読み書きを行うドライブ装置907
・通信ネットワーク909と接続する通信インターフェース908
・データの入出力を行う入出力インターフェース910
・各構成要素を接続するバス911
各実施形態における各システムの各構成要素は、これらの機能を実現するプログラム904をCPU901が取得して実行することで実現される。各システムの各構成要素の機能を実現するプログラム904は、例えば、予め記憶装置905やRAM903に格納されており、必要に応じてCPU901が読み出す。なお、プログラム904は、通信ネットワーク909を介してCPU901に供給されてもよいし、予め記録媒体906に格納されており、ドライブ装置907が当該プログラムを読み出してCPU901に供給してもよい。
CPU (Central Processing Unit) 901
ROM (Read Only Memory) 902
-RAM (Random Access Memory) 903
A program 904 loaded into the RAM 903
A storage device 905 that stores the program 904
A drive device 907 that reads / writes data from / to the recording medium 906
A communication interface 908 connected to the communication network 909
・ Input / output interface 910 for inputting / outputting data
-Bus 911 connecting each component
Each component of each system in each embodiment is realized by the CPU 901 acquiring and executing a program 904 that realizes these functions. A program 904 that realizes the function of each component of each system is stored in advance in the storage device 905 or the RAM 903, for example, and is read out by the CPU 901 as necessary. The program 904 may be supplied to the CPU 901 via the communication network 909, or may be stored in the recording medium 906 in advance, and the drive device 907 may read the program and supply it to the CPU 901.

各システムの実現方法には、様々な変形例がある。例えば、各システムは、構成要素毎にそれぞれ別個の情報処理装置900とプログラムとの任意の組み合わせにより実現されてもよい。また、各システムが備える複数の構成要素が、一つの情報処理装置900とプログラムとの任意の組み合わせにより実現されてもよい。   There are various modifications to the method of realizing each system. For example, each system may be realized by an arbitrary combination of an information processing apparatus 900 and a program that are different for each component. A plurality of constituent elements included in each system may be realized by an arbitrary combination of one information processing apparatus 900 and a program.

また、各システムの各構成要素の一部又は全部は、その他の汎用または専用の回路、プロセッサ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。   Also, some or all of the components of each system are realized by other general-purpose or dedicated circuits, processors, and the like, or combinations thereof. These may be configured by a single chip or may be configured by a plurality of chips connected via a bus.

各システムの各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。   Part or all of each component of each system may be realized by a combination of the above-described circuit and the like and a program.

各システムの各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。   When some or all of the components of each system are realized by a plurality of information processing devices and circuits, the plurality of information processing devices and circuits may be centrally arranged or distributedly arranged. Also good. For example, the information processing apparatus, the circuit, and the like may be realized as a form in which each is connected via a communication network, such as a client and server system and a cloud computing system.

以上、実施形態を参照して本開示を説明したが、本開示は上記実施形態に限定されものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。   As mentioned above, although this indication was explained with reference to an embodiment, this indication is not limited to the above-mentioned embodiment. Various changes that can be understood by those skilled in the art can be made to the configurations and details of the present disclosure within the scope of the present disclosure.

上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限定されない。
(付記1)
クライアント端末と、プロキシサーバと、複数のストレージ装置とを含み、
前記プロキシサーバは、前記クライアント端末から、要求と共に送信されたデータに識別子を割り当てる割当手段と、
前記要求が書き込み要求の場合、前記複数のストレージ装置のうち、前記識別子および所定のルールに応じて決定された、前記データをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとして前記データを格納するストレージ装置とに対し、前記データを送信する算出手段と、を備え、
前記複数のストレージ装置の夫々は、
自装置が前記プロキシサーバから送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、前記識別子および前記所定のルールに基づいて判定する判定処理を行う判定手段と、
前記プロキシサーバから送信された前記データを記憶する第1記憶手段と、
マイグレーション先の記憶手段である第2記憶手段と、を備え、
前記判定手段は、前記プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データを前記第2記憶手段に記憶するストレージ管理システム。
(付記2)
前記複数のストレージ装置の夫々は、
前記プロキシサーバから前記データを受信すると、該データを前記第1記憶手段に格納する管理手段をさらに備え、
前記判定手段は、自装置が、前記第1記憶手段に格納されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを判定し、前記データをレプリカデータとして格納すると判定した場合、該データを前記第1記憶手段から前記第2記憶手段へ移動する付記1に記載のストレージ管理システム。
(付記3)
前記複数のストレージ装置の夫々は、前記プロキシサーバから前記データを受信する管理手段を更に備え、
前記判定手段は、前記管理手段が前記プロキシサーバから前記データを受信すると、前記判定処理を行い、前記判定処理の結果に基づいて、該データを前記第1記憶手段または前記第2記憶手段に格納する付記1に記載のストレージ管理システム。
(付記4)
前記管理手段は、前記識別子を、前記データをファイル単位で特定するための識別子であるファイル識別子に変換し、
前記データはファイル単位で前記第1記憶手段または前記第2記憶手段に格納される付記2または3に記載のストレージ管理システム。
(付記5)
前記所定のルールには、前記データをマスタデータとして格納するストレージ装置と、前記データを該マスタデータのレプリカデータとして格納するストレージ装置とが設定され、
前記プロキシサーバは、前記判定処理の結果に応じて前記所定のルールを変更する変更手段を更に備え、
前記変更手段は、変更した前記所定のルールを前記複数のストレージ装置の夫々に送信する付記1から4のいずれか1つに記載のストレージ管理システム。
(付記6)
前記算出手段は、前記識別子を用いてハッシュ値を算出し、算出したハッシュ値に基づき、前記所定のルールを参照し、該識別子を割り当てた前記データをマスタデータとして格納するストレージ装置と、該マスタデータのレプリカデータとして該データを格納するストレージ装置とを決定し、
前記判定手段は、前記識別子を用いてハッシュ値を算出し、算出したハッシュ値に基づき、前記所定のルールを参照し、前記判定処理を行う付記1から5のいずれか1つに記載のストレージ管理システム。
(付記7)
前記要求が読み出し要求の場合、前記要求と共に読み出し対象となるデータを特定する情報が送信され、
前記割当手段は、前記読み出し対象となるデータに割り当てられた識別子を、前記読み出し対象となるデータを特定する情報に関連付け、
前記算出手段は、前記複数のストレージ装置のうち、前記識別子および前記所定のルールに応じて決定された、前記読み出し対象となるデータをマスタデータとして格納するストレージ装置に対し、前記識別子を送信し、
前記判定手段は、前記識別子に基づいて前記第1記憶手段から前記読み出し対象となるデータを読み出し、読み出した前記読み出し対象となるデータを前記算出手段に送信し、
前記算出手段は、前記読み出し要求の応答として前記読み出し対象となるデータを前記クライアント端末に送信する付記1から6のいずれか1つに記載のストレージ管理システム。
(付記8)
クライアント端末と、プロキシサーバと、複数のストレージ装置とを含むストレージ管理システムのストレージ管理方法であって、
前記プロキシサーバは、前記クライアント端末から、要求と共に送信されたデータに識別子を割り当て、
前記要求が書き込み要求の場合、前記複数のストレージ装置のうち、前記識別子および所定のルールに応じて決定された、前記識別子が割り当てられたデータをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとして前記識別子が割り当てられたデータを格納するストレージ装置とに対し、前記データを送信し、
前記複数のストレージ装置の夫々は、
前記プロキシサーバから送信された前記データを記憶する第1記憶手段と、
マイグレーション先の記憶手段である第2記憶手段と、を備え、
自装置が前記プロキシサーバから送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、前記識別子および前記所定のルールに基づいて判定する判定処理を行い、前記プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データを前記第2記憶手段に記憶するストレージ管理方法。
(付記9)
前記複数のストレージ装置の夫々は、前記プロキシサーバから前記データを受信すると、該データを前記第1記憶手段に格納し、
自装置が、前記第1記憶手段に格納されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを判定し、前記データをレプリカデータとして格納すると判定した場合、該データを前記第1記憶手段から前記第2記憶手段へ移動する付記8に記載のストレージ管理方法。
(付記10)
前記複数のストレージ装置の夫々は、前記プロキシサーバから前記データを受信すると、前記判定処理を行い、前記判定処理の結果に基づいて、該データを前記第1記憶手段または前記第2記憶手段に格納する付記8に記載のストレージ管理方法。
(付記11)
前記複数のストレージ装置の夫々は、前記識別子を、前記データをファイル単位で特定するための識別子であるファイル識別子に変換し、
前記データはファイル単位で前記第1記憶手段または前記第2記憶手段に格納される付記9または10に記載のストレージ管理方法。
(付記12)
前記所定のルールには、前記識別子が割り当てられたデータをマスタデータとして格納するストレージ装置と、前記識別子が割り当てられたデータを該マスタデータのレプリカデータとして格納するストレージ装置とが設定され、
前記プロキシサーバは、前記判定処理の結果に応じて前記所定のルールを変更し、変更した前記所定のルールを前記複数のストレージ装置の夫々に送信する付記8から11のいずれか1つに記載のストレージ管理方法。
(付記13)
前記プロキシサーバは、前記識別子を用いてハッシュ値を算出し、算出したハッシュ値に基づき、前記所定のルールを参照し、該識別子を割り当てた前記データをマスタデータとして格納するストレージ装置と、該データを該マスタデータのレプリカデータとして格納するストレージ装置とを決定し、
前記複数のストレージ装置の夫々は、前記識別子を用いてハッシュ値を算出し、自装置が算出したハッシュ値に基づき、前記所定のルールを参照し、前記判定処理を行う付記8から12のいずれか1つに記載のストレージ管理方法。
(付記14)
前記要求が読み出し要求の場合、前記要求と共に読み出し対象となるデータを特定する情報が送信され、
前記プロキシサーバは、前記読み出し対象となるデータに割り当てられた識別子を、前記読み出し対象となるデータを特定する情報に関連付け、前記複数のストレージ装置のうち、前記識別子及び前記所定のルールに応じて決定された、前記読み出し対象となるデータをマスタデータとして格納するストレージ装置に対し、前記識別子を送信し、
前記複数のストレージ装置の夫々は、前記識別子に基づいて前記第1記憶手段から前記読み出し対象となるデータを読み出し、読み出した前記読み出し対象となるデータを、前記読み出し要求の応答として前記クライアント端末に送信する付記8から13のいずか1つに記載のストレージ管理方法。
A part or all of the above embodiment can be described as in the following supplementary notes, but is not limited to the following.
(Appendix 1)
Including a client terminal, a proxy server, and a plurality of storage devices,
The proxy server includes an assigning unit that assigns an identifier to data transmitted together with a request from the client terminal;
When the request is a write request, a storage device that stores the data as master data, which is determined according to the identifier and a predetermined rule, among the plurality of storage devices, and a storage device that is different from the storage device. And a calculation unit that transmits the data to a storage device that stores the data as replica data of the master data,
Each of the plurality of storage devices is
A determination means for performing determination processing for determining whether the device itself stores data transmitted from the proxy server as master data or replica data based on the identifier and the predetermined rule;
First storage means for storing the data transmitted from the proxy server;
A second storage means that is a storage destination storage means,
When the determination unit determines to store the data transmitted from the proxy server as replica data, the storage management system stores the data in the second storage unit.
(Appendix 2)
Each of the plurality of storage devices is
When the data is received from the proxy server, the data storage device further comprises management means for storing the data in the first storage means,
The determination unit determines whether the device stores data stored in the first storage unit as master data or replica data, and determines that the data is stored as replica data. The storage management system according to appendix 1, wherein the storage management system is moved from the first storage unit to the second storage unit.
(Appendix 3)
Each of the plurality of storage devices further comprises management means for receiving the data from the proxy server,
The determination unit performs the determination process when the management unit receives the data from the proxy server, and stores the data in the first storage unit or the second storage unit based on a result of the determination process. The storage management system according to appendix 1.
(Appendix 4)
The management means converts the identifier into a file identifier that is an identifier for specifying the data in file units,
The storage management system according to appendix 2 or 3, wherein the data is stored in the first storage unit or the second storage unit in file units.
(Appendix 5)
In the predetermined rule, a storage device that stores the data as master data and a storage device that stores the data as replica data of the master data are set.
The proxy server further includes a changing unit that changes the predetermined rule according to a result of the determination process,
The storage management system according to any one of appendices 1 to 4, wherein the changing unit transmits the changed predetermined rule to each of the plurality of storage apparatuses.
(Appendix 6)
The calculation means calculates a hash value using the identifier, refers to the predetermined rule based on the calculated hash value, and stores the data assigned the identifier as master data; and the master Determine the storage device that stores the data as replica data of the data,
The storage management according to any one of appendices 1 to 5, wherein the determination unit calculates a hash value using the identifier, refers to the predetermined rule based on the calculated hash value, and performs the determination process. system.
(Appendix 7)
When the request is a read request, information specifying data to be read is transmitted together with the request,
The assigning means associates an identifier assigned to the data to be read with information identifying the data to be read;
The calculation means transmits the identifier to a storage device that stores, as master data, the data to be read, determined according to the identifier and the predetermined rule, among the plurality of storage devices,
The determination unit reads the data to be read from the first storage unit based on the identifier, and transmits the read data to be read to the calculation unit.
The storage management system according to any one of appendices 1 to 6, wherein the calculation unit transmits the data to be read to the client terminal as a response to the read request.
(Appendix 8)
A storage management method for a storage management system including a client terminal, a proxy server, and a plurality of storage devices,
The proxy server assigns an identifier to data transmitted with a request from the client terminal,
When the request is a write request, among the plurality of storage devices, a storage device that stores data assigned with the identifier, determined according to the identifier and a predetermined rule, as master data, and the storage device Is a different storage device, and transmits the data to the storage device storing the data assigned the identifier as replica data of the master data,
Each of the plurality of storage devices is
First storage means for storing the data transmitted from the proxy server;
A second storage means that is a storage destination storage means,
Based on the identifier and the predetermined rule, a determination process is performed to determine whether the own device stores data transmitted from the proxy server as master data or replica data, and is transmitted from the proxy server. A storage management method for storing data in the second storage means when it is determined that data is stored as replica data.
(Appendix 9)
Each of the plurality of storage devices receives the data from the proxy server, stores the data in the first storage means,
When the own device determines whether the data stored in the first storage means is stored as master data or replica data, and determines that the data is stored as replica data, the data is stored in the first storage Item 9. The storage management method according to appendix 8, wherein the storage management method migrates from the means to the second storage means.
(Appendix 10)
Each of the plurality of storage devices receives the data from the proxy server, performs the determination process, and stores the data in the first storage unit or the second storage unit based on the result of the determination process The storage management method according to appendix 8.
(Appendix 11)
Each of the plurality of storage devices converts the identifier into a file identifier that is an identifier for specifying the data in file units,
The storage management method according to appendix 9 or 10, wherein the data is stored in file units in the first storage unit or the second storage unit.
(Appendix 12)
In the predetermined rule, a storage device that stores data assigned the identifier as master data, and a storage device that stores data assigned the identifier as replica data of the master data are set,
12. The proxy server according to any one of appendices 8 to 11, wherein the proxy server changes the predetermined rule according to a result of the determination process, and transmits the changed predetermined rule to each of the plurality of storage devices. Storage management method.
(Appendix 13)
The proxy server calculates a hash value using the identifier, refers to the predetermined rule based on the calculated hash value, and stores the data to which the identifier is assigned as master data, and the data And a storage device for storing the master data as replica data of the master data,
Each of the plurality of storage devices calculates a hash value using the identifier, and refers to the predetermined rule based on the hash value calculated by the own device, and performs the determination process according to any one of appendices 8 to 12 The storage management method according to one.
(Appendix 14)
When the request is a read request, information specifying data to be read is transmitted together with the request,
The proxy server associates an identifier assigned to the data to be read with information specifying the data to be read, and determines the identifier according to the identifier and the predetermined rule among the plurality of storage devices Is sent to the storage device that stores the data to be read as master data,
Each of the plurality of storage devices reads the data to be read from the first storage unit based on the identifier, and transmits the read data to be read to the client terminal as a response to the read request. 14. The storage management method according to any one of appendices 8 to 13.

1 ストレージ管理システム
2 ストレージ管理システム
10 クライアント端末
20 プロキシサーバ
21 割当部
22 算出部
23 変更部
24 サーバ記憶部
30 ストレージ装置
31 管理部
32 ストレージ記憶部
33 処理部
34 ディスク
35 テープ
36 判定部
40 ストレージ装置
50 ストレージ装置
51 管理部
52 判定部
53 ストレージ記憶部
54 処理部
55 ディスク
56 テープ
60 ストレージ装置
70 プロキシサーバ
71 割当部
72 算出部
80 ストレージ装置
81 第1記憶部
82 判定部
83 第2記憶部
90 クライアント端末
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 プログラム
905 記憶装置
906 記録媒体
907 ドライブ装置
908 通信インターフェース
909 通信ネットワーク
910 入出力インターフェース
911 バス
DESCRIPTION OF SYMBOLS 1 Storage management system 2 Storage management system 10 Client terminal 20 Proxy server 21 Allocation part 22 Calculation part 23 Change part 24 Server storage part 30 Storage apparatus 31 Management part 32 Storage storage part 33 Processing part 34 Disk 35 Tape 36 Determination part 40 Storage apparatus DESCRIPTION OF SYMBOLS 50 Storage apparatus 51 Management part 52 Judgment part 53 Storage storage part 54 Processing part 55 Disk 56 Tape 60 Storage apparatus 70 Proxy server 71 Allocation part 72 Calculation part 80 Storage apparatus 81 1st memory | storage part 82 Judgment part 83 2nd memory | storage part 90 Client Terminal 900 Information processing apparatus 901 CPU
902 ROM
903 RAM
904 Program 905 Storage device 906 Recording medium 907 Drive device 908 Communication interface 909 Communication network 910 Input / output interface 911 Bus

Claims (10)

クライアント端末と、プロキシサーバと、複数のストレージ装置とを含み、
前記プロキシサーバは、前記クライアント端末から、要求と共に送信されたデータに識別子を割り当てる割当手段と、
前記要求が書き込み要求の場合、前記複数のストレージ装置のうち、前記識別子および所定のルールに応じて決定された、前記データをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとして前記データを格納するストレージ装置とに対し、前記データを送信する算出手段と、を備え、
前記複数のストレージ装置の夫々は、
自装置が前記プロキシサーバから送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、前記識別子および前記所定のルールに基づいて判定する判定処理を行う判定手段と、
前記プロキシサーバから送信された前記データを記憶する第1記憶手段と、
マイグレーション先の記憶手段である第2記憶手段と、を備え、
前記判定手段は、前記プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データを前記第2記憶手段に記憶するストレージ管理システム。
Including a client terminal, a proxy server, and a plurality of storage devices,
The proxy server includes an assigning unit that assigns an identifier to data transmitted together with a request from the client terminal;
When the request is a write request, a storage device that stores the data as master data, which is determined according to the identifier and a predetermined rule, among the plurality of storage devices, and a storage device that is different from the storage device. And a calculation unit that transmits the data to a storage device that stores the data as replica data of the master data,
Each of the plurality of storage devices is
A determination means for performing determination processing for determining whether the device itself stores data transmitted from the proxy server as master data or replica data based on the identifier and the predetermined rule;
First storage means for storing the data transmitted from the proxy server;
A second storage means that is a storage destination storage means,
When the determination unit determines to store the data transmitted from the proxy server as replica data, the storage management system stores the data in the second storage unit.
前記複数のストレージ装置の夫々は、
前記プロキシサーバから前記データを受信すると、該データを前記第1記憶手段に格納する管理手段をさらに備え、
前記判定手段は、自装置が、前記第1記憶手段に格納されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを判定し、前記データをレプリカデータとして格納すると判定した場合、該データを前記第1記憶手段から前記第2記憶手段へ移動する請求項1に記載のストレージ管理システム。
Each of the plurality of storage devices is
When the data is received from the proxy server, the data storage device further comprises management means for storing the data in the first storage means,
The determination unit determines whether the device stores data stored in the first storage unit as master data or replica data, and determines that the data is stored as replica data. The storage management system according to claim 1, wherein the storage management system is moved from the first storage means to the second storage means.
前記複数のストレージ装置の夫々は、前記プロキシサーバから前記データを受信する管理手段を更に備え、
前記判定手段は、前記管理手段が前記プロキシサーバから前記データを受信すると、前記判定処理を行い、前記判定処理の結果に基づいて、該データを前記第1記憶手段または前記第2記憶手段に格納する請求項1に記載のストレージ管理システム。
Each of the plurality of storage devices further comprises management means for receiving the data from the proxy server,
The determination unit performs the determination process when the management unit receives the data from the proxy server, and stores the data in the first storage unit or the second storage unit based on a result of the determination process. The storage management system according to claim 1.
前記管理手段は、前記識別子を、前記データをファイル単位で特定するための識別子であるファイル識別子に変換し、
前記データはファイル単位で前記第1記憶手段または前記第2記憶手段に格納される請求項2または3に記載のストレージ管理システム。
The management means converts the identifier into a file identifier that is an identifier for specifying the data in file units,
The storage management system according to claim 2 or 3, wherein the data is stored in the first storage unit or the second storage unit in file units.
前記所定のルールには、前記データをマスタデータとして格納するストレージ装置と、前記データを該マスタデータのレプリカデータとして格納するストレージ装置とが設定され、
前記プロキシサーバは、前記判定処理の結果に応じて前記所定のルールを変更する変更手段を更に備え、
前記変更手段は、変更した所定のルールを前記複数のストレージ装置の夫々に送信する請求項1から4のいずれか1項に記載のストレージ管理システム。
In the predetermined rule, a storage device that stores the data as master data and a storage device that stores the data as replica data of the master data are set.
The proxy server further includes a changing unit that changes the predetermined rule according to a result of the determination process,
The storage management system according to any one of claims 1 to 4, wherein the changing unit transmits the changed predetermined rule to each of the plurality of storage apparatuses.
前記算出手段は、前記識別子を用いてハッシュ値を算出し、算出したハッシュ値に基づき、前記所定のルールを参照し、該識別子を割り当てた前記データをマスタデータとして格納するストレージ装置と、該マスタデータのレプリカデータとして該データを格納するストレージ装置とを決定し、
前記判定手段は、前記識別子を用いてハッシュ値を算出し、算出したハッシュ値に基づき、前記所定のルールを参照し、前記判定処理を行う請求項1から5のいずれか1項に記載のストレージ管理システム。
The calculation means calculates a hash value using the identifier, refers to the predetermined rule based on the calculated hash value, and stores the data assigned the identifier as master data; and the master Determine the storage device that stores the data as replica data of the data,
The storage according to claim 1, wherein the determination unit calculates a hash value using the identifier, refers to the predetermined rule based on the calculated hash value, and performs the determination process. Management system.
前記要求が読み出し要求の場合、前記要求と共に読み出し対象となるデータを特定する情報が送信され、
前記割当手段は、前記読み出し対象となるデータに割り当てられた識別子を、前記読み出し対象となるデータを特定する情報に関連付け、
前記算出手段は、前記複数のストレージ装置のうち、前記識別子および前記所定のルールに応じて決定された、前記読み出し対象となるデータをマスタデータとして格納するストレージ装置に対し、前記識別子を送信し、
前記判定手段は、前記識別子に基づいて前記第1記憶手段から前記読み出し対象となるデータを読み出し、読み出した前記読み出し対象となるデータを前記算出手段に送信し、
前記算出手段は、前記読み出し要求の応答として前記読み出し対象となるデータを前記クライアント端末に送信する請求項1から6のいずれか1項に記載のストレージ管理システム。
When the request is a read request, information specifying data to be read is transmitted together with the request,
The assigning means associates an identifier assigned to the data to be read with information identifying the data to be read;
The calculation means transmits the identifier to a storage device that stores, as master data, the data to be read, determined according to the identifier and the predetermined rule, among the plurality of storage devices,
The determination unit reads the data to be read from the first storage unit based on the identifier, and transmits the read data to be read to the calculation unit.
The storage management system according to any one of claims 1 to 6, wherein the calculation unit transmits the data to be read to the client terminal as a response to the read request.
クライアント端末と、プロキシサーバと、複数のストレージ装置とを含むストレージ管理システムのストレージ管理方法であって、
前記プロキシサーバは、前記クライアント端末から、要求と共に送信されたデータに識別子を割り当て、
前記要求が書き込み要求の場合、前記複数のストレージ装置のうち、前記識別子および所定のルールに応じて決定された、前記データをマスタデータとして格納するストレージ装置と、当該ストレージ装置とは異なるストレージ装置であって、該マスタデータのレプリカデータとして前記データを格納するストレージ装置とに対し、前記データを送信し、
前記複数のストレージ装置の夫々は、
前記プロキシサーバから送信された前記データを記憶する第1記憶手段と、
マイグレーション先の記憶手段である第2記憶手段と、を備え、
自装置が前記プロキシサーバから送信されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを、前記識別子および前記所定のルールに基づいて判定する判定処理を行い、前記プロキシサーバから送信されたデータをレプリカデータとして格納すると判定した場合、該データを前記第2記憶手段に記憶するストレージ管理方法。
A storage management method for a storage management system including a client terminal, a proxy server, and a plurality of storage devices,
The proxy server assigns an identifier to data transmitted with a request from the client terminal,
When the request is a write request, a storage device that stores the data as master data, which is determined according to the identifier and a predetermined rule, among the plurality of storage devices, and a storage device that is different from the storage device. And sending the data to a storage device storing the data as replica data of the master data,
Each of the plurality of storage devices is
First storage means for storing the data transmitted from the proxy server;
A second storage means that is a storage destination storage means,
Based on the identifier and the predetermined rule, a determination process is performed to determine whether the own device stores data transmitted from the proxy server as master data or replica data, and is transmitted from the proxy server. A storage management method for storing data in the second storage means when it is determined that data is stored as replica data.
前記複数のストレージ装置の夫々は、前記プロキシサーバから前記データを受信すると、該データを前記第1記憶手段に格納し、
自装置が、前記第1記憶手段に格納されたデータをマスタデータとして格納するのかレプリカデータとして格納するのかを判定し、前記データをレプリカデータとして格納すると判定した場合、該データを前記第1記憶手段から前記第2記憶手段へ移動する請求項8に記載のストレージ管理方法。
Each of the plurality of storage devices receives the data from the proxy server, stores the data in the first storage means,
When the own device determines whether the data stored in the first storage means is stored as master data or replica data, and determines that the data is stored as replica data, the data is stored in the first storage The storage management method according to claim 8, wherein the storage management method migrates from a means to the second storage means.
前記複数のストレージ装置の夫々は、前記プロキシサーバから前記データを受信すると、前記判定処理を行い、前記判定処理の結果に基づいて、該データを前記第1記憶手段または前記第2記憶手段に格納する請求項8に記載のストレージ管理方法。   Each of the plurality of storage devices receives the data from the proxy server, performs the determination process, and stores the data in the first storage unit or the second storage unit based on the result of the determination process The storage management method according to claim 8.
JP2016065875A 2016-03-29 2016-03-29 Storage management system and storage management method Active JP6330840B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016065875A JP6330840B2 (en) 2016-03-29 2016-03-29 Storage management system and storage management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016065875A JP6330840B2 (en) 2016-03-29 2016-03-29 Storage management system and storage management method

Publications (2)

Publication Number Publication Date
JP2017182286A true JP2017182286A (en) 2017-10-05
JP6330840B2 JP6330840B2 (en) 2018-05-30

Family

ID=60006200

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016065875A Active JP6330840B2 (en) 2016-03-29 2016-03-29 Storage management system and storage management method

Country Status (1)

Country Link
JP (1) JP6330840B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020188444A1 (en) * 2019-03-15 2020-09-24 Kioxia Corporation Data storage resource management
WO2022038935A1 (en) * 2020-08-21 2022-02-24 富士フイルム株式会社 Information processing device, information processing method, and information processing program

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231120A (en) * 1996-02-20 1997-09-05 Matsushita Electric Ind Co Ltd Directory management device
JP2002259333A (en) * 2001-03-01 2002-09-13 Hitachi Software Eng Co Ltd Method for transferring contents
JP2005056200A (en) * 2003-08-05 2005-03-03 Hitachi Ltd Data management method, disk storage device and disk storage system
JP2007226596A (en) * 2006-02-24 2007-09-06 Hitachi Ltd Storage controller, and data migration method using storage controller
JP2008250667A (en) * 2007-03-30 2008-10-16 Hitachi Ltd Storage system and storage control method
JP2014203287A (en) * 2013-04-05 2014-10-27 日本電気株式会社 Storage control device
JP2015156071A (en) * 2014-02-20 2015-08-27 富士通株式会社 Data storing method, data storage system, program and storage device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231120A (en) * 1996-02-20 1997-09-05 Matsushita Electric Ind Co Ltd Directory management device
JP2002259333A (en) * 2001-03-01 2002-09-13 Hitachi Software Eng Co Ltd Method for transferring contents
JP2005056200A (en) * 2003-08-05 2005-03-03 Hitachi Ltd Data management method, disk storage device and disk storage system
JP2007226596A (en) * 2006-02-24 2007-09-06 Hitachi Ltd Storage controller, and data migration method using storage controller
JP2008250667A (en) * 2007-03-30 2008-10-16 Hitachi Ltd Storage system and storage control method
JP2014203287A (en) * 2013-04-05 2014-10-27 日本電気株式会社 Storage control device
JP2015156071A (en) * 2014-02-20 2015-08-27 富士通株式会社 Data storing method, data storage system, program and storage device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020188444A1 (en) * 2019-03-15 2020-09-24 Kioxia Corporation Data storage resource management
US11816503B2 (en) 2019-03-15 2023-11-14 Kioxia Corporation Data storage resource management
WO2022038935A1 (en) * 2020-08-21 2022-02-24 富士フイルム株式会社 Information processing device, information processing method, and information processing program

Also Published As

Publication number Publication date
JP6330840B2 (en) 2018-05-30

Similar Documents

Publication Publication Date Title
US9069835B2 (en) Organizing data in a distributed storage system
CN107391629B (en) Method, system, server and computer storage medium for data migration between clusters
JP5625998B2 (en) Information processing system
EP2721504B1 (en) File processing method, system and server-clustered system for cloud storage
US8069224B2 (en) Method, equipment and system for resource acquisition
US20150215405A1 (en) Methods of managing and storing distributed files based on information-centric network
KR102376713B1 (en) Composite partition functions
JP5391601B2 (en) Resource transfer system, resource transfer method, information processing apparatus, and computer program
JPH04271454A (en) Loosely-coupled computer system
CN113783922A (en) Load balancing method, system and device
JP5080563B2 (en) Global provisioning of many users with deployment units
US10652349B2 (en) Managing distributed data by calculating co-occurrence probabilities of combinations of first identification information items for device information items and compressing the device information items using the a second identification information assigned to the first information items based on the co-occurrence probabilities
JP6330840B2 (en) Storage management system and storage management method
CN113553178A (en) Task processing method and device and electronic equipment
CN111225003B (en) NFS node configuration method and device
JP2005208999A (en) Virtual machine management program
CN112804366B (en) Method and device for resolving domain name
JP2014106728A (en) Multi-tenant type service system, information processing device, control method, and program
CN107329798B (en) Data replication method and device and virtualization system
CN111444148B (en) Data transmission method and device based on MapReduce
JP2019041241A (en) Distribution system
CN115729693A (en) Data processing method and device, computer equipment and computer readable storage medium
CN113535673B (en) Method and device for generating configuration file and data processing
CN109088913B (en) Method for requesting data and load balancing server
KR101754713B1 (en) Asymmetric distributed file system, apparatus and method for distribution of computation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170718

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180314

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: 20180327

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180409

R150 Certificate of patent or registration of utility model

Ref document number: 6330840

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150