JP6678230B2 - ストレージ装置 - Google Patents
ストレージ装置 Download PDFInfo
- Publication number
- JP6678230B2 JP6678230B2 JP2018502866A JP2018502866A JP6678230B2 JP 6678230 B2 JP6678230 B2 JP 6678230B2 JP 2018502866 A JP2018502866 A JP 2018502866A JP 2018502866 A JP2018502866 A JP 2018502866A JP 6678230 B2 JP6678230 B2 JP 6678230B2
- Authority
- JP
- Japan
- Prior art keywords
- deduplication
- data
- block
- state
- partition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Description
まず図1、図2、そして図4を用いて、本発明の実施例に係るストレージ装置が実施する、重複排除方法の概要を説明する。図1は、本発明の実施例に係るストレージ装置が計算機に提供する仮想ボリュームの構成を表した図である。
D=W÷P
図3は、本実施例に係るストレージ装置1を含む計算機システムのハードウェア構成例を示している。ストレージ装置1は、ストレージコントローラ10と、ストレージコントローラ10に接続された複数の記憶デバイス15を有する。
続いてストレージ装置1の有する管理情報、プログラムの内容の説明を行う。ストレージ装置1のシステムメモリ12には少なくとも、論理ページ管理テーブル126、マッピングテーブル127、プール管理テーブル128、検索テーブル129、逆参照テーブル130、追記ポインタ131の、6種類の管理情報が格納されている。以下では、これらの各種管理情報の内容について説明する。
続いて、ストレージ装置1で行われる各種処理の流れを説明する。ストレージ装置1のシステムメモリ12には少なくとも、I/O処理部121、重複排除処理部123、重複排除解除部124、論理ページ変更部125、物理ページ解放処理部132の、5種類のプログラムが格納されている。なお、システムメモリ12に格納されているこれらのプログラムのことを、「ストレージ制御プログラム」と呼ぶこともある。以下ではこれらのプログラムによって行われる処理の説明を行う。なお、本実施例に係る図面において、参照番号の前に付されている文字列“SP”は「ステップ」を意味する。
Claims (12)
- ホスト計算機から書き込み要求のあったライトデータを格納するための1以上の記憶デバイスと、前記ホスト計算機に1以上のボリュームを提供するストレージコントローラと、を有し、
前記ストレージコントローラは、前記ホスト計算機から前記ボリューム内の区画に対するライト要求とライト対象データを受領すると、前記区画に、前記区画と同サイズの前記記憶デバイスの第1記憶領域を割り当て、前記割り当てられた前記第1記憶領域に前記ライト対象データを格納し、
前記ストレージコントローラは、前記ボリューム内の区画ごとに、前記ホスト計算機から最後にライト要求を受け付けた時刻である最終ライト時刻を保持しており、
前記ストレージコントローラは、前記最終ライト時刻から所定の期間以上ライト要求を受け付けていない前記区画について、前記ホスト計算機から前記区画に書き込まれたデータと同一のデータが前記記憶デバイスに格納済みの場合、前記区画に書き込まれたデータを前記記憶デバイスに格納しないようにする重複排除処理を実施し、
前記ストレージコントローラは、前記重複排除処理において、前記区画を複数の重複排除ブロックに区分し、前記重複排除ブロックごとに、前記重複排除ブロックと同サイズで前記第1記憶領域と異なる記憶領域であるデータブロックを割り当て、前記重複排除ブロックと前記データブロックとのマッピングを管理するよう構成されており、
前記ストレージコントローラは、前記重複排除ブロックのうち第2の重複排除ブロックに前記データブロックを割り当てる時、前記第2の重複排除ブロックに書き込まれているデータが、第1の重複排除ブロックに割り当てられている第1データブロックに格納されているデータと同一の場合、前記第2の重複排除ブロックに前記第1データブロックを割り当てる、
ことを特徴とする、ストレージ装置。 - 前記ストレージコントローラは、前記区画ごとに状態を管理しており、
前記区画の状態として、前記重複排除処理が実施されていない状態である第1状態と、
前記重複排除処理が実施された状態である第2状態と、前記第2状態から前記重複排除処理が行われる前の状態に戻された状態である第3状態とがあり、
前記ストレージコントローラは、前記第1状態の前記区画に対して前記重複排除処理を行った結果、前記区画の重複排除率が所定の閾値未満だった場合、前記区画の状態を前記第3状態に変更する
ことを特徴とする、請求項1に記載のストレージ装置。 - 前記第3状態の前記区画は、前記ホスト計算機からのライト要求が発行されるまでは前記状態が変更されない、
ことを特徴とする、請求項2に記載のストレージ装置。 - 前記ストレージコントローラは、前記ホスト計算機から前記第2状態または前記第3状態の前記区画に対してライト要求が発行されると、前記区画の状態を前記第1状態に変更する、
ことを特徴とする、請求項3に記載のストレージ装置。 - 前記ストレージコントローラは、前記重複排除ブロックに書き込まれたデータの特徴量を算出し、検索テーブルに、前記算出された特徴量と前記重複排除ブロックに割り当てられた前記データブロックとのマッピングを記録し、
前記ストレージコントローラは、前記第2の重複排除ブロックの特徴量を算出すると、
前記第2の重複排除ブロックの特徴量と同一の値が前記検索テーブルに格納されていない場合、前記第2の重複排除ブロックに第2データブロックを割り当て、前記第2データブロックに前記第2の重複排除ブロックに書き込まれたデータを格納する、
ことを特徴とする、請求項4に記載のストレージ装置。 - ホスト計算機から書き込み要求のあったライトデータを格納するための1以上の記憶デバイスと、前記ホスト計算機に1以上のボリュームを提供するストレージコントローラと、を有するストレージ装置において、
前記ストレージコントローラが、前記ホスト計算機から前記ボリューム内の区画に対するライト要求とライト対象データを受領すると、前記区画に、前記区画と同サイズの前記記憶デバイスの第1記憶領域を割り当て、前記割り当てられた前記第1記憶領域に前記ライト対象データを格納するステップと、
前記ストレージコントローラが、前記ボリューム内の区画ごとに、前記ホスト計算機から最後にライト要求を受け付けた時刻である最終ライト時刻を記録するステップと、
前記最終ライト時刻から所定の期間以上ライト要求を受け付けていない前記区画を検出するステップと、
前記検出された区画について、前記区画に書き込まれたデータのうち、前記記憶デバイスに格納済みのデータと異なるデータのみを前記記憶デバイスに格納する重複排除処理を実施するステップと、を実行し、
前記ストレージコントローラは、前記重複排除処理において、前記区画を複数の重複排除ブロックに区分し、前記重複排除ブロックごとに、前記重複排除ブロックと同サイズで前記第1記憶領域と異なる記憶領域であるデータブロックを割り当て、前記重複排除ブロックと前記データブロックとのマッピングを管理するよう構成されており、
前記ストレージコントローラが、前記重複排除ブロックのうち第2の重複排除ブロックに前記データブロックを割り当てる時、前記第2の重複排除ブロックに書き込まれているデータが、第1の重複排除ブロックに割り当てられている第1データブロックに格納されているデータと同一の場合、前記第2の重複排除ブロックに前記第1データブロックを割り当てるステップを実行する、
ことを特徴とする、ストレージ装置の制御方法。 - 前記ストレージコントローラは、前記区画ごとに状態を管理しており、
前記区画の状態として、前記重複排除処理が実施されていない状態である第1状態と、
前記重複排除処理が実施された状態である第2状態と、前記第2状態から前記重複排除処理が行われる前の状態に戻された状態である第3状態とがあり、
前記重複排除処理を実施するステップでは、前記ストレージコントローラが、前記第1状態の前記区画に対して前記重複排除処理を行った結果、前記区画の重複排除率が所定の閾値未満だった場合、前記区画の状態を前記第3状態に変更する、
ことを特徴とする、請求項6に記載のストレージ装置の制御方法。 - 前記第3状態の前記区画は、前記ホスト計算機からのライト要求が発行されるまでは前記状態が変更されない、
ことを特徴とする、請求項7に記載のストレージ装置の制御方法。 - 前記ストレージコントローラは、前記ホスト計算機から前記第2状態または前記第3状態の前記区画に対してライト要求が発行されると、前記区画の状態を前記第1状態に変更するステップを実行する、
ことを特徴とする、請求項8に記載のストレージ装置の制御方法。 - ライトデータを格納するための1以上の記憶デバイスを有する計算機のプロセッサで実行されるプログラムを記録した記憶媒体であって、前記プログラムは前記プロセッサに、ボリュームに対するライト要求とライト対象データを受け付けるステップと、
前記プロセッサは、前記計算機から前記ボリューム内の区画に対するライト要求とライト対象データを受領すると、 前記区画に、前記区画と同サイズの前記記憶デバイスの第1記憶領域を割り当て、前記割り当てられた前記第1記憶領域に前記ライト対象データを格納するステップと、
前記ボリューム内の区画ごとに、最後にライト要求を受け付けた時刻である最終ライト時刻を保持するステップと、
前記最終ライト時刻から所定の期間以上ライト要求を受け付けていない前記区画を検出するステップと、
前記検出された区画について、前記区画に書き込まれたデータのうち、前記記憶デバイスに格納済みのデータと異なるデータのみを前記記憶デバイスに格納する重複排除処理を実施するステップと、を実行させ、
前記プロセッサは、前記重複排除処理において、前記区画を複数の重複排除ブロックに区分し、前記重複排除ブロックごとに、前記重複排除ブロックと同サイズで前記第1記憶領域と異なる記憶領域であるデータブロックを割り当て、前記重複排除ブロックと前記データブロックとのマッピングを管理するよう構成されており、
前記プロセッサが、前記重複排除ブロックのうち第2の重複排除ブロックに前記データブロックを割り当てる時、前記第2の重複排除ブロックに書き込まれているデータが、第1の重複排除ブロックに割り当てられている第1データブロックに格納されているデータと同一の場合、前記第2の重複排除ブロックに前記第1データブロックを割り当てるステップを実行させる、
ことを特徴とする、プログラムを記録した記憶媒体。 - 前記プロセッサは、前記区画ごとに状態を管理しており、
前記区画の状態として、前記重複排除処理が実施されていない状態である第1状態と、
前記重複排除処理が実施された状態である第2状態と、前記第2状態から前記重複排除処理が行われる前の状態に戻された状態である第3状態とがあり、
前記重複排除処理を実施するステップでは、前記プロセッサが前記第1状態の前記区画に対して前記重複排除処理を行った結果、前記区画の重複排除率が所定の閾値未満だった場合、前記区画の状態を前記第3状態に変更させる、
ことを特徴とする、請求項10に記載のプログラムを記録した記憶媒体。 - 前記プロセッサに、前記第2状態または前記第3状態の前記区画に対するライト要求を受領すると、前記区画の状態を前記第1状態に変更するステップを実行させる、
ことを特徴とする、請求項11に記載のプログラムを記録した記憶媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/056018 WO2017149592A1 (ja) | 2016-02-29 | 2016-02-29 | ストレージ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2017149592A1 JPWO2017149592A1 (ja) | 2018-09-27 |
JP6678230B2 true JP6678230B2 (ja) | 2020-04-08 |
Family
ID=59742597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018502866A Active JP6678230B2 (ja) | 2016-02-29 | 2016-02-29 | ストレージ装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10572171B2 (ja) |
JP (1) | JP6678230B2 (ja) |
CN (1) | CN108604165B (ja) |
WO (1) | WO2017149592A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6724534B2 (ja) * | 2016-05-09 | 2020-07-15 | 富士通株式会社 | 情報処理装置、重複除去プログラム、及び重複除去方法 |
JP2019079448A (ja) * | 2017-10-27 | 2019-05-23 | 株式会社日立製作所 | ストレージシステム及びストレージシステムの制御方法 |
JP2019121195A (ja) * | 2018-01-05 | 2019-07-22 | 東芝メモリ株式会社 | メモリシステム及びプロセッサシステム |
US10860555B2 (en) | 2018-08-27 | 2020-12-08 | Dell Products, L.P. | Method and apparatus for two tier data deduplication using weighted graphs |
JP2020086477A (ja) * | 2018-11-15 | 2020-06-04 | 株式会社日立製作所 | 大規模ストレージシステム及び大規模ストレージシステムにおけるデータ配置方法 |
US10776029B2 (en) * | 2018-12-21 | 2020-09-15 | Dell Products, L.P. | System and method for dynamic optimal block size deduplication |
CN111858577A (zh) * | 2019-04-29 | 2020-10-30 | 伊姆西Ip控股有限责任公司 | 存储管理的方法、设备和计算机程序产品 |
CN110209888A (zh) * | 2019-05-08 | 2019-09-06 | 无线生活(杭州)信息科技有限公司 | 接口请求的存储方法及装置 |
CN110427347A (zh) * | 2019-07-08 | 2019-11-08 | 新华三技术有限公司成都分公司 | 重复数据删除的方法、装置、存储节点及存储介质 |
CN112783417A (zh) * | 2019-11-01 | 2021-05-11 | 华为技术有限公司 | 数据缩减的方法、装置、计算设备和存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8825617B2 (en) * | 2008-03-14 | 2014-09-02 | International Business Machines Corporation | Limiting deduplication based on predetermined criteria |
US8359444B2 (en) * | 2008-09-24 | 2013-01-22 | Hitachi, Ltd. | System and method for controlling automated page-based tier management in storage systems |
JP5595701B2 (ja) | 2009-09-16 | 2014-09-24 | 株式会社日立製作所 | ファイル管理方法及びストレージシステム |
US8285690B2 (en) * | 2009-09-18 | 2012-10-09 | Hitachi, Ltd. | Storage system for eliminating duplicated data |
US8539148B1 (en) * | 2010-12-22 | 2013-09-17 | Emc Corporation | Deduplication efficiency |
US8799601B1 (en) * | 2012-06-28 | 2014-08-05 | Emc Corporation | Techniques for managing deduplication based on recently written extents |
US9152325B2 (en) * | 2012-07-26 | 2015-10-06 | International Business Machines Corporation | Logical and physical block addressing for efficiently storing data |
JP5965541B2 (ja) * | 2012-10-31 | 2016-08-10 | 株式会社日立製作所 | ストレージ装置及びストレージ装置の制御方法 |
JP6089890B2 (ja) * | 2013-03-29 | 2017-03-08 | 富士通株式会社 | ストレージ制御装置、ストレージ制御装置の制御方法およびストレージ制御装置の制御プログラム |
CA2896585A1 (en) * | 2014-08-11 | 2016-02-11 | Dot Hill Systems Corporation | Method and apparatus for processing asynchronous streams |
US10001942B1 (en) * | 2016-12-21 | 2018-06-19 | Netapp Inc. | Asynchronous semi-inline deduplication |
-
2016
- 2016-02-29 CN CN201680081226.6A patent/CN108604165B/zh active Active
- 2016-02-29 WO PCT/JP2016/056018 patent/WO2017149592A1/ja active Application Filing
- 2016-02-29 US US15/769,424 patent/US10572171B2/en active Active
- 2016-02-29 JP JP2018502866A patent/JP6678230B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US10572171B2 (en) | 2020-02-25 |
CN108604165A (zh) | 2018-09-28 |
CN108604165B (zh) | 2021-09-24 |
US20180307433A1 (en) | 2018-10-25 |
WO2017149592A1 (ja) | 2017-09-08 |
JPWO2017149592A1 (ja) | 2018-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6678230B2 (ja) | ストレージ装置 | |
US11216185B2 (en) | Memory system and method of controlling memory system | |
US9792073B2 (en) | Method of LUN management in a solid state disk array | |
US11199974B2 (en) | Allocation of memory regions of a nonvolatile semiconductor memory for stream-based data writing | |
US10503424B2 (en) | Storage system | |
WO2015162758A1 (ja) | ストレージシステム | |
JP6685334B2 (ja) | ストレージ装置 | |
JP6608468B2 (ja) | ストレージ装置及びその制御方法 | |
US8954658B1 (en) | Method of LUN management in a solid state disk array | |
CN114860163A (zh) | 一种存储系统、内存管理方法和管理节点 | |
JP5768118B2 (ja) | 複数のフラッシュパッケージを有するストレージシステム | |
WO2018061161A1 (ja) | ストレージ装置およびその制御方法 | |
JP6138318B2 (ja) | 複数のフラッシュパッケージを有するストレージシステム | |
JP5945040B2 (ja) | 複数のフラッシュパッケージを有するストレージシステム | |
JP6273678B2 (ja) | ストレージ装置 | |
WO2018051446A1 (ja) | オプショナルなデータ処理機能を有するストレージシステムを含んだ計算機システム、および、記憶制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180604 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180604 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181030 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20181220 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190709 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190909 |
|
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: 20200303 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200316 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6678230 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |