JP5924482B2 - Storage device - Google Patents

Storage device Download PDF

Info

Publication number
JP5924482B2
JP5924482B2 JP2012026201A JP2012026201A JP5924482B2 JP 5924482 B2 JP5924482 B2 JP 5924482B2 JP 2012026201 A JP2012026201 A JP 2012026201A JP 2012026201 A JP2012026201 A JP 2012026201A JP 5924482 B2 JP5924482 B2 JP 5924482B2
Authority
JP
Japan
Prior art keywords
data
storage device
cache
unit
primary
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.)
Expired - Fee Related
Application number
JP2012026201A
Other languages
Japanese (ja)
Other versions
JP2013164660A (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012026201A priority Critical patent/JP5924482B2/en
Publication of JP2013164660A publication Critical patent/JP2013164660A/en
Application granted granted Critical
Publication of JP5924482B2 publication Critical patent/JP5924482B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明に係るいくつかの態様は、ストレージ装置に関する。   Some embodiments according to the present invention relate to a storage apparatus.

近年、例えば複数のHDD(Hard Disk Drive)等のディスクドライブ等を備える、大容量のデータを記憶するストレージ装置が普及しつつある(例えば特許文献1参照)。特許文献1には、書込要求がなされたデータを所定サイズのブロックに分割したデータブロックを、ディスク装置内のバッファエリアに格納すると共に、バッファエリアに格納したデータを格納エリアに転送する装置が開示されている。   In recent years, a storage device that stores large-capacity data including a disk drive such as a plurality of HDDs (Hard Disk Drives) has become widespread (see, for example, Patent Document 1). Patent Document 1 discloses an apparatus for storing a data block obtained by dividing data requested for writing into blocks of a predetermined size in a buffer area in the disk device and transferring the data stored in the buffer area to the storage area. It is disclosed.

特開平07−210330号公報JP 07-210330 A

ここで、多くのストレージ装置は、データのリード性能やライト性能を向上させるため、ライト要求の対象データを一時的に保存するキャッシュメモリを備えている。しかしながら、キャッシュメモリは記憶容量に限界があるため、マルチメディアデータ(例えば動画データ等)等の大容量のデータの書込要求を受けた場合には、キャッシュ容量を圧迫してしまう。   Here, many storage apparatuses include a cache memory that temporarily stores data to be written, in order to improve data read performance and write performance. However, since the cache memory has a limited storage capacity, when it receives a write request for large-capacity data such as multimedia data (for example, moving image data), the cache capacity is compressed.

本発明のいくつかの態様は前述の課題に鑑みてなされたものであり、状況に応じて、好適な書込処理を行うことのできるストレージ装置を提供することを目的の1つとする。   Some aspects of the present invention have been made in view of the above-described problems, and an object of the present invention is to provide a storage apparatus capable of performing a suitable writing process depending on the situation.

本発明のストレージ装置は、ホスト装置から書き込まれたデータを一時的に記憶する一次記憶装置と、前記一次記憶装置よりも記憶容量の大きい第1の記憶装置と、前記第1の記憶装置よりも記憶容量が大きく、読込み速度の遅い第2の記憶装置と、前記一次記憶装置に記憶されたデータのエントロピーに応じて、前記第1の記憶装置又は前記第2の記憶装置のいずれかに当該データを記録する制御部とを備える。   The storage device according to the present invention includes a primary storage device that temporarily stores data written from a host device, a first storage device that has a larger storage capacity than the primary storage device, and a storage device that is larger than the first storage device. Depending on the entropy of the data stored in the primary storage device and the second storage device having a large storage capacity and slow reading speed, the data is stored in either the first storage device or the second storage device. And a control unit for recording.

尚、本発明において、「部」や「手段」、「装置」とは、単に物理的手段を意味するものではなく、その「部」や「手段」、「装置」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」や「手段」、「装置」が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の「部」や「手段」、「装置」の機能が1つの物理的手段や装置により実現されても良い。   In the present invention, “part”, “means”, and “apparatus” do not simply mean physical means, but the functions of the “part”, “means”, and “apparatus” are realized by software. This includes cases where In addition, even if the functions of one “unit”, “means”, and “device” are realized by two or more physical means or devices, two or more “parts”, “means”, and “devices” The function may be realized by one physical means or apparatus.

本発明によれば、状況に応じて、好適な書込処理を行うことのできるストレージ装置を提供することができる。   According to the present invention, it is possible to provide a storage apparatus capable of performing a suitable writing process depending on the situation.

本発明の実施形態におけるディスク装置が使用される記録システムの概略構成を示す機能ブロック図である。1 is a functional block diagram showing a schematic configuration of a recording system in which a disk device according to an embodiment of the present invention is used. 図1に示したディスク装置の処理の流れを示すフローチャートである。3 is a flowchart showing a flow of processing of the disk device shown in FIG. 1. 図1に示したディスク装置の処理の具体例を説明するための図である。FIG. 2 is a diagram for explaining a specific example of processing of the disk device shown in FIG. 1.

以下に本発明の実施形態を説明する。以下の説明及び参照する図面の記載において、同一又は類似の構成には、それぞれ同一又は類似の符号が付されている。   Embodiments of the present invention will be described below. In the following description and the description of the drawings to be referred to, the same or similar components are denoted by the same or similar reference numerals.

(1 実施形態の概要)
一般的にストレージ装置は、例えば複数のディスクドライブを搭載し、様々なデータを保存するために用いられる。ディスクドライブは、近年の記録密度の向上により大容量化お呼び低価格化が進んでおり、近年では、1台のディスクドライブあたり数百ギガバイトから数テラバイトのものが主流となっている。また、ディスクドライブ自体の小型化も進んでいることから、ストレージ装置が省スペース化及び大容量化している。これに伴い、動画データを含むマルチメディアデータ等の大きなサイズのデータをコンピュータ上で扱うことが可能となっている。
(Outline of 1 embodiment)
Generally, a storage device is equipped with a plurality of disk drives, for example, and is used for storing various data. In recent years, disk drives have become larger in capacity and lower in price due to an increase in recording density, and in recent years, those of several hundred gigabytes to several terabytes per disk drive have become mainstream. In addition, since the disk drive itself has been reduced in size, the storage device is reduced in space and capacity. Accordingly, large-size data such as multimedia data including moving image data can be handled on the computer.

このような動画データや音声データ、静止画データ等のマルチメディアデータは、大容量化が進む一方で、圧縮技術も向上している。例えば動画圧縮では、MPEG−4やH.264等、精細な画質を保ちつつ、高い圧縮率を誇る変換技術(符号化技術)が普及しつつある。そのため、マルチメディアデータをストレージ装置に保存する際には、非圧縮のまま保存するのではなく、ホスト装置側で何らかの圧縮変換処理を加えた上で、ストレージに保存されることが多い。   The multimedia data such as moving image data, audio data, and still image data has been increased in capacity, and the compression technology has been improved. For example, in video compression, MPEG-4 or H.264 is used. Conversion technology (encoding technology) that boasts a high compression rate while maintaining fine image quality, such as H.264, is becoming widespread. For this reason, when the multimedia data is stored in the storage device, it is often stored in the storage after being subjected to some compression conversion processing on the host device side, rather than being stored uncompressed.

一方、ストレージ装置には、データのリード性能(読込性能)やライト性能(書込性能)を向上させるため、ライト要求の対象データを一時的に保存するキャッシュメモリが備えられていることが多い。また、キャッシュメモリには、高速アクセスが可能なDRAM(Dynamic Random Access Memory)が用いられていることが多い。ここで、キャッシュメモリの記憶容量を大容量化すると、リードライトの性能を向上させることができるが、DRAMは高額なため、キャッシュメモリのコストが増大してしまう。そのため、高速だが小容量のDRAM等のメモリを一次キャッシュとして使用し、DRAMよりも低速だが大容量且つ低価格なメモリやフラッシュSSD(Solid State Drive)を二次キャッシュとして使用することが考えられる。このように二次キャッシュを使用する場合のデータ格納の方法としては、例えば、一次キャッシュ上のデータがあふれて二次キャッシュに書込むキャッシュライトが必要となった場合に、あふれた全てのデータを二次キャッシュに格納することが考えられる。
しかしながら、このように実装すると、次のような課題が生じる。
On the other hand, in order to improve data read performance (read performance) and write performance (write performance), a storage device is often provided with a cache memory for temporarily storing target data for a write request. In many cases, a DRAM (Dynamic Random Access Memory) capable of high-speed access is used as the cache memory. Here, when the storage capacity of the cache memory is increased, the read / write performance can be improved. However, since the DRAM is expensive, the cost of the cache memory increases. Therefore, it is conceivable to use a memory such as a high-speed but small-capacity DRAM as a primary cache, and use a memory or a flash SSD (Solid State Drive) that is slower than a DRAM but has a large capacity and a low price as a secondary cache. As described above, when the secondary cache is used, as a data storage method, for example, when the data on the primary cache overflows and a cache write to be written to the secondary cache becomes necessary, all the overflowed data is deleted. It is possible to store in the secondary cache.
However, such mounting causes the following problems.

まず1つめの課題は、マルチメディアデータのように数十メガバイトから数ギガバイトといった大容量データのライト要求を受けたときに、そのデータを全て二時キャッシュ上に格納してしまうと、二次キャッシュの容量を圧迫してしまう可能性があることである。この課題は、例えば、ストレージ装置をマルチメディアデータのアーカイブとして使用する場合等に特に顕著となる。この点、例えばNAS(Network Attached Storage)であれば、ファイル特性情報を参照することによって二次キャッシュの配置制御を行う技術が実用化されているが、SANストレージの場合には、ライト要求はファイル単位ではなく、それよりも小さいブロックデータ単位で行われるため、ファイルヘッダ等の情報に基づく二次キャッシュへの配置制御を行うことは困難である。   The first problem is that when a large-volume data write request such as several tens of megabytes to several gigabytes is received, such as multimedia data, if all the data is stored in the secondary cache, the secondary cache There is a possibility of squeezing the capacity. This problem becomes particularly noticeable when the storage device is used as an archive of multimedia data, for example. In this regard, for example, in NAS (Network Attached Storage), a technique for performing secondary cache placement control by referring to file characteristic information has been put into practical use. In the case of SAN storage, a write request is a file Since it is performed not in units but in block data units smaller than that, it is difficult to control placement in the secondary cache based on information such as a file header.

2つめの課題は、二次キャッシュにフラッシュSSDを利用する場合には、フラッシュSSDには書込みの寿命制限があるため、キャッシュとして頻繁にデータの書込むことはできない点である。   The second problem is that when a flash SSD is used for a secondary cache, the flash SSD has a write life limit, so that data cannot be frequently written as a cache.

そこで、本実施形態に係るストレージ装置であるディスク装置100では、搭載された二次キャッシュのキャッシュ制御を効率的に実施すべく、一次キャッシュとして利用されている一次キャッシュメモリからブロックデータを追出す際に、当該ブロックデータについてエントロピーを計算する。この結果、エントロピーが一定の閾値以上のブロックデータはディスクドライブへ直接書込み、それ以外のブロックデータは二次キャッシュメモリに書込む。一般的に、圧縮済みのマルチメディアデータはエントロピーが高いため、このように実装することにより、マルチメディアデータの二次キャッシュへの書き込みが制限されることとなるので二次キャッシュメモリの容量を圧迫させずにすみ、また、二次キャッシュメモリにフラッシュSSDを利用する場合には、フラッシュSSDの寿命をすり減らさずにすむようになる。つまり、ストレージ装置に搭載された二次キャッシュメモリのキャッシュ制御を好適に行えるようになる。   Therefore, in the disk device 100 that is the storage device according to the present embodiment, when the block data is ejected from the primary cache memory used as the primary cache in order to efficiently perform cache control of the mounted secondary cache. Then, entropy is calculated for the block data. As a result, block data whose entropy exceeds a certain threshold is directly written to the disk drive, and other block data is written to the secondary cache memory. In general, compressed multimedia data has a high entropy, and this implementation limits the writing of multimedia data to the secondary cache, thus reducing the capacity of the secondary cache memory. In addition, when the flash SSD is used for the secondary cache memory, the life of the flash SSD is not shortened. That is, the cache control of the secondary cache memory mounted on the storage device can be suitably performed.

(2 ディスク装置100の機能構成)
以下、実施形態に係るストレージ装置であるディスク装置100の概略構成を、図1を参照しながら説明する。図1は、ディスク装置100が使用される記録システムの構成を示す機能ブロック図である。
(2 Functional configuration of the disk device 100)
Hereinafter, a schematic configuration of the disk device 100 as a storage device according to the embodiment will be described with reference to FIG. FIG. 1 is a functional block diagram showing a configuration of a recording system in which the disk device 100 is used.

本記録システムは、ディスク装置100と、ホスト装置200(ホスト装置200A乃至200Mを総称して「ホスト装置200」と呼ぶ。以下、コントローラ101、ホストインタフェース103、一次キャッシュ部105、二次キャッシュ部107、ディスクインタフェース109、ディスクドライブ150等についても同様。)とを含み、ディスク装置100及びホスト装置200は、SAN(Storage Area Network)300を介して接続される。SANの例としては、例えばFC(Fibre Channel)−SANや、iSCSI−SAN等が考えられる。   In this recording system, the disk device 100 and the host device 200 (host devices 200A to 200M are collectively referred to as “host device 200”. Hereinafter, the controller 101, the host interface 103, the primary cache unit 105, and the secondary cache unit 107 are called. The same applies to the disk interface 109, the disk drive 150, and the like.), And the disk device 100 and the host device 200 are connected via a SAN (Storage Area Network) 300. As an example of SAN, FC (Fibre Channel) -SAN, iSCSI-SAN, etc. can be considered, for example.

ホスト装置200は、ディスク装置100を利用する装置であり、例えば、ファイルサーバやデータベースサーバ等である。尚、本実施形態では、ホスト装置200A乃至200Mの複数からディスク装置100へアクセス可能である場合を考えているが、これに限られるものではなく、例えば1台であっても良い。   The host device 200 is a device that uses the disk device 100, and is, for example, a file server or a database server. In this embodiment, a case is considered in which a plurality of host devices 200A to 200M can access the disk device 100. However, the present invention is not limited to this, and for example, a single device may be used.

ディスク装置100は、ホスト装置200から出力された書込み要求(ライト要求)や読込み要求(リード要求)に応じて、ディスク装置100はデータの書込処理及び読込処理を行う。ディスク装置100は、ホストインタフェース103、一次キャッシュ部105、二次キャッシュ部107、及びディスクインタフェース109を含むコントローラ101と、1台以上のディスクドライブ150とを含む。ディスクインタフェース109とディスクドライブ150との間は、SAS(Serial Attached SCSI)やSATA(Serial ATA)等で接続される。図1のディスク装置100の例におけるコントローラ101は、片方に障害が発生しても運用が継続できるようにすべく、2つのコントローラ101A及び101Bでクラスタ構成されている。   In response to a write request (write request) or read request (read request) output from the host device 200, the disk device 100 performs a data write process and a data read process. The disk device 100 includes a controller 101 including a host interface 103, a primary cache unit 105, a secondary cache unit 107, and a disk interface 109, and one or more disk drives 150. The disk interface 109 and the disk drive 150 are connected by SAS (Serial Attached SCSI), SATA (Serial ATA), or the like. The controller 101 in the example of the disk device 100 in FIG. 1 is configured in a cluster configuration with two controllers 101A and 101B so that the operation can be continued even if a failure occurs on one side.

ホストインタフェース103は、ディスク装置100を利用するホスト装置200からリード(読込み)及びライト(書込み)の要求を受信するインタフェースである。ホストインタフェース103の具体例としては、例えばFCやiSCSIのホストバスアダプタ(HBA)等が考えられる。   The host interface 103 is an interface for receiving read (read) and write (write) requests from the host device 200 using the disk device 100. As a specific example of the host interface 103, for example, an FC or iSCSI host bus adapter (HBA) can be considered.

一次キャッシュ部105は、一次キャッシュ制御部111と、一次キャッシュ記憶部115とを含む。一次キャッシュ記憶部115は、ホスト装置200からのライト要求に従い、データを一時的に記憶したり、リード要求に従って読み出されたデータを一時的に記憶したりする。一次キャッシュ記憶部115は、例えばDRAM等の、読込み書込み両面で高速アクセスが可能なメモリである。   The primary cache unit 105 includes a primary cache control unit 111 and a primary cache storage unit 115. The primary cache storage unit 115 temporarily stores data according to a write request from the host device 200, or temporarily stores data read according to a read request. The primary cache storage unit 115 is a memory that can be accessed at high speed on both the read and write sides, such as a DRAM.

一次キャッシュ制御部111は、一次キャッシュ記憶部115上のブロックデータに対して、ホスト装置200や二次キャッシュ部107、ディスクドライブ150へ書込みや読出しを制御するモジュールである。ここで、一次キャッシュ制御部111はエントロピー計算部113を備えている。エントロピー計算部113は、一次キャッシュ記憶部115に格納されたブロックデータのエントロピーを計算することができ、この計算結果に応じて一次キャッシュ制御部111は、一次キャッシュ記憶部115から追出されたブロックデータの書込み先を二次キャッシュ記憶部119とするかディスクドライブ150とするかを決定する。   The primary cache control unit 111 is a module that controls writing and reading of block data in the primary cache storage unit 115 to and from the host device 200, the secondary cache unit 107, and the disk drive 150. Here, the primary cache control unit 111 includes an entropy calculation unit 113. The entropy calculation unit 113 can calculate the entropy of the block data stored in the primary cache storage unit 115, and the primary cache control unit 111 responds to the calculation result by the primary cache control unit 111. It is determined whether the data write destination is the secondary cache storage unit 119 or the disk drive 150.

ここで、エントロピーとは、一般的に無秩序さ、曖昧さ、不確実さを表す尺度であるが、情報科学の分野では、情報の冗長性の大きさを示す尺度と説明することができる。冗長性が大きいデータほどエントロピーは低くなり、冗長性が低い、即ち情報が乱雑で圧縮が困難なデータであるほど、エントロピーは高くなる。上述の通り、動画データ等のマルチメディアデータは、一般にホスト装置200側で圧縮されてからディスク装置100に書込まれることが多いが、最近のマルチメディアデータの圧縮処理(エンコード)に用いられるコーデック(エンコーダを含む)は非常に圧縮性能が高いため、圧縮後のデータに更に他の圧縮アルゴリズムを適用したとしても、その圧縮性能は限られている。つまり、圧縮後(符号化後)のマルチメディアデータは、一般に圧縮可能率(更に圧縮できる圧縮率)が低く、エントロピーが高い。よって、エントロピーの高低は、圧縮可能率の低高と近似させることが可能であり、また、エントロピーの高低は、(圧縮後の)マルチメディアデータであるか否かの判別に用いることが可能な尺度と捉えることができる。以下、エントロピー計算部113は、対象ブロックデータの圧縮可能率をエントロピーを示す尺度として算出するものとして説明する。
尚、圧縮可能率は、例えば100−{(圧縮後のブロックデータのサイズ)÷(圧縮前のブロックデータのサイズ)×100}により求めることができる。
Here, entropy is a measure that generally represents disorder, ambiguity, and uncertainty, but in the field of information science, it can be described as a measure that indicates the degree of redundancy of information. Data with higher redundancy has lower entropy, and data with lower redundancy, that is, data that is messy and difficult to compress, has higher entropy. As described above, multimedia data such as moving image data is generally written on the disk device 100 after being compressed on the host device 200 side, but a codec used for the recent compression processing (encoding) of multimedia data. Since the compression performance (including the encoder) is very high, even if another compression algorithm is further applied to the compressed data, the compression performance is limited. That is, multimedia data after compression (after encoding) generally has a low compressibility rate (compression rate that can be further compressed) and a high entropy. Therefore, the level of entropy can be approximated to the level of compressibility, and the level of entropy can be used to determine whether or not it is multimedia data (after compression). It can be regarded as a scale. Hereinafter, description will be made assuming that the entropy calculation unit 113 calculates the compressibility rate of the target block data as a scale indicating entropy.
The compressibility ratio can be obtained by, for example, 100 − {(size of block data after compression) ÷ (size of block data before compression) × 100}.

二次キャッシュ部107は、二次キャッシュ制御部117と二次キャッシュ記憶部119とを含み、一次キャッシュ部105とディスクドライブ150との中間に配置されている。よって、二次キャッシュ部107上に使用頻度の高いデータを蓄積しておくことにより、二次キャッシュ部107よりも低速なディスクドライブ150へのアクセスを減らし、全体的な書込み/読込みの性能を上げることが可能となる。二次キャッシュ記憶部119には、一次キャッシュ記憶部115と同様にDRAMを用いることができる他、フラッシュSSDを用いることもできる。ここで、二次キャッシュ記憶部119は、一次キャッシュ記憶部115よりも大容量である。   The secondary cache unit 107 includes a secondary cache control unit 117 and a secondary cache storage unit 119, and is disposed between the primary cache unit 105 and the disk drive 150. Therefore, by accumulating frequently used data on the secondary cache unit 107, access to the disk drive 150 that is slower than the secondary cache unit 107 is reduced, and overall write / read performance is improved. It becomes possible. The secondary cache storage unit 119 can be a DRAM as well as the primary cache storage unit 115, and can also be a flash SSD. Here, the secondary cache storage unit 119 has a larger capacity than the primary cache storage unit 115.

二次キャッシュ制御部117は、二次キャッシュ記憶部119上のブロックデータについて、一次キャッシュ部105やディスクドライブ150への書込みや読出しを制御するモジュールである。   The secondary cache control unit 117 is a module that controls writing and reading of block data on the secondary cache storage unit 119 to and from the primary cache unit 105 and the disk drive 150.

ディスクインタフェース109は、コントローラ101からディスクドライブ150への書込み及び読込み処理を行うためのインタフェースである。また、ディスクドライブ150は、例えばHDD(Hard Disk Drive)等の記憶装置である。図1のディスク装置100の例では、ディスクドライブ150として、ディスクドライブ150A乃至150Nの複数台が用意されており、これらが、例えばRAID(Redundant Arrays of Inexpensive Disks)等のディスクアレイを構成していても良い。また、ディスクドライブ150は1台であっても良い。尚、ディスクドライブ150は、二次キャッシュ記憶部119よりもアクセス速度が劣るが、容量が大きい。   The disk interface 109 is an interface for performing writing and reading processing from the controller 101 to the disk drive 150. The disk drive 150 is a storage device such as an HDD (Hard Disk Drive). In the example of the disk device 100 of FIG. 1, a plurality of disk drives 150A to 150N are prepared as the disk drive 150, and these constitute a disk array such as a RAID (Redundant Arrays of Inexpensive Disks), for example. Also good. Further, the number of disk drives 150 may be one. The disk drive 150 has a lower access speed than the secondary cache storage unit 119, but has a larger capacity.

(3 処理の流れ)
以下、図2を参照しながら、ディスク装置100の処理の流れを説明する。図2は、ディスク装置100の処理の流れを示すフローチャートである。図2の処理は、一次キャッシュ部105の一次キャッシュ記憶部115上の全てのキャッシュページが使用されている状態(空きのキャッシュページが存在しない場合)において、ホスト装置200から一次キャッシュ記憶部115上に存在しないブロックデータに対するアクセス要求があった場合の処理の流れである。
(3 Process flow)
The processing flow of the disk device 100 will be described below with reference to FIG. FIG. 2 is a flowchart showing a processing flow of the disk device 100. The processing of FIG. 2 is performed by the host device 200 on the primary cache storage unit 115 in a state where all the cache pages on the primary cache storage unit 115 of the primary cache unit 105 are used (when there is no empty cache page). This is a flow of processing when there is an access request for block data that does not exist in.

尚、後述の各処理ステップは、処理内容に矛盾を生じない範囲で、任意に順番を変更して若しくは並列に実行することができ、また、各処理ステップ間に他のステップを追加しても良い。更に、便宜上1つのステップとして記載されているステップは複数のステップに分けて実行することもでき、便宜上複数に分けて記載されているステップを1ステップとして実行することもできる。   Each processing step to be described later can be executed in any order or in parallel as long as there is no contradiction in processing contents, and other steps can be added between the processing steps. good. Further, a step described as a single step for convenience can be executed by being divided into a plurality of steps, and a step described as being divided into a plurality of steps for convenience can be executed as one step.

まず、一次キャッシュ部105の一次キャッシュ制御部111は、一次キャッシュ記憶部115上のいずれかのキャッシュページに格納されているブロックデータを1つ選択して(S201)、一次キャッシュ記憶部115上から追出して一次キャッシュ記憶部115に空きのキャッシュページを作成する処理を開始する。ここで、追出すブロックデータを格納しているキャッシュページは、例えば、一次キャッシュ制御部111内で管理されている管理情報リストに記録されているキャッシュページのアクセス順に基づき、最も遠い過去にアクセスされたブロックデータを格納しているキャッシュページのページ番号を求め、これを対象キャッシュページのページ番号とすることにより選定できる。すなわち、一次キャッシュ部105は、LRU(Least Recent Used)方式に基づいて、破棄する(追出す)対象のキャッシュページを選定する。しかしながら、これ以外のキャッシュページの選定方式を用いてもよく、例えば、参照された頻度が最も低いブロックデータを格納しているキャッシュページを破棄する(追出す)対象とするLFU(Least Frequently Used)方式を用いても良い。   First, the primary cache control unit 111 of the primary cache unit 105 selects one block data stored in any cache page on the primary cache storage unit 115 (S201), and from the primary cache storage unit 115 The process of creating an empty cache page in the primary cache storage unit 115 is started. Here, the cache page storing the block data to be ejected is accessed in the farthest past based on the access order of the cache pages recorded in the management information list managed in the primary cache control unit 111, for example. The page number of the cache page storing the block data can be obtained and used as the page number of the target cache page. That is, the primary cache unit 105 selects a cache page to be discarded (ejected) based on an LRU (Least Recently Used) method. However, other cache page selection methods may be used. For example, an LFU (Least Frequently Used) that is a target for discarding (pushing out) a cache page storing block data with the lowest frequency of reference. A method may be used.

追出し対象(破棄対象)のブロックデータの選定後、一次キャッシュ制御部111は、エントロピー計算部113を使用して、当該破棄対象のブロックデータのエントロピー(圧縮可能率)を計算する(S203)。そして、一次キャッシュ制御部111は、当該エントロピーが十分に高いか否か(圧縮可能率が閾値以下であるか否か)を判別する(S205)。   After selecting block data to be purged (discarded), the primary cache control unit 111 uses the entropy calculator 113 to calculate the entropy (compressible rate) of the block data to be discarded (S203). Then, the primary cache control unit 111 determines whether or not the entropy is sufficiently high (whether or not the compressibility rate is equal to or less than a threshold value) (S205).

ここで、上述の通り、エントロピーは、圧縮可能率を尺度とすることができる。圧縮済み(符号化済み)のマルチメディアデータは圧縮可能率が低いため、エントロピーが高い。一方、テキストデータ等の非圧縮のデータは圧縮可能率が高いため、エントロピーが低いと考えられる。つまり、S203及びS205において、一次キャッシュ制御部111は、対象ブロックデータの圧縮可能率を求め(S203)、その圧縮可能率が閾値を下回っているか否かに応じて、エントロピーが高いか(S205のYes)低いか(S205のNo)を判別することができる。   Here, as described above, the entropy can be measured based on the compressibility rate. Since the compressed (encoded) multimedia data has a low compressibility rate, it has a high entropy. On the other hand, non-compressed data such as text data has a high compressibility rate, and is considered to have low entropy. That is, in S203 and S205, the primary cache control unit 111 obtains the compressibility rate of the target block data (S203), and whether the entropy is high depending on whether the compressibility rate is below the threshold (S205). Yes) It can be determined whether it is low (No in S205).

エントロピーが高い場合には(S205のYes)、当該ブロックデータはマルチメディアデータの一部であると考えられ、大容量である可能性が高い。よって、一次キャッシュ部105は、ディスクインタフェース109を用いてディスクドライブ150へライト要求を出力した上で対象ブロックデータを送信し(S207)、ライト完了の応答をディスクドライブ150から受信するまで待つ(S209)。   If the entropy is high (Yes in S205), the block data is considered to be a part of the multimedia data and is likely to have a large capacity. Therefore, the primary cache unit 105 outputs the write request to the disk drive 150 using the disk interface 109, transmits the target block data (S207), and waits until a write completion response is received from the disk drive 150 (S209). ).

一方、対象ブロックデータのエントロピーが低い場合には(S205のNo)、当該ブロックデータはマルチメディアデータ以外のデータであると考えられる。よって、一次キャッシュ部105は、二次キャッシュ部107の二次キャッシュ制御部117にライト要求を送信してブロックデータを送信した後(S211)、ライト完了の応答を二次キャッシュ部107から受信するのを待つ(S213)。   On the other hand, when the entropy of the target block data is low (No in S205), the block data is considered to be data other than multimedia data. Therefore, the primary cache unit 105 transmits a write request to the secondary cache control unit 117 of the secondary cache unit 107 and transmits block data (S211), and then receives a write completion response from the secondary cache unit 107. (S213).

(4 処理の具体例)
以下、図3を参照しながら、ディスク装置100の処理の具体例を説明する。尚、図3の例では、コントローラ101Aでの処理を図示しているが、当該処理はコントローラ101Bであっても同様であるため、以下コントローラ101Aや一次キャッシュ部105A等の各構成を、それぞれ「コントローラ101」「一次キャッシュ部105」として説明する。
(4 Specific examples of processing)
Hereinafter, a specific example of the processing of the disk device 100 will be described with reference to FIG. In the example of FIG. 3, the processing in the controller 101A is illustrated. However, since the processing is the same in the controller 101B, each configuration of the controller 101A, the primary cache unit 105A, and the like will be described below. It will be described as “controller 101” and “primary cache unit 105”.

ここで、一次キャッシュ記憶部115に4キロバイトのブロックデータA乃至Cがあり、これにより、一次キャッシュ記憶部115上の全てのキャッシュページが利用されているものとする。このとき、ホスト装置200からライト要求が送信されると、ディスク装置100の一次キャッシュ制御部111は、追出すブロックデータを選定する(図3中(1)。図2のS201に対応。)。ここでは、ブロックデータCが対象として選ばれたものとし、更にこのデータは、テキストデータ(非圧縮のデータ)の一部であるものとする。   Here, it is assumed that there are 4 kilobytes of block data A to C in the primary cache storage unit 115 and all the cache pages on the primary cache storage unit 115 are used. At this time, when a write request is transmitted from the host device 200, the primary cache control unit 111 of the disk device 100 selects block data to be ejected ((1) in FIG. 3, corresponding to S201 in FIG. 2). Here, it is assumed that block data C is selected as a target, and this data is a part of text data (uncompressed data).

次にエントロピー計算部113は、選定されたブロックデータCに対してエントロピーを計算する(図3中(2)。図2のS203に対応。)。ここでは、エントロピーの計算に、例えばLZSSの圧縮アルゴリズムを用いるものとし、また、圧縮可能率の閾値を3%とする。ここで、圧縮可能率の閾値を3%とした理由は、ブロックデータ内に数百バイト程度のヘッダ情報が含まれていると、たとえマルチメディアデータであっても、その部分は圧縮可能であるのが通常だからである。   Next, the entropy calculation unit 113 calculates entropy for the selected block data C ((2) in FIG. 3, corresponding to S203 in FIG. 2). Here, for example, an LZSS compression algorithm is used for entropy calculation, and the threshold of the compressibility ratio is 3%. Here, the reason why the threshold of the compressibility ratio is set to 3% is that, if header information of about several hundred bytes is included in the block data, even the multimedia data can be compressed. Because it is normal.

テキストデータの場合には圧縮可能率が高くなることが多いので、ここでは、ブロックデータCを30%圧縮できるものとする。この場合、圧縮可能率30%であり、閾値3%を大幅に上回っているので、一次キャッシュ制御部111Aはエントロピーが低いと判断して(図2のS205のNo)、二次キャッシュ部107の二次キャッシュ制御部117に、二次キャッシュ記憶部119へのブロックデータのライト要求を送信する(図3中(3)。図2のS211に対応。)。   In the case of text data, the compressibility ratio is often high, and it is assumed here that the block data C can be compressed by 30%. In this case, since the compressibility ratio is 30% and greatly exceeds the threshold value 3%, the primary cache control unit 111A determines that the entropy is low (No in S205 in FIG. 2), and the secondary cache unit 107 A block data write request to the secondary cache storage unit 119 is transmitted to the secondary cache control unit 117 ((3) in FIG. 3, corresponding to S211 in FIG. 2).

二次キャッシュ部107でのブロックデータの書込が完了すると、二次キャッシュ制御部117は一次キャッシュ制御部111に対してライト完了を送信する(図3中(4))。一次キャッシュ制御部111がライト完了を受信すると(図2のS213のYesに対応。)、処理は終了する。   When the writing of the block data in the secondary cache unit 107 is completed, the secondary cache control unit 117 transmits a write completion to the primary cache control unit 111 ((4) in FIG. 3). When the primary cache control unit 111 receives the write completion (corresponding to Yes in S213 in FIG. 2), the process ends.

(5 本実施形態に係る効果)
以上説明したように、本実施形態によれば、巨大なサイズとなることの多い動画データや音声データ等のマルチメディアデータが二次キャッシュ部107に記録されることを回避することができる。これにより、二次キャッシュ記憶部119の使用容量が急激に圧迫されることがなくなるので、二次キャッシュ部107におけるデータストア/リストアの回数を減らすことができるようになる。
(5 Effects of this embodiment)
As described above, according to the present embodiment, it is possible to avoid recording multimedia data such as moving image data and audio data, which often have a huge size, in the secondary cache unit 107. As a result, the used capacity of the secondary cache storage unit 119 is not suddenly compressed, and the number of data stores / restores in the secondary cache unit 107 can be reduced.

ここで、一般的には、フラッシュSSD等の二次キャッシュ部107よりもHDD等のディスクドライブ150の方がデータアクセス速度は遅いが、動画データや音声データ等のマルチメディアデータはシーケンシャルアクセスされるのが通常である。ここで、シーケンシャルリードを行う場合には、フラッシュSSD等の二次キャッシュ部107とHDD等のディスクドライブ150とで大きな性能の差は生じない。そのため、たとえ一次キャッシュ制御部111がマルチメディアデータを(二次キャッシュ部107に配置せずに)直接ディスクドライブ150に配置したとしても、大きな性能劣化が発生することはない。また、もし一度ディスクドライブ150に配置したマルチメディアデータが頻繁にリードされる場合には、当該マルチメディアデータを二次キャッシュ部107に配置し直すようにしても良い。   Here, in general, the disk access 150 such as HDD is slower in data access than the secondary cache unit 107 such as flash SSD, but multimedia data such as moving image data and audio data is sequentially accessed. It is normal. Here, when performing a sequential read, there is no significant difference in performance between the secondary cache unit 107 such as a flash SSD and the disk drive 150 such as an HDD. Therefore, even if the primary cache control unit 111 directly arranges the multimedia data (without placing it in the secondary cache unit 107) in the disk drive 150, no significant performance degradation occurs. Further, if multimedia data once arranged in the disk drive 150 is frequently read, the multimedia data may be rearranged in the secondary cache unit 107.

また、二次キャッシュ部107にフラッシュSSDを利用する場合には、二次キャッシュ部107へのキャッシュライトの回数を抑えることができるので、当該フラッシュSSDの寿命を延ばすことが可能となる。   Further, when a flash SSD is used for the secondary cache unit 107, the number of cache writes to the secondary cache unit 107 can be suppressed, so that the life of the flash SSD can be extended.

(6 他の実施形態)
上記実施形態では、エントロピー計算部113によるエントロピーの算出に、圧縮可能率を用いていた。そこで、当該情報を用いて、ディスクドライブ150の利用効率を更に向上させることも考えられる。以下、その方式について説明する。
(6 Other embodiments)
In the above embodiment, the compressibility ratio is used for entropy calculation by the entropy calculation unit 113. Accordingly, it is conceivable to further improve the utilization efficiency of the disk drive 150 using the information. Hereinafter, the method will be described.

エントロピー計算部113によるエントロピーの算出(図2のS203)に際して、所定の圧縮アルゴリズムを用いた圧縮可能率が高かった場合に(エントロピーが低い)は、二次キャッシュ部107にブロックデータを書込む際に、二次キャッシュ制御部117が管理する管理情報リストに、書込んだデータのキャッシュページのページ番号のブロックデータの圧縮可能率が高いことを示すフラグを付与する。   When entropy calculation is performed by the entropy calculation unit 113 (S203 in FIG. 2), when the compressibility rate using a predetermined compression algorithm is high (entropy is low), when writing block data to the secondary cache unit 107 In addition, a flag indicating that the compressibility rate of the block data of the page number of the cache page of the written data is high is added to the management information list managed by the secondary cache control unit 117.

そして、当該二次キャッシュ部107上のブロックデータが追出しの対象となってディスクドライブ150へ書出すこととなった場合であって、当該ブロックデータに対して圧縮可能率が高いことを示すフラグが付与されている場合には、対象ブロックデータを圧縮した上で、ディスクドライブ150へ当該データを書込む。このとき、ディスクドライブ150の管理テーブルには、圧縮したことを表すフラグを付与する。   When the block data on the secondary cache unit 107 is to be purged and written to the disk drive 150, a flag indicating that the block data has a high compressibility rate is displayed. If it is given, the data is written to the disk drive 150 after the target block data is compressed. At this time, a flag indicating compression is added to the management table of the disk drive 150.

ディスクドライブ150上のデータを一次キャッシュ部105又は二次キャッシュ部107上に読み出す際には、一次キャッシュ制御部111又は二次キャッシュ制御部117はディスクドライブ150の管理テーブルを参照し、圧縮したことを示すフラグが付与されている場合には、当該データを解凍した上で一次キャッシュ記憶部115又は二次キャッシュ記憶部119上に書込む。
このように実装することで、ディスクドライブ150に書込まれるデータの記憶容量が小さくなり、利用効率を上げることが可能となる。
When reading the data on the disk drive 150 to the primary cache unit 105 or the secondary cache unit 107, the primary cache control unit 111 or the secondary cache control unit 117 refers to the management table of the disk drive 150 and compresses it. Is attached to the primary cache storage unit 115 or the secondary cache storage unit 119 after decompressing the data.
By mounting in this way, the storage capacity of the data written to the disk drive 150 is reduced, and the utilization efficiency can be increased.

(7 付記事項)
尚、前述の各実施形態の構成は、組み合わせたり或いは一部の構成部分を入れ替えたりしてもよい。また、本発明の構成は前述の実施形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。
尚、前述の各実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(7 Appendix)
Note that the configurations of the above-described embodiments may be combined or some of the components may be replaced. The configuration of the present invention is not limited to the above-described embodiment, and various modifications may be made without departing from the scope of the present invention.
A part or all of each of the above-described embodiments can be described as in the following supplementary notes, but is not limited thereto.

(付記1)
ホスト装置から書き込まれたデータを一時的に記憶する一次記憶装置と、前記一次記憶装置よりも記憶容量の大きい第1の記憶装置と、前記第1の記憶装置よりも記憶容量が大きく、読込み速度の遅い第2の記憶装置と、前記一次記憶装置に記憶されたデータのエントロピーに応じて、前記第1の記憶装置又は前記第2の記憶装置のいずれかに当該データを記録する制御部とを備える、ストレージ装置。
(Appendix 1)
A primary storage device that temporarily stores data written from the host device, a first storage device having a storage capacity larger than that of the primary storage device, a storage capacity larger than that of the first storage device, and a reading speed A slow second storage device, and a control unit that records the data in either the first storage device or the second storage device in accordance with the entropy of the data stored in the primary storage device A storage device.

(付記2)
前記制御部は、前記一次記憶装置に記憶されたデータのエントロピーが閾値よりも低い場合に当該データを前記第1の記憶装置に記録し、当該閾値よりも高い場合に前記第2の記憶装置に記録する、付記1記載のストレージ装置。
(Appendix 2)
The control unit records the data in the first storage device when the entropy of data stored in the primary storage device is lower than a threshold value, and stores the data in the second storage device when higher than the threshold value. The storage device according to appendix 1, which is recorded.

(付記3)
前記制御部は、前記エントロピーをデータの圧縮可能率として算出する、付記1又は付記2記載のストレージ装置。
(Appendix 3)
The storage device according to appendix 1 or appendix 2, wherein the control unit calculates the entropy as a data compressibility rate.

(付記4)
前記制御部は、前記第1の記憶装置に記憶されたデータを前記第2の記憶装置に記録する際に、当該データを圧縮して記録する、付記1乃至付記3のいずれか1項記載のストレージ装置。
(Appendix 4)
The control unit according to any one of appendix 1 to appendix 3, wherein when the data stored in the first storage device is recorded in the second storage device, the data is compressed and recorded. Storage device.

(付記5)
前記制御部は、前記一次記憶装置に記憶されたデータを圧縮して前記第1の記憶装置に記録する際に、圧縮可能率に応じたフラグを付与する、付記4記載のストレージ装置。
(Appendix 5)
The storage device according to appendix 4, wherein the control unit assigns a flag corresponding to a compressibility ratio when compressing the data stored in the primary storage device and recording the compressed data in the first storage device.

100・・・ディスク装置、101・・・コントローラ、103・・・ホストインタフェース、105・・・一次キャッシュ部、107・・・二次キャッシュ部、109・・・ディスクインタフェース、111・・・一次キャッシュ制御部、113・・・エントロピー計算部、115・・・一次キャッシュ記憶部、117・・・二次キャッシュ制御部、119・・・二次キャッシュ記憶部、150・・・ディスクドライブ、200・・・ホスト装置   DESCRIPTION OF SYMBOLS 100 ... Disk apparatus, 101 ... Controller, 103 ... Host interface, 105 ... Primary cache part, 107 ... Secondary cache part, 109 ... Disk interface, 111 ... Primary cache Control unit 113 ... Entropy calculation unit 115 ... Primary cache storage unit 117 ... Secondary cache control unit 119 ... Secondary cache storage unit 150 ... Disk drive 200 ...・ Host device

Claims (3)

ホスト装置から書き込まれたデータを一時的に記憶する一次記憶装置と、
前記一次記憶装置よりも記憶容量の大きい第1の記憶装置と、
前記第1の記憶装置よりも記憶容量が大きく、読込み速度の遅い第2の記憶装置と、
前記一次記憶装置に記憶されたデータの圧縮可能率に応じて、前記第1の記憶装置又は前記第2の記憶装置のいずれに当該データを記録するかを制御する制御部と
を備え
前記制御部は、前記一次記憶装置に記憶されたデータの前記圧縮可能率が閾値よりも低い場合に当該データを前記第1の記憶装置に記録し、当該閾値よりも高い場合に前記第2の記憶装置に記録する、
ストレージ装置。
A primary storage device for temporarily storing data written from the host device;
A first storage device having a larger storage capacity than the primary storage device;
A second storage device having a storage capacity larger than that of the first storage device and having a slower reading speed;
A control unit that controls whether to record the data in the first storage device or the second storage device according to the compressibility ratio of the data stored in the primary storage device ;
The control unit records the data in the first storage device when the compressibility ratio of the data stored in the primary storage device is lower than a threshold value, and records the data in the second storage when higher than the threshold value. Record to storage device,
Storage device.
前記制御部は、前記第1の記憶装置に記憶されたデータを前記第2の記憶装置に記録する際に、当該データを圧縮して記録する、
請求項1記載のストレージ装置。
The controller compresses and records the data stored in the second storage device when recording the data stored in the first storage device.
Claim 1 Symbol placement of the storage device.
前記制御部は、前記一次記憶装置に記憶されたデータを圧縮して前記第1の記憶装置に記録する際に、前記圧縮可能率に応じたフラグを付与する、
請求項記載のストレージ装置。
Wherein, when compressing the data stored in the primary storage device for recording in the first storage device, imparts a flag corresponding to the compressible rate,
The storage apparatus according to claim 2 .
JP2012026201A 2012-02-09 2012-02-09 Storage device Expired - Fee Related JP5924482B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012026201A JP5924482B2 (en) 2012-02-09 2012-02-09 Storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012026201A JP5924482B2 (en) 2012-02-09 2012-02-09 Storage device

Publications (2)

Publication Number Publication Date
JP2013164660A JP2013164660A (en) 2013-08-22
JP5924482B2 true JP5924482B2 (en) 2016-05-25

Family

ID=49175988

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012026201A Expired - Fee Related JP5924482B2 (en) 2012-02-09 2012-02-09 Storage device

Country Status (1)

Country Link
JP (1) JP5924482B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160253094A1 (en) * 2013-11-01 2016-09-01 Nec Corporation Information processing device, data cache device, information processing method, and data caching method
WO2017134795A1 (en) * 2016-02-04 2017-08-10 株式会社日立製作所 Storage system and cache control method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3860323B2 (en) * 1997-10-27 2006-12-20 三菱電機株式会社 Image decoding apparatus and image decoding method
JP2002073383A (en) * 2000-08-31 2002-03-12 Matsushita Electric Ind Co Ltd Method for information service
JP4975396B2 (en) * 2006-08-24 2012-07-11 株式会社日立製作所 Storage control device and storage control method
JP2011077564A (en) * 2008-04-13 2011-04-14 Thomson Canopus Co Ltd Encoder and encoding method of video and voice data, and video editing system
JP2011232962A (en) * 2010-04-27 2011-11-17 Toshiba Corp Disk array device and method for controlling mirrored cache

Also Published As

Publication number Publication date
JP2013164660A (en) 2013-08-22

Similar Documents

Publication Publication Date Title
JP6208156B2 (en) Replicating a hybrid storage aggregate
KR101468336B1 (en) Method for distributionally storing data based on data compression ratio prediction scheme, mass storage apparatus and mass storage system using the same
US9619180B2 (en) System method for I/O acceleration in hybrid storage wherein copies of data segments are deleted if identified segments does not meet quality level threshold
US8667180B2 (en) Compression on thin provisioned volumes using extent based mapping
CN108268219B (en) Method and device for processing IO (input/output) request
US20100281207A1 (en) Flash-based data archive storage system
KR20150067583A (en) Nonvolatile memory device and dedeuplicatiton method thereof
US10866743B2 (en) Storage control device using index indicating order of additional writing of data, storage control method using index indicating order of additional writing of data, and recording medium recording program using index indicating order of additional writing of data
JP2012113704A (en) System, method, and computer program for data archiving using data compression of flash copy (data archiving using data compression of flash copy)
US10996886B2 (en) Method and system for facilitating atomicity and latency assurance on variable sized I/O
WO2014136183A1 (en) Storage device and data management method
US20180307440A1 (en) Storage control apparatus and storage control method
JP6011153B2 (en) Storage system, storage control method, and storage control program
CN111124258B (en) Data storage method, device and equipment of full flash memory array and readable storage medium
JP2019028954A (en) Storage control apparatus, program, and deduplication method
TWI584120B (en) Method and system for dynamically adaptive caching
US9946463B2 (en) Compression of indirection tables
US9805046B2 (en) Data compression using compression blocks and partitions
JP5924482B2 (en) Storage device
US20190056878A1 (en) Storage control apparatus and computer-readable recording medium storing program therefor
JP2020112972A (en) Storage control device and storage control program
US10474363B1 (en) Space reporting in a storage system
US9767029B2 (en) Data decompression using a construction area
US20180307419A1 (en) Storage control apparatus and storage control method
US9128854B1 (en) System and method for data prediction

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160307

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160405

R150 Certificate of patent or registration of utility model

Ref document number: 5924482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees