JP6969656B2 - Information processing systems, methods, and programs - Google Patents

Information processing systems, methods, and programs Download PDF

Info

Publication number
JP6969656B2
JP6969656B2 JP2020190611A JP2020190611A JP6969656B2 JP 6969656 B2 JP6969656 B2 JP 6969656B2 JP 2020190611 A JP2020190611 A JP 2020190611A JP 2020190611 A JP2020190611 A JP 2020190611A JP 6969656 B2 JP6969656 B2 JP 6969656B2
Authority
JP
Japan
Prior art keywords
storage device
data
ssd
read
scm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020190611A
Other languages
Japanese (ja)
Other versions
JP2021036461A (en
Inventor
哲 風間
慎哉 桑村
英司 吉田
淳二 小川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2017068585A external-priority patent/JP6822274B2/en
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020190611A priority Critical patent/JP6969656B2/en
Publication of JP2021036461A publication Critical patent/JP2021036461A/en
Application granted granted Critical
Publication of JP6969656B2 publication Critical patent/JP6969656B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)

Description

本発明は、負荷分散される複数の記憶装置を備えたストレージ装置にアクセスする情報処理装置、方法、及びプログラムに関する。 The present invention relates to an information processing device, a method, and a program for accessing a storage device including a plurality of load-balanced storage devices.

複数の記憶装置を備え、ストレージ装置内で負荷分散する技術が知られている(例えば特許文献1に記載の技術)。 A technique of providing a plurality of storage devices and distributing a load in a storage device is known (for example, the technique described in Patent Document 1).

例えば、半導体素子メモリを用いた高速なSSD(Solid State Drive)と低速なHDD(Hard Disk Drive)を利用するストレージシステムが知られている。このようなストレージシステムにおいて、従来は、ストレージシステム内部に具備されたコントローラが、データのアクセス頻度に応じてSSDとHDD間でデータ移動を行う階層制御を行っていた。このようなストレージシステムでは、まずSSDにデータが書き込まれ、アクセス頻度が低いデータはHDDに移動させられる。その後、そのようなデータにアクセスがあった場合に、HDD内のデータがSSDに移動させられて使用される。 For example, a storage system using a high-speed SSD (Solid State Drive) using a semiconductor element memory and a low-speed HDD (Hard Disk Drive) is known. In such a storage system, conventionally, a controller provided inside the storage system performs hierarchical control for moving data between the SSD and the HDD according to the data access frequency. In such a storage system, data is first written to the SSD, and data with low access frequency is moved to the HDD. After that, when such data is accessed, the data in the HDD is moved to the SSD and used.

近年、従来のNAND型フラッシュメモリよりさらに高速な、Storage Class Memory(以下「SCM」と呼ぶ)を採用したSSD(以下「SCM SSD」と呼ぶ)を、ストレージシステムに利用することが期待されている。 In recent years, it is expected that SSDs (hereinafter referred to as "SCM SSDs") that employ Story Class Memory (hereinafter referred to as "SCM"), which are faster than conventional NAND flash memories, will be used in storage systems. ..

特許公開平9−44381号公報Patent Publication No. 9-44381

しかし、ストレージシステムでSCM SSDが採用される場合、従来技術のように、システム内部のコントローラによりその中に閉じた負荷分散を行うと、レイテンシが悪化するため、SCMの高速性を十分に活かせないという課題があった。 However, when the SCM SSD is adopted in the storage system, if the load distribution closed in the controller is performed by the controller inside the system as in the conventional technology, the latency deteriorates and the high speed of the SCM cannot be fully utilized. There was a problem.

そこで、本発明の1つの側面では、ストレージシステムに搭載されたSCM SSDの高速性を活かすことのできる情報処理装置を提供することを目的とする。 Therefore, one aspect of the present invention is to provide an information processing apparatus capable of utilizing the high speed of the SCM SSD mounted on the storage system.

態様の一例では、第1の記憶装置と、第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置における、第2の記憶装置へのリクエスト中のリクエストに関する情報を保持する保持部と、リクエストに関する情報に基づいて、第2の記憶装置の負荷を判定する判定部と、判定部が第2の記憶装置の負荷が第1の閾値に比較して低いと判定した場合に、第1の記憶装置及び第2の記憶装置の両方に同一の書き込むべきデータを書き込み、判定部が第2の記憶装置の負荷が第1の閾値に比較して高いと判定した場合に、第1の記憶装置のみに書き込むべきデータを書き込む制御、及び、読み出すべきデータが第1の記憶装置及び第2の記憶装置の両方に記憶されている場合において、第1の記憶装置及び第2の記憶装置の両方から読み出すべきデータを読み出して速く読み出されたほうの読み出すべきデータを採用し、第1の記憶装置からの読み出すべきデータの読出しのほうが速かった場合には、第2の記憶装置に記憶されている読み出すべきデータを削除する制御を行う制御部と、を具備する。 In one example of the embodiment, the information regarding the request in the request to the second storage device in the first storage device and the information processing device that can access the second storage device having a faster access speed than the first storage device. A determination unit that determines the load of the second storage device based on the information about the request, and a determination unit that determines that the load of the second storage device is lower than the first threshold value. When the same data to be written is written in both the first storage device and the second storage device, and the determination unit determines that the load of the second storage device is higher than the first threshold value. In addition, control for writing data to be written only to the first storage device , and when the data to be read is stored in both the first storage device and the second storage device, the first storage device and the first storage device. When the data to be read from both of the two storage devices is read and the data to be read is adopted, and the data to be read from the first storage device is read faster, the second one is used. It includes a control unit that controls to delete the data to be read stored in the storage device.

ストレージシステムに搭載されたSCM SSDの高速性を活かすことのできる情報処理装置を提供することが可能となる。 It is possible to provide an information processing device that can utilize the high speed of the SCM SSD mounted on the storage system.

実施形態が採用するストレージシステムの構成例を示す図である。It is a figure which shows the configuration example of the storage system adopted by an Embodiment. 実施形態が採用するストレージシステムの構成で一般的に考えられる制御手法とその課題を説明する図である。It is a figure explaining the control method generally considered in the configuration of the storage system adopted by an embodiment, and the problem. 第1の実施形態の構成及び制御方式の説明図である。It is explanatory drawing of the structure of 1st Embodiment and the control method. 第1の実施形態におけるデータ読出し時の制御動作の説明図である。It is explanatory drawing of the control operation at the time of data reading in 1st Embodiment. 第1の実施形態におけるデータ書込時の制御動作の説明図である。It is explanatory drawing of the control operation at the time of data writing in 1st Embodiment. 第2の実施形態の制御動作の説明図である。It is explanatory drawing of the control operation of 2nd Embodiment. 第3の実施形態の制御動作の説明図である。It is explanatory drawing of the control operation of 3rd Embodiment. 第4の実施形態の制御動作の説明図である。It is explanatory drawing of the control operation of 4th Embodiment. 第1及び第2の実施形態のシステム構成例を示す図である。It is a figure which shows the system configuration example of 1st and 2nd Embodiment. 負荷状態保持部が保持する負荷状態に関する情報のデータ構成例を示す図である。It is a figure which shows the data composition example of the information about a load state held by a load state holding part. 第1の実施形態におけるマスタサーバの制御処理例を示すフローチャートである。It is a flowchart which shows the control processing example of the master server in 1st Embodiment. 第1の実施形態におけるデータ読出し時の制御処理例を示すフローチャートである。It is a flowchart which shows the control process example at the time of data reading in 1st Embodiment. 第1の実施形態におけるデータ書込み時の第1の制御処理例を示すフローチャートである。It is a flowchart which shows the 1st control processing example at the time of data writing in 1st Embodiment. 第1の実施形態におけるデータ書込み時の第2の制御処理例を示すフローチャートである。It is a flowchart which shows the 2nd control processing example at the time of data writing in 1st Embodiment. 第2の実施形態におけるデータ書込み時の制御処理例を示すフローチャートである。It is a flowchart which shows the control processing example at the time of data writing in 2nd Embodiment. 第2の実施形態におけるデータ読出し時の第1の制御処理例を示すフローチャートである。It is a flowchart which shows the 1st control processing example at the time of data reading in 2nd Embodiment. 第2の実施形態におけるデータ読出し時の制御処理例(その2)を示すフローチャートである。It is a flowchart which shows the control process example (the 2) at the time of data reading in 2nd Embodiment. 第3の実施形態のシステム構成例を示す図である。It is a figure which shows the system configuration example of the 3rd Embodiment. 第3の実施形態におけるデータ読出し時の第1の制御処理例を示すフローチャートである。It is a flowchart which shows the 1st control processing example at the time of data reading in 3rd Embodiment. 第3の実施形態におけるデータ書込み時の第1の制御処理例を示すフローチャートである。It is a flowchart which shows the 1st control processing example at the time of data writing in 3rd Embodiment. 第3の実施形態におけるデータ書込み時の第2の制御処理例を示すフローチャートである。It is a flowchart which shows the 2nd control processing example at the time of data writing in 3rd Embodiment. 第3の実施形態におけるデータ読出し時の第2の制御処理例を示すフローチャートである。It is a flowchart which shows the 2nd control processing example at the time of data reading in 3rd Embodiment. 第3の実施形態におけるデータ読出し時の第3の制御処理例を示すフローチャートである。It is a flowchart which shows the 3rd control processing example at the time of data reading in 3rd Embodiment. 第4の実施形態のシステム構成例を示す図である。It is a figure which shows the system configuration example of 4th Embodiment. 第4の実施形態における各サーバによる負荷情報受信及び負荷状態更新の制御処理例を示すフローチャートである。It is a flowchart which shows the control process example of load information reception and load state update by each server in 4th Embodiment. 第4の実施形態におけるデータ読出し時の第1の制御処理例を示すフローチャートである。It is a flowchart which shows the 1st control processing example at the time of data reading in 4th Embodiment. 第4の実施形態におけるデータ書込み時の第1の制御処理例を示すフローチャートである。It is a flowchart which shows the 1st control processing example at the time of data writing in 4th Embodiment. 第4の実施形態におけるデータ書込み時の第2の制御処理例を示すフローチャートである。It is a flowchart which shows the 2nd control processing example at the time of data writing in 4th Embodiment. 第4の実施形態におけるデータ読出し時の第2の制御処理例を示すフローチャートである。It is a flowchart which shows the 2nd control processing example at the time of data reading in 4th Embodiment. 第4の実施形態におけるデータ読出し時の第3の制御処理例を示すフローチャートである。It is a flowchart which shows the 3rd control processing example at the time of data reading in 4th Embodiment. 複数SSDでRAIDを構成する実施形態の構成例を示す図である。It is a figure which shows the configuration example of the Embodiment which configures RAID with a plurality of SSDs. 各実施形態による情報処理装置をソフトウェア処理として実現できるコンピュータのハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware composition of the computer which can realize the information processing apparatus by each embodiment as software processing.

以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。図1は、後述する各実施形態が採用するストレージシステムの構成例を示す図である。この構成例では、サーバ103が、スイッチ(以下「Pcie switch」と呼ぶ)104を介して、NAND型フラッシュメモリを使用したSSD(以下「NAND SSD」と呼ぶ)102と、SCM SSD102にアクセスすることが可能である。NAND SSD101は第1の記憶装置として動作し、SCM SSD102はNAND SSD101よりもアクセス速度が速い第2の記憶装置として動作する。サーバ103は、#1から#N(Nは任意の自然数)の1台以上から構成される。Pcie switch104は、拡張バスの一種であるPCI Expressシリアルインタフェースをサポートするスイッチである。この構成例では、NAND SSD101とSCM SSD102へのデータの振分け制御を行う専用のコントローラは置かれず、サーバ103が直接、NAND SSD102とSCM SSD102とを制御する。 Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the drawings. FIG. 1 is a diagram showing a configuration example of a storage system adopted by each embodiment described later. In this configuration example, the server 103 accesses the SSD (hereinafter referred to as “NAND SSD”) 102 and the SCM SSD 102 using the NAND flash memory via the switch (hereinafter referred to as “PCIe switch”) 104. Is possible. The NAND SSD 101 operates as a first storage device, and the SCM SSD 102 operates as a second storage device having a faster access speed than the NAND SSD 101. The server 103 is composed of one or more of # 1 to # N (N is an arbitrary natural number). The PCIe switch 104 is a switch that supports a PCI Express serial interface, which is a kind of expansion bus. In this configuration example, a dedicated controller for controlling the distribution of data to the NAND SSD 101 and the SCM SSD 102 is not placed, and the server 103 directly controls the NAND SSD 102 and the SCM SSD 102.

図2は、図1に例示されるストレージシステムの構成で一般的に考えられる制御手法とその課題を説明する図である。一般的に考えられる制御手法は、図2(a)に示されるものである。各サーバ103からのデータ書込み(write)及びデータ読出し(read)は速度の速い方のSCM SSD102に対して行われる。そして、アクセス頻度が低いデータは、SCM SSD102から、速度の遅い方のNAND SSD101に移動させられる。 FIG. 2 is a diagram illustrating a control method generally considered in the configuration of the storage system exemplified in FIG. 1 and its problems. A generally conceivable control method is that shown in FIG. 2 (a). Data writing (write) and data reading (read) from each server 103 are performed on the faster SCM SSD 102. Then, the data having a low access frequency is moved from the SCM SSD 102 to the NAND SSD 101 having a slower speed.

上記制御手法で、SCM SSD102に対する負荷が低い場合、例えばSCM SSD102へのリクエストキューに積まれているリクエストが1個で、NAND SSD101へのリクエストキューに積まれているリクエストも1個のような場合を考える。この場合、図2(b)の不等号記号として示されるように、SCM SSD102のレイテンシ=例えば10μs(マイクロ秒)は、NAND SSD101のレイテンシ=例えば60μsよりも大幅に小さく、SCM SSD102へのアクセス性能の方が高い。 In the above control method, when the load on the SCM SSD 102 is low, for example, one request is stored in the request queue for the SCM SSD 102 and one request is stored in the request queue for the NAND SSD 101. think of. In this case, as shown by the inequality sign in FIG. 2 (b), the latency of the SCM SSD 102 = for example 10 μs (microseconds) is significantly smaller than the latency of the NAND SSD 101 = for example 60 μs, and the access performance to the SCM SSD 102 is high. Is higher.

一方、SCM SSD102に対する負荷の方が高くなる場合、例えばSCM SSD102へのリクエストキューに積まれているリクエストが10個で、NAND SSD101へのリクエストキューに積まれているリクエストも1個のような場合を考える。この場合には、図2(c)の不等号記号として示されるように、SCM SSD102のレイテンシ=例えば100μsの方が、NAND SSD101のレイテンシ=例えば60μsよりも大きくなってしまい、両者のアクセス性能が逆転してしまう。このように、上記一般的な制御手法では、SCM SSD102の大容量化により、SCM SSD102上のデータが増えると、SCM SSD102へのアクセスが増加する。その結果、SCM SSD102のコマンドの実行時間が遅くなり、SCM SSD102へのアクセス速度がNAND SSD101へのアクセス速度よりも遅くなるという課題がある。 On the other hand, when the load on the SCM SSD 102 is higher, for example, there are 10 requests in the request queue for the SCM SSD 102 and 1 request in the request queue for the NAND SSD 101. think of. In this case, as shown by the inequality sign in FIG. 2C, the latency of the SCM SSD 102 = for example 100 μs becomes larger than the latency of the NAND SSD 101 = for example 60 μs, and the access performances of both are reversed. Resulting in. As described above, in the above general control method, as the data on the SCM SSD 102 increases due to the increase in capacity of the SCM SSD 102, the access to the SCM SSD 102 increases. As a result, there is a problem that the execution time of the command of the SCM SSD 102 becomes slow, and the access speed to the SCM SSD 102 becomes slower than the access speed to the NAND SSD 101.

図3は、上記課題を解決するための、図1の構成例を前提とする第1の実施形態の構成例と、その制御方式の説明図である。図3(a)は、第1の実施形態の構成例を示す図である。図3(a)において、図1の場合と同じ番号が付された部分は、図1の場合と同じものである。第1の実施形態の構成例は、図1の構成例に加えて、NAND SSD101及びSCM SSD102にアクセスする#1から#Nのサーバ103とは異なるマスタサーバ301を具備する。マスタサーバ301は、図3(a)の302として示されるように、SCM SSD102の負荷情報を#1から#Nの各サーバ103から集約し、SCM SSD102の負荷の大小(負荷状態)を判定する。各サーバ103は、マスタサーバ301からの通知に基づいてSCM SSD102の負荷状態を参照する。そして、各サーバ103は、図3(a)の303として示されるように、負荷状態に応じてデータをSCM SSD102とNAND SSD101間で移動することにより、SCM SSD102への負荷集中を軽減する。 FIG. 3 is an explanatory diagram of a configuration example of a first embodiment premised on the configuration example of FIG. 1 and a control method thereof for solving the above problems. FIG. 3A is a diagram showing a configuration example of the first embodiment. In FIG. 3A, the portions with the same numbers as in FIG. 1 are the same as in FIG. 1. The configuration example of the first embodiment includes, in addition to the configuration example of FIG. 1, a master server 301 different from the servers 103 of # 1 to #N that access the NAND SSD 101 and the SCM SSD 102. As shown as 302 in FIG. 3A, the master server 301 aggregates the load information of the SCM SSD 102 from each server 103 of # 1 to # N, and determines the magnitude (load state) of the load of the SCM SSD 102. .. Each server 103 refers to the load state of the SCM SSD 102 based on the notification from the master server 301. Then, as shown as 303 in FIG. 3A, each server 103 reduces the load concentration on the SCM SSD 102 by moving the data between the SCM SSD 102 and the NAND SSD 101 according to the load state.

負荷情報とは、各サーバ103においてSCM SSD102に対して発行されるリクエスト中のリクエストに関する情報であり、例えば、各サーバ103がSCM SSD102へのアクセスキューに蓄積しているコマンドの推定実行時間である。すなわち、負荷が高いことは、コマンドの推定実行時間が遅いことで判断し、負荷が低いことは、コマンドの推定実行時間が速いことで判断する。この推定実行時間は、下記数1式で示される演算により算出される。 The load information is information about the request in the request issued to the SCM SSD 102 in each server 103, and is, for example, the estimated execution time of the command accumulated in the access queue to the SCM SSD 102 by each server 103. .. That is, a high load is determined by the slow estimated execution time of the command, and a low load is determined by the fast estimated execution time of the command. This estimated execution time is calculated by the calculation represented by the following equation (1).

Figure 0006969656
Figure 0006969656

上記数1式において、「Ti 」は、#iのサーバ103(1≦i≦N)のSCM I/Oキューに蓄積されているコマンドの推定実行時間である。SCM I/Oキューとは、サーバ103内に実装され、SCM SSD102に対して発行されるコマンド(読出しコマンド、書込みコマンド等)を、それらの実行を待ち合わせるために先入れ先出しのリスト構造で保持するバッファメモリである。「M」は、SCM I/Oキューに蓄積されているコマンド数である。「Tcj」は、SCM I/Oキューに蓄積されているj番目のコマンドのコマンド処理時間である。「Tdj」は、SCM I/Oキューに蓄積されているj番目のコマンドのデータ転送時間である。 In the above equation (1), “T i ” is the estimated execution time of the command stored in the SCM I / O queue of the server 103 (1 ≦ i ≦ N) of #i. The SCM I / O queue is a buffer memory that is implemented in the server 103 and holds commands (read commands, write commands, etc.) issued to the SCM SSD 102 in a first-in, first-out list structure to wait for their execution. Is. "M" is the number of commands stored in the SCM I / O queue. “T cj ” is the command processing time of the jth command stored in the SCM I / O queue. "T dj " is the data transfer time of the jth command stored in the SCM I / O queue.

図3(b)は、1つのサーバ103において、SCM I/Oキューにキューイングされているコマンドと推定実行時間Ti との関係を示す説明図である。例えば「Read 8KB」、「Read 16KB」、及び「Read 64B」はそれぞれ、8KB(8キロバイト)、16KB、及び64B(64バイト)のデータを読み出すリード命令である。また、「Write 16KB」は、16KBのデータを書き込むライト命令である。SCM I/Oキューにキューイングされているこれらのコマンド毎に、コマンド処理時間Tcjとコマンド転送時間Tdjとが、図3(b)の右図に示されるように累算されることにより、1つのサーバ103における推定実行時間Ti が算出される。 FIG. 3 (b), in one server 103 is an explanatory diagram showing the relationship between the SCM I / O queue a command queued estimated execution time T i. For example, "Read 8KB", "Read 16KB", and "Read 64B" are read instructions for reading 8KB (8 kilobytes), 16KB, and 64B (64 bytes) of data, respectively. Further, "Write 16KB" is a write instruction for writing 16KB of data. For each of these commands queued in the SCM I / O queue, the command processing time T cj and the command transfer time T dj are accumulated as shown in the right figure of FIG. 3 (b). , the estimated execution time T i in one server 103 is calculated.

マスタサーバ301は、#1から#Nの各サーバ103の推定実行時間Ti を合計した結果に基づいてSCM SSD102の負荷状態を判定し、負荷状態の大小が変化した場合に、その負荷状態を#1から#Nの各サーバ103にプッシュ通知する。この場合に、マスタサーバ301は、推定実行時間Ti の合計値が所定の閾値より小さければ負荷状態=負荷小、大きければ負荷状態=負荷大と判定する。この閾値は、システム要件(許容最大遅延時間)により決定され、例えば100μsである。 The master server 301 determines the load state of the SCM SSD 102 based on the result of the sum of the estimated execution time T i of each server 103 of #N from # 1, if the magnitude of the load condition has changed, the load state Push notification is sent to each server 103 from # 1 to # N. In this case determines the master server 301, the total value is smaller when the load state = load small than a predetermined threshold value of the estimated execution time T i, the larger if load status = load size. This threshold is determined by the system requirement (maximum allowable delay time) and is, for example, 100 μs.

図4は、図3(a)の構成を有する第1の実施形態におけるデータ読出し時の制御動作の説明図である。 FIG. 4 is an explanatory diagram of a control operation at the time of data reading in the first embodiment having the configuration of FIG. 3A.

まず、図4(a)に示されるように、例えばサーバ103(#1)が、SCM SSD102のデータを読み出したとする(図4(a)のSTEP1)。このとき、サーバ103(#1)は、マスタサーバ301からのプッシュ通知により、SCM SSD102の負荷状態の判定結果を参照する。サーバ103(#1)は、SCM SSD102の負荷状態が所定の閾値に比較して高い場合、SCM SSD102から読み出したデータをNAND SSD101に移動して書き込む(図4(a)のSTEP2)。この場合、サーバ103(#1)は、SCM SSD102上にあった上記読み出したデータを削除(無効化)する。 First, as shown in FIG. 4A, it is assumed that, for example, the server 103 (# 1) reads the data of the SCM SSD 102 (STEP 1 in FIG. 4A). At this time, the server 103 (# 1) refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. When the load state of the SCM SSD 102 is higher than the predetermined threshold value, the server 103 (# 1) moves the data read from the SCM SSD 102 to the NAND SSD 101 and writes it (STEP 2 in FIG. 4A). In this case, the server 103 (# 1) deletes (invalidates) the read data on the SCM SSD 102.

一方、図4(b)に示されるように、例えばサーバ103(#1)が、NAND SSD101のデータを読み出したとする(図4(b)のSTEP1)。このときも、サーバ103(#1)は、マスタサーバ301からのプッシュ通知により、SCM SSD102の負荷状態の判定結果を参照する。サーバ103(#1)は、SCM SSD102の負荷状態が所定の閾値に比較して低い場合には、NAND SSD101から読み出したデータをSCM SSD102に移動して書き込む(図4(b)のSTEP2)。この場合、サーバ103(#1)は、NAND SSD101上にあった上記読み出したデータを削除(無効化)する。 On the other hand, as shown in FIG. 4 (b), for example, it is assumed that the server 103 (# 1) reads the data of the NAND SSD 101 (STEP 1 in FIG. 4 (b)). Also at this time, the server 103 (# 1) refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. When the load state of the SCM SSD 102 is lower than the predetermined threshold value, the server 103 (# 1) moves the data read from the NAND SSD 101 to the SCM SSD 102 and writes the data (STEP 2 in FIG. 4 (b)). In this case, the server 103 (# 1) deletes (invalidates) the read data on the NAND SSD 101.

図5(a)は、図3(a)の構成を有する第1の実施形態におけるデータ書込時の第1の制御動作の説明図である。例えばサーバ103(#1)は、マスタサーバ301からのプッシュ通知により、SCM SSD102の負荷状態の判定結果を参照する。サーバ103(#1)は、SCM SSD102の負荷状態が所定の閾値に比較して低い場合、データをSCM SSD102に書き込む(図5(a)のSTEP1)。一方、サーバ103(#1)は、SCM SSD102の負荷状態が所定の閾値に比較して高いと判定した場合、データをNAND SSD101に書き込む(図5(a)のSTEP2)。 FIG. 5A is an explanatory diagram of a first control operation at the time of data writing in the first embodiment having the configuration of FIG. 3A. For example, the server 103 (# 1) refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. When the load state of the SCM SSD 102 is lower than the predetermined threshold value, the server 103 (# 1) writes the data to the SCM SSD 102 (STEP 1 in FIG. 5A). On the other hand, when the server 103 (# 1) determines that the load state of the SCM SSD 102 is higher than the predetermined threshold value, the server 103 (# 1) writes the data to the NAND SSD 101 (STEP 2 in FIG. 5A).

図5(b)は、図3(a)の構成を有する第1の実施形態におけるデータ書込時の第2の制御動作の説明図である。例えばサーバ103(#1)は、書き込むべきデータのサイズが所定の閾値に比較して大きい場合には、データをNAND SSD101に書き込む(図5(b)のSTEP1)。一方、サーバ103(#1)は、書き込むべきデータのサイズが所定の閾値に比較して小さい場合には、マスタサーバ301からのプッシュ通知により、SCM SSD102の負荷状態の判定結果を参照する。サーバ103(#1)は、書き込むべきデータのサイズが小さく、かつSCM SSD102の負荷状態が所定の閾値に比較して低い場合には、データをSCM SSD102に書き込む(図5(b)のSTEP2)。サーバ103(#1)は、書き込むべきデータのサイズが小さく、かつSCM SSD102の負荷状態が所定の閾値に比較して高いと判定した場合には、データをNAND SSD101に書き込む(図5(b)のSTEP3)。 FIG. 5B is an explanatory diagram of a second control operation at the time of data writing in the first embodiment having the configuration of FIG. 3A. For example, when the size of the data to be written is larger than the predetermined threshold value, the server 103 (# 1) writes the data to the NAND SSD 101 (STEP 1 in FIG. 5B). On the other hand, when the size of the data to be written is smaller than the predetermined threshold value, the server 103 (# 1) refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. When the size of the data to be written is small and the load state of the SCM SSD 102 is lower than the predetermined threshold value, the server 103 (# 1) writes the data to the SCM SSD 102 (STEP 2 in FIG. 5 (b)). .. When the server 103 (# 1) determines that the size of the data to be written is small and the load state of the SCM SSD 102 is high compared to a predetermined threshold value, the server 103 (# 1) writes the data to the NAND SSD 101 (FIG. 5 (b)). STEP3).

図2で前述したように、アクセス頻度が低いデータをSCM SSD102からNAND SSD101に移動させる一般的な制御方式では、SCM SSD102にアクセスが集中した場合に、SCM SSD102の性能低下を防止できない。 As described above in FIG. 2, a general control method for moving infrequently accessed data from the SCM SSD 102 to the NAND SSD 101 cannot prevent the performance of the SCM SSD 102 from deteriorating when the access is concentrated on the SCM SSD 102.

これに対して、図3から図5により説明した第1の実施形態では、SCM SSD102の負荷状態が判定される。そして、SCM SSD102に対して過度に集中しているデータが、集中していないNAND SSD101の方に移動させられる。このように、アクセス速度が遅いNAND SSD101の方にあえて負荷を分散させることで、NAND SSD101とSCM SSD102を合わせた平均のアクセス速度を上げることができるようになる。これにより、アクセス速度が速いSCM SSD102の方に負荷が集中しすぎてその性能が発揮できなくなるという状況を回避することが可能となる。 On the other hand, in the first embodiment described with reference to FIGS. 3 to 5, the load state of the SCM SSD 102 is determined. Then, the data that is excessively concentrated on the SCM SSD 102 is moved toward the NAND SSD 101 that is not concentrated. In this way, by distributing the load to the NAND SSD 101, which has a slower access speed, the average access speed of the NAND SSD 101 and the SCM SSD 102 can be increased. This makes it possible to avoid a situation in which the load is too concentrated on the SCM SSD 102, which has a high access speed, and its performance cannot be exhibited.

例えば図2(b)の例では、SCM SSD102に10個のリクエストが集中してレイテンシが100μsかかっていたところを、アクセスをNAND SSD101に分散させることにより、両者を併せたレイテンシを60μsにすることが可能となる。 For example, in the example of FIG. 2B, where 10 requests are concentrated on the SCM SSD 102 and the latency is 100 μs, the access is distributed to the NAND SSD 101 to reduce the combined latency to 60 μs. Is possible.

このように、第1の実施形態では、SCM SSD102へのリクエスト中のリクエストに関する情報に基づいてSCM SSD102の負荷状態を判定することにより、ストレージシステムに搭載されたSCM SSD102の高速性を活かすことが可能となる。 As described above, in the first embodiment, the high speed of the SCM SSD 102 mounted on the storage system can be utilized by determining the load state of the SCM SSD 102 based on the information regarding the request in the request to the SCM SSD 102. It will be possible.

また、第1の実施形態では、マスタサーバ301が、#1から#Nの各サーバ103におけるSCM SSD102に対する負荷情報を受け取る。そして、マスタサーバ301が、SCM SSD102に対する全体の負荷状態を判定し、その判定結果を各サーバ103にプッシュ通知する。これにより、NAND SSD101とSCM SSD102とからなるストレージシステムに対する効率的なアクセス制御が可能となる。 Further, in the first embodiment, the master server 301 receives the load information for the SCM SSD 102 in each of the servers 103 from # 1 to # N. Then, the master server 301 determines the overall load state for the SCM SSD 102, and push-notifies the determination result to each server 103. This enables efficient access control to the storage system including the NAND SSD 101 and the SCM SSD 102.

図6は、第2の実施形態の制御動作の説明図である。第2の実施形態の構成は、第1の実施形態に係る図3(a)の構成と同様であり、図1の構成例に加えて、NAND SSD101及びSCM SSD102にアクセスする#1から#Nのサーバ103とは異なるマスタサーバ301を具備する。第1の実施形態の場合と同様に、マスタサーバ301は、#1から#Nの各サーバ103の推定実行時間Ti を合計した結果に基づいてSCM SSD102の負荷状態を判定する(前述した数1式参照)。そして、マスタサーバ301は、負荷状態の大小が変化した場合に、その負荷状態を#1から#Nの各サーバ103にプッシュ通知する。各サーバ103は、データの書込み時には、NAND SSD101にデータを書き込むが、SCM SSD102の負荷状態に応じてSCM SSD102にコピーを作成する。各サーバ103は、データの読出し時には、SCM SSD102及びNAND SSD101から同時にデータを読み出し、又はSCM SSD102の負荷状態に応じてどちらか一方のデータを選択する。 FIG. 6 is an explanatory diagram of the control operation of the second embodiment. The configuration of the second embodiment is the same as the configuration of FIG. 3A according to the first embodiment, and in addition to the configuration example of FIG. 1, # 1 to # N accessing the NAND SSD 101 and the SCM SSD 102. A master server 301 different from the server 103 of the above is provided. As in the first embodiment, the number master server 301, where the load state of the SCM SSD 102 determines (described above on the basis of the result of the sum of the estimated execution time T i of each server 103 of #N from # 1 See formula 1). Then, when the magnitude of the load state changes, the master server 301 pushes the load state to each server 103 from # 1 to # N. Each server 103 writes data to the NAND SSD 101 when writing the data, but makes a copy to the SCM SSD 102 according to the load state of the SCM SSD 102. At the time of reading the data, each server 103 reads the data from the SCM SSD 102 and the NAND SSD 101 at the same time, or selects one of the data according to the load state of the SCM SSD 102.

第2の実施形態におけるデータ書込み時の具体的な制御動作について以下に説明する。サーバ103は、マスタサーバ301からのプッシュ通知によりSCM SSD102の負荷状態の判定結果を参照する。サーバ103は、SCM SSD102の負荷が所定の閾値に比較して低い場合に、NAND SSD101及びSCM SSD102の両方に同一のデータを書き込む。なお、データは、いったんSCM SSD102に書き込まれてから、NAND SSD101に転送されてもよい。一方、サーバ103は、SCM SSD102の負荷が所定の閾値に比較して高い場合に、NAND SSD101のみにデータを書き込む。 The specific control operation at the time of data writing in the second embodiment will be described below. The server 103 refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. The server 103 writes the same data to both the NAND SSD 101 and the SCM SSD 102 when the load on the SCM SSD 102 is lower than a predetermined threshold. The data may be once written in the SCM SSD 102 and then transferred to the NAND SSD 101. On the other hand, when the load of the SCM SSD 102 is higher than the predetermined threshold value, the server 103 writes data only to the NAND SSD 101.

次に、第2の実施形態において、読み出すべきデータがNAND SSD101及びSCM SSD102の両方に記憶されている場合の、データ読出し時の具体的な第1の制御動作について以下に説明する。サーバ103は、マスタサーバ301からのプッシュ通知によりSCM SSD102の負荷状態の判定結果を参照する。サーバ103は、SCM SSD102の負荷が所定の閾値に比較して低い場合に、SCM SSD102からデータを読み出す。一方、サーバ103は、SCM SSD102の負荷が所定の閾値に比較して高い場合に、NAND SSD101からデータを読み出す。 Next, in the second embodiment, when the data to be read is stored in both the NAND SSD 101 and the SCM SSD 102, a specific first control operation at the time of data reading will be described below. The server 103 refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. The server 103 reads data from the SCM SSD 102 when the load on the SCM SSD 102 is lower than a predetermined threshold. On the other hand, the server 103 reads data from the NAND SSD 101 when the load of the SCM SSD 102 is higher than the predetermined threshold value.

続いて、第2の実施形態において、読み出すべきデータがNAND SSD101及びSCM SSD102の両方に記憶されている場合の、データ読出し時の具体的な第2の制御動作について以下に説明する。サーバ103は、NAND SSD101及びSCM SSD102の両方から同じデータを読み出して、速く読み出されたほうのデータを採用する。サーバ103は、NAND SSD101からのデータの読出しのほうが速かった場合には、SCM SSD102に記憶されている上記データを削除する。 Subsequently, in the second embodiment, when the data to be read is stored in both the NAND SSD 101 and the SCM SSD 102, a specific second control operation at the time of data reading will be described below. The server 103 reads the same data from both the NAND SSD 101 and the SCM SSD 102, and adopts the faster read data. When the reading of the data from the NAND SSD 101 is faster, the server 103 deletes the data stored in the SCM SSD 102.

更に、第2の実施形態において、読み出すべきデータがNAND SSD101のみに記憶されている場合の、データ読出し時の制御動作について以下に説明する。サーバ103は、マスタサーバ301からのプッシュ通知によりSCM SSD102の負荷状態の判定結果を参照する。サーバ103は、SCM SSD102の負荷が所定の閾値に比較して低い場合に、データをNAND SSD101から読み出した後に、その読み出したデータをSCM SSD102にコピーする。 Further, in the second embodiment, the control operation at the time of data reading when the data to be read is stored only in the NAND SSD 101 will be described below. The server 103 refers to the determination result of the load state of the SCM SSD 102 by the push notification from the master server 301. When the load of the SCM SSD 102 is lower than the predetermined threshold value, the server 103 reads the data from the NAND SSD 101 and then copies the read data to the SCM SSD 102.

以上の図6により説明した第2の実施形態では、第1の実施形態と同様に判定されたSCM SSD102の負荷状態に基づいて、NAND SSD101とSCM SSD102の両方又はNAND SSD101のみに対して、データの書込みが行われる。また、データの読出し時には、読出しが速い方のデータが採用される。更に、SCM SSD102の負荷が下がったら、SCM SSD102にもデータがコピーされる。このような制御動作により、第1の実施形態と同様に、アクセス速度が速いSCM SSD102の方に負荷が集中しすぎてその性能が発揮できなくなるという状況を回避することが可能となる。 In the second embodiment described with reference to FIG. 6 above, data is obtained for both the NAND SSD 101 and the SCM SSD 102 or only the NAND SSD 101 based on the load state of the SCM SSD 102 determined in the same manner as in the first embodiment. Is written. Further, when reading the data, the data having the faster reading is adopted. Further, when the load of the SCM SSD 102 is reduced, the data is also copied to the SCM SSD 102. By such a control operation, it is possible to avoid a situation in which the load is too concentrated on the SCM SSD 102 having a high access speed and its performance cannot be exhibited, as in the first embodiment.

図7は、第3の実施形態の制御動作の説明図である。第3の実施形態の構成は、第1又は第2の実施形態に係る図3(a)又は図6の構成とは異なり、マスタサーバ301は用意されない。そして、図7の701(#1)から701(#N)として示されるように、#1から#Nの各サーバ103が個別に、SCM SSD102に関する負荷情報を収集し、自装置でSCM SSD102の負荷状態を判定する。SCM SSD102の負荷状態の判定結果に基づく制御動作としては、第1の実施形態で説明した制御動作、又は第2の実施形態で説明した制御動作を採用することができる。 FIG. 7 is an explanatory diagram of the control operation of the third embodiment. The configuration of the third embodiment is different from the configuration of FIG. 3A or FIG. 6 according to the first or second embodiment, and the master server 301 is not prepared. Then, as shown as 701 (# 1) to 701 (# N) in FIG. 7, each server 103 of # 1 to # N individually collects load information regarding the SCM SSD 102, and the SCM SSD 102 is its own device. Determine the load status. As the control operation based on the determination result of the load state of the SCM SSD 102, the control operation described in the first embodiment or the control operation described in the second embodiment can be adopted.

図8は、第4の実施形態の制御動作の説明図である。第4の実施形態の構成は、第3の実施形態の場合と同様に、マスタサーバ301は用意されない。そして、図8の802として示されるサーバ間通信により、図8の801(#1)から801(#N)として示されるように、#1から#Nの各サーバ103が、SCM SSD102に関する負荷情報を共有する。そして、#1から#Nの各サーバ103が、上記共有した負荷情報801に基づいて、自装置でSCM SSD102の負荷状態を判定する。SCM SSD102の負荷状態の判定結果に基づく制御動作としては、第1の実施形態で説明した制御動作、又は第2の実施形態で説明した制御動作を採用することができる。 FIG. 8 is an explanatory diagram of the control operation of the fourth embodiment. As in the case of the third embodiment, the master server 301 is not prepared for the configuration of the fourth embodiment. Then, by the inter-server communication shown as 802 in FIG. 8, each server 103 from # 1 to # N has load information regarding the SCM SSD 102 as shown as 801 (# 1) to 801 (# N) in FIG. Share. Then, each of the servers 103 from # 1 to # N determines the load state of the SCM SSD 102 by its own device based on the shared load information 801. As the control operation based on the determination result of the load state of the SCM SSD 102, the control operation described in the first embodiment or the control operation described in the second embodiment can be adopted.

図9は、図3(a)の第1及び第2の実施形態の構成に対応するシステム構成例を示す図である。図9において、NAND SSD101、SCM SSD102、#1から#Nのサーバ103、Pcie switch104、及びマスタサーバ301はそれぞれ、図3(a)の場合の同じ参照番号を有する各部分に対応する。 FIG. 9 is a diagram showing a system configuration example corresponding to the configurations of the first and second embodiments of FIG. 3A. In FIG. 9, the NAND SSD 101, SCM SSD 102, # 1 to # N server 103, PCIe switch 104, and master server 301 each correspond to each portion having the same reference number in FIG. 3 (a).

マスタサーバ301は、負荷状態保持部901、負荷状態判定部902、負荷情報受信部903、及び負荷状態通知部904を有する。 The master server 301 has a load state holding unit 901, a load state determination unit 902, a load information receiving unit 903, and a load state notification unit 904.

負荷状態保持部901は、SCM SSD102の負荷状態に関する情報を保持する。負荷状態判定部902は、#1から#Nの各サーバ103から負荷情報受信部903を介してSCM SSD102の負荷情報を受信し、負荷判定を行い、判定結果が変化した場合に、負荷状態を負荷状態通知部904を介して各サーバ103に通知する。 The load state holding unit 901 holds information regarding the load state of the SCM SSD 102. The load state determination unit 902 receives the load information of the SCM SSD 102 from each of the servers 103 from # 1 to #N via the load information receiving unit 903, makes a load determination, and determines the load state when the determination result changes. Notify each server 103 via the load status notification unit 904.

負荷情報受信部903は、#1から#Nの各サーバ103からSCM SSD102の負荷情報を受信し、負荷状態判定部902に引き渡す。 The load information receiving unit 903 receives the load information of the SCM SSD 102 from each server 103 of # 1 to # N and hands it over to the load state determination unit 902.

負荷状態通知部904は、負荷状態判定部902からの指示により、#1から#Nの各サーバ103に、負荷状態をプッシュ通知する。 The load status notification unit 904 pushes the load status to each server 103 from # 1 to # N according to the instruction from the load status determination unit 902.

次に、#1から#Nのサーバ103は、アプリケーション実行部910、アクセス制御部911、NAND I/Oキュー912、SCM I/Oキュー913、Pcie I/F914、負荷情報通知部915、及び負荷状態受信部916を具備する。 Next, the servers 103 from # 1 to # N are the application execution unit 910, the access control unit 911, the NAND I / O queue 912, the SCM I / O queue 913, the PCIe I / F914, the load information notification unit 915, and the load. A state receiving unit 916 is provided.

アプリケーション実行部910は、NAND SSD101及びSCM SSD102へのアクセスを伴う処理を実行する。第1の実施形態の場合において、アクセス制御部911は、負荷状態受信部916を介してマスタサーバ301から受信したSCM SSD102の負荷状態に基づいて、データ書込み先の決定と、データの移動を行う。また、アクセス制御部911は、SCM I/Oキュー913の状態が変化したときに、前述の数1式で示される演算に基づいて推定実行時間を算出し、負荷情報通知部915を介してマスタサーバ301に、その推定実行時間を負荷情報として通知する。第2の実施形態におけるアクセス制御部911の動作については、後述する。 The application execution unit 910 executes a process involving access to the NAND SSD 101 and the SCM SSD 102. In the case of the first embodiment, the access control unit 911 determines the data writing destination and moves the data based on the load state of the SCM SSD 102 received from the master server 301 via the load state receiving unit 916. .. Further, the access control unit 911 calculates the estimated execution time based on the calculation represented by the above equation 1 when the state of the SCM I / O queue 913 changes, and the master is via the load information notification unit 915. Notify the server 301 of the estimated execution time as load information. The operation of the access control unit 911 in the second embodiment will be described later.

NAND I/Oキュー912は、NAND SSD101に対して発行されるコマンド(読出しコマンド、書込みコマンド等)を、それらの実行を待ち合わせるために先入れ先出しのリスト構造で保持するバッファである。 The NAND I / O queue 912 is a buffer that holds commands (read commands, write commands, etc.) issued to the NAND SSD 101 in a first-in, first-out list structure in order to wait for their execution.

SCM I/Oキュー913も同様に、前述したように、SCM SSD102に対して発行されるコマンドを、それらの実行を待ち合わせるために先入れ先出しのリスト構造で保持するバッファである。 Similarly, the SCM I / O queue 913 is a buffer that holds commands issued to the SCM SSD 102 in a first-in first-out list structure in order to wait for their execution, as described above.

負荷状態受信部916は、マスタサーバ301内の負荷状態通知部904から、SCM SSD102の負荷状態を受信し、保持する。 The load state receiving unit 916 receives and holds the load state of the SCM SSD 102 from the load state notification unit 904 in the master server 301.

負荷情報通知部915は、アクセス制御部911から取得したSCM SSD102の負荷情報を、マスタサーバ301内の負荷情報受信部903に通知する。 The load information notification unit 915 notifies the load information receiving unit 903 in the master server 301 of the load information of the SCM SSD 102 acquired from the access control unit 911.

Pcie I/F914は、NAND I/Oキュー912から発行されるコマンドデータを、Pcie switch104を介してNAND SSD101に転送するための、PCI Expressシリアルインタフェース回路である。 The PCIe I / F 914 is a PCI Express serial interface circuit for transferring command data issued from the NAND I / O queue 912 to the NAND SSD 101 via the PCIe switch 104.

図10は、図9の負荷状態保持部901が保持する負荷状態に関する情報のデータ構成例を示す図である。負荷状態保持部901は、#1から#Nのサーバ103が数1式で示される演算で算出し通知してきた負荷情報である推定時間Ti (1≦i≦N)と、それらの合計値(負荷情報合計値)を保持する。そして、負荷状態保持部901は、負荷状態判定部902が上記負荷情報合計値をシステム要件(許容最大遅延時間)により決定される閾値(例えば100μs)と比較した結果(大、等しい、小)を、負荷状態として保持する。負荷状態判定部902は、判定タイミング毎に、この負荷状態の値が変化したか否かを監視し、発生した変化を新たな負荷状態として、負荷状態通知部904を介して#1から#Nの各サーバ103内の負荷状態受信部916にプッシュ通知する。 FIG. 10 is a diagram showing an example of data configuration of information regarding a load state held by the load state holding unit 901 of FIG. 9. Load condition holding unit 901, # 1 from then calculated at the server 103 of #N is represented by equation (1) notified a load information has been estimated time T i (1 ≦ i ≦ N ), their sum Holds (total load information value). Then, the load state holding unit 901 compares the total load information value with the threshold value (for example, 100 μs) determined by the system requirement (allowable maximum delay time) by the load state determination unit 902 (large, equal, small). , Hold as load state. The load state determination unit 902 monitors whether or not the value of this load state has changed at each determination timing, and sets the generated change as a new load state from # 1 to # N via the load state notification unit 904. Push notification is sent to the load status receiving unit 916 in each server 103 of the above.

図11は、図9に例示される第1の実施形態のシステム構成例における図9のマスタサーバ301の制御処理例を示すフローチャートである。 FIG. 11 is a flowchart showing an example of control processing of the master server 301 of FIG. 9 in the system configuration example of the first embodiment illustrated in FIG.

マスタサーバ301内の負荷情報受信部903が、任意のサーバiから負荷情報である推定時間Ti を受信するまで待機する(ステップS1101の判定がNOの繰返し)。 Load information receiving unit 903 in the master server 301 waits until it receives the estimated time T i is the load information from any server i (repetition of the determination in step S1101 is NO).

負荷情報受信部903は、上記負荷情報を受信すると(ステップS1101の判定がYESになると)、受信したサーバiの負荷情報である推定時間Ti を、負荷状態保持部901に図10に例示されるデータ形式で格納する(ステップS1102)。 Load information receiving unit 903 receives the load information (the determination in step S1101 is YES), the estimated time T i is the load information of the server i received is illustrated in Figure 10 to the load state holding section 901 It is stored in the data format (step S1102).

次に、マスタサーバ301内の負荷状態判定部902は、負荷状態保持部901内の負荷情報合計値(図10参照)を再計算し、閾値と大小比較を行い、その判定結果を新たな負荷状態とする(ステップS1103)。 Next, the load state determination unit 902 in the master server 301 recalculates the total load information value (see FIG. 10) in the load state holding unit 901, compares the magnitude with the threshold value, and uses the determination result as a new load. The state is set (step S1103).

負荷状態判定部902は、ステップS1103で再計算した新たな負荷状態が判定前の負荷状態から変化したか否かを判定する(ステップS1104)。 The load state determination unit 902 determines whether or not the new load state recalculated in step S1103 has changed from the load state before the determination (step S1104).

ステップS1104の判定がYESならば、負荷状態判定部902は、負荷状態保持部901にステップS1103で新たに取得した負荷状態を図10に例示されるデータ形式で格納する。そして、負荷状態判定部902は、SCM SSD102に関する上記負荷状態を、図9の負荷状態通知部904を介して#1から#Nの各サーバ103内の負荷状態受信部916に通知する(ステップS1105)。 If the determination in step S1104 is YES, the load state determination unit 902 stores the load state newly acquired in step S1103 in the load state holding unit 901 in the data format exemplified in FIG. Then, the load state determination unit 902 notifies the load state reception unit 916 in each server 103 from # 1 to #N via the load state notification unit 904 of FIG. 9 of the load state regarding the SCM SSD 102 (step S1105). ).

ステップS1104の判定がNOならば、負荷状態判定部902は、ステップS1105の処理はスキップする。 If the determination in step S1104 is NO, the load state determination unit 902 skips the process in step S1105.

その後、マスタサーバ301の制御が、ステップS1101の負荷情報受信部903の待機処理に戻る。 After that, the control of the master server 301 returns to the standby process of the load information receiving unit 903 in step S1101.

図12は、図9に例示される第1の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の制御処理例を示すフローチャートである。この制御処理例は、図4で説明した第1の実施形態におけるデータ読出し時の制御動作に対応する。 FIG. 12 is a flowchart showing an example of control processing at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the first embodiment exemplified in FIG. This control processing example corresponds to the control operation at the time of data reading in the first embodiment described with reference to FIG.

まず、アクセス制御部911は、図9のアプリケーション実行部910から要求された読出しデータ(読み出されるべきデータ)が、SCM SSD102にあるか否かを判定する(ステップS1201)。ここで、アクセス制御部911は、読み出すべき各データがNAND SSD101に記憶されているかSCM SSD102に記憶されているかを管理できているものとする。 First, the access control unit 911 determines whether or not the read data (data to be read) requested from the application execution unit 910 of FIG. 9 is in the SCM SSD 102 (step S1201). Here, it is assumed that the access control unit 911 can manage whether each data to be read is stored in the NAND SSD 101 or the SCM SSD 102.

読出しデータがSCM SSD102にあると判定した(ステップS1201の判定がYESである)場合、アクセス制御部911は、SCM I/Oキュー913に、Readリクエスト(読出し要求)を発行する。続いて、アクセス制御部911は、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti (サーバ103の番号を#iとする)を算出する。そして、アクセス制御部911は、算出した負荷情報を、自装置内の負荷情報通知部915を介してマスタサーバ301内の負荷情報受信部903に通知する(以上、ステップS1202)。 When it is determined that the read data is in the SCM SSD 102 (the determination in step S1201 is YES), the access control unit 911 issues a Read request (read request) to the SCM I / O queue 913. Subsequently, the access control unit 911 calculates the SCM I / O by the operation from the state of the equation (1) described above for the queue 913 is the load information estimated time T i (the number of the server 103 and #i). Then, the access control unit 911 notifies the load information receiving unit 903 in the master server 301 via the load information notification unit 915 in the own device (the above is step S1202).

次に、アクセス制御部911は、SCM SSD102から読出しデータを読み出す(ステップS1203)。 Next, the access control unit 911 reads the read data from the SCM SSD 102 (step S1203).

次に、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している(プッシュ通知されている)負荷状態に基づいて、SCM SSD102が高負荷状態にあるか否かを判定する(ステップS1204)。 Next, the access control unit 911 determines whether or not the SCM SSD 102 is in the high load state based on the load state received (push notification) from the master server 301 via the load state receiving unit 916. Determination (step S1204).

SCM SSD102が高負荷状態にあると判定した(ステップS1204の判定がYESである)場合には、アクセス制御部911は、次の動作を実行する。アクセス制御部911は、NAND I/Oキュー912にWriteリクエスト(書込み要求)を発行することにより、ステップS1203でSCM SSD102から読み出したデータをNAND SSD101に書き込む。また、アクセス制御部911は、SCM SSD102に記憶されている上記読み出したデータは、削除(無効化)する(以上、ステップS1205)。 When it is determined that the SCM SSD 102 is in the high load state (the determination in step S1204 is YES), the access control unit 911 executes the next operation. The access control unit 911 writes the data read from the SCM SSD 102 in step S1203 to the NAND SSD 101 by issuing a Write request (write request) to the NAND I / O queue 912. Further, the access control unit 911 deletes (invalidates) the read data stored in the SCM SSD 102 (above, step S1205).

SCM SSD102が低負荷状態にあると判定した(ステップS1204の判定がNOである)場合には、アクセス制御部911は、ステップS1205の処理はスキップする。 When it is determined that the SCM SSD 102 is in the low load state (the determination in step S1204 is NO), the access control unit 911 skips the process of step S1205.

その後、アクセス制御部911は、図12のフローチャートで例示される今回のデータ読出しの制御処理を終了する。 After that, the access control unit 911 ends the current data read control process exemplified by the flowchart of FIG.

以上のステップS1202からS1205の一連の処理は、図4(a)で説明した動作に対応する。 The series of processes from steps S1202 to S1205 described above correspond to the operation described with reference to FIG. 4 (a).

一方、読出しデータがNAND SSD101にあると判定した(ステップS1201の判定がNOである)場合、アクセス制御部911は、NAND I/Oキュー912に、Readリクエストを発行する(ステップS1206)。 On the other hand, when it is determined that the read data is in the NAND SSD 101 (the determination in step S1201 is NO), the access control unit 911 issues a Read request to the NAND I / O queue 912 (step S1206).

次に、アクセス制御部911は、NAND SSD101から読出しデータを読み出す(ステップS1207)。 Next, the access control unit 911 reads the read data from the NAND SSD 101 (step S1207).

次に、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態に基づいて、SCM SSD102が高負荷状態にあるか否かを判定する(ステップS1208)。 Next, the access control unit 911 determines whether or not the SCM SSD 102 is in the high load state based on the load state received from the master server 301 via the load state receiving unit 916 (step S1208).

SCM SSD102が低負荷状態にあると判定した(ステップS1208の判定がNOである)場合には、アクセス制御部911は、SCM I/Oキュー913にWriteリクエストを発行することにより、ステップS1207でNAND SSD101から読み出したデータをSCM SSD102に書き込む。また、アクセス制御部911は、NAND SSD101に記憶されている上記読み出したデータは、削除(無効化)する(以上、ステップS1209)。 When it is determined that the SCM SSD 102 is in the low load state (the determination in step S1208 is NO), the access control unit 911 issues a Write request to the SCM I / O queue 913, thereby performing NAND in step S1207. The data read from SSD 101 is written to SCM SSD 102. Further, the access control unit 911 deletes (invalidates) the read data stored in the NAND SSD 101 (above, step S1209).

SCM SSD102が高負荷状態にあると判定した(ステップS1208の判定がYESである)場合には、アクセス制御部911は、ステップS1209の処理はスキップする。 When it is determined that the SCM SSD 102 is in the high load state (the determination in step S1208 is YES), the access control unit 911 skips the process in step S1209.

その後、アクセス制御部911は、図12のフローチャートで例示される今回のデータ読出しの制御処理を終了する。 After that, the access control unit 911 ends the current data read control process exemplified by the flowchart of FIG.

以上のステップS1206からS1209の一連の処理は、図4(b)で説明した動作に対応する。 The series of processes from steps S1206 to S1209 described above correspond to the operation described with reference to FIG. 4 (b).

図13は、図9に例示される第1の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ書込み時の第1の制御処理例を示すフローチャートである。この制御処理例は、図5(a)で説明した第1の実施形態におけるデータ書込み時の第1の制御動作に対応する。 FIG. 13 is a flowchart showing a first control processing example at the time of data writing by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the first embodiment exemplified in FIG. be. This control processing example corresponds to the first control operation at the time of data writing in the first embodiment described with reference to FIG. 5A.

まず、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態に基づいて、SCM SSD102が高負荷状態にあるか否かを判定する(ステップS1301)。 First, the access control unit 911 determines whether or not the SCM SSD 102 is in the high load state based on the load state received from the master server 301 via the load state receiving unit 916 (step S1301).

SCM SSD102が低負荷状態にあると判定した(ステップS1301の判定がNOである)場合には、アクセス制御部911は、SCM I/Oキュー913にWriteリクエストを発行する。続いて、アクセス制御部911は、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。そして、アクセス制御部911は、算出した負荷情報を、自装置内の負荷情報通知部915を介してマスタサーバ301内の負荷情報受信部903に通知する(以上、ステップS1302)。 When it is determined that the SCM SSD 102 is in the low load state (the determination in step S1301 is NO), the access control unit 911 issues a Write request to the SCM I / O queue 913. Subsequently, the access control unit 911 calculates the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. Then, the access control unit 911 notifies the load information receiving unit 903 in the master server 301 via the load information notification unit 915 in the own device (the above is step S1302).

アクセス制御部911は、SCM SSD102に、図9のアプリケーション実行部910から引き渡されたデータを書き込む(ステップS1303)。その後、アクセス制御部911は、図13のフローチャートで例示される今回のデータ書込みの制御処理を終了する。 The access control unit 911 writes the data handed over from the application execution unit 910 of FIG. 9 to the SCM SSD 102 (step S1303). After that, the access control unit 911 ends the current data writing control process exemplified by the flowchart of FIG.

SCM SSD102が高負荷状態にあると判定した(ステップS1301の判定がYESである)場合には、アクセス制御部911は、NAND I/Oキュー912にWriteリクエストを発行する(ステップS1304)。 When it is determined that the SCM SSD 102 is in a high load state (the determination in step S1301 is YES), the access control unit 911 issues a Write request to the NAND I / O queue 912 (step S1304).

続いて、アクセス制御部911は、NAND SSD101にデータを書き込む(ステップS1305)。その後、アクセス制御部911は、図13のフローチャートで例示される今回のデータ書込みの制御処理を終了する。 Subsequently, the access control unit 911 writes data to the NAND SSD 101 (step S1305). After that, the access control unit 911 ends the current data writing control process exemplified by the flowchart of FIG.

図14は、図9に例示される第1の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ書込み時の第2の制御処理例を示すフローチャートである。この制御処理例は、図5(b)で説明した第1の実施形態におけるデータ書込み時の第2の制御動作に対応する。図14において、図13の場合と同じステップ番号を付した処理は、図13の場合と同じ処理である。図14が図13と異なる点は、ステップS1401である。 FIG. 14 is a flowchart showing a second control processing example at the time of data writing by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the first embodiment exemplified in FIG. be. This control processing example corresponds to the second control operation at the time of data writing in the first embodiment described with reference to FIG. 5 (b). In FIG. 14, the process with the same step number as in FIG. 13 is the same process as in FIG. 13. The difference between FIG. 14 and FIG. 13 is step S1401.

アクセス制御部911は、図9のアプリケーション実行部910から引き渡された書込みデータ(書き込まれるべきデータ)は、データサイズが所定の閾値以上であるか否かを判定する(ステップS1401)。 The access control unit 911 determines whether or not the write data (data to be written) handed over from the application execution unit 910 of FIG. 9 has a data size equal to or larger than a predetermined threshold value (step S1401).

書込みデータのサイズが閾値以上であると判定した(ステップS1401の判定がYESである)場合には、アクセス制御部911は、図13で説明したステップS1304及びS1305の処理を実行して、データをNAND SSD101に書き込む。 When it is determined that the size of the write data is equal to or larger than the threshold value (the determination in step S1401 is YES), the access control unit 911 executes the processes of steps S1304 and S1305 described with reference to FIG. Write to NAND SSD 101.

一方、書込みデータのサイズが閾値以上ではないと判定した(ステップS1401の判定がNOである)場合には、アクセス制御部911は、図13で説明したステップS1301以上の処理を実行する。即ち、アクセス制御部911は、書込みデータのサイズが小さく、かつSCM SSD102が低負荷状態であれば、データをSCM SSD102に書き込む(ステップS1301→S1302、S1303)。一方、アクセス制御部911は、書込みデータのサイズが小さく、かつSCM SSD102が高負荷状態であれば、データをNAND SSD101に書き込む(ステップS1301→S1304、S1305)。 On the other hand, when it is determined that the size of the write data is not equal to or larger than the threshold value (the determination in step S1401 is NO), the access control unit 911 executes the process of step S1301 or more described with reference to FIG. That is, if the size of the write data is small and the SCM SSD 102 is in a low load state, the access control unit 911 writes the data to the SCM SSD 102 (steps S1301 → S1302, S1303). On the other hand, if the size of the write data is small and the SCM SSD 102 is in a high load state, the access control unit 911 writes the data to the NAND SSD 101 (steps S1301 → S1304, S1305).

次に、第2の実施形態の詳細について説明する。第2の実施形態のシステム構成例は、第1の実施形態の場合と同様に、図9に例示される構成を有する。
図6の説明で前述したように、第2の実施形態の場合において、アクセス制御部911は、データ書込み時は、NAND SSD101にデータを書き込み、SCM SSD102の負荷が低い場合には、同一のデータをSCM SSD102にも書き込む。アクセス制御部911は、データ読出し時には、SCM SSD102の負荷状態により、データ読込み元を決定し、そこからデータを読み出す。
Next, the details of the second embodiment will be described. The system configuration example of the second embodiment has the configuration exemplified in FIG. 9, as in the case of the first embodiment.
As described above in the description of FIG. 6, in the case of the second embodiment, the access control unit 911 writes data to the NAND SSD 101 when writing data, and the same data when the load of the SCM SSD 102 is low. Is also written to SCM SSD102. At the time of data reading, the access control unit 911 determines a data reading source according to the load state of the SCM SSD 102, and reads data from the data reading source.

図15は、第2の実施形態におけるデータ書込み時の制御処理例を示すフローチャートである。この制御処理例は、図6で説明した第2の実施形態におけるデータ書込み時の制御動作に対応する。 FIG. 15 is a flowchart showing an example of control processing at the time of data writing in the second embodiment. This control processing example corresponds to the control operation at the time of data writing in the second embodiment described with reference to FIG.

まず、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態に基づいて、SCM SSD102が高負荷状態にあるか否かを判定する(ステップS1501)。 First, the access control unit 911 determines whether or not the SCM SSD 102 is in the high load state based on the load state received from the master server 301 via the load state receiving unit 916 (step S1501).

SCM SSD102が低負荷状態にあると判定した(ステップS1501の判定がNOである)場合には、アクセス制御部911は、NAND I/Oキュー912にWriteリクエストを発行し、また、SCM I/Oキュー913にもWriteリクエストを発行する。続いて、アクセス制御部911は、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。そして、アクセス制御部911は、算出した負荷情報を、自装置内の負荷情報通知部915を介してマスタサーバ301内の負荷情報受信部903に通知する(以上、ステップS1502)。 When it is determined that the SCM SSD 102 is in the low load state (the determination in step S1501 is NO), the access control unit 911 issues a Write request to the NAND I / O queue 912, and also SCM I / O. A Write request is also issued to queue 913. Subsequently, the access control unit 911 calculates the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. Then, the access control unit 911 notifies the load information receiving unit 903 in the master server 301 via the load information notification unit 915 in the own device (the above is step S1502).

アクセス制御部911は、NAND SSD101とSCM SSD102の両方に、図9のアプリケーション実行部910から引き渡されたデータを書き込む(ステップS1503)。その後、アクセス制御部911は、図15のフローチャートで例示される今回のデータ書込みの制御処理を終了する。 The access control unit 911 writes the data passed from the application execution unit 910 of FIG. 9 to both the NAND SSD 101 and the SCM SSD 102 (step S1503). After that, the access control unit 911 ends the current data writing control process exemplified by the flowchart of FIG.

SCM SSD102が高負荷状態にあると判定した(ステップS1501の判定がYESである)場合には、アクセス制御部911は、NAND I/Oキュー912にWriteリクエストを発行する(ステップS1504)。 When it is determined that the SCM SSD 102 is in a high load state (the determination in step S1501 is YES), the access control unit 911 issues a Write request to the NAND I / O queue 912 (step S1504).

続いて、アクセス制御部911は、NAND SSD101のみにデータを書き込む(ステップS1505)。その後、アクセス制御部911は、図15のフローチャートで例示される今回のデータ書込みの制御処理を終了する。 Subsequently, the access control unit 911 writes data only to the NAND SSD 101 (step S1505). After that, the access control unit 911 ends the current data writing control process exemplified by the flowchart of FIG.

図16は、第2の実施形態におけるデータ読出し時の第1の制御処理例を示すフローチャートである。この制御処理例は、図6で説明した第2の実施形態におけるデータ読出し時の第1の制御動作に対応する。 FIG. 16 is a flowchart showing a first control processing example at the time of data reading in the second embodiment. This control processing example corresponds to the first control operation at the time of data reading in the second embodiment described with reference to FIG.

まず、アクセス制御部911は、アプリケーション実行部910から要求された読出しデータが、NAND SSD101のほかにSCM SSD102にもあるか否かを判定する(ステップS1601)。これは、図15のフローチャートのデータ書込みの制御処理により、NAND SSD101とSCM SSD102の両方にデータが書き込まれている場合に対応する判定処理である。 First, the access control unit 911 determines whether or not the read data requested by the application execution unit 910 is present in the SCM SSD 102 in addition to the NAND SSD 101 (step S1601). This is a determination process corresponding to the case where data is written to both the NAND SSD 101 and the SCM SSD 102 by the data writing control process of the flowchart of FIG.

読出しデータがSCM SSD102にもある(ステップS1601の判定がYESである)場合、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態に基づいて、SCM SSD102が高負荷状態にあるか否かを判定する(ステップS1602)。 When the read data is also in the SCM SSD 102 (the determination in step S1601 is YES), the access control unit 911 is receiving from the master server 301 via the load state receiving unit 916 based on the load state of the SCM SSD 102. Is in a high load state or not (step S1602).

SCM SSD102が低負荷状態にあると判定した(ステップS1602の判定がNOである)場合には、SCM SSD102から読出しを行った方が速いので、アクセス制御部911は、SCM I/Oキュー913に、Readリクエストを発行する。続いて、アクセス制御部911は、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。そして、アクセス制御部911は、算出した負荷情報を、自装置内の負荷情報通知部915を介してマスタサーバ301内の負荷情報受信部903に通知する(以上、ステップS1603)。 When it is determined that the SCM SSD 102 is in the low load state (the determination in step S1602 is NO), it is faster to read from the SCM SSD 102, so that the access control unit 911 informs the SCM I / O queue 913. , Issue a Read request. Subsequently, the access control unit 911 calculates the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. Then, the access control unit 911 notifies the load information receiving unit 903 in the master server 301 via the load information notification unit 915 in the own device (the above is step S1603).

次に、アクセス制御部911は、SCM SSD102から読出しデータを読み出す(ステップS1604)。 Next, the access control unit 911 reads the read data from the SCM SSD 102 (step S1604).

次に、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態すなわちコマンドの推定実行時間に基づいて、SCM SSD102が高負荷状態になったか否かを判定する(ステップS1605)。 Next, the access control unit 911 determines whether or not the SCM SSD 102 is in the high load state based on the load state received from the master server 301 via the load state receiving unit 916, that is, the estimated execution time of the command. (Step S1605).

SCM SSD102が高負荷状態にあると判定した(ステップS1605の判定がYESである)場合には、アクセス制御部911は、SCM SSD102から読み出したデータを、削除(無効化)する(以上、ステップS1606)。その後、アクセス制御部911は、図16のフローチャートで例示されるデータ読出しの制御処理を終了する。 When it is determined that the SCM SSD 102 is in a high load state (the determination in step S1605 is YES), the access control unit 911 deletes (invalidates) the data read from the SCM SSD 102 (the above is step S1606). ). After that, the access control unit 911 ends the data reading control process exemplified in the flowchart of FIG.

読出しデータがSCM SSD102にはない(ステップS1601の判定がNOである)場合には、アクセス制御部911は、次の動作を実行する。また、読出しデータがSCM SSD102にあっても、SCM SSD102が高負荷状態にあると判定した(ステップS1602の判定がYESである)場合にも、負荷分散のために、アクセス制御部911は、次の動作を実行する。これらの場合、アクセス制御部911は、NAND I/Oキュー912に、Readリクエストを発行する(ステップS1607)。 If the read data is not in the SCM SSD 102 (the determination in step S1601 is NO), the access control unit 911 executes the next operation. Further, even if the read data is in the SCM SSD 102, even if it is determined that the SCM SSD 102 is in a high load state (the determination in step S1602 is YES), the access control unit 911 is next for load balancing. Performs the operation of. In these cases, the access control unit 911 issues a Read request to the NAND I / O queue 912 (step S1607).

次に、アクセス制御部911は、NAND SSD101から読出しデータを読み出す(ステップS1608)。 Next, the access control unit 911 reads the read data from the NAND SSD 101 (step S1608).

その後、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態に基づいて、SCM SSD102が低負荷状態で、かつSCM SSD102に読出しデータが無いか否かを判定する(ステップS1609)。これは、ステップS1601の判定がNOとなった場合である。 After that, the access control unit 911 determines whether or not the SCM SSD 102 is in the low load state and the SCM SSD 102 has no read data based on the load state received from the master server 301 via the load state receiving unit 916. Determination (step S1609). This is the case where the determination in step S1601 is NO.

ステップS1609の判定がYESの場合、アクセス制御部911は、SCM I/Oキュー913にWriteリクエストを発行することにより、読出しデータをSCM SSD102にコピーして書き込む(ステップS1610)。NAND SSD101にのみデータがあり、SCM SSD102が低負荷状態となっているときには、次回からは高速なSCM SSD102の方からデータが読み出せるようにするために、この処理が実行される。その後、アクセス制御部911は、図16のフローチャートで例示される読出し制御の処理を終了する。 If the determination in step S1609 is YES, the access control unit 911 copies and writes the read data to the SCM SSD 102 by issuing a Write request to the SCM I / O queue 913 (step S1610). When there is data only in the NAND SSD 101 and the SCM SSD 102 is in a low load state, this process is executed so that the data can be read from the high-speed SCM SSD 102 from the next time. After that, the access control unit 911 ends the read control process exemplified by the flowchart of FIG.

図17は、第2の実施形態におけるデータ読出し時の第2の制御処理例を示すフローチャートである。この制御処理例は、図6で説明した第2の実施形態におけるデータ読出し時の第2の制御動作に対応する。 FIG. 17 is a flowchart showing a second control processing example at the time of data reading in the second embodiment. This control processing example corresponds to the second control operation at the time of data reading in the second embodiment described with reference to FIG.

まず、アクセス制御部911は、アプリケーション実行部910から要求された読出しデータが、NAND SSD101のほかにSCM SSD102にもあるか否かを判定する(ステップS1701)。これは、図15のフローチャートのデータ書込みの制御処理により、NAND SSD101とSCM SSD102の両方にデータが書き込まれている場合に対応する判定処理である。 First, the access control unit 911 determines whether or not the read data requested by the application execution unit 910 is present in the SCM SSD 102 in addition to the NAND SSD 101 (step S1701). This is a determination process corresponding to the case where data is written to both the NAND SSD 101 and the SCM SSD 102 by the data writing control process of the flowchart of FIG.

読出しデータがSCM SSD102にもある(ステップS1601の判定がYESである)場合、アクセス制御部911は、アクセス制御部911は、SCM I/Oキュー913に、Readリクエストを発行する。続いて、アクセス制御部911は、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。そして、アクセス制御部911は、算出した負荷情報を、自装置内の負荷情報通知部915を介してマスタサーバ301内の負荷情報受信部903に通知する。更に、アクセス制御部911は、NAND I/Oキュー912にも、同じReadリクエストを発行する(以上、ステップS1702)。即ち、アクセス制御部911は、NAND SSD101とSCM SSD102の両方に対して同じデータの読出しを行う。 When the read data is also in the SCM SSD 102 (the determination in step S1601 is YES), the access control unit 911 issues a Read request to the SCM I / O queue 913 by the access control unit 911. Subsequently, the access control unit 911 calculates the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. Then, the access control unit 911 notifies the load information receiving unit 903 in the master server 301 of the calculated load information via the load information notification unit 915 in the own device. Further, the access control unit 911 also issues the same Read request to the NAND I / O queue 912 (above, step S1702). That is, the access control unit 911 reads out the same data for both the NAND SSD 101 and the SCM SSD 102.

アクセス制御部911は、ステップS1702でのリクエスト処理の結果、先にSCM SSD102からデータ読出しが完了したか否かを判定する(ステップS1703)。 As a result of the request processing in step S1702, the access control unit 911 determines whether or not the data read from the SCM SSD 102 is completed first (step S1703).

SCM SSD102からではなくNAND SSD101から先にデータ読出しが完了したと判定した(ステップS1703の判定がNOである)場合、アクセス制御部911は、SCM SSD102から読み出したデータを削除する(ステップS1704)。 When it is determined that the data reading is completed first from the NAND SSD 101 instead of from the SCM SSD 102 (the determination in step S1703 is NO), the access control unit 911 deletes the data read from the SCM SSD 102 (step S1704).

先にSCM SSD102からデータ読出しが完了したと判定した(ステップS1703の判定がYESである)場合には、アクセス制御部911は、ステップS1704の処理はスキップする。 If it is determined first that the data reading from the SCM SSD 102 is completed (the determination in step S1703 is YES), the access control unit 911 skips the process in step S1704.

その後、アクセス制御部911は、図17のフローチャートで例示される今回のデータ読出しの制御処理を終了する。 After that, the access control unit 911 ends the control process for reading the data, which is exemplified in the flowchart of FIG.

読出しデータがSCM SSD102にはない(ステップS1701の判定がNOである)場合には、アクセス制御部911は、NAND I/Oキュー912に、Readリクエストを発行する(ステップS1705)。 If the read data is not in the SCM SSD 102 (the determination in step S1701 is NO), the access control unit 911 issues a Read request to the NAND I / O queue 912 (step S1705).

次に、アクセス制御部911は、NAND SSD101から読出しデータを読み出す(ステップS1706)。 Next, the access control unit 911 reads the read data from the NAND SSD 101 (step S1706).

その後、アクセス制御部911は、マスタサーバ301から負荷状態受信部916を介して受信している負荷状態に基づいて、SCM SSD102が低負荷状態であるか否かを判定する(ステップS1707)。 After that, the access control unit 911 determines whether or not the SCM SSD 102 is in the low load state based on the load state received from the master server 301 via the load state receiving unit 916 (step S1707).

ステップS1707の判定がYESの場合、アクセス制御部911は、SCM I/Oキュー913にWriteリクエストを発行することにより、読出しデータをSCM SSD102にコピーして書き込む(ステップS1708)。NAND SSD101にのみデータがあり、SCM SSD102が低負荷状態となっているときには、次回からは高速なSCM SSD102の方からデータが読み出せるようにするために、この処理が実行される。その後、アクセス制御部911は、図17のフローチャートで例示される読出し制御の処理を終了する。 If the determination in step S1707 is YES, the access control unit 911 copies and writes the read data to the SCM SSD 102 by issuing a Write request to the SCM I / O queue 913 (step S1708). When there is data only in the NAND SSD 101 and the SCM SSD 102 is in a low load state, this process is executed so that the data can be read from the high-speed SCM SSD 102 from the next time. After that, the access control unit 911 ends the read control process exemplified by the flowchart of FIG.

図18は、第3の実施形態のシステム構成例を示す図である。図7の説明で前述したように、第3の実施形態の構成では、マスタサーバ301は用意されない。このため、図18では、図9の第1又は第2の実施形態の構成から、マスタサーバ301と、マスタサーバ301と通信を行うための各サーバ103内の負荷情報通知部915及び負荷状態受信部916を除いた構成を有する。図18において、図9の場合と同じ参照番号が付されている部分は、図9の場合と同じものである。 FIG. 18 is a diagram showing a system configuration example of the third embodiment. As described above in the description of FIG. 7, the master server 301 is not prepared in the configuration of the third embodiment. Therefore, in FIG. 18, from the configuration of the first or second embodiment of FIG. 9, the master server 301, the load information notification unit 915 in each server 103 for communicating with the master server 301, and the load state reception. It has a configuration excluding the part 916. In FIG. 18, the portion with the same reference number as in the case of FIG. 9 is the same as in the case of FIG.

図19は、図18に例示される第3の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の第1の制御処理例を示すフローチャートである。このフローチャートは、第1の実施形態に係る前述した図12の制御処理に対応しており、図12の場合と同じ参照番号が付された処理は、図12の場合と同じ処理である。即ち、この制御処理例は、図4で説明した第1の実施形態におけるデータ読出し時の制御動作を、マスタサーバ301を用いずに各サーバ103が個別に実行する動作に対応する。 FIG. 19 is a flowchart showing a first control processing example at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the third embodiment exemplified in FIG. be. This flowchart corresponds to the control process of FIG. 12 described above according to the first embodiment, and the process with the same reference number as in the case of FIG. 12 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 individually executes the control operation at the time of data reading in the first embodiment described with reference to FIG. 4 without using the master server 301.

図19のフローチャートが、図12のフローチャートと異なる部分は、図12のステップS1202、S1204、及びS1208にそれぞれ対応するステップS1901、S1902、及びS1903である。 The part where the flowchart of FIG. 19 differs from the flowchart of FIG. 12 is steps S1901, S1902, and S1903 corresponding to steps S1202, S1204, and S1208 of FIG. 12, respectively.

図12と同じ図19のステップS1201で、読出しデータがSCM SSD102にあると判定した場合、アクセス制御部911は、図12のステップS1202に対応する図19のステップS1901の処理を実行する。ステップS1901において、アクセス制御部911は、図12のステップS1202の場合と同様に、SCM I/Oキュー913に、Readリクエストを発行する。これと共に、アクセス制御部911は、図12のステップS1202の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図12のステップS1202の場合とは異なり、算出した負荷情報を自装置内の特には図示しないメモリ等に保持する。 When it is determined in step S1201 of FIG. 19 which is the same as that of FIG. 12 that the read data is in the SCM SSD 102, the access control unit 911 executes the process of step S1901 of FIG. 19 corresponding to step S1202 of FIG. In step S1901, the access control unit 911 issues a Read request to the SCM I / O queue 913 as in the case of step S1202 of FIG. Simultaneously, the access control unit 911, as in step S1202 of FIG. 12, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1202 in FIG. 12, the access control unit 911 holds the calculated load information in a memory or the like in the own device (not particularly shown).

また、図12のステップS1204及びS1208にそれぞれ対応する図19のステップS1902又はS1903で、アクセス制御部911は、次の処理を実行する。アクセス制御部911は、SCM SSD102の負荷状態が高負荷状態であるか否かを判定する場合には、図12の場合とは異なり、自装置内に保持されているSCM SSD102の負荷情報により負荷状態の判定を行う。 Further, in step S1902 or S1903 of FIG. 19 corresponding to steps S1204 and S1208 of FIG. 12, the access control unit 911 executes the following processing. When determining whether or not the load state of the SCM SSD 102 is a high load state, the access control unit 911 loads according to the load information of the SCM SSD 102 held in the own device, unlike the case of FIG. Judge the status.

図20は、図18に例示される第3の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ書込み時の第1の制御処理例を示すフローチャートである。このフローチャートは、第1の実施形態に係る前述した図14の制御処理に対応しており、図14の場合と同じ参照番号が付された処理は、図14の場合と同じ処理である。即ち、この制御処理例は、図5(b)で説明した第1の実施形態におけるデータ書込み時の第2の制御動作を、マスタサーバ301を用いずに各サーバ103が個別に実行する動作に対応する。 FIG. 20 is a flowchart showing a first control processing example at the time of data writing by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the third embodiment exemplified in FIG. be. This flowchart corresponds to the control process of FIG. 14 described above according to the first embodiment, and the process with the same reference number as in the case of FIG. 14 is the same process as in the case of FIG. That is, this control processing example is an operation in which each server 103 individually executes the second control operation at the time of data writing in the first embodiment described with reference to FIG. 5 (b) without using the master server 301. handle.

図20のフローチャートが、図14のフローチャートと異なる部分は、図14のステップS1301及びS1302にそれぞれ対応するステップS2001及びS2002である。 The part where the flowchart of FIG. 20 differs from the flowchart of FIG. 14 is steps S2001 and S2002 corresponding to steps S1301 and S1302 of FIG. 14, respectively.

図14のステップS1301に対応するステップS2001で、アクセス制御部911は、SCM SSD102の負荷状態が高負荷状態であるか否かを判定する場合、自装置内に保持されているSCM SSD102の負荷情報により負荷状態を判定する。 In step S2001 corresponding to step S1301 of FIG. 14, when the access control unit 911 determines whether or not the load state of the SCM SSD 102 is a high load state, the load information of the SCM SSD 102 held in the own device is To determine the load status.

また、図14のステップS1302に対応する図20のステップS2002において、アクセス制御部911は、ステップS2001でSCM SSD102が低負荷状態にあると判定した場合に、次の処理を実行する。アクセス制御部911は、図14のステップS1302の場合と同様に、SCM I/Oキュー913にWriteリクエストを発行する。これと共に、アクセス制御部911は、図14のステップS1302の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図14のステップS1302の場合とは異なり、算出した負荷情報を自装置内の特には図示しないメモリ等に保持する。 Further, in step S2002 of FIG. 20 corresponding to step S1302 of FIG. 14, when the access control unit 911 determines in step S2001 that the SCM SSD 102 is in the low load state, the access control unit 911 executes the following processing. The access control unit 911 issues a Write request to the SCM I / O queue 913 as in the case of step S1302 in FIG. Simultaneously, the access control unit 911, as in step S1302 of FIG. 14, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1302 in FIG. 14, the access control unit 911 holds the calculated load information in a memory or the like in the own device (not particularly shown).

図21は、図18に例示される第3の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ書込み時の第2の制御処理例を示すフローチャートである。このフローチャートは、第2の実施形態に係る前述した図15の制御処理に対応しており、図15の場合と同じ参照番号が付された処理は、図15の場合と同じ処理である。即ち、この制御処理例は、図6で説明した第2の実施形態におけるデータ書込み時の制御動作を、マスタサーバ301を用いずに各サーバ103が個別に実行する動作に対応する。 FIG. 21 is a flowchart showing a second control processing example at the time of data writing by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the third embodiment exemplified in FIG. be. This flowchart corresponds to the control process of FIG. 15 described above according to the second embodiment, and the process with the same reference number as in the case of FIG. 15 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 individually executes the control operation at the time of data writing in the second embodiment described with reference to FIG. 6 without using the master server 301.

図21のフローチャートが、図15のフローチャートと異なる部分は、図15のステップS1501及びS1502にそれぞれ対応するステップS2101及びS2102である。 The part where the flowchart of FIG. 21 differs from the flowchart of FIG. 15 is steps S2101 and S2102 corresponding to steps S1501 and S1502 of FIG. 15, respectively.

図15のステップS1501に対応するステップS2101で、アクセス制御部911は、SCM SSD102の負荷状態が高負荷状態であるか否かを判定する場合、自装置内に保持されているSCM SSD102の負荷情報により負荷状態を判定する。 In step S2101 corresponding to step S1501 of FIG. 15, when the access control unit 911 determines whether or not the load state of the SCM SSD 102 is a high load state, the load information of the SCM SSD 102 held in the own device is used. To determine the load status.

また、図15のステップS1502に対応する図21のステップS2102において、アクセス制御部911は、ステップS2101でSCM SSD102が低負荷状態にあると判定した場合に、次の処理を実行する。アクセス制御部911は、図15のステップS1502の場合と同様に、NAND I/Oキュー912及びSCM I/Oキュー913の両方にWriteリクエストを発行する。これと共に、アクセス制御部911は、図15のステップS1502の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図15のステップS1502の場合とは異なり、算出した負荷情報を自装置内の特には図示しないメモリ等に保持する。 Further, in step S2102 of FIG. 21 corresponding to step S1502 of FIG. 15, when the access control unit 911 determines in step S2101 that the SCM SSD 102 is in a low load state, the access control unit 911 executes the following processing. The access control unit 911 issues a Write request to both the NAND I / O queue 912 and the SCM I / O queue 913, as in the case of step S1502 in FIG. Simultaneously, the access control unit 911, as in step S1502 of FIG. 15, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1502 in FIG. 15, the access control unit 911 holds the calculated load information in a memory or the like in the own device (not particularly shown).

図22は、図18に例示される第3の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の第2の制御処理例を示すフローチャートである。このフローチャートは、第2の実施形態に係る前述した図16の制御処理に対応しており、図16の場合と同じ参照番号が付された処理は、図16の場合と同じ処理である。即ち、この制御処理例は、図6で説明した第2の実施形態におけるデータ読出し時の第1の制御動作を、マスタサーバ301を用いずに各サーバ103が個別に実行する動作に対応する。 FIG. 22 is a flowchart showing a second control processing example at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the third embodiment exemplified in FIG. be. This flowchart corresponds to the control process of FIG. 16 described above according to the second embodiment, and the process with the same reference number as in the case of FIG. 16 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 individually executes the first control operation at the time of data reading in the second embodiment described with reference to FIG. 6 without using the master server 301.

図22のフローチャートが、図16のフローチャートと異なる部分は、図16のステップS1602、S1603、S1605、及びS1609にそれぞれ対応するステップS2201、S2202、S2203、及びS2204である。 The part where the flowchart of FIG. 22 differs from the flowchart of FIG. 16 is steps S2201, S2202, S2203, and S2204 corresponding to steps S1602, S1603, S1605, and S1609 of FIG. 16, respectively.

図16のステップS1602、S1605、及びS1609にそれぞれ対応する図22のステップS2201、S2203、及びS2204で、アクセス制御部911は、次の処理を実行する。アクセス制御部911は、SCM SSD102の負荷状態を判定する場合には、図16の場合とは異なり、自装置内に保持されているSCM SSD102の負荷情報により負荷状態の判定を行う。 In steps S2201, S2203, and S2204 of FIG. 22, which correspond to steps S1602, S1605, and S1609 of FIG. 16, the access control unit 911 executes the following processing. When determining the load state of the SCM SSD 102, the access control unit 911 determines the load state based on the load information of the SCM SSD 102 held in the own device, unlike the case of FIG.

また、図16のステップS1603に対応する図22のステップS2202において、アクセス制御部911は、ステップS2201でSCM SSD102が低負荷状態にあると判定した場合に、次の処理を実行する。アクセス制御部911は、図16のステップS1603の場合と同様に、SCM I/Oキュー913に、Readリクエストを発行する。これと共に、アクセス制御部911は、図16のステップS1603の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図16のステップS1603の場合とは異なり、算出した負荷情報を自装置内の特には図示しないメモリ等に保持する。 Further, in step S2202 of FIG. 22 corresponding to step S1603 of FIG. 16, when the access control unit 911 determines in step S2201 that the SCM SSD 102 is in the low load state, the access control unit 911 executes the following processing. The access control unit 911 issues a Read request to the SCM I / O queue 913 as in the case of step S1603 of FIG. Simultaneously, the access control unit 911, as in step S1603 of FIG. 16, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1603 of FIG. 16, the access control unit 911 holds the calculated load information in a memory or the like in the own device (not particularly shown).

図23は、図18に例示される第3の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の第3の制御処理例を示すフローチャートである。このフローチャートは、第2の実施形態に係る前述した図17の制御処理に対応しており、図17の場合と同じ参照番号が付された処理は、図17の場合と同じ処理である。即ち、この制御処理例は、図6で説明した第2の実施形態におけるデータ読出し時の第2の制御動作を、マスタサーバ301を用いずに各サーバ103が個別に実行する動作に対応する。 FIG. 23 is a flowchart showing a third control processing example at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the third embodiment exemplified in FIG. be. This flowchart corresponds to the control process of FIG. 17 described above according to the second embodiment, and the process with the same reference number as in the case of FIG. 17 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 individually executes the second control operation at the time of data reading in the second embodiment described with reference to FIG. 6 without using the master server 301.

図23のフローチャートが、図17のフローチャートと異なる部分は、図17のステップS1702及びS1707にそれぞれ対応するステップS2301及びS2302である。 The part where the flowchart of FIG. 23 differs from the flowchart of FIG. 17 is steps S2301 and S2302 corresponding to steps S1702 and S1707 of FIG. 17, respectively.

図17と同じ図23のステップS1701で、読出しデータがSCM SSD102にあると判定した場合、アクセス制御部911は、図17のステップS1702に対応する図23のステップS2301の処理を実行する。ステップS2301において、アクセス制御部911は、図17のステップS1702の場合と同様に、SCM I/Oキュー913に、Readリクエストを発行する。これと共に、アクセス制御部911は、図17のステップS1702の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図17のステップS1702の場合とは異なり、算出した負荷情報を自装置内の特には図示しないメモリ等に保持する。 When it is determined in step S1701 of FIG. 23 which is the same as that of FIG. 17 that the read data is in the SCM SSD 102, the access control unit 911 executes the process of step S2301 of FIG. 23 corresponding to step S1702 of FIG. In step S2301, the access control unit 911 issues a Read request to the SCM I / O queue 913 as in the case of step S1702 of FIG. Simultaneously, the access control unit 911, as in step S1702 of FIG. 17, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1702 in FIG. 17, the access control unit 911 holds the calculated load information in a memory or the like in the own device (not particularly shown).

また、図17のステップS1707に対応する図23のステップS2302で、アクセス制御部911は、次の処理を実行する。アクセス制御部911は、SCM SSD102の負荷状態が低負荷状態であるか否かを判定する場合には、図17の場合とは異なり、自装置内に保持されているSCM SSD102の負荷情報により負荷状態の判定を行う。 Further, in step S2302 of FIG. 23 corresponding to step S1707 of FIG. 17, the access control unit 911 executes the following processing. When determining whether or not the load state of the SCM SSD 102 is a low load state, the access control unit 911 loads according to the load information of the SCM SSD 102 held in the own device, unlike the case of FIG. Judge the status.

図24は、第4の実施形態のシステム構成例を示す図である。図8の説明で前述したように、第4の実施形態の構成では、マスタサーバ301は用意されず、#1から#Nの各サーバ103間の通信によりSCM SSD102に関する負荷情報が共有される。 FIG. 24 is a diagram showing a system configuration example of the fourth embodiment. As described above in the description of FIG. 8, in the configuration of the fourth embodiment, the master server 301 is not prepared, and the load information regarding the SCM SSD 102 is shared by the communication between the servers 103 of # 1 to # N.

このため、図24では、図18の第3の実施形態のシステム構成例において、各サーバ103は、負荷情報通知部2401、負荷情報受信部2402、負荷状態判定部2403、及び負荷状態保持部2404を具備する。 Therefore, in FIG. 24, in the system configuration example of the third embodiment of FIG. 18, each server 103 has a load information notification unit 2401, a load information reception unit 2402, a load state determination unit 2403, and a load state holding unit 2404. Equipped with.

アクセス制御部911は、SCM SSD102の負荷状態によりデータ書込み先の決定と、データの移動を行う。アクセス制御部911は、SCM I/Oキュー913の状態が変化したときに負荷情報を算出し、その負荷情報を負荷情報通知部2401を介して自装置を含む各サーバ103に通知する。負荷状態判定部2403は、各サーバ103から負荷情報受信部2402を介してSCM SSD102の負荷情報を受信し、負荷判定を行う。そして、負荷状態判定部2403は、判定結果である負荷状態と、各サーバ103からの負荷情報を、前述した図10と同様のデータ形式で負荷状態保持部2404に格納する。 The access control unit 911 determines the data writing destination and moves the data according to the load state of the SCM SSD 102. The access control unit 911 calculates load information when the state of the SCM I / O queue 913 changes, and notifies the load information to each server 103 including its own device via the load information notification unit 2401. The load state determination unit 2403 receives the load information of the SCM SSD 102 from each server 103 via the load information receiving unit 2402, and determines the load. Then, the load state determination unit 2403 stores the load state, which is the determination result, and the load information from each server 103 in the load state holding unit 2404 in the same data format as in FIG. 10 described above.

アクセス制御部911は、負荷状態を判定するときに、負荷状態保持部2404に格納されている負荷状態を参照する。 When determining the load state, the access control unit 911 refers to the load state stored in the load state holding unit 2404.

図25は、図24に例示される第4の実施形態のシステム構成例における#1から#Nの各サーバ103による負荷情報受信及び負荷状態更新の制御処理例を示すフローチャートである。 FIG. 25 is a flowchart showing an example of control processing of load information reception and load state update by each server 103 of # 1 to # N in the system configuration example of the fourth embodiment exemplified in FIG. 24.

負荷情報受信部2402が、自装置を含む任意のサーバiから負荷情報である推定時間Ti を受信するまで待機する(ステップS2501の判定がNOの繰返し)。 Load information receiving unit 2402, waits to receive the estimated time T i is the load information from any server i including its own device (repetition of the determination in step S2501 is NO).

負荷情報受信部2402は、上記負荷情報を受信すると(ステップS2501の判定がYESになると)、受信したサーバiの負荷情報である推定時間Ti を、負荷状態保持部2404に図10に例示されるデータ形式で格納する(ステップS2502)。 Load information receiving unit 2402 receives the load information (the determination in step S2501 is YES), the estimated time T i is the load information of the server i received is illustrated in Figure 10 to the load state holding unit 2404 It is stored in the data format (step S2502).

次に、負荷状態判定部2403は、負荷状態保持部2404内の負荷情報合計値(図10参照)を再計算し、閾値と大小比較を行い、負荷状態を判定する。そして、負荷状態判定部2403は、その判定結果を新たな負荷状態として、負荷状態保持部2404に、図10に例示されるデータ形式で格納する(ステップS2503)。その後、各サーバ103における負荷情報及び負荷状態の制御が、ステップS2501の負荷情報受信部2402の待機処理に戻る。 Next, the load state determination unit 2403 recalculates the total load information value (see FIG. 10) in the load state holding unit 2404, compares the magnitude with the threshold value, and determines the load state. Then, the load state determination unit 2403 stores the determination result as a new load state in the load state holding unit 2404 in the data format exemplified in FIG. 10 (step S2503). After that, the control of the load information and the load state in each server 103 returns to the standby process of the load information receiving unit 2402 in step S2501.

図26は、図24に例示される第4の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の第1の制御処理例を示すフローチャートである。このフローチャートは、第1の実施形態に係る前述した図12の制御処理に対応しており、図12の場合と同じ参照番号が付された処理は、図12の場合と同じ処理である。即ち、この制御処理例は、図4で説明した第1の実施形態におけるデータ読出し時の制御動作を、各サーバ103がSCM SSD102に関する負荷情報を相互に通信しながら実行する動作に対応する。 FIG. 26 is a flowchart showing a first control processing example at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the fourth embodiment exemplified in FIG. 24. be. This flowchart corresponds to the control process of FIG. 12 described above according to the first embodiment, and the process with the same reference number as in the case of FIG. 12 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 executes the control operation at the time of data reading in the first embodiment described with reference to FIG. 4 while communicating load information regarding the SCM SSD 102 with each other.

図26のフローチャートが、図12のフローチャートと異なる部分は、図12のステップS1202、S1204、及びS1208にそれぞれ対応するステップS2601、S2602、及びS2603である。 The part where the flowchart of FIG. 26 differs from the flowchart of FIG. 12 is steps S2601, S2602, and S2603 corresponding to steps S1202, S1204, and S1208 of FIG. 12, respectively.

図12と同じ図26のステップS1201で、読出しデータがSCM SSD102にあると判定した場合、アクセス制御部911は、図12のステップS1202に対応する図26のステップS2601の処理を実行する。ステップS2601において、アクセス制御部911は、図12のステップS1202の場合と同様に、SCM I/Oキュー913に、Readリクエストを発行する。これと共に、アクセス制御部911は、図12のステップS1202の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図12のステップS1202の場合とは異なり、算出した負荷情報を図24の自装置内の負荷情報通知部2401を介して自装置を含む各サーバ103に通知する。 When it is determined in step S1201 of FIG. 26, which is the same as that of FIG. 12, that the read data is in the SCM SSD 102, the access control unit 911 executes the process of step S2601 of FIG. 26 corresponding to step S1202 of FIG. In step S2601, the access control unit 911 issues a Read request to the SCM I / O queue 913 as in the case of step S1202 of FIG. Simultaneously, the access control unit 911, as in step S1202 of FIG. 12, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1202 of FIG. 12, the access control unit 911 notifies each server 103 including the own device of the calculated load information via the load information notification unit 2401 in the own device of FIG. 24.

また、図12のステップS1204及びS1208にそれぞれ対応する図26のステップS2602又はS2603で、アクセス制御部911は、次の処理を実行する。アクセス制御部911は、SCM SSD102の負荷状態が高負荷状態であるか否かを判定する場合には、図12の場合とは異なり、自装置内の負荷状態保持部2404に保持されているSCM SSD102の負荷情報により負荷状態の判定を行う。 Further, in step S2602 or S2603 of FIG. 26 corresponding to steps S1204 and S1208 of FIG. 12, the access control unit 911 executes the following processing. When the access control unit 911 determines whether or not the load state of the SCM SSD 102 is a high load state, the SCM held by the load state holding unit 2404 in the own device is different from the case of FIG. The load state is determined based on the load information of SSD 102.

図27は、図24に例示される第4の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ書込み時の第1の制御処理例を示すフローチャートである。このフローチャートは、第1の実施形態に係る前述した図14の制御処理に対応しており、図14の場合と同じ参照番号が付された処理は、図14の場合と同じ処理である。即ち、この制御処理例は、図5(b)で説明した第1の実施形態におけるデータ書込み時の第2の制御動作を、各サーバ103がSCM SSD102に関する負荷情報を相互に通信しながら実行する動作に対応する。 FIG. 27 is a flowchart showing a first control processing example at the time of data writing by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the fourth embodiment exemplified in FIG. 24. be. This flowchart corresponds to the control process of FIG. 14 described above according to the first embodiment, and the process with the same reference number as in the case of FIG. 14 is the same process as in the case of FIG. That is, in this control processing example, each server 103 executes the second control operation at the time of data writing in the first embodiment described with reference to FIG. 5B while communicating the load information regarding the SCM SSD 102 with each other. Corresponds to the operation.

図27のフローチャートが、図14のフローチャートと異なる部分は、図14のステップS1301及びS1302にそれぞれ対応するステップS2701及びS2702である。 The part where the flowchart of FIG. 27 differs from the flowchart of FIG. 14 is steps S2701 and S2702 corresponding to steps S1301 and S1302 of FIG. 14, respectively.

図14のステップS1301に対応するステップS2701で、アクセス制御部911は、SCM SSD102の負荷状態が高負荷状態であるか否かを判定する場合、自装置内の負荷状態保持部2404に保持されているSCM SSD102の負荷情報により負荷状態を判定する。 In step S2701 corresponding to step S1301 of FIG. 14, when the access control unit 911 determines whether or not the load state of the SCM SSD 102 is a high load state, the access control unit 911 is held by the load state holding unit 2404 in the own device. The load state is determined based on the load information of the SCM SSD 102.

また、図14のステップS1302に対応する図27のステップS2702において、アクセス制御部911は、ステップS2701でSCM SSD102が低負荷状態にあると判定した場合に、次の処理を実行する。アクセス制御部911は、図14のステップS1302の場合と同様に、SCM I/Oキュー913にWriteリクエストを発行する。これと共に、アクセス制御部911は、図14のステップS1302の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図14のステップS1302の場合とは異なり、算出した負荷情報を図24の負荷情報通知部2401を介して自装置を含む各サーバ103に通知する。 Further, in step S2702 of FIG. 27 corresponding to step S1302 of FIG. 14, when the access control unit 911 determines in step S2701 that the SCM SSD 102 is in the low load state, the access control unit 911 executes the following processing. The access control unit 911 issues a Write request to the SCM I / O queue 913 as in the case of step S1302 in FIG. Simultaneously, the access control unit 911, as in step S1302 of FIG. 14, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1302 of FIG. 14, the access control unit 911 notifies each server 103 including its own device of the calculated load information via the load information notification unit 2401 of FIG. 24.

図28は、図24に例示される第4の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ書込み時の第2の制御処理例を示すフローチャートである。このフローチャートは、第2の実施形態に係る前述した図15の制御処理に対応しており、図15の場合と同じ参照番号が付された処理は、図15の場合と同じ処理である。即ち、この制御処理例は、図6で説明した第2の実施形態におけるデータ書込み時の制御動作を、各サーバ103がSCM SSD102に関する負荷情報を相互に通信しながら実行する動作に対応する。 FIG. 28 is a flowchart showing a second control processing example at the time of data writing by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the fourth embodiment exemplified in FIG. 24. be. This flowchart corresponds to the control process of FIG. 15 described above according to the second embodiment, and the process with the same reference number as in the case of FIG. 15 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 executes the control operation at the time of data writing in the second embodiment described with reference to FIG. 6 while communicating load information regarding the SCM SSD 102 with each other.

図28のフローチャートが、図15のフローチャートと異なる部分は、図15のステップS1501及びS1502にそれぞれ対応するステップS2801及びS2802である。 The part where the flowchart of FIG. 28 differs from the flowchart of FIG. 15 is steps S2801 and S2802 corresponding to steps S1501 and S1502 of FIG. 15, respectively.

図15のステップS1501に対応するステップS2801で、アクセス制御部911は、SCM SSD102の負荷状態が高負荷状態であるか否かを判定する場合、自装置内の負荷状態保持部2404に保持されているSCM SSD102の負荷情報により負荷状態を判定する。 In step S2801 corresponding to step S1501 of FIG. 15, when the access control unit 911 determines whether or not the load state of the SCM SSD 102 is a high load state, the access control unit 911 is held by the load state holding unit 2404 in the own device. The load state is determined based on the load information of the SCM SSD 102.

また、図15のステップS1502に対応する図28のステップS2802において、アクセス制御部911は、ステップS2801でSCM SSD102が低負荷状態にあると判定した場合に、次の処理を実行する。アクセス制御部911は、図15のステップS1502の場合と同様に、NAND I/Oキュー912及びSCM I/Oキュー913の両方にWriteリクエストを発行する。これと共に、アクセス制御部911は、図15のステップS1502の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図15のステップS1502の場合とは異なり、算出した負荷情報を図24の負荷情報通知部2401を介して自装置を含む各サーバ103に通知する。 Further, in step S2802 of FIG. 28 corresponding to step S1502 of FIG. 15, when the access control unit 911 determines in step S2801 that the SCM SSD 102 is in the low load state, the access control unit 911 executes the following processing. The access control unit 911 issues a Write request to both the NAND I / O queue 912 and the SCM I / O queue 913, as in the case of step S1502 in FIG. Simultaneously, the access control unit 911, as in step S1502 of FIG. 15, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1502 of FIG. 15, the access control unit 911 notifies each server 103 including its own device of the calculated load information via the load information notification unit 2401 of FIG. 24.

図29は、図24に例示される第4の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の第2の制御処理例を示すフローチャートである。このフローチャートは、第2の実施形態に係る前述した図16の制御処理に対応しており、図16の場合と同じ参照番号が付された処理は、図16の場合と同じ処理である。即ち、この制御処理例は、図6で説明した第2の実施形態におけるデータ読出し時の第1の制御動作を、各サーバ103がSCM SSD102に関する負荷情報を相互に通信しながら実行する動作に対応する。 FIG. 29 is a flowchart showing a second control processing example at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the fourth embodiment exemplified in FIG. 24. be. This flowchart corresponds to the control process of FIG. 16 described above according to the second embodiment, and the process with the same reference number as in the case of FIG. 16 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 executes the first control operation at the time of data reading in the second embodiment described with reference to FIG. 6 while communicating load information regarding the SCM SSD 102 with each other. do.

図29のフローチャートが、図16のフローチャートと異なる部分は、図16のステップS1602、S1603、S1605、及びS1609にそれぞれ対応するステップS2901、S2902、S2903、及びS2904である。 The part where the flowchart of FIG. 29 differs from the flowchart of FIG. 16 is steps S2901, S2902, S2903, and S2904 corresponding to steps S1602, S1603, S1605, and S1609 of FIG. 16, respectively.

図16のステップS1602、S1605、及びS1609にそれぞれ対応する図29のステップS2901、S2903、及びS2904で、アクセス制御部911は、次の処理を実行する。アクセス制御部911は、SCM SSD102の負荷状態を判定する場合には、図16の場合とは異なり、自装置内の負荷状態保持部2404に保持されているSCM SSD102の負荷情報により負荷状態の判定を行う。 In steps S2901, S2903, and S2904 of FIG. 29 corresponding to steps S1602, S1605, and S1609 of FIG. 16, the access control unit 911 executes the following processing. When the access control unit 911 determines the load state of the SCM SSD 102, unlike the case of FIG. 16, the access control unit 911 determines the load state based on the load information of the SCM SSD 102 held in the load state holding unit 2404 in the own device. I do.

また、図16のステップS1603に対応する図29のステップS2902において、アクセス制御部911は、ステップS2901でSCM SSD102が低負荷状態にあると判定した場合に、次の処理を実行する。アクセス制御部911は、図16のステップS1603の場合と同様に、SCM I/Oキュー913に、Readリクエストを発行する。これと共に、アクセス制御部911は、図16のステップS1603の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図16のステップS1603の場合とは異なり、算出した負荷情報を図24の負荷情報通知部2401を介して自装置を含む各サーバ103に通知する。 Further, in step S2902 of FIG. 29 corresponding to step S1603 of FIG. 16, when the access control unit 911 determines in step S2901 that the SCM SSD 102 is in the low load state, the access control unit 911 executes the following processing. The access control unit 911 issues a Read request to the SCM I / O queue 913 as in the case of step S1603 of FIG. Simultaneously, the access control unit 911, as in step S1603 of FIG. 16, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1603 of FIG. 16, the access control unit 911 notifies each server 103 including its own device of the calculated load information via the load information notification unit 2401 of FIG. 24.

図30は、図24に例示される第4の実施形態のシステム構成例における#1から#Nの各サーバ103内のアクセス制御部911によるデータ読出し時の第3の制御処理例を示すフローチャートである。このフローチャートは、第2の実施形態に係る前述した図17の制御処理に対応しており、図17の場合と同じ参照番号が付された処理は、図17の場合と同じ処理である。即ち、この制御処理例は、図6で説明した第2の実施形態におけるデータ読出し時の第2の制御動作を、各サーバ103がSCM SSD102に関する負荷情報を相互に通信しながら実行する動作に対応する。 FIG. 30 is a flowchart showing a third control processing example at the time of data reading by the access control unit 911 in each server 103 of # 1 to # N in the system configuration example of the fourth embodiment exemplified in FIG. 24. be. This flowchart corresponds to the control process of FIG. 17 described above according to the second embodiment, and the process with the same reference number as in the case of FIG. 17 is the same process as in the case of FIG. That is, this control processing example corresponds to an operation in which each server 103 executes the second control operation at the time of data reading in the second embodiment described with reference to FIG. 6 while communicating load information regarding the SCM SSD 102 with each other. do.

図30のフローチャートが、図17のフローチャートと異なる部分は、図17のステップS1702及びS1707にそれぞれ対応するステップS3001及びS3002である。 The part where the flowchart of FIG. 30 differs from the flowchart of FIG. 17 is steps S3001 and S3002 corresponding to steps S1702 and S1707 of FIG. 17, respectively.

図17と同じ図30のステップS1701で、読出しデータがSCM SSD102にあると判定した場合、アクセス制御部911は、図17のステップS1702に対応する図30のステップS3001の処理を実行する。ステップS3001において、アクセス制御部911は、図17のステップS1702の場合と同様に、SCM I/Oキュー913に、Readリクエストを発行する。これと共に、アクセス制御部911は、図17のステップS1702の場合と同様に、SCM I/Oキュー913の状態から前述した数1式の演算により負荷情報である推定時間Ti を算出する。その後、アクセス制御部911は、図17のステップS1702の場合とは異なり、算出した負荷情報を図24の負荷情報通知部2401を介して自装置を含む各サーバ103に通知する。 When it is determined in step S1701 of FIG. 30 which is the same as that of FIG. 17 that the read data is in the SCM SSD 102, the access control unit 911 executes the process of step S3001 of FIG. 30 corresponding to step S1702 of FIG. In step S3001, the access control unit 911 issues a Read request to the SCM I / O queue 913 as in the case of step S1702 of FIG. Simultaneously, the access control unit 911, as in step S1702 of FIG. 17, to calculate the estimated time T i is the load information by calculation of the equation 1 described above from the state of SCM I / O queue 913. After that, unlike the case of step S1702 of FIG. 17, the access control unit 911 notifies each server 103 including its own device of the calculated load information via the load information notification unit 2401 of FIG. 24.

また、図17のステップS1707に対応する図30のステップS3002で、アクセス制御部911は、次の処理を実行する。アクセス制御部911は、SCM SSD102の負荷状態が低負荷状態であるか否かを判定する場合には、図17の場合とは異なり、自装置内の負荷状態保持部2404に保持されているSCM SSD102の負荷情報により負荷状態の判定を行う。 Further, in step S3002 of FIG. 30 corresponding to step S1707 of FIG. 17, the access control unit 911 executes the following processing. When the access control unit 911 determines whether or not the load state of the SCM SSD 102 is a low load state, the SCM held by the load state holding unit 2404 in the own device is different from the case of FIG. The load state is determined based on the load information of SSD 102.

図31は、複数SSDでRAIDを構成する実施形態の構成例を示す図である。図1、図3(a)、図7、図8、図9、図18、又は図24で説明した各実施形態の構成例では、1台のNAND SSD101と1台のSCM SSD102が実装されるものとして説明したが、実施形態はこれに限られるものではない。図31に示されるようなRAID(Redundant Arrays of Inexpensive Disks)構成のもとで本発明を実施することも可能である。この場合、複数台のNAND SSDに対するRAID構成により、各サーバ103側からは1台のNAND SSD3101が動作しているように見える。同様に、複数台のSCM SSDに対するRAID構成により、各サーバ103側からは1台のSCM SSD3102が動作しているように見える。 FIG. 31 is a diagram showing a configuration example of an embodiment in which RAID is configured by a plurality of SSDs. In the configuration example of each embodiment described with reference to FIGS. 1, 3, 7, 8, 9, 18, or 24, one NAND SSD 101 and one SCM SSD 102 are mounted. Although described as a thing, the embodiment is not limited to this. It is also possible to carry out the present invention under a RAID (Redundant Arrays of Expensive Disks) configuration as shown in FIG. In this case, one NAND SSD 3101 appears to be operating from each server 103 side due to the RAID configuration for the plurality of NAND SSDs. Similarly, due to the RAID configuration for a plurality of SCM SSDs, one SCM SSD 3102 appears to be operating from each server 103 side.

また、SCM SSDとしては、MRAM、RERAM、PCM、3DXPoint、又はNRAM等の、各種のものが採用できる。また、NAND SSDとしては、3DNAND、TLC、又はNLC等の、各種のものを採用できる。 Further, as the SCM SSD, various types such as MRAM, RERAM, PCM, 3DXPoint, NRAM and the like can be adopted. Further, as the NAND SSD, various types such as 3D NAND, TLC, NLC and the like can be adopted.

上述の実施形態は、SCM SSDとNAND SSDの組合せに限定される必要はなく、アクセス速度が異なる異種の半導体記憶装置の組合せが可能である。 The above-described embodiment is not limited to the combination of the SCM SSD and the NAND SSD, and a combination of different types of semiconductor storage devices having different access speeds is possible.

図32は、各実施形態による情報処理装置をソフトウェア処理として実現できるコンピュータのハードウェア構成の一例を示す図である。図32に示されるコンピュータは、Central Processing Unit(CPU)3201、メモリ3202、入力装置3203、出力装置3204、補助情報記憶装置3205、可搬型記録媒体3209が挿入される媒体駆動装置3206、及びネットワーク接続装置3207を有する。これらの構成要素は、バス3208により相互に接続されている。同図に示される構成は上記情報処理装置を実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。 FIG. 32 is a diagram showing an example of a hardware configuration of a computer that can realize an information processing apparatus according to each embodiment as software processing. The computer shown in FIG. 32 includes a Central Processing Unit (CPU) 3201, a memory 3202, an input device 3203, an output device 3204, an auxiliary information storage device 3205, a medium drive device 3206 into which a portable recording medium 3209 is inserted, and a network connection. It has a device 3207. These components are interconnected by bus 3208. The configuration shown in the figure is an example of a computer capable of realizing the information processing apparatus, and such a computer is not limited to this configuration.

メモリ3202は、例えば、Read Only Memory(ROM)、Random Access Memory(RAM)、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。 The memory 3202 is a semiconductor memory such as a Read Only Memory (ROM), a Random Access Memory (RAM), or a flash memory, and stores a program and data used for processing.

CPU(プロセッサ)3201は、例えば、メモリ3202を利用してプログラムを実行することにより、図9、図18、又は図24に示されるサーバ103やマスタサーバ301の901〜904、910〜913、915、916、2401〜2404などの各処理部として動作する。 The CPU (processor) 3201 executes a program using, for example, the memory 3202, so that the server 103 or the master server 301 shown in FIG. 9, FIG. , 916, 2401-2404 and the like.

入力装置3203は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示又は情報の入力に用いられる。出力装置3204は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問合せ又は処理結果の出力に用いられる。 The input device 3203 is, for example, a keyboard, a pointing device, or the like, and is used for inputting an instruction or information from an operator or a user. The output device 3204 is, for example, a display device, a printer, a speaker, or the like, and is used for making an inquiry to an operator or a user or outputting a processing result.

補助情報記憶装置3205は、例えば、ハードディスク記憶装置、磁気ディスク記憶装置、光ディスク装置、光磁気ディスク装置、テープ装置、又は半導体記憶装置である。各実施形態の情報処理装置は、補助情報記憶装置3205にプログラム及びデータを格納しておき、それらをメモリ3202にロードして使用することができる。 The auxiliary information storage device 3205 is, for example, a hard disk storage device, a magnetic disk storage device, an optical disk device, a magneto-optical disk device, a tape device, or a semiconductor storage device. The information processing device of each embodiment can store programs and data in the auxiliary information storage device 3205 and load them into the memory 3202 for use.

媒体駆動装置3206は、可搬型記録媒体3209を駆動し、その記録内容にアクセスする。可搬型記録媒体3209は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体3209は、Compact Disk Read Only Memory(CD−ROM)、Digital Versatile Disk(DVD)、Universal Serial Bus(USB)メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体3209にプログラム及びデータを格納しておき、メモリ3202にロードして使用することができる。 The medium drive device 3206 drives the portable recording medium 3209 to access the recorded contents. The portable recording medium 3209 is a memory device, a flexible disk, an optical disk, a magneto-optical disk, or the like. The portable recording medium 3209 may be a Compact Disc Read Only Memory (CD-ROM), a Digital Versaille Disc (DVD), a Universal Bus (USB) memory, or the like. The operator or the user can store the program and data in the portable recording medium 3209 and load it into the memory 3202 for use.

このように、各実施形態の情報処理装置の処理に用いられるプログラム及びデータを格納するコンピュータ読取り可能な記録媒体は、メモリ3202、補助情報記憶装置3205、又は可搬型記録媒体3209のような、物理的な(非一時的な)記録媒体である。 As described above, the computer-readable recording medium for storing the program and data used for the processing of the information processing apparatus of each embodiment is a physical such as a memory 3202, an auxiliary information storage device 3205, or a portable recording medium 3209. It is a typical (non-temporary) recording medium.

ネットワーク接続装置3207は、例えばLocal Area Network(LAN)等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。ネットワーク接続装置3207は、図9、図18、又は図24に示されるサーバ103やマスタサーバ301の903、904、915、916、2401、又は2402などの各処理部の一部として動作する。各実施形態の情報処理装置は、プログラム又はデータを外部の装置からネットワーク接続装置3207を介して受信し、それらをメモリ3202にロードして使用することができる。 The network connection device 3207 is a communication interface that is connected to a communication network such as a Local Area Network (LAN) and performs data conversion associated with the communication. The network connection device 3207 operates as a part of each processing unit such as the server 103 shown in FIG. 9, FIG. 18, or the master server 301 such as 903, 904, 915, 916, 2401, or 2402. The information processing device of each embodiment can receive a program or data from an external device via the network connection device 3207, load them into the memory 3202, and use them.

なお、各実施形態の情報処理装置が図32の全ての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、オペレータ又はユーザからの指示又は情報を入力する必要がない場合は、入力装置3203が省略されてもよい。可搬型記録媒体3209又は通信ネットワークを利用しない場合は、媒体駆動装置3206又はネットワーク接続装置3207が省略されてもよい。 It should be noted that the information processing apparatus of each embodiment does not have to include all the components of FIG. 32, and some components may be omitted depending on the application or conditions. For example, the input device 3203 may be omitted if it is not necessary to input instructions or information from the operator or user. When the portable recording medium 3209 or the communication network is not used, the medium driving device 3206 or the network connecting device 3207 may be omitted.

開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができる。 Although the embodiments of the disclosure and their advantages have been described in detail, those skilled in the art can make various changes, additions and omissions without departing from the scope of the invention expressly described in the claims.

以上の実施形態に関して、更に以下の付記を開示する。
(付記1)
第1の記憶装置と、前記第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置において、情報処理装置における、前記第2の記憶装置へのリクエスト中のリクエストに関する情報を保持する保持部と、
前記リクエストに関する情報に基づいて、前記第2の記憶装置の負荷を判定する判定部と、
を具備することを特徴とする情報処理装置。
(付記2)
前記情報処理装置は、前記第2の記憶装置のデータを読み出したときに、前記判定部が前記第2の記憶装置の負荷が第1の閾値に比較して高いと判定した場合に、前記第2の記憶装置から読み出したデータを前記第1の記憶装置に移動し、前記第1の記憶装置のデータを読み出したときに、前記判定部が前記第2の記憶装置の負荷が第2の閾値に比較して低いと判定した場合に、前記第1の記憶装置から読み出したデータを前記第2の記憶装置に移動する、ことを特徴とする付記1に記載の情報処理装置。
(付記3)
前記情報処理装置は、前記判定部が前記第2の記憶装置の負荷が第3の閾値に比較して低いと判定した場合に書き込むべきデータを前記第2の記憶装置に書き込み、前記判定部が前記第2の記憶装置の負荷が前記第3の閾値に比較して高いと判定した場合に前記書き込むべきデータを前記第1の記憶装置に書き込む、ことを特徴とする付記2に記載の情報処理装置。
(付記4)
前記情報処理装置は、書き込むべきデータのサイズが第4の閾値に比較して大きい場合には、前記書き込むべきデータを前記第1の記憶装置に書き込み、前記書き込むべきデータのサイズが前記第4の閾値に比較して小さい場合において更に前記判定部が前記第2の記憶装置の負荷が第5の閾値に比較して低いと判定した場合に前記書き込むべきデータを前記第2の記憶装置に書き込み、前記書き込むべきデータのサイズが前記第4の閾値に比較して小さい場合において更に前記判定部が前記第2の記憶装置の負荷が前記第5の閾値に比較して高いと判定した場合に前記書き込むべきデータを前記第1の記憶装置に書き込む、ことを特徴とする付記2に記載の情報処理装置。
(付記5)
前記情報処理装置は、前記判定部が前記第2の記憶装置の負荷が第6の閾値に比較して低いと判定した場合に、前記第1の記憶装置及び前記第2の記憶装置の両方に同一の書き込むべきデータを書き込み、前記判定部が前記第2の記憶装置の負荷が前記第6の閾値に比較して高いと判定した場合に、前記第1の記憶装置のみに前記書き込むべきデータを書き込む、ことを特徴とする付記1に記載の情報処理装置。
(付記6)
前記情報処理装置は、読み出すべきデータが前記第1の記憶装置及び前記第2の記憶装置の両方に記憶されている場合において、前記判定部が前記第2の記憶装置の負荷が第7の閾値に比較して低いと判定した場合に、前記第2の記憶装置から前記読み出すべきデータを読み出し、前記判定部が前記第2の記憶装置の負荷が前記第7の閾値に比較して高いと判定した場合に、前記第1の記憶装置から前記読み出すべきデータを読み出す、ことを特徴とする付記5に記載の情報処理装置。
(付記7)
前記情報処理装置は、読み出されるすデータが前記第1の記憶装置及び前記第2の記憶装置の両方に記憶されている場合において、前記第1の記憶装置及び前記第2の記憶装置の両方から前記読み出すべきデータを読み出して速く読み出されたほうの前記読み出すべきデータを採用し、前記第1の記憶装置からの前記読み出すべきデータの読出しのほうが速かった場合には、前記第2の記憶装置に記憶されている前記読み出すべきデータを削除する、ことを特徴とする付記5に記載の情報処理装置。
(付記8)
前記情報処理装置は、読み出すべきデータが前記第1の記憶装置のみに記憶されている場合において、前記判定部が前記第2の記憶装置の負荷が第8の閾値に比較して低いと判定した場合に、前記読み出すべきデータを前記第1の記憶装置から読み出した後に前記読み出したデータを前記第2の記憶装置にコピーする、ことを特徴とする付記5乃至7の何れかに記載の情報処理装置。
(付記9)
前記第1の記憶装置及び前記第2の記憶装置にアクセスする情報処理装置とは異なる情報処理装置に前記保持部及び前記判定部を具備する、ことを特徴とする付記1乃至8の何れかに記載の情報処理装置。
(付記10)
前記第1の記憶装置及び前記第2の記憶装置にアクセスする情報処理装置に、前記保持部及び前記判定部を具備する、ことを特徴とする付記1乃至8の何れかに記載の情報処理装置。
(付記11)
前記保持部を具備する情報処理装置間で前記リクエストに関する情報を共有する、ことを特徴とする付記10に記載の情報処理装置。
(付記12)
第1の記憶装置と、前記第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置における、前記第2の記憶装置へのリクエスト中のリクエストに関する情報を保持し、
前記リクエストに関する情報に基づいて、前記第2の記憶装置の負荷を判定する、
ことを特徴とする情報処理方法。
(付記13)
第1の記憶装置と、前記第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置における、前記第2の記憶装置へのリクエスト中のリクエストに関する情報を保持するステップと、
前記リクエストに関する情報に基づいて、前記第2の記憶装置の負荷を判定するステップと、
をコンピュータに実行させるためのプログラム。
The following additional notes are further disclosed with respect to the above embodiments.
(Appendix 1)
In the information processing device that can access the first storage device and the second storage device having a faster access speed than the first storage device, the request in the request to the second storage device in the information processing device. A holder that holds information about
A determination unit that determines the load of the second storage device based on the information regarding the request, and a determination unit.
An information processing device characterized by being equipped with.
(Appendix 2)
When the information processing device reads out the data of the second storage device, the determination unit determines that the load of the second storage device is higher than the first threshold value. When the data read from the second storage device is moved to the first storage device and the data of the first storage device is read out, the determination unit determines that the load of the second storage device is the second threshold value. The information processing apparatus according to Appendix 1, wherein the data read from the first storage device is moved to the second storage device when it is determined that the data is lower than that of the first storage device.
(Appendix 3)
The information processing apparatus writes data to be written in the second storage device when the determination unit determines that the load of the second storage device is lower than the third threshold value, and the determination unit writes the data to be written in the second storage device. The information processing according to Appendix 2, wherein when it is determined that the load of the second storage device is higher than the third threshold value, the data to be written is written to the first storage device. Device.
(Appendix 4)
When the size of the data to be written is larger than the fourth threshold value, the information processing apparatus writes the data to be written to the first storage device, and the size of the data to be written is the fourth. When the determination unit further determines that the load of the second storage device is lower than the fifth threshold value when it is smaller than the threshold value, the data to be written is written to the second storage device. When the size of the data to be written is smaller than the fourth threshold value and the determination unit determines that the load of the second storage device is higher than the fifth threshold value, the writing is performed. The information processing apparatus according to Appendix 2, wherein the data to be output is written in the first storage device.
(Appendix 5)
When the determination unit determines that the load of the second storage device is lower than the sixth threshold value, the information processing device may be applied to both the first storage device and the second storage device. When the same data to be written is written and the determination unit determines that the load of the second storage device is higher than the sixth threshold value, the data to be written is stored only in the first storage device. The information processing apparatus according to Appendix 1, wherein the information processing apparatus is to be written.
(Appendix 6)
In the information processing device, when the data to be read is stored in both the first storage device and the second storage device, the determination unit determines that the load of the second storage device is the seventh threshold value. When it is determined that the data is lower than that of the second storage device, the data to be read is read from the second storage device, and the determination unit determines that the load of the second storage device is higher than that of the seventh threshold value. The information processing apparatus according to Appendix 5, wherein the data to be read is read from the first storage device in the case of the above.
(Appendix 7)
The information processing device receives data to be read from both the first storage device and the second storage device when the data to be read is stored in both the first storage device and the second storage device. When the data to be read is read and the data to be read is adopted, and the data to be read is read from the first storage device faster, the second storage device is used. The information processing apparatus according to Appendix 5, wherein the data to be read, which is stored in the data, is deleted.
(Appendix 8)
When the data to be read is stored only in the first storage device, the information processing device determines that the load of the second storage device is lower than the eighth threshold value by the determination unit. In the case, the information processing according to any one of the appendices 5 to 7, wherein the read data is read from the first storage device and then the read data is copied to the second storage device. Device.
(Appendix 9)
Any of the appendices 1 to 8, wherein the information processing device different from the information processing device that accesses the first storage device and the second storage device is provided with the holding unit and the determination unit. The information processing device described.
(Appendix 10)
The information processing device according to any one of Supplementary note 1 to 8, wherein the information processing device for accessing the first storage device and the second storage device is provided with the holding unit and the determination unit. ..
(Appendix 11)
The information processing device according to Appendix 10, wherein information related to the request is shared between the information processing devices including the holding unit.
(Appendix 12)
Information about the request in the request to the second storage device in the first storage device and the information processing device that can access the second storage device having a faster access speed than the first storage device is retained. ,
The load of the second storage device is determined based on the information regarding the request.
An information processing method characterized by that.
(Appendix 13)
Holds information about a request in a request to the second storage device in the first storage device and an information processing device that can access the second storage device having a faster access speed than the first storage device. Steps and
A step of determining the load of the second storage device based on the information regarding the request, and
A program that lets your computer run.

101 NAND SSD
102 SCM SSD
103 サーバ
104 Pcie switch
301 マスタサーバ
302 SCM SSDの負荷情報
901、2404 負荷状態保持部
902、2403 負荷状態判定部
903、2402 負荷情報受信部
904 負荷状態通知部
910 アプリケーション実行部
911 アクセス制御部
912 NAND I/Oキュー
913 SCM I/Oキュー
914 Pcie I/F
915、2401 負荷情報通知部
916 負荷状態受信部
3101 RAID構成のNAND SSD
3102 RAID構成のSCM SSD
3201 CPU
3202 メモリ
3203 入力装置
3204 出力装置
3205 補助情報記憶装置
3206 媒体駆動装置
3207 ネットワーク接続装置
3208 バス
3209 可搬記録媒体
101 NAND SSD
102 SCM SSD
103 server 104 PCIe switch
301 Master server 302 SCM SSD load information 901, 2404 Load status holding unit 902, 2403 Load status determination unit 903, 2402 Load information receiving unit 904 Load status notification unit 910 Application execution unit 911 Access control unit 912 NAND I / O queue 913 SCM I / O Queue 914 PCIe I / F
915, 2401 Load information notification unit 916 Load status receiver unit 3101 NAND SSD with RAID configuration
3102 RAID configuration SCM SSD
3201 CPU
3202 Memory 3203 Input device 3204 Output device 3205 Auxiliary information storage device 3206 Media drive device 3207 Network connection device 3208 Bus 3209 Portable recording medium

Claims (7)

第1の記憶装置と、前記第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置における、前記第2の記憶装置へのリクエスト中のリクエストに関する情報を保持する保持部と、
前記リクエストに関する情報に基づいて、前記第2の記憶装置の負荷を判定する判定部と、
前記判定部が前記第2の記憶装置の負荷が第1の閾値に比較して低いと判定した場合に、前記第1の記憶装置及び前記第2の記憶装置の両方に同一の書き込むべきデータを書き込み、前記判定部が前記第2の記憶装置の負荷が前記第1の閾値に比較して高いと判定した場合に、前記第1の記憶装置のみに前記書き込むべきデータを書き込む制御、及び、読み出すべきデータが前記第1の記憶装置及び前記第2の記憶装置の両方に記憶されている場合において、前記第1の記憶装置及び前記第2の記憶装置の両方から前記読み出すべきデータを読み出して速く読み出されたほうの前記読み出すべきデータを採用し、前記第1の記憶装置からの前記読み出すべきデータの読出しのほうが速かった場合には、前記第2の記憶装置に記憶されている前記読み出すべきデータを削除する制御を行う制御部と、
を具備することを特徴とする情報処理システム。
Holds information about a request in a request to the second storage device in the first storage device and an information processing device that can access the second storage device having a faster access speed than the first storage device. Holding part and
A determination unit that determines the load of the second storage device based on the information regarding the request, and a determination unit.
When the determination unit determines that the load of the second storage device is lower than the first threshold value, the same data to be written to both the first storage device and the second storage device is transmitted. Writing, control of writing the data to be written only to the first storage device, and reading when the determination unit determines that the load of the second storage device is higher than the first threshold value. When the data to be read is stored in both the first storage device and the second storage device, the data to be read is quickly read from both the first storage device and the second storage device. When the read-out data is adopted and the read-out data from the first storage device is faster, the read-out data stored in the second storage device should be read out. A control unit that controls deletion of data,
An information processing system characterized by being equipped with.
前記情報処理装置は、読み出すべきデータが前記第1の記憶装置のみに記憶されている場合において、前記判定部が前記第2の記憶装置の負荷が第3の閾値に比較して低いと判定した場合に、前記読み出すべきデータを前記第1の記憶装置から読み出した後に前記読み出したデータを前記第2の記憶装置にコピーする、ことを特徴とする請求項1に記載の情報処理システム。 When the data to be read is stored only in the first storage device, the information processing device determines that the load of the second storage device is lower than the third threshold value by the determination unit. The information processing system according to claim 1 , wherein the data to be read is read from the first storage device, and then the read data is copied to the second storage device. 前記情報処理システムは、前記情報処理装置を含む複数の情報処理装置を具備し、
前記保持部及び前記判定部は、前記複数の情報処理装置のうちの、前記第1の記憶装置及び前記第2の記憶装置にアクセスする情報処理装置とは異なる情報処理装置が具備する、ことを特徴とする請求項1または2に記載の情報処理システム。
The information processing system includes a plurality of information processing devices including the information processing device, and the information processing system includes a plurality of information processing devices.
The holding unit and the determination unit are provided with an information processing device different from the information processing device that accesses the first storage device and the second storage device among the plurality of information processing devices. The information processing system according to claim 1 or 2 , wherein the information processing system is characterized.
前記情報処理装置が、前記保持部、前記判定部、及び前記制御部を具備する、ことを特徴とする請求項1または2に記載の情報処理システム。 The information processing system according to claim 1 or 2 , wherein the information processing apparatus includes the holding unit, the determination unit, and the control unit. 前記情報処理システムは、前記情報処理装置を複数具備し、複数の前記情報処理装置間で前記リクエストに関する情報を共有し、
複数の前記情報処理装置の各々では、自装置の具備する前記判定部が、共有する前記リクエストに関する情報に基づいて前記判定を行い、該判定の結果に基づいた前記制御を自装置の具備する前記制御部が行うことを特徴とする請求項に記載の情報処理システム。
The information processing system includes a plurality of the information processing devices, and shares information regarding the request among the plurality of the information processing devices.
In each of the plurality of information processing devices, the determination unit included in the own device makes the determination based on the shared information about the request, and the control provided by the own device based on the result of the determination. The information processing system according to claim 4 , wherein the control unit performs the information processing.
第1の記憶装置と、前記第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置を具備する情報処理システムが行う情報処理方法であって、
前記情報処理システムが具備する保持部が、前記情報処理装置における、前記第2の記憶装置へのリクエスト中のリクエストに関する情報を保持し、
前記情報処理システムが具備する判定部が、前記リクエストに関する情報に基づいて、前記第2の記憶装置の負荷を判定し、
前記判定部が前記第2の記憶装置の負荷が第1の閾値に比較して低いと判定した場合に、前記第1の記憶装置及び前記第2の記憶装置の両方に同一の書き込むべきデータを書き込み、前記判定部が前記第2の記憶装置の負荷が前記第1の閾値に比較して高いと判定した場合に、前記第1の記憶装置のみに前記書き込むべきデータを書き込む制御、及び、読み出すべきデータが前記第1の記憶装置及び前記第2の記憶装置の両方に記憶されている場合において、前記第1の記憶装置及び前記第2の記憶装置の両方から前記読み出すべきデータを読み出して速く読み出されたほうの前記読み出すべきデータを採用し、前記第1の記憶装置からの前記読み出すべきデータの読出しのほうが速かった場合には、前記第2の記憶装置に記憶されている前記読み出すべきデータを削除する制御を、前記情報処理システムが具備する制御部が行う、
ことを特徴とする情報処理方法。
It is an information processing method performed by an information processing system including a first storage device and an information processing device capable of accessing a second storage device having a faster access speed than the first storage device.
The holding unit included in the information processing system holds information regarding the request in the request to the second storage device in the information processing device.
The determination unit included in the information processing system determines the load of the second storage device based on the information regarding the request.
When the determination unit determines that the load of the second storage device is lower than the first threshold value, the same data to be written to both the first storage device and the second storage device is transmitted. Writing, control of writing the data to be written only to the first storage device, and reading when the determination unit determines that the load of the second storage device is higher than the first threshold value. When the data to be read is stored in both the first storage device and the second storage device, the data to be read is quickly read from both the first storage device and the second storage device. When the read-out data is adopted and the read-out data from the first storage device is faster, the read-out data stored in the second storage device should be read out. The control unit provided in the information processing system controls the deletion of data.
An information processing method characterized by that.
第1の記憶装置と、前記第1の記憶装置よりもアクセス速度が速い第2の記憶装置にアクセス可能な情報処理装置における、前記第2の記憶装置へのリクエスト中のリクエストに関する情報を保持するステップと、
前記リクエストに関する情報に基づいて、前記第2の記憶装置の負荷を判定するステップと、
前記判定するステップにおいて前記第2の記憶装置の負荷が第1の閾値に比較して低いと判定した場合に、前記第1の記憶装置及び前記第2の記憶装置の両方に同一の書き込むべきデータを書き込み、前記判定するステップにおいて前記第2の記憶装置の負荷が前記第1の閾値に比較して高いと判定した場合に、前記第1の記憶装置のみに前記書き込むべきデータを書き込む制御を行うステップと、
読み出すべきデータが前記第1の記憶装置及び前記第2の記憶装置の両方に記憶されている場合において、前記第1の記憶装置及び前記第2の記憶装置の両方から前記読み出すべきデータを読み出して速く読み出されたほうの前記読み出すべきデータを採用し、前記第1の記憶装置からの前記読み出すべきデータの読出しのほうが速かった場合には、前記第2の記憶装置に記憶されている前記読み出すべきデータを削除する制御を行うステップと、
を前記情報処理装置に実行させるためのプログラム。
Holds information about a request in a request to the second storage device in the first storage device and an information processing device that can access the second storage device having a faster access speed than the first storage device. Steps and
A step of determining the load of the second storage device based on the information regarding the request, and
When it is determined in the determination step that the load of the second storage device is lower than the first threshold value, the same data to be written to both the first storage device and the second storage device is to be written. Is written, and when it is determined in the determination step that the load of the second storage device is higher than the first threshold value, control is performed to write the data to be written only to the first storage device. Steps and
When the data to be read is stored in both the first storage device and the second storage device, the data to be read is read from both the first storage device and the second storage device. When the data to be read is adopted as the faster read data and the data to be read from the first storage device is read faster, the read data stored in the second storage device is used. Steps to control the deletion of data that should be
Is a program for causing the information processing apparatus to execute.
JP2020190611A 2017-03-30 2020-11-17 Information processing systems, methods, and programs Active JP6969656B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020190611A JP6969656B2 (en) 2017-03-30 2020-11-17 Information processing systems, methods, and programs

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017068585A JP6822274B2 (en) 2017-03-30 2017-03-30 Information processing systems, methods, and programs
JP2020190611A JP6969656B2 (en) 2017-03-30 2020-11-17 Information processing systems, methods, and programs

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017068585A Division JP6822274B2 (en) 2017-03-30 2017-03-30 Information processing systems, methods, and programs

Publications (2)

Publication Number Publication Date
JP2021036461A JP2021036461A (en) 2021-03-04
JP6969656B2 true JP6969656B2 (en) 2021-11-24

Family

ID=74716843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020190611A Active JP6969656B2 (en) 2017-03-30 2020-11-17 Information processing systems, methods, and programs

Country Status (1)

Country Link
JP (1) JP6969656B2 (en)

Also Published As

Publication number Publication date
JP2021036461A (en) 2021-03-04

Similar Documents

Publication Publication Date Title
JP6822274B2 (en) Information processing systems, methods, and programs
US20180349030A1 (en) Storage control device, storage control program, and storage system
US10042563B2 (en) Segmenting read requests and interleaving segmented read and write requests to reduce latency and maximize throughput in a flash storage device
US10649667B2 (en) Mitigating GC effect in a RAID configuration
US7536505B2 (en) Storage system and method for controlling block rearrangement
JP5052278B2 (en) Apparatus and method for controlling storage device
US8904119B2 (en) Method and structures for performing a migration of a logical volume with a serial attached SCSI expander
US20180307426A1 (en) Storage apparatus and storage control method
US10678431B1 (en) System and method for intelligent data movements between non-deduplicated and deduplicated tiers in a primary storage array
US20110197041A1 (en) Storage apparatus, storage apparatus control program, and storage apparatus control method
US20130262904A1 (en) Storage apparatus and method of determining device to be activated
JP2009087282A (en) Parallel computation system and parallel computation method
US9817583B2 (en) Storage system and method for allocating virtual volumes based on access frequency
US20180181316A1 (en) Apparatus and method to store de-duplicated data into storage devices while suppressing latency and communication load
JP6969656B2 (en) Information processing systems, methods, and programs
US8938596B2 (en) Storage apparatus, control apparatus, and storage apparatus control method
US10705733B1 (en) System and method of improving deduplicated storage tier management for primary storage arrays by including workload aggregation statistics
JP7323769B2 (en) Storage devices, storage systems and programs
US8972634B2 (en) Storage system and data transfer method
US20160139842A1 (en) Storage control apparatus and storage system
US11513902B1 (en) System and method of dynamic system resource allocation for primary storage systems with virtualized embedded data protection
JP2015176218A (en) Arithmetic processing unit, control method of the same, and control program of the same
JP2011090531A (en) Information storage device
KR102673715B1 (en) Data control system and method of solid state drive attached to host kernel
US11372554B1 (en) Cache management system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210817

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210914

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211011

R150 Certificate of patent or registration of utility model

Ref document number: 6969656

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150