[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP7559429B2 - Recording medium management device, recording medium management method, and program - Google Patents

Recording medium management device, recording medium management method, and program Download PDF

Info

Publication number
JP7559429B2
JP7559429B2 JP2020141352A JP2020141352A JP7559429B2 JP 7559429 B2 JP7559429 B2 JP 7559429B2 JP 2020141352 A JP2020141352 A JP 2020141352A JP 2020141352 A JP2020141352 A JP 2020141352A JP 7559429 B2 JP7559429 B2 JP 7559429B2
Authority
JP
Japan
Prior art keywords
recording medium
area
virtual
volume
data
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
JP2020141352A
Other languages
Japanese (ja)
Other versions
JP2022037297A (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 JP2020141352A priority Critical patent/JP7559429B2/en
Publication of JP2022037297A publication Critical patent/JP2022037297A/en
Application granted granted Critical
Publication of JP7559429B2 publication Critical patent/JP7559429B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、記録媒体管理装置、記録媒体管理方法、およびプログラムに関し、特に、記録媒体に保存されたデータを管理する記録媒体管理装置、記録媒体管理方法、およびプログラムに関する。 The present invention relates to a recording medium management device, a recording medium management method, and a program, and in particular to a recording medium management device, a recording medium management method, and a program for managing data stored on a recording medium.

関連する技術では、メモリやストレージなどの記録媒体に割り当てられた物理ボリュームを仮想化することによって、仮想ボリュームを生成する。ユーザは、仮想ボリュームに格納されたデータ(ここでは仮想データと呼ぶ)にアクセスすることができるが、物理ボリュームはユーザから隠蔽される。物理ボリュームには、仮想ボリュームに格納された仮想データと対応するデータ(ここでは実データと呼ぶ)が格納される。ユーザが仮想データにアクセスすると、物理ボリュームに格納された実データが、仮想ボリュームにより参照される。 In related technology, a virtual volume is generated by virtualizing a physical volume allocated to a recording medium such as a memory or storage. A user can access data stored in the virtual volume (here called virtual data), but the physical volume is hidden from the user. The physical volume stores data (here called real data) that corresponds to the virtual data stored in the virtual volume. When a user accesses the virtual data, the real data stored in the physical volume is referenced by the virtual volume.

仮想ボリュームの数は、自由に増減することが可能である。また、仮想ボリュームの容量は、物理ボリュームの容量によって制限されない。例えば、仮想ボリュームの領域に格納された仮想データのデータ量に応じて、その仮想ボリュームに割り当てる物理ボリュームの領域を柔軟に増減させることで、記録媒体の領域を効率的に使用することができる。 The number of virtual volumes can be freely increased or decreased. Furthermore, the capacity of a virtual volume is not limited by the capacity of a physical volume. For example, the area of a physical volume allocated to a virtual volume can be flexibly increased or decreased depending on the amount of virtual data stored in the virtual volume area, allowing for efficient use of the recording medium area.

仮想ボリュームから仮想データが消去された結果、いずれの仮想ボリュームからも参照されない実データが生じる場合がある。このようなごみデータ(ガベージ)が物理ボリュームの領域中に残っていることで、メモリリソースが無駄になる。特許文献1に記載の関連する技術では、物理ボリュームの領域から、いずれの仮想ボリュームからも参照されていない実データを探索し、削除する。このようにして、物理ボリュームの領域に空きブロック(実データの含まれないディスク区画)を生成することで、メモリリソースを回復することは、領域開放と呼ばれる。 When virtual data is deleted from a virtual volume, real data that is not referenced by any virtual volume may result. This garbage data (garbage) remaining in the area of a physical volume wastes memory resources. In the related technology described in Patent Document 1, real data that is not referenced by any virtual volume is searched for and deleted from the area of a physical volume. In this way, free blocks (disk partitions that do not contain real data) are generated in the area of a physical volume, and memory resources are recovered. This is called area release.

特開2019-159605号公報JP 2019-159605 A 特開2019-179571号公報JP 2019-179571 A 特表2012-512462号公報Special Publication No. 2012-512462

特許文献1に記載の関連する技術では、物理ボリュームが大きいほど、消去の対象であるごみデータを発見するには時間かかる。また、ごみデータの探索中は、物理ボリュームの全体がスキャンされることから、ユーザの業務に影響が出る可能性もある。 In the related technology described in Patent Document 1, the larger the physical volume, the longer it takes to find garbage data to be erased. In addition, when searching for garbage data, the entire physical volume is scanned, which may affect user work.

本発明は、上記の課題に鑑みてなされたものであり、その目的は、記録媒体に割り当てられた物理ボリュームの領域を効率的に利用可能にすることにある。 The present invention was made in consideration of the above problems, and its purpose is to make it possible to efficiently use the area of a physical volume allocated to a recording medium.

本発明の一態様に係わる記録媒体管理装置は、記録媒体に保存された同一の実データがいくつの仮想ボリュームによって参照されているかを示す重複度を計算する重複度計算手段と、前記重複度に応じた前記記録媒体の一領域内に前記実データを格納する格納手段と、前記記録媒体の領域のうち、いずれの仮想ボリュームによっても参照されない実データのみが格納された特定の領域を解放する領域開放手段とを備えている。 A recording medium management device according to one aspect of the present invention includes a redundancy calculation means for calculating a redundancy indicating how many virtual volumes reference the same real data stored on the recording medium, a storage means for storing the real data in an area of the recording medium according to the redundancy, and an area release means for releasing a specific area of the recording medium in which only real data not referenced by any virtual volume is stored.

本発明の一態様に係わる記録媒体管理方法は、記録媒体に保存された同一の実データがいくつの仮想ボリュームによって参照されているかを示す重複度を計算し、前記重複度に応じた領域内に前記実データを格納し、前記記録媒体の領域のうち、いずれの仮想ボリュームによっても参照されない実データのみが格納された特定の領域を解放する。 A recording medium management method according to one aspect of the present invention calculates a degree of overlap indicating how many virtual volumes reference the same real data stored on a recording medium, stores the real data in an area according to the degree of overlap, and releases a specific area of the recording medium in which only real data not referenced by any virtual volume is stored.

本発明の一態様に係わるプログラムは、記録媒体に保存された同一の実データがいくつの仮想ボリュームによって参照されているかを示す重複度を計算する処理と、前記重複度に応じた領域内に前記実データを格納する処理と、前記記録媒体の領域のうち、いずれの仮想ボリュームによっても参照されない実データのみが格納された特定の領域を解放する処理とをコンピュータに実行させる。 A program according to one aspect of the present invention causes a computer to execute a process of calculating a degree of overlap indicating how many virtual volumes are referencing the same real data stored on a recording medium, a process of storing the real data in an area according to the degree of overlap, and a process of releasing a specific area of the recording medium in which only real data not referenced by any virtual volume is stored.

本発明の一態様によれば、記録媒体に割り当てられた物理ボリュームの領域を効率的に利用可能にすることができる。 According to one aspect of the present invention, it is possible to efficiently utilize the area of a physical volume allocated to a recording medium.

全ての実施形態に共通するシステムの構成を概略的に示す。1 illustrates a schematic diagram of a system configuration common to all embodiments. 実施形態1に係わる記録媒体管理装置の構成を示すブロック図である。1 is a block diagram showing a configuration of a recording medium management device according to a first embodiment. 実施形態1に係わる記録媒体管理装置の動作を示すフローチャートである。4 is a flowchart showing the operation of the recording medium management device according to the first embodiment. 複数の仮想ボリュームと、仮想ボリュームによって参照される実データが格納されたボリュームユニットとの間の対応関係の第1の例を示す図である。FIG. 11 is a diagram showing a first example of a correspondence relationship between a plurality of virtual volumes and volume units in which actual data referenced by the virtual volumes is stored. 図4に示す一例において、仮想ボリュームから仮想データが消去されたとき、複数の仮想ボリュームと、仮想ボリュームによって参照される実データが格納されたボリュームユニットとの間の対応関係の第2の例を示す図である。In the example shown in Figure 4, this figure shows a second example of the correspondence between multiple virtual volumes and volume units in which actual data referenced by the virtual volumes is stored when virtual data is erased from the virtual volumes. 実施形態2に係わる記録媒体管理装置が実行する領域開放処理の流れを示すフローチャートである。10 is a flowchart showing the flow of an area release process executed by a recording medium management device according to a second embodiment. 図5に示す例において、第0ボリュームユニットから実データが消去されたとき、複数の仮想ボリュームと、仮想ボリュームによって参照される実データが格納されたボリュームユニットとの間の対応関係の第3の例を示す図である。In the example shown in Figure 5, this figure shows a third example of the correspondence between multiple virtual volumes and the volume units in which the actual data referenced by the virtual volumes is stored when actual data is erased from the 0th volume unit. 図7に示す例において、第0ボリュームユニットから空きブロックが削除されたとき、複数の仮想ボリュームと、仮想ボリュームによって参照される実データが格納されたボリュームユニットとの間の対応関係の第4の例を示す図である。In the example shown in Figure 7, this figure shows a fourth example of the correspondence between multiple virtual volumes and the volume units in which the actual data referenced by the virtual volumes is stored when free blocks are deleted from the 0th volume unit. 実施形態3に係わる記録媒体管理装置の動作を示すフローチャートである。13 is a flowchart showing the operation of a recording medium management device according to a third embodiment. 実施形態4に係わる記録媒体管理装置の動作を示すフローチャートである。13 is a flowchart showing the operation of a recording medium management device according to a fourth embodiment. 実施形態5に係わる記録媒体管理装置の動作を示すフローチャートである。13 is a flowchart showing the operation of a recording medium management device according to a fifth embodiment. 実施形態6に係わる記録媒体管理装置の構成を示すブロック図である。FIG. 13 is a block diagram showing the configuration of a recording medium management device according to a sixth embodiment. 実施形態6に係わる記録媒体管理装置の推定部がアクセス時間記録データから生成されるメタデータの一例を示す。13 shows an example of metadata generated from access time recording data by an estimation unit of a recording medium management device according to a sixth embodiment. 実施形態1から6のいずれかに係わる記録媒体管理装置のハードウェア構成を示す図である。FIG. 1 is a diagram showing a hardware configuration of a recording medium management device according to any one of the first to sixth embodiments.

図1を参照して、後述する全ての実施形態に共通するシステムについて、説明する。 With reference to Figure 1, we will explain the system common to all of the embodiments described below.

(システム1)
図1は、システム1の構成を概略的に示す図である。図1に示すように、システム1は、記録媒体管理装置10または20、ストレージ100(記録媒体の一例)、および複数の仮想ボリューム200を備えている。記録媒体管理装置10については、実施形態1で、また、記録媒体管理装置20については、実施形態6で、それぞれ説明する。以下では、記録媒体管理装置10または20のことを、「記録媒体管理装置10(20)」と記載する。
(System 1)
Fig. 1 is a diagram showing a schematic configuration of a system 1. As shown in Fig. 1, the system 1 includes a recording medium management device 10 or 20, a storage 100 (an example of a recording medium), and a plurality of virtual volumes 200. The recording medium management device 10 will be described in embodiment 1, and the recording medium management device 20 will be described in embodiment 6. Hereinafter, the recording medium management device 10 or 20 will be referred to as "recording medium management device 10 (20)."

記録媒体管理装置10(20)は、記録媒体100に物理ボリューム110を割り当てる。言い換えれば、記録媒体管理装置10(20)は、記録媒体100の物理ボリューム110を生成する。記録媒体管理装置10(20)は、記録媒体100に保存されたデータ(実データと呼ぶ)を管理する。 The recording medium management device 10 (20) assigns a physical volume 110 to the recording medium 100. In other words, the recording medium management device 10 (20) generates the physical volume 110 of the recording medium 100. The recording medium management device 10 (20) manages the data (called actual data) stored on the recording medium 100.

また、記録媒体管理装置10(20)は、物理ボリューム110から空きブロックを削除する機能、いわゆるガベージコレクション機能を有する。記録媒体管理装置10(20)の構成及び動作については、後述する実施形態1以降において説明する。 The recording medium management device 10 (20) also has a function of deleting free blocks from the physical volume 110, a so-called garbage collection function. The configuration and operation of the recording medium management device 10 (20) will be explained in the following embodiment 1 and onwards.

物理ボリューム110は、記録媒体100が有する記憶領域を概念的に示す。物理ボリューム110は、複数の記録媒体100が有する記憶領域の論理的な集合であってもよい。物理ボリューム110は、図示しないが、データを格納するための1つ以上のブロックで構成されている。ブロックは、実データを格納するための容量の最小単位である。物理ボリューム110において、ブロックの間はパーティションによって区分けられている。そのため、ブロックは、ディスク区画とも呼ばれる。ブロックの具体例を実施形態1以降で示す。 The physical volume 110 conceptually represents a storage area possessed by the recording medium 100. The physical volume 110 may be a logical collection of storage areas possessed by a plurality of recording media 100. Although not shown, the physical volume 110 is composed of one or more blocks for storing data. A block is the smallest unit of capacity for storing actual data. In the physical volume 110, blocks are divided by partitions. For this reason, the blocks are also called disk partitions. Specific examples of blocks are shown in the first embodiment and onwards.

図1に示すように、物理ボリューム110は、複数のボリュームユニットで構成されている。N+1個のボリュームユニットは、第0から第NまでのN+1段の階層構造となっている。なお、別の視点では、各ボリュームユニットが1つの物理ボリュームであるということもできる。この視点では、符号110はいわゆるボリュームグループを示すともいえる。 As shown in FIG. 1, the physical volume 110 is composed of multiple volume units. The N+1 volume units are arranged in a hierarchical structure of N+1 levels, from 0th to Nth. From another perspective, each volume unit can be said to be a single physical volume. From this perspective, the symbol 110 can also be said to represent a so-called volume group.

複数の仮想ボリューム200は、記録媒体100に割り当てられた物理ボリューム110を仮想化したものである。図1には、第1から第MまでのM個の仮想ボリューム200が示されている。しかしながら、仮想ボリューム200の数は、1以上であればよい。また、仮想ボリューム200の数は、自由に増減することが可能である。仮想ボリューム200の数(M個)と、物理ボリューム110の数とは無関係である。一方、仮想ボリューム200の数(M個)と、物理ボリューム110が備えたボリュームユニットの数(N+1個)との間には、M=Nの関係がある。 The multiple virtual volumes 200 are virtualized physical volumes 110 assigned to the recording medium 100. FIG. 1 shows M virtual volumes 200, numbered from the first to the Mth. However, the number of virtual volumes 200 need only be one or more. The number of virtual volumes 200 can be freely increased or decreased. The number of virtual volumes 200 (M) is unrelated to the number of physical volumes 110. On the other hand, there is an M=N relationship between the number of virtual volumes 200 (M) and the number of volume units (N+1) provided in the physical volume 110.

それぞれの仮想ボリューム200は、図示しない仮想ボリューム制御装置により、管理および制御される。あたかも仮想ボリューム200が実在するかのように、ユーザは、仮想ボリューム200の領域に、仮想的にデータ(仮想データと呼ぶ)を書き込んだり、あるいは読み出したりすることができる。実際には、仮想ボリューム200の領域に仮想データが格納されたとき、対応する実データが、物理ボリューム110の領域に格納される。ユーザが、仮想ボリューム200の領域に格納された仮想データにアクセスしたとき、物理ボリューム110に格納された、仮想データと対応する実データが、仮想ボリューム制御装置に渡される。これを、実データが仮想ボリューム200により参照されるという。 Each virtual volume 200 is managed and controlled by a virtual volume control device (not shown). A user can virtually write or read data (called virtual data) to an area of the virtual volume 200 as if the virtual volume 200 actually existed. In reality, when virtual data is stored in an area of the virtual volume 200, the corresponding real data is stored in an area of the physical volume 110. When a user accesses virtual data stored in an area of the virtual volume 200, the real data corresponding to the virtual data stored in the physical volume 110 is passed to the virtual volume control device. This is called the real data being referenced by the virtual volume 200.

(実データの重複度とボリュームユニットの階層構造)
ここでは、実データが物理ボリューム110の領域に格納されると説明した。より詳細には、実データは、重複度に応じて、物理ボリューム110のいずれかのボリュームユニットに格納される。重複度とは、物理ボリューム110のあるボリュームユニットに格納された実データが、いくつの仮想ボリューム200によって参照されているかを示す指標である。物理ボリューム110は、後述の重複度と対応する階層構造を有する。階層構造の段数(図1ではN+1)は、重複度の最大値(M)に応じて、柔軟に変化可能である。この点については、続く実施形態1以降で詳細に説明する。
(Actual data duplication and hierarchical structure of volume units)
Here, it has been explained that real data is stored in an area of the physical volume 110. More specifically, the real data is stored in one of the volume units of the physical volume 110 according to the degree of duplication. The degree of duplication is an index indicating how many virtual volumes 200 reference the real data stored in a certain volume unit of the physical volume 110. The physical volume 110 has a hierarchical structure corresponding to the degree of duplication described below. The number of stages of the hierarchical structure (N+1 in FIG. 1) can be flexibly changed according to the maximum value (M) of the degree of duplication. This point will be explained in detail in the following embodiment 1 and subsequent embodiments.

〔実施形態1〕
図2~図8を参照して、実施形態1について説明する。
[Embodiment 1]
The first embodiment will be described with reference to FIGS.

(記録媒体管理装置10)
図2は、本実施形態1に係わる記録媒体管理装置10の構成を示すブロック図である。図2に示すように、記録媒体管理装置10は、重複度計算部11、格納部12、および領域開放部13を備えている。
(Recording medium management device 10)
2 is a block diagram showing the configuration of the recording medium management device 10 according to embodiment 1. As shown in FIG. 2, the recording medium management device 10 includes an overlap calculation unit 11, a storage unit 12, and an area release unit 13.

重複度計算部11は、記録媒体に保存された同一の実データがいくつの仮想ボリューム200によって参照されているかを示す重複度を計算する。重複度計算部11は、重複度計算手段の一例である。 The redundancy calculation unit 11 calculates the redundancy indicating how many virtual volumes 200 reference the same real data stored on the recording medium. The redundancy calculation unit 11 is an example of a redundancy calculation means.

一例では、重複度計算部11は、物理ボリューム110に格納された実データについて、重複度を管理する。上述したように、重複度は、物理ボリューム110のあるボリュームユニットに格納された実データが、いくつの仮想ボリューム200によって参照されているかを示す指標である。 In one example, the redundancy calculation unit 11 manages the redundancy of the actual data stored in the physical volume 110. As described above, the redundancy is an index indicating how many virtual volumes 200 reference the actual data stored in a certain volume unit of the physical volume 110.

一例では、仮想ボリューム200に仮想データが格納されたとき、重複度計算部11は、仮想ボリューム200(図1)を管理する仮想ボリューム制御装置から、通知を受けとる。このとき、重複度計算部11は、格納された仮想データと対応する実データ(すなわち、仮想ボリューム200によって参照される実データ)の重複度を増加(+1)する。 In one example, when virtual data is stored in the virtual volume 200, the redundancy calculation unit 11 receives a notification from the virtual volume control device that manages the virtual volume 200 (Figure 1). At this time, the redundancy calculation unit 11 increases (+1) the redundancy of the real data that corresponds to the stored virtual data (i.e., the real data referenced by the virtual volume 200).

また、他の一例では、仮想ボリューム200から仮想データが消去されたときに、重複度計算部11は、仮想ボリューム200(図1)を管理する仮想ボリューム制御装置から、通知を受けとる。このとき、重複度計算部11は、消去された仮想データと対応する実データ(すなわち、仮想ボリューム200によって参照される実データ)の重複度を減少(-1)する。結果、実データの重複度は0になる場合もある。すなわち、実データはいずれの仮想ボリューム200によっても参照されなくなる可能性がある。 In another example, when virtual data is deleted from the virtual volume 200, the redundancy calculation unit 11 receives a notification from the virtual volume control device that manages the virtual volume 200 (Figure 1). At this time, the redundancy calculation unit 11 decreases (-1) the redundancy of the real data corresponding to the deleted virtual data (i.e., the real data referenced by the virtual volume 200). As a result, the redundancy of the real data may become 0. In other words, there is a possibility that the real data will no longer be referenced by any of the virtual volumes 200.

物理ボリューム110に格納された実データの重複度が変化(増加または減少)したことを、重複度計算部11は、格納部12に通知する。 The redundancy calculation unit 11 notifies the storage unit 12 that the redundancy of the actual data stored in the physical volume 110 has changed (increased or decreased).

格納部12は、重複度に応じた記録媒体の一領域内に実データを格納する。格納部12は、格納手段の一例である。 The storage unit 12 stores the actual data in an area of the recording medium according to the degree of duplication. The storage unit 12 is an example of a storage means.

一例では、格納部12は、重複度計算部11から、物理ボリューム110に格納された実データの重複度が変化(増加または減少)したことの通知を受け取る。このとき、格納部12は、変化後の重複度に応じて、実データの格納先を変更する。具体的には、第1の例では、実データの重複度が増加(+1)したとき、格納部12は、物理ボリューム110の複数のボリュームユニットが形成するN+1段の階層構造の中で、実データの格納先を1つ上の階層に移動させる。 In one example, the storage unit 12 receives a notification from the redundancy calculation unit 11 that the redundancy of the actual data stored in the physical volume 110 has changed (increased or decreased). At this time, the storage unit 12 changes the storage destination of the actual data according to the changed redundancy. Specifically, in the first example, when the redundancy of the actual data has increased (+1), the storage unit 12 moves the storage destination of the actual data to the next higher hierarchical level in the N+1-level hierarchical structure formed by the multiple volume units of the physical volume 110.

すなわち、第n(n=1~N)ボリュームユニットに格納されていた実データを、第n+1ボリュームユニットに移動させる。なお、格納部12は、最上位の階層すなわち第Nボリュームユニットに格納されていた実データを1つ上の階層に移動させる場合、物理ボリューム110に第N+1ボリュームユニットを追加したのち、実データを、第nボリュームユニットから、第n+1ボリュームユニットに移動させる。 That is, the actual data stored in the nth (n=1 to N) volume unit is moved to the n+1th volume unit. When moving actual data stored in the highest hierarchical level, i.e., the Nth volume unit, to the next higher hierarchical level, the storage unit 12 adds the N+1th volume unit to the physical volume 110, and then moves the actual data from the nth volume unit to the n+1th volume unit.

第2の例では、実データの重複度が減少(-1)したとき、格納部12は、物理ボリューム110の複数のボリュームユニットが形成する階層構造の中で、実データの格納先を1つ下の階層に移動させる。すなわち、第n(=1~N)ボリュームユニットに格納されていた実データを、第n-1ボリュームユニットに移動させる。この移動により、第0ボリュームユニットには、重複度が0の実データが格納される。 In the second example, when the duplication degree of the actual data decreases (-1), the storage unit 12 moves the storage destination of the actual data to the next lower hierarchical level within the hierarchical structure formed by the multiple volume units of the physical volume 110. In other words, the actual data stored in the nth (=1 to N) volume unit is moved to the n-1th volume unit. As a result of this move, actual data with a duplication degree of 0 is stored in the 0th volume unit.

一例では、格納部12は、少なくとも第0ボリュームユニットのブロック数を示す情報を、領域開放部13に出力する。あるいは、格納部12は、第0から第n(nは1~Nの整数)ボリュームユニットのそれぞれのブロック数を示す情報を、領域開放部13に出力してもよい。ブロックとは、記憶領域の最小単位である。ブロック数とは、第0ボリュームユニット(あるいは他のボリュームユニット)が有するブロックの数を表す。以下では、格納部12が領域開放部13に出力する上記の情報を、ブロック数情報と呼ぶ。 In one example, the storage unit 12 outputs information indicating at least the number of blocks in the 0th volume unit to the area release unit 13. Alternatively, the storage unit 12 may output information indicating the number of blocks in each of the 0th to nth (n is an integer from 1 to N) volume units to the area release unit 13. A block is the smallest unit of storage area. The number of blocks indicates the number of blocks that the 0th volume unit (or other volume units) has. Hereinafter, the above information that the storage unit 12 outputs to the area release unit 13 is referred to as block number information.

領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された特定の領域を解放する。領域開放部13は、領域開放手段の一例である。 The area release unit 13 releases a specific area in which only real data that is not referenced by any of the virtual volumes 200 is stored. The area release unit 13 is an example of an area release means.

一例では、領域開放部13は、格納部12から、ブロック数情報を受信する。領域開放部13は、ブロック数情報に基づいて、第0ボリュームユニットが有するブロック数を特定する。そして、第0ボリュームユニットが1以上のブロックを有する場合、領域開放部13は、領域開放処理を実行する。 In one example, the area release unit 13 receives block count information from the storage unit 12. The area release unit 13 identifies the number of blocks that the 0th volume unit has based on the block count information. Then, if the 0th volume unit has one or more blocks, the area release unit 13 executes area release processing.

具体的には、領域開放処理において、領域開放部13は、第0ボリュームユニットの各ブロックから、実データを全て消去する。こうして、第0ボリュームユニットには、1つ以上の空きブロック(すなわち実データが格納されていないブロック)が生じる。次に、領域開放部13は、第0ボリュームユニットの空きブロックを削除する。結果、第0ボリュームユニットの領域が開放される。すなわち、ここでの領域開放とは、ボリュームユニットの空きブロック領域を削除することで、物理ボリューム110のいずれのボリュームユニットによっても確保されていない記憶領域を生成することを意味する。 Specifically, in the area release process, the area release unit 13 erases all actual data from each block of the 0th volume unit. As a result, one or more free blocks (i.e., blocks in which no actual data is stored) are generated in the 0th volume unit. Next, the area release unit 13 deletes the free blocks in the 0th volume unit. As a result, the area of the 0th volume unit is released. In other words, area release here means that by deleting the free block area of the volume unit, a storage area that is not reserved by any volume unit in the physical volume 110 is generated.

他の一例では、領域開放部13は、第1から第n(nは1~Nの整数)ボリュームユニットについて、それぞれ、空きブロックの有無を検査(スキャンと呼ぶ場合もある)する。次に、領域開放部13は、第0から第n(nは1~Nの整数)ボリュームユニットのうち、空きブロックがあるボリュームユニットについて、それぞれ、上述のブロック数情報に基づいて、領域開放処理を実行する。これにより、第0ボリュームユニットのみに対して領域開放処理を行う場合と比較して、同等あるいはより大きい領域を開放することができる。具体的には、第0ボリュームユニットに加えて、第1~第nのうち少なくとも1つのボリュームユニットにも空きブロックがあれば、それらの空きブロックを削除することで、第0ボリュームユニットの空きブロックのみを削除する場合と比較して、より大きい領域を開放することができる。 In another example, the area release unit 13 checks (sometimes called scanning) whether there are free blocks for each of the first through nth (n is an integer from 1 to N) volume units. Next, the area release unit 13 executes area release processing for each of the 0th through nth (n is an integer from 1 to N) volume units that have free blocks, based on the block count information described above. This makes it possible to release an equal or larger area compared to performing area release processing only on the 0th volume unit. Specifically, if there are free blocks in at least one of the 1st through nth volume units in addition to the 0th volume unit, deleting those free blocks makes it possible to release a larger area compared to deleting only the free blocks of the 0th volume unit.

(変形例)
一変形例では、格納部12は、物理ボリューム110におけるどの階層(すなわち何番のボリュームユニット)に、いくつの実データブロックが格納されているかを示す情報を、領域開放部13に出力する。ここで、実データブロックとは、実データの測定量の最小単位である。なお、物理ボリューム110のボリュームユニットが、いくつかのブロックに区分されていてもよい。この場合、格納部12は、ボリュームユニットのそれぞれのブロックに、いくつの実データブロックが格納されているかを示す情報も、領域開放部13に出力する。以下では、格納部12が領域開放部13に出力する上記の情報を、物理ボリューム利用情報と呼ぶ。
(Modification)
In one modified example, the storage unit 12 outputs information indicating how many actual data blocks are stored in which hierarchical level (i.e., which volume unit) in the physical volume 110 to the area releaser 13. Here, an actual data block is the smallest unit of a measured amount of actual data. Note that the volume unit of the physical volume 110 may be divided into several blocks. In this case, the storage unit 12 also outputs information indicating how many actual data blocks are stored in each block of the volume unit to the area releaser 13. Hereinafter, the above information output by the storage unit 12 to the area releaser 13 will be referred to as physical volume usage information.

本変形例において、領域開放部13は、物理ボリューム利用情報に基づいて、各ボリュームユニットから空きブロックを特定し、上述した領域開放処理によって、特定した空きブロックを削除することができる。 In this modified example, the area release unit 13 can identify free blocks from each volume unit based on the physical volume usage information, and delete the identified free blocks by the area release process described above.

(記録媒体管理装置10の動作)
図3~図5を参照して、本実施形態1に係わる記録媒体管理装置10の動作の一例を説明する。ここでは、システム1には、3つの仮想ボリューム200と、4(=3+1)個のボリュームユニットとがある場合について説明する。
(Operation of Recording Medium Management Device 10)
3 to 5, an example of the operation of the recording medium management device 10 according to the first embodiment will be described. Here, a case will be described in which the system 1 has three virtual volumes 200 and four (=3+1) volume units.

図3は、本実施形態1に係わる記録媒体管理装置10の各部が実行する処理の流れを示すフローチャートである。 Figure 3 is a flowchart showing the flow of processing executed by each part of the recording medium management device 10 according to this embodiment 1.

図4は、記録媒体管理装置10の各部による処理が行われる前の、3つの仮想ボリューム200と、物理ボリューム110の4つのボリュームユニットとの一例を示す。ここでは、図4に示す3つの仮想データ5222、5211、5212、および、2つの実データ5121、5122に着目する。 Figure 4 shows an example of three virtual volumes 200 and four volume units of a physical volume 110 before processing by each part of the recording medium management device 10. Here, attention is focused on the three virtual data 5222, 5211, 5212 and the two real data 5121, 5122 shown in Figure 4.

図4に示す例では、第2の仮想ボリューム200-2の領域に格納された仮想データ5222、および第1の仮想ボリューム200-1の領域に格納された仮想データ5212は、同一の実データ5122と対応しており、第1の仮想ボリューム200-1に格納された1つの仮想データ5211は、他の一つの実データ5121と対応している。すなわち、第2ボリュームユニットの領域に格納された実データ5122は、第1の仮想ボリューム200-1、および第2の仮想ボリューム200-2によって参照されている(重複度:2)。一方、第1ボリュームユニットの領域に格納された実データ5121は、第1の仮想ボリューム200-1のみによって参照されている(重複度:1)。 In the example shown in FIG. 4, the virtual data 5222 stored in the area of the second virtual volume 200-2 and the virtual data 5212 stored in the area of the first virtual volume 200-1 correspond to the same real data 5122, and one virtual data 5211 stored in the first virtual volume 200-1 corresponds to another real data 5121. In other words, the real data 5122 stored in the area of the second volume unit is referenced by the first virtual volume 200-1 and the second virtual volume 200-2 (overlapping degree: 2). On the other hand, the real data 5121 stored in the area of the first volume unit is referenced only by the first virtual volume 200-1 (overlapping degree: 1).

図3に示すように、まず、重複度計算部11は、物理ボリューム110の各ボリュームブロックに格納された実データの重複度を計算する(S101)。具体的には、重複度計算部11は、同一の実データを参照する仮想ボリューム200の数をカウントし、その総数を重複度とする。 As shown in FIG. 3, first, the redundancy calculation unit 11 calculates the redundancy of the actual data stored in each volume block of the physical volume 110 (S101). Specifically, the redundancy calculation unit 11 counts the number of virtual volumes 200 that reference the same actual data, and regards the total number as the redundancy.

次に、重複度計算部11は、計算した重複度に基づいて、実データの重複度における変化の有無を判定する(S102)。 Next, the redundancy calculation unit 11 determines whether there is a change in the redundancy of the actual data based on the calculated redundancy (S102).

実データの重複度に変化がない(S102でNo)、記録媒体管理装置10の動作のフローはステップS101に戻る。 If there is no change in the degree of duplication of the actual data (No in S102), the operation flow of the recording medium management device 10 returns to step S101.

ここでは、ステップS102の前に、図4の例に示す第1の仮想ボリューム200-1の領域に格納された仮想データ5211、5212が消去されたとする。 Here, it is assumed that before step S102, the virtual data 5211 and 5212 stored in the area of the first virtual volume 200-1 shown in the example of Figure 4 were erased.

この場合、格納部12は、第1から第3ボリュームユニットをスキャンすることによって、仮想データ5211と対応する実データ5121を第1ボリュームユニットから検出する。また、格納部12は、仮想データ5212と対応する実データ5122を第2ボリュームユニットから検出する。 In this case, the storage unit 12 detects the actual data 5121 corresponding to the virtual data 5211 from the first volume unit by scanning the first to third volume units. The storage unit 12 also detects the actual data 5122 corresponding to the virtual data 5212 from the second volume unit.

実データの重複度が変化した場合(S102でYes)、続いて、格納部12は、実データの移動先に空きブロックがあるか否かを判定する(S103)。図4に示す例では、実データ5121の移動先は第0ボリュームユニットであり、実データ5122の移動先は第1ボリュームユニットである。 If the degree of duplication of the actual data has changed (Yes in S102), the storage unit 12 then determines whether or not there is an empty block at the destination of the actual data (S103). In the example shown in FIG. 4, the destination of the actual data 5121 is the 0th volume unit, and the destination of the actual data 5122 is the 1st volume unit.

なお、ステップS103において、完全に空のブロックが第0ボリュームユニットにない場合であっても、少なくとも移動する実データのデータブロックを格納可能な余裕領域が第0ボリュームユニットに存在する場合、格納部12は、移動先に空きブロックがあると判定する。 In addition, in step S103, even if there is no completely empty block in the 0th volume unit, if there is spare space in the 0th volume unit that can store at least the data block of the actual data to be moved, the storage unit 12 determines that there is an empty block in the move destination.

実データの移動先に空きブロックがある場合(S103でYes)、フローはステップS105に進む。一方、実データの移動先に空きブロックがない場合(S103でNo)、格納部12は、実データの移動先のボリュームユニットにブロックを追加する(S104)。 If there is an empty block at the destination of the actual data (Yes in S103), the flow proceeds to step S105. On the other hand, if there is no empty block at the destination of the actual data (No in S103), the storage unit 12 adds a block to the volume unit to which the actual data is to be moved (S104).

その後、格納部12は、実データをボリュームユニット間で移動させる(S105)。 Then, the storage unit 12 moves the actual data between the volume units (S105).

図5は、図4に示す例において、第1の仮想ボリューム200-1の領域から、仮想データ5211、5212が消去された場合、ステップS105において、実データ5122、5121が、ボリュームユニット間でどのように移動されるのかを示す。図5に示すように、実データ5121は、第1ボリュームユニットから第0ボリュームユニットへ移動し、実データ5122は、第2ボリュームユニットから第1ボリュームユニットへ移動する。 Figure 5 shows how actual data 5122, 5121 are moved between volume units in step S105 when virtual data 5211, 5212 are deleted from the area of the first virtual volume 200-1 in the example shown in Figure 4. As shown in Figure 5, actual data 5121 is moved from the first volume unit to the 0th volume unit, and actual data 5122 is moved from the second volume unit to the first volume unit.

図3に示すように、ステップS105の後、領域開放部13は、領域開放処理を行う(S106)。領域開放処理において、領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された第0ボリュームユニットを解放する。その後、フローは、ステップS101に戻る。領域開放処理のいくつかの例を、この後、および、後述するいくつかの実施形態において説明する。 As shown in FIG. 3, after step S105, the area release unit 13 performs area release processing (S106). In the area release processing, the area release unit 13 releases the 0th volume unit in which only real data that is not referenced by any virtual volume 200 is stored. Thereafter, the flow returns to step S101. Some examples of the area release processing will be described later and in some embodiments described later.

(領域開放処理の一例)
図6から図8を参照して、上述した領域開放処理の一例を説明する。
(An example of area release processing)
An example of the above-mentioned area release process will be described with reference to FIG. 6 to FIG.

本実施形態1では、領域開放処理の一例として、領域開放部13が、第0ボリュームユニットの領域のみを開放する場合を説明する。上述したとおり、第0ボリュームユニットには、いずれの仮想ボリューム200からも参照されていない実データが格納されている。第0ボリュームユニットは、特定の領域の一例である。 In this embodiment 1, as an example of the area release process, a case where the area release unit 13 releases only the area of the 0th volume unit will be described. As described above, the 0th volume unit stores actual data that is not referenced by any of the virtual volumes 200. The 0th volume unit is an example of a specific area.

図6は、図3のステップS106に示す領域開放処理の流れの一例を示すフローチャートである。 Figure 6 is a flowchart showing an example of the area release process shown in step S106 of Figure 3.

図6に示すように、まず、領域開放部13は、第0ボリュームユニットから実データを消去する(S31)。 As shown in FIG. 6, first, the area release unit 13 erases the actual data from the 0th volume unit (S31).

図7は、図5に示す例において、第0ボリュームユニットに実データ5121が格納されていた場合、ステップS31において、実データ5121が消去された後の変化を示す。図7に示すように、第0ボリュームユニットから実データ5121が消去された結果、第0ボリュームユニットには、1つの空きブロックが形成される。 Figure 7 shows the changes that occur after actual data 5121 is deleted in step S31 when actual data 5121 is stored in the 0th volume unit in the example shown in Figure 5. As shown in Figure 7, as a result of deleting actual data 5121 from the 0th volume unit, one free block is formed in the 0th volume unit.

次に、領域開放部13は、第0ボリュームユニットの空きブロックを削除する(S32)。 Next, the area release unit 13 deletes the free blocks from the 0th volume unit (S32).

図8は、図7に示す例において、第0ボリュームユニットに1つの空きブロックが存在していた場合、ステップS32において、その空きブロックが削除された後の変化を示す。図8に示すように、第0ボリュームユニットには、1つのブロックも残っていない。第0ボリュームユニットから削除された空きブロックと対応する記憶領域は、のちに実データを格納するために再利用することができる。 Figure 8 shows the changes that occur after one free block is deleted in step S32 in the example shown in Figure 7 from the 0th volume unit. As shown in Figure 8, not a single block remains in the 0th volume unit. The free block deleted from the 0th volume unit and the corresponding storage area can be reused later to store actual data.

以上で、領域開放処理は終了する。続いて、ここで説明した領域開放処理が、どのような効果を奏するのかについて説明する。 This completes the area freeing process. Next, we will explain what effect the area freeing process described here has.

図1に示すシステム1において、物理ボリューム110の第0ボリュームユニットには、いずれの仮想ボリュによっても参照されていない実データのみが格納されている。そのため、第0ボリュームユニットに格納されている実データを削除したとしても、仮想ボリューム200が参照している実データが失われることはない。そのため、空きブロックがない場合に、第0ボリュームユニットを領域開放することによって、仮想ボリューム200に影響を与えることなしに、容易かつ即時に空きブロックを作成することができる。 In the system 1 shown in FIG. 1, the 0th volume unit of the physical volume 110 stores only real data that is not referenced by any virtual volume. Therefore, even if the real data stored in the 0th volume unit is deleted, the real data referenced by the virtual volume 200 is not lost. Therefore, when there are no free blocks, freeing up the area of the 0th volume unit makes it possible to easily and instantly create free blocks without affecting the virtual volume 200.

(本実施形態の効果)
本実施形態の構成によれば、重複度計算部11は、記録媒体に保存された同一の実データがいくつの仮想ボリューム200によって参照されているかを示す重複度を計算する。格納部12は、重複度に応じた記録媒体100の一領域内に実データを格納する。領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された特定の領域を解放する。
(Effects of this embodiment)
According to the configuration of this embodiment, the redundancy calculation unit 11 calculates the redundancy indicating how many virtual volumes 200 reference the same real data stored in the recording medium. The storage unit 12 stores the real data in one area of the recording medium 100 according to the redundancy. The area release unit 13 releases a specific area in which only real data not referenced by any of the virtual volumes 200 is stored.

領域開放処理により、特定の領域が開放される。これにより、解放された領域を再利用できるので、記録媒体に割り当てられた物理ボリューム110の領域を効率的に利用可能にすることができる。 The area release process releases a specific area. This allows the released area to be reused, making it possible to efficiently use the area of the physical volume 110 allocated to the recording medium.

〔実施形態2〕
本実施形態2では、前記実施形態1で説明した例とは異なる領域開放処理の一例を説明する。
[Embodiment 2]
In the second embodiment, an example of an area release process different from the example described in the first embodiment will be described.

本実施形態2では、領域開放部13は、記録媒体100における特定の領域に格納された実データを消去し、特定の領域を少なくとも含む2つ以上の領域から空きブロックを削除する。具体的には、特定の領域は、第0ボリュームユニットである。2つ以上の領域とは、図1に示す物理ボリューム110の第0~第N(Nは1以上の整数)ボリュームユニットである。 In this second embodiment, the area release unit 13 erases actual data stored in a specific area in the recording medium 100, and deletes free blocks from two or more areas that include at least the specific area. Specifically, the specific area is the 0th volume unit. The two or more areas are the 0th to Nth (N is an integer equal to or greater than 1) volume units of the physical volume 110 shown in FIG. 1.

(領域開放処理の一例)
図9を参照して、上述した領域開放処理の一例を説明する。
(An example of area release processing)
An example of the above-mentioned area release process will be described with reference to FIG.

図9に示すように、まず、領域開放部13は、第0ボリュームユニット(図1)から実データを削除する(S51)。 As shown in FIG. 9, first, the area release unit 13 deletes actual data from the 0th volume unit (FIG. 1) (S51).

つぎに、領域開放部13は、第1~第Nボリュームユニットをスキャンする(S52)。すなわち、領域開放部13は、物理ボリューム110の各ブロックに格納された実データの有無を検査する。なお、領域開放部13は、第1~第Nボリュームユニットの全てをスキャンしなくてもよい。例えば、本実施形態2に係わる領域開放処理の一変形例では、領域開放部13は、ステップS32において、第1~第n´(1<n´<N)ボリュームユニットのみをスキャンする。本変形例については、実施形態5で詳細に説明する。 Next, the area releaser 13 scans the first through Nth volume units (S52). That is, the area releaser 13 checks whether or not there is actual data stored in each block of the physical volume 110. Note that the area releaser 13 does not need to scan all of the first through Nth volume units. For example, in one modified example of the area release process related to the second embodiment, the area releaser 13 scans only the first through n'th (1<n'<N) volume units in step S32. This modified example will be described in detail in the fifth embodiment.

その後、領域開放部13は、第0~第Nボリュームユニットの空きブロックを削除する(S53)。 Then, the area release unit 13 deletes the free blocks from the 0th to Nth volume units (S53).

以上で、領域開放処理は終了する。 This completes the area release process.

(本実施形態の効果)
本実施形態の構成によれば、重複度計算部11は、記録媒体に保存された同一の実データがいくつの仮想ボリューム200によって参照されているかを示す重複度を計算する。格納部12は、重複度に応じた記録媒体100の一領域内に実データを格納する。領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された特定の領域を解放する。
(Effects of this embodiment)
According to the configuration of this embodiment, the redundancy calculation unit 11 calculates the redundancy indicating how many virtual volumes 200 reference the same real data stored in the recording medium. The storage unit 12 stores the real data in one area of the recording medium 100 according to the redundancy. The area release unit 13 releases a specific area in which only real data not referenced by any of the virtual volumes 200 is stored.

領域開放処理により、特定の領域が開放される。これにより、解放された領域を再利用できるので、記録媒体に割り当てられた物理ボリューム110の領域を効率的に利用可能にすることができる。 The area release process releases a specific area. This allows the released area to be reused, making it possible to efficiently use the area of the physical volume 110 allocated to the recording medium.

さらに、本実施形態の構成によれば、領域開放部13は、記録媒体100における特定の領域に格納された実データを消去し、特定の領域を少なくとも含む2つ以上の領域から空きブロックを削除する。 Furthermore, according to the configuration of this embodiment, the area release unit 13 erases actual data stored in a specific area on the recording medium 100, and deletes free blocks from two or more areas that at least include the specific area.

これにより、特定の領域(一例では第0ボリュームユニット)のみから空きブロックを削除する構成と比較して、より大きい領域を解放することができる。 This allows a larger area to be freed up compared to a configuration in which free blocks are deleted only from a specific area (in one example, the 0th volume unit).

〔実施形態3〕
本実施形態3では、前記実施形態1~2で説明した例とは異なる領域開放処理の一例を説明する。
[Embodiment 3]
In the third embodiment, an example of an area release process different from the examples described in the first and second embodiments will be described.

本実施形態3では、領域開放部13は、記録媒体100における特定の領域に格納された実データを消去し、特定の領域を少なくとも含む2つ以上の領域のうち、より小さい重複度と対応する領域から順に、予め決められた設定値以上の数の空きブロックを削除する。具体的には、特定の領域は、第0ボリュームユニットである。一例では、2つ以上の領域とは、図1に示す物理ボリューム110の第0~第N(Nは1以上の整数)ボリュームユニットである。 In this embodiment 3, the area release unit 13 erases actual data stored in a specific area in the recording medium 100, and deletes a number of free blocks equal to or greater than a predetermined set value from two or more areas that include at least the specific area, starting with the area that corresponds to the smallest degree of overlap. Specifically, the specific area is the 0th volume unit. In one example, the two or more areas are the 0th to Nth (N is an integer equal to or greater than 1) volume units of the physical volume 110 shown in FIG. 1.

(領域開放処理の一例)
図10を参照して、上述した領域開放処理の一例を説明する。
(An example of area release processing)
An example of the above-mentioned area release process will be described with reference to FIG.

図10に示すように、まず、領域開放部13は、第0ボリュームユニット(図1)から実データを削除する(S71)。 As shown in FIG. 10, first, the area release unit 13 deletes actual data from the 0th volume unit (FIG. 1) (S71).

続くステップS72では、物理ボリューム110における階層(すなわちボリュームユニットの番号)を表す変数nnに0がセットされる(S72)。 In the next step S72, the variable nn, which represents the hierarchical level (i.e., the volume unit number) in the physical volume 110, is set to 0 (S72).

領域開放部13は、第nnボリュームユニットの全てのブロックをスキャンする(S73)。すなわち、領域開放部13は、各ブロックに格納された実データの有無を検査する。 The area release unit 13 scans all blocks in the nnth volume unit (S73). That is, the area release unit 13 checks whether or not there is actual data stored in each block.

そして、ステップS73におけるスキャンの結果、第nnボリュームユニットの空きブロックがもしあれば、領域開放部13は、空きブロックを削除する(S74)。 Then, if the scan in step S73 finds that there is a free block in the nnth volume unit, the area release unit 13 deletes the free block (S74).

領域開放部13は、削除したブロックの数の合計は、予め決められた設定値未満かどうかを判定する(S75)。 The area release unit 13 determines whether the total number of deleted blocks is less than a predetermined set value (S75).

削除したブロックの数の合計が設定値以上である場合(S75でNo)、本実施形態3に係わる領域開放処理は終了する。 If the total number of deleted blocks is equal to or greater than the set value (No in S75), the area release process according to this embodiment 3 ends.

一方、削除したブロックの数の合計が設定値未満である場合(S75でYes)、続くステップS76では、物理ボリューム110における階層(すなわちボリュームユニットの番号)を表す変数nnにnn+1がセットされる(S76)。すなわち、変数nnに1が加算される。 On the other hand, if the total number of deleted blocks is less than the set value (Yes in S75), then in step S76, the variable nn, which represents the hierarchical level (i.e., the volume unit number) in the physical volume 110, is set to nn+1 (S76). In other words, 1 is added to the variable nn.

変数nnはN以下である場合(S77でNo)、フローはステップS73に戻る。ここで、Nは、物理ボリューム110の階層の総数から1を引いた値である(図1)。一方、変数nnがNを超えた場合(S77でYes)、本実施形態3に係わる領域開放処理は終了する。 If the variable nn is equal to or less than N (No in S77), the flow returns to step S73. Here, N is the total number of tiers of the physical volume 110 minus 1 (Figure 1). On the other hand, if the variable nn exceeds N (Yes in S77), the area release process according to this embodiment 3 ends.

(本実施形態の効果)
本実施形態の構成によれば、重複度計算部11は、記録媒体に保存された同一の実データがいくつの仮想ボリューム200によって参照されているかを示す重複度を計算する。格納部12は、重複度に応じた記録媒体100の一領域内に実データを格納する。領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された特定の領域を解放する。
(Effects of this embodiment)
According to the configuration of this embodiment, the redundancy calculation unit 11 calculates the redundancy indicating how many virtual volumes 200 reference the same real data stored in the recording medium. The storage unit 12 stores the real data in one area of the recording medium 100 according to the redundancy. The area release unit 13 releases a specific area in which only real data not referenced by any of the virtual volumes 200 is stored.

領域開放処理により、特定の領域が開放される。これにより、解放された領域を再利用できるので、記録媒体に割り当てられた物理ボリューム110の領域を効率的に利用可能にすることができる。 The area release process releases a specific area. This allows the released area to be reused, making it possible to efficiently use the area of the physical volume 110 allocated to the recording medium.

さらに、本実施形態の構成によれば、領域開放部13は、記録媒体100における特定の領域に格納された実データを消去し、特定の領域を少なくとも含む2つ以上の領域のうち、より小さい重複度と対応する領域から順に、設定値以上の数の空きブロックを削除する。 Furthermore, according to the configuration of this embodiment, the area release unit 13 erases the actual data stored in a specific area in the recording medium 100, and deletes a number of free blocks equal to or greater than the set value, in order from among two or more areas that include at least the specific area, starting with the area that corresponds to the smallest degree of overlap.

これにより、特定の領域(一例では第0ボリュームユニット)のみから空きブロックを削除する構成と比較して、より大きい領域を解放することができる。さらに、設定値以上の数の空きブロックを削除すれば、領域開放処理が終了するので、全てのボリュームユニットをスキャンし、全てのボリュームユニットから空きブロックを削除する構成と比較して、必要十分な領域を解放することができる。 This allows a larger area to be freed up compared to a configuration in which free blocks are deleted only from a specific area (the 0th volume unit in one example). Furthermore, the area freeing process ends when a number of free blocks equal to or greater than a set value have been deleted, so a sufficient amount of area can be freed up compared to a configuration in which all volume units are scanned and free blocks are deleted from all volume units.

〔実施形態4〕
本実施形態4では、前記実施形態1~3で説明した例とは異なる領域開放処理の一例を説明する。
[Embodiment 4]
In the fourth embodiment, an example of an area release process different from the examples described in the first to third embodiments will be described.

前記実施形態2と同様に、領域開放部13は、記録媒体100における特定の領域に格納された実データを消去し、特定の領域を少なくとも含む2つ以上の領域から空きブロックを削除する。具体的には、特定の領域は、第0ボリュームユニットである。2つ以上の領域とは、図1に示す物理ボリューム110の第0~第N(Nは1以上の整数)ボリュームユニットである。 As in the second embodiment, the area release unit 13 erases actual data stored in a specific area in the recording medium 100 and deletes free blocks from two or more areas that at least include the specific area. Specifically, the specific area is the 0th volume unit. The two or more areas are the 0th to Nth (N is an integer equal to or greater than 1) volume units of the physical volume 110 shown in FIG. 1.

本実施形態4では、特定の領域を含む2つ以上の領域のうち、より小さい重複度と対応する領域から順に、所定数(上限値をN´とする)の領域から、空きブロックを削除する。この点で、本実施形態4の構成は、前記実施形態2とは異なる。 In this embodiment 4, among two or more regions including a specific region, free blocks are deleted from a predetermined number of regions (upper limit N') in order starting from the region corresponding to the smallest overlap. In this respect, the configuration of this embodiment 4 differs from that of the above-mentioned embodiment 2.

(領域開放処理の一例)
図11を参照して、上述した領域開放処理の一例を説明する。
(An example of area release processing)
An example of the above-mentioned area release process will be described with reference to FIG.

図11に示すように、まず、領域開放部13は、第0ボリュームユニット(図1)から実データを削除する(S91)。 As shown in FIG. 11, first, the area release unit 13 deletes actual data from the 0th volume unit (FIG. 1) (S91).

続くステップS92では、物理ボリューム110における階層(すなわちボリュームユニットの番号)を表す変数nnnに0がセットされる(S92)。 In the next step S92, the variable nnn, which represents the hierarchical level (i.e., the volume unit number) in the physical volume 110, is set to 0 (S92).

領域開放部13は、第nnnボリュームユニットをスキャンする(S93)。すなわち、領域開放部13は、第nnnボリュームユニットの各ブロックに格納された実データの有無を検査する。 The area release unit 13 scans the nnn-th volume unit (S93). That is, the area release unit 13 checks whether or not there is actual data stored in each block of the nnn-th volume unit.

ステップS73におけるスキャンの結果、第nnnボリュームユニットの空きブロックがもしあれば、領域開放部13は、空きブロックを削除する(S94)。 If the scan in step S73 finds that there is a free block in the nnnth volume unit, the area release unit 13 deletes the free block (S94).

続くステップS95では、物理ボリューム110における階層(すなわちボリュームユニットの番号)を表す変数nnnにnnn+1がセットされる(S95)。すなわち、変数nnnに1が加算される。 In the next step S95, the variable nnn, which represents the hierarchical level (i.e., the volume unit number) in the physical volume 110, is set to nnn+1 (S95). In other words, 1 is added to the variable nnn.

変数nnnはN´以下である場合(S96でNo)、フローはステップS93に戻る。ここで、N´は、1以上かつNより小さい整数であればよい(図1)。一方、変数nnnがN´を超えた場合(S96でYes)、本実施形態4に係わる領域開放処理は終了する。 If the variable nnn is equal to or less than N' (No in S96), the flow returns to step S93. Here, N' may be any integer greater than or equal to 1 and less than N (FIG. 1). On the other hand, if the variable nnn exceeds N' (Yes in S96), the area release process according to this embodiment 4 ends.

(本実施形態の効果)
本実施形態の構成によれば、重複度計算部11は、記録媒体に保存された同一の実データがいくつの仮想ボリューム200によって参照されているかを示す重複度を計算する。格納部12は、重複度に応じた記録媒体100の一領域内に実データを格納する。領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された特定の領域を解放する。
(Effects of this embodiment)
According to the configuration of this embodiment, the redundancy calculation unit 11 calculates the redundancy indicating how many virtual volumes 200 reference the same real data stored in the recording medium. The storage unit 12 stores the real data in one area of the recording medium 100 according to the redundancy. The area release unit 13 releases a specific area in which only real data not referenced by any of the virtual volumes 200 is stored.

領域開放処理により、特定の領域が開放される。これにより、解放された領域を再利用できるので、記録媒体に割り当てられた物理ボリューム110の領域を効率的に利用可能にすることができる。 The area release process releases a specific area. This allows the released area to be reused, making it possible to efficiently use the area of the physical volume 110 allocated to the recording medium.

さらに、本実施形態の構成によれば、領域開放部13は、記録媒体100における特定の領域に格納された実データを消去し、特定の領域を少なくとも含む2つ以上の領域から空きブロックを削除する。 Furthermore, according to the configuration of this embodiment, the area release unit 13 erases actual data stored in a specific area on the recording medium 100, and deletes free blocks from two or more areas that at least include the specific area.

これにより、特定の領域(一例では第0ボリュームユニット)のみから空きブロックを削除する構成と比較して、より大きい領域を解放することができる。 This allows a larger area to be freed up compared to a configuration in which free blocks are deleted only from a specific area (in one example, the 0th volume unit).

加えて、重複度が小さい順に、物理ボリューム110の階層の総数より小さい上限値まで、各重複度と対応する階層のボリュームユニットから空きブロックを削除した時点で、領域開放処理が終了する。そのため、全てのボリュームユニットをスキャンし、全てのボリュームユニットから空きブロックを削除する構成と比較して、領域開放処理の負荷を低減することができる。 In addition, the area release process ends when free blocks have been deleted from the volume units of the hierarchical levels corresponding to each degree of overlap, in ascending order of overlap, up to an upper limit value that is smaller than the total number of hierarchical levels of the physical volume 110. Therefore, the load of the area release process can be reduced compared to a configuration in which all volume units are scanned and free blocks are deleted from all volume units.

〔実施形態5〕
図12~図13を参照して、実施形態5について説明する。
[Embodiment 5]
A fifth embodiment will be described with reference to FIGS.

(記録媒体管理装置20)
図12は、本実施形態5に係わる記録媒体管理装置20の構成を示すブロック図である。図12に示すように、記録媒体管理装置20は、重複度計算部11、格納部12、および領域開放部13に加えて、推定部24をさらに備えている。重複度計算部11、格納部12、および領域開放部13についての説明を、本実施形態5では省略し、前記実施形態1における説明を参照する。ただし、格納部12については、本実施形態5において特徴的な処理についてのみ、補足的に説明する。
(Recording medium management device 20)
Fig. 12 is a block diagram showing the configuration of a recording medium management device 20 according to the fifth embodiment. As shown in Fig. 12, the recording medium management device 20 further includes an estimation unit 24 in addition to an overlap calculation unit 11, a storage unit 12, and an area release unit 13. Descriptions of the overlap calculation unit 11, the storage unit 12, and the area release unit 13 are omitted in the fifth embodiment, and the descriptions in the first embodiment are referred to. However, for the storage unit 12, a supplementary description will be given only of the processing characteristic of the fifth embodiment.

推定部24は、仮想ボリューム200に格納された仮想データに対するアクセスの履歴に基づいて、実データが仮想ボリューム200によって参照されない時間帯を推定する。推定部24は、推定手段の一例である。 The estimation unit 24 estimates a time period during which real data is not referenced by the virtual volume 200 based on the access history of the virtual data stored in the virtual volume 200. The estimation unit 24 is an example of an estimation means.

図13を参照して、推定部24が、実行する処理の一例を説明する。図13において、符号71で示される左側のデータは、仮想データに対するアクセスの履歴(アクセス時間記録71と呼ぶ)の一例を示す。 An example of the process executed by the estimation unit 24 will be described with reference to FIG. 13. In FIG. 13, the data on the left side indicated by the reference numeral 71 shows an example of the history of access to the virtual data (referred to as the access time record 71).

一例では、推定部24は、仮想ボリューム制御装置(図示せず)から、アクセス時間記録71のデータを取得する。そして、推定部24は、取得したアクセス時間記録71のデータに基づいて、仮想データと対応する実データが仮想ボリューム200によって参照されない時間帯を推定する。 In one example, the estimation unit 24 acquires data of the access time record 71 from a virtual volume control device (not shown). Then, based on the acquired data of the access time record 71, the estimation unit 24 estimates a time period during which the real data corresponding to the virtual data is not referenced by the virtual volume 200.

具体的には、推定部24は、仮想データに対するアクセスのあった時刻を一定の時間帯ごとに分類し、図13の右側に示すメタデータ72を生成する。図13の右側に示すメタデータ72は、図13の左側に示すアクセスの履歴を、1時間ごとに分類した結果を示す。 Specifically, the estimation unit 24 classifies the times when the virtual data was accessed into certain time periods, and generates metadata 72 shown on the right side of FIG. 13. The metadata 72 shown on the right side of FIG. 13 shows the result of classifying the access history shown on the left side of FIG. 13 into hourly intervals.

図13に示すメタデータ72において、「Y」は、対応する時間帯(24時間のうち特定の1時間)において、仮想データにアクセスがあったことを示し、「N」は、対応する時間帯(24時間のうち特定の1時間)において、仮想データにアクセスがなかったことを示す。 In the metadata 72 shown in FIG. 13, "Y" indicates that the virtual data was accessed during the corresponding time period (a specific hour out of 24 hours), and "N" indicates that the virtual data was not accessed during the corresponding time period (a specific hour out of 24 hours).

なお、図13に示すアクセス時間記録71には、3日分のアクセスの履歴が含まれているが、推定部24は、1週間あるいは1か月など、より長期間におけるアクセスの履歴を取得してもよい。あるいは、アクセス時間記録71は、所定の期間におけるすべてのアクセスの履歴を記録してもよいし、直近の所定件数のアクセスの履歴のみを記録してもよい。あるいはまた、アクセス時間記録71は、秒単位までではなく、もっと高精度に(例えばミニ秒単位)、またはその逆に(例えば分単位または一時間単位)、アクセスの履歴を記録してもよい。 Note that while the access time record 71 shown in FIG. 13 includes three days' worth of access history, the estimation unit 24 may obtain access history for a longer period, such as one week or one month. Alternatively, the access time record 71 may record all access history during a specified period, or may record only the most recent specified number of access histories. Alternatively, the access time record 71 may record access history with a higher degree of accuracy (e.g., in microseconds) rather than down to the second, or vice versa (e.g., in minutes or hours).

一例では、推定部24は、アクセス時間記録71から得たメタデータ72に基づいて、実データが仮想ボリューム200によって参照されない時間帯を推定する。図13の右側に示すメタデータ72において、10時台の1時間のみ、アクセスの履歴があり、その他の時間帯には、アクセスの履歴がない。そのため、推定部24は、10時台の1時間を除いて、実データが仮想ボリューム200によって参照されないと推定する。 In one example, the estimation unit 24 estimates a time period during which the actual data is not referenced by the virtual volume 200 based on the metadata 72 obtained from the access time record 71. In the metadata 72 shown on the right side of FIG. 13, there is an access history only for one hour between 10:00 and 10:00, and there is no access history for other time periods. Therefore, the estimation unit 24 estimates that the actual data is not referenced by the virtual volume 200 except for the one hour between 10:00 and 10:00.

ただし、図13に示すアクセス時間記録71には、3日分のアクセスの履歴しか含まれていないため、推定の精度は低い可能性がある。その場合、推定部24は、十分な推定の精度を得るため、アクセスの履歴を取得する期間を延長してもよい。 However, since the access time record 71 shown in FIG. 13 only contains access history for three days, the accuracy of the estimation may be low. In that case, the estimation unit 24 may extend the period for acquiring the access history in order to obtain a sufficient accuracy of the estimation.

推定部24は、実データが仮想ボリューム200によって参照されない時間帯を推定した結果を示す情報を格納部12へ出力する。 The estimation unit 24 outputs information indicating the result of estimating the time period during which the actual data is not referenced by the virtual volume 200 to the storage unit 12.

本実施形態5では、格納部12は、推定部24から、実データが仮想ボリューム200によって参照されない時間帯を推定した結果を示す情報を受信する。そして、格納部12は、仮想データがアクセスされないと推定された時間帯に、重複度に応じた記録媒体100の一領域内に実データを格納する。 In this embodiment 5, the storage unit 12 receives information indicating the result of estimating a time period during which the real data is not referenced by the virtual volume 200 from the estimation unit 24. Then, the storage unit 12 stores the real data in one area of the recording medium 100 according to the degree of overlap during the time period during which it is estimated that the virtual data is not accessed.

(本実施形態の効果)
本実施形態の構成によれば、重複度計算部11は、記録媒体に保存された同一の実データがいくつの仮想ボリューム200によって参照されているかを示す重複度を計算する。格納部12は、重複度に応じた記録媒体100の一領域内に実データを格納する。領域開放部13は、いずれの仮想ボリューム200によっても参照されない実データのみが格納された特定の領域を解放する。
(Effects of this embodiment)
According to the configuration of this embodiment, the redundancy calculation unit 11 calculates the redundancy indicating how many virtual volumes 200 reference the same real data stored in the recording medium. The storage unit 12 stores the real data in one area of the recording medium 100 according to the redundancy. The area release unit 13 releases a specific area in which only real data not referenced by any of the virtual volumes 200 is stored.

領域開放処理により、特定の領域が開放される。これにより、解放された領域を再利用できるので、記録媒体に割り当てられた物理ボリューム110の領域を効率的に利用可能にすることができる。 The area release process releases a specific area. This allows the released area to be reused, making it possible to efficiently use the area of the physical volume 110 allocated to the recording medium.

さらに、本実施形態の構成によれば、推定部24は、仮想ボリューム200に格納された仮想データに対するアクセスの履歴に基づいて、実データが仮想ボリューム200によって参照されない時間帯を推定する。格納部12は、仮想データがアクセスされないと推定された時間帯に、重複度に応じた記録媒体100の一領域内に実データを格納する。 Furthermore, according to the configuration of this embodiment, the estimation unit 24 estimates a time period during which the real data is not referenced by the virtual volume 200 based on the access history of the virtual data stored in the virtual volume 200. The storage unit 12 stores the real data in one area of the recording medium 100 according to the degree of overlap during the time period during which it is estimated that the virtual data is not accessed.

これにより、実データの格納先を変更している最中に、実データと対応する仮想データがアクセスを受ける可能性を低減することができ、ユーザの業務に支障をきたすことを防止することができる。 This reduces the possibility that virtual data corresponding to real data will be accessed while the storage location of the real data is being changed, preventing disruptions to user operations.

(ハードウェア構成について)
前記実施形態1~5で説明した記録媒体管理装置10(20)の各構成要素は、機能単位のブロックを示している。これらの構成要素の一部又は全部は、例えば図14に示すような情報処理装置900により実現される。図14は、情報処理装置900のハードウェア構成の一例を示すブロック図である。
(Hardware configuration)
Each component of the recording medium management device 10 (20) described in the first to fifth embodiments is shown as a functional block. Some or all of these components are realized by an information processing device 900 as shown in Fig. 14. Fig. 14 is a block diagram showing an example of the hardware configuration of the information processing device 900.

図14に示すように、情報処理装置900は、一例として、以下のような構成を含む。 As shown in FIG. 14, the information processing device 900 includes, as an example, the following configuration:

・CPU(Central Processing Unit)901
・ROM(Read Only Memory)902
・RAM(Random Access Memory)903
・RAM903にロードされるプログラム904
・プログラム904を格納する記憶装置905
・記録媒体906の読み書きを行うドライブ装置907
・通信ネットワーク909と接続する通信インタフェース908
・データの入出力を行う入出力インタフェース910
・各構成要素を接続するバス911
前記実施形態1~5で説明した記録媒体管理装置10(20)の各構成要素は、これらの機能を実現するプログラム904をCPU901が読み込んで実行することで実現される。各構成要素の機能を実現するプログラム904は、例えば、予め記憶装置905やROM902に格納されており、必要に応じてCPU901がRAM903にロードして実行される。なお、プログラム904は、通信ネットワーク909を介してCPU901に供給されてもよいし、予め記録媒体906に格納されており、ドライブ装置907が当該プログラムを読み出してCPU901に供給してもよい。
・CPU (Central Processing Unit) 901
・ROM (Read Only Memory) 902
・RAM (Random Access Memory) 903
Program 904 loaded into RAM 903
A storage device 905 for storing a program 904
A drive device 907 for reading and writing data from and to the recording medium 906
A communication interface 908 for connecting to a communication network 909
An input/output interface 910 for inputting and outputting data
A bus 911 connecting each component
Each of the components of the recording medium management device 10 (20) described in the first to fifth embodiments is realized by the CPU 901 reading and executing the program 904 that realizes these functions. The program 904 to be implemented is, for example, stored in advance in the storage device 905 or the ROM 902, and is loaded into the RAM 903 and executed by the CPU 901 as necessary. The program 904 is supplied to the CPU 901 via a communication network 909. Alternatively, the program may be stored in advance on the recording medium 906 , and the drive device 907 may read out the program and supply it to the CPU 901 .

(本実施形態の効果)
本実施形態の構成によれば、前記実施形態において説明した記録媒体管理装置10(20)が、ハードウェアとして実現される。したがって、前記実施形態において説明した効果と同様の効果を奏することができる。
(Effects of this embodiment)
According to the configuration of this embodiment, the recording medium management device 10 (20) described in the previous embodiment is realized as hardware, and therefore the same effects as those described in the previous embodiment can be achieved.

本発明は、例えば、ストレージまたはメモリなどの記録媒体に格納されたデータを管理する記録媒体管理装置と、それを備えたストレージシステム、およびクラウドストレージサービスなどに利用することができる。 The present invention can be used, for example, in a recording medium management device that manages data stored in a recording medium such as a storage or memory, a storage system equipped with the same, and a cloud storage service.

1 システム
10 記録媒体管理装置
11 重複度計算部
12 格納部
13 領域開放部
20 記録媒体管理装置
24 推定部
100 ストレージ(記録媒体)
200 仮想ボリューム
REFERENCE SIGNS LIST 1 System 10 Recording medium management device 11 Overlapping degree calculation unit 12 Storage unit 13 Area release unit 20 Recording medium management device 24 Estimation unit 100 Storage (recording medium)
200 Virtual Volume

Claims (7)

記録媒体に保存された同一の実データがいくつの仮想ボリュームによって参照されているかを示す重複度を計算する重複度計算手段と、
前記重複度に応じた前記記録媒体の一領域内に前記実データを格納する格納手段と、
前記記録媒体の領域のうち、いずれの仮想ボリュームによっても参照されない実データのみが格納された特定の領域を解放する領域開放手段と
を備え、
前記記録媒体の領域は階層構造を形成しており、
1つの仮想ボリュームから仮想データが消去されたとき、
前記重複度計算手段は、消去された前記仮想データと対応する実データについての重複度を1低下させ、
前記格納手段は、前記重複度の変化に応じて、消去された前記仮想データと対応する実データを、前記記録媒体の前記一領域から1つ下の階層の領域へ移動させる
記録媒体管理装置。
a multiplicity calculation means for calculating a multiplicity indicating how many virtual volumes reference the same real data stored on the recording medium;
a storage means for storing the actual data in one area of the recording medium according to the degree of duplication;
an area releasing means for releasing a specific area of the recording medium in which only real data not referenced by any virtual volume is stored,
The areas of the recording medium form a hierarchical structure,
When virtual data is deleted from one virtual volume,
the overlap calculation means reduces by 1 the overlap of the real data corresponding to the deleted virtual data;
The storage means is a recording medium management device that moves real data corresponding to the erased virtual data from the one area of the recording medium to an area one hierarchical level lower in accordance with a change in the degree of duplication.
前記領域開放手段は、前記記録媒体における前記特定の領域に格納された前記実データを消去し、前記特定の領域から空きブロックを削除する
ことを特徴とする請求項1に記載の記録媒体管理装置。
2. The recording medium management device according to claim 1, wherein said area releasing means erases the actual data stored in said specific area on said recording medium, and deletes free blocks from said specific area.
前記領域開放手段は、前記記録媒体における前記特定の領域に格納された前記実データを消去し、前記特定の領域を少なくとも含む2つ以上の領域から空きブロックを削除する
ことを特徴とする請求項1に記載の記録媒体管理装置。
The recording medium management device according to claim 1, characterized in that the area release means erases the actual data stored in the specific area on the recording medium and deletes free blocks from two or more areas including at least the specific area.
前記領域開放手段は、前記記録媒体における前記特定の領域に格納された前記実データを消去し、前記特定の領域を少なくとも含む2つ以上の領域のうち、より小さい前記重複度と対応する領域から順に、予め決められた設定値以上の数の空きブロックを削除する
ことを特徴とする請求項1に記載の記録媒体管理装置。
The recording medium management device according to claim 1, characterized in that the area release means erases the actual data stored in the specific area on the recording medium, and deletes a number of free blocks equal to or greater than a predetermined set value from among two or more areas including at least the specific area, in order from the area corresponding to the smaller degree of overlap.
前記仮想ボリュームに格納された仮想データに対するアクセスの履歴に基づいて、前記実データが前記仮想ボリュームによって参照されない時間帯を推定する推定手段をさらに備え、
前記格納手段は、前記仮想データがアクセスされないと推定された前記時間帯に、前記重複度に応じた前記記録媒体の前記一領域内に前記実データを格納する
ことを特徴とする請求項1から4のいずれか1項に記載の記録媒体管理装置。
further comprising an estimation unit for estimating a time period during which the real data is not referenced by the virtual volume based on a history of accesses to the virtual data stored in the virtual volume;
The recording medium management device according to any one of claims 1 to 4, characterized in that the storage means stores the actual data within the one area of the recording medium according to the degree of overlap during the time period in which it is estimated that the virtual data will not be accessed.
コンピュータが、
記録媒体に保存された同一の実データがいくつの仮想ボリュームによって参照されているかを示す重複度を計算し、
前記重複度に応じた前記記録媒体の一領域内に前記実データを格納し、
前記記録媒体の領域のうち、いずれの仮想ボリュームによっても参照されない実データのみが格納された特定の領域を解放する記録媒体管理方法であって、
前記記録媒体の領域は階層構造を形成しており、
1つの仮想ボリュームから仮想データが消去されたとき、
消去された前記仮想データと対応する実データについての重複度を1低下させ、
前記重複度の変化に応じて、消去された前記仮想データと対応する実データを、前記記録媒体の前記一領域から1つ下の階層の領域へ移動させる
記録媒体管理方法。
The computer
Calculating a degree of overlap indicating how many virtual volumes reference the same real data stored on the recording medium;
storing the actual data in one area of the recording medium according to the degree of duplication;
A recording medium management method for releasing a specific area of the recording medium in which only real data that is not referenced by any virtual volume is stored, the method comprising:
The areas of the recording medium form a hierarchical structure,
When virtual data is deleted from one virtual volume,
The overlap degree of the real data corresponding to the deleted virtual data is decreased by 1;
A recording medium management method for moving real data corresponding to the erased virtual data from the one area of the recording medium to an area one hierarchical level lower in accordance with a change in the degree of overlap.
記録媒体に保存された同一の実データがいくつの仮想ボリュームによって参照されているかを示す重複度を計算する処理と、
前記重複度に応じた前記記録媒体の一領域内に前記実データを格納する処理と、
前記記録媒体の領域のうち、いずれの仮想ボリュームによっても参照されない実データのみが格納された特定の領域を解放する処理と、をコンピュータに実行させるためのプログラムであって、
前記記録媒体の領域は階層構造を形成しており、
1つの仮想ボリュームから仮想データが消去されたとき、
消去された前記仮想データと対応する実データについての重複度を1低下させる処理と、
前記重複度の変化に応じて、消去された前記仮想データと対応する実データを、前記記録媒体の前記一領域から1つ下の階層の領域へ移動させる処理と、
前記コンピュータに実行させるためのプログラム。
A process of calculating a degree of overlap indicating how many virtual volumes reference the same real data stored on the recording medium;
storing the actual data in one area of the recording medium according to the degree of duplication;
and a process of releasing a specific area of the recording medium in which only real data that is not referenced by any virtual volume is stored, the process comprising:
The areas of the recording medium form a hierarchical structure,
When virtual data is deleted from one virtual volume,
A process of decreasing the degree of duplication of the real data corresponding to the deleted virtual data by 1;
a process of moving real data corresponding to the deleted virtual data from the one area of the recording medium to an area one hierarchical level lower in accordance with a change in the degree of overlap;
A program for causing the computer to execute the above .
JP2020141352A 2020-08-25 2020-08-25 Recording medium management device, recording medium management method, and program Active JP7559429B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020141352A JP7559429B2 (en) 2020-08-25 2020-08-25 Recording medium management device, recording medium management method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020141352A JP7559429B2 (en) 2020-08-25 2020-08-25 Recording medium management device, recording medium management method, and program

Publications (2)

Publication Number Publication Date
JP2022037297A JP2022037297A (en) 2022-03-09
JP7559429B2 true JP7559429B2 (en) 2024-10-02

Family

ID=80494541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020141352A Active JP7559429B2 (en) 2020-08-25 2020-08-25 Recording medium management device, recording medium management method, and program

Country Status (1)

Country Link
JP (1) JP7559429B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001034487A (en) 1999-07-21 2001-02-09 Matsushita Electric Ind Co Ltd Program executing device, time deciding device and method
JP2019057172A (en) 2017-09-21 2019-04-11 東芝メモリ株式会社 Memory system and control method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001034487A (en) 1999-07-21 2001-02-09 Matsushita Electric Ind Co Ltd Program executing device, time deciding device and method
JP2019057172A (en) 2017-09-21 2019-04-11 東芝メモリ株式会社 Memory system and control method

Also Published As

Publication number Publication date
JP2022037297A (en) 2022-03-09

Similar Documents

Publication Publication Date Title
US8161240B2 (en) Cache management
JP4477681B2 (en) Hierarchical storage device, control device, and control method
CN109496300B (en) Storage medium garbage collection method, storage medium and program product
CN107038206B (en) LSM tree establishing method, LSM tree data reading method and server
JP2019016320A (en) Storage control device and storage control program
EP2915051B1 (en) Memory device and host device
CN109558084B (en) Data processing method and related equipment
CN107220188B (en) Self-adaptive buffer block replacement method
CN103473298B (en) Data archiving method and device and storage system
CN108733306A (en) A kind of Piece file mergence method and device
US20060218347A1 (en) Memory card
CN110968269A (en) SCM and SSD-based key value storage system and read-write request processing method
CN114416646A (en) Data processing method and device of hierarchical storage system
JP6070371B2 (en) Data arrangement program and information processing apparatus
KR100907477B1 (en) Apparatus and method for managing index of data stored in flash memory
CN100426259C (en) Virtual access method of storage document data
US8868853B2 (en) Data processing device, data recording method and data recording program
JP6531574B2 (en) Storage device, storage device control program and storage device control method
JP7559429B2 (en) Recording medium management device, recording medium management method, and program
CN114625713A (en) Metadata management method and device in storage system and storage system
CN107203479A (en) Hierarchical storage system, storage control and hierarchical control method
CN109508140A (en) Storage resource management method, apparatus, electronic equipment and electronic equipment, system
EP3539001B1 (en) Mutable type builder
KR100859989B1 (en) Apparatus for managing space information of flash memory and method of the same
CN113127376A (en) Control method, device and equipment of solid state drive

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20211019

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230714

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240611

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240801

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240902

R150 Certificate of patent or registration of utility model

Ref document number: 7559429

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150