JP6841074B2 - 情報処理装置、データ圧縮方法及びデータ圧縮プログラム - Google Patents
情報処理装置、データ圧縮方法及びデータ圧縮プログラム Download PDFInfo
- Publication number
- JP6841074B2 JP6841074B2 JP2017027056A JP2017027056A JP6841074B2 JP 6841074 B2 JP6841074 B2 JP 6841074B2 JP 2017027056 A JP2017027056 A JP 2017027056A JP 2017027056 A JP2017027056 A JP 2017027056A JP 6841074 B2 JP6841074 B2 JP 6841074B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- compression
- unit
- compressed
- input 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
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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3068—Precoding preceding compression, e.g. Burrows-Wheeler transformation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3091—Data deduplication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
次に、実施例1の変形例について説明する。本変形例に係るAFA1は、実施例1と各領域の圧縮の順番が異なる。図21は、実施例1の変形例における圧縮の順番を説明するための図である。
図30は、AFAのハードウェア構成の一例の図である。AFA1は、図30に示すように、CPU91、DIMM92及びSSD93を有する。CPU91は、DIMM92及びSSD93とバスで接続される。
2 サーバ
3 FC
11 送受信部
12 特定部
13 圧縮バッファ割当部
14 圧縮用情報記憶部
15 共通領域圧縮部
16 個別領域圧縮部
17 圧縮バッファ
18 再圧縮部
19 格納処理部
20 読出部
30 記憶部
141,142,144 ハッシュテーブル
143 メタデータ
151 第1圧縮部
152 第2圧縮部
161 第3圧縮部
162 第4圧縮部
181 第1再圧縮部
182 第2再圧縮部
Claims (8)
- 入力データを所定サイズ毎に分けた場合の1つ又は複数の区分位置を特定する特定部と、
前記入力データを圧縮して生成される圧縮データにおける両端からのサイズが所定サイズ以上となる位置、及び、前記区分位置が複数存在する場合に隣合う前記区分位置を挟みその間のサイズが所定サイズ以上となる位置に対応する前記入力データにおける圧縮位置を特定し、前記入力データにおける前記区分位置を挟んで並ぶ前記圧縮位置の間の第1領域に含まれる各第1データの圧縮を行う先圧縮部と、
前記入力データにおける前記第1領域以外の第2領域のそれぞれに含まれる各第2データの圧縮を行い、前記第1データ及び前記第2データを圧縮したデータを含む前記圧縮データを生成する後圧縮部と
を備えたことを特徴とする情報処理装置。 - 前記所定サイズは、前記入力データの半分のサイズであり、
前記特定部は、前記入力データの中心位置を特定し、
前記先圧縮部は、前記圧縮データにおいて前記両端のそれぞれからのサイズが所定サイズとなる位置に対応する前記入力データにおける2つの前記圧縮位置を予測し、前記入力データにおける各前記圧縮位置で挟まれた前記第1データの圧縮を行い、
前記後圧縮部は、前記入力データにおける前記第1データで分割された2つの前記第2データ毎に、前記第1データ及び各前記第2データを基に圧縮を行う
ことを特徴とする請求項1に記載の情報処理装置。 - 前記先圧縮部は、前記区分位置が複数存在する場合、
前記圧縮データにおいて前記両端の一方からのサイズが所定サイズとなる位置に対応する前記入力データにおける第1圧縮位置を予測し、前記中心位置から前記第1圧縮位置までの第3データに対して、前記中心位置から前記第1圧縮位置に向けて前記第3データを基に第1圧縮を行う第1圧縮部と、
前記圧縮データにおいて前記両端の他方からのサイズが前記所定サイズとなる位置に対応する前記入力データにおける第2圧縮位置を予測し、前記中心位置から前記第2圧縮位置までの第4データに対して、前記中心位置から前記第2圧縮位置に向けて前記第3データ及び前記第4データを基に第2圧縮を行う第2圧縮部とを備え、
前記後圧縮部は、
前記第1圧縮位置から、前記入力データにおける先頭又は後尾の近い方の第1端部までの第5データに対して、前記第1圧縮位置から前記第1端部に向けて、前記第3データ、前記第4データ及び前記第5データを基に第3圧縮を行う第3圧縮部と、
前記第2圧縮位置から、前記入力データにおける先頭又は後尾の近い方の第2端部までの第6データに対して、前記第2圧縮位置から前記第2端部に向けて、前記第3データ、前記第4データ及び前記第6データを基に第4圧縮を行う第4圧縮部とを備えた
ことを特徴とする請求項2に記載の情報処理装置。 - 前記第1圧縮、前記第2圧縮、前記第3圧縮及び前記第4圧縮により生成された前記圧縮データを記憶部に格納する格納処理部と、
前記入力データのうちの前半のデータの読み出し要求を受けた場合、前記入力データの管理データを基に、前記圧縮データの先端から所定サイズのデータを読み出して展開し、展開したデータの先端から所定サイズのデータを取得し、前記入力データのうちの後半のデータの読み出し要求を受けた場合、前記管理データを基に、前記第1圧縮位置及び前記第2圧縮位置のうち前記入力データの先端に近い方に対応する前記圧縮データの上の基準位置から前記圧縮データの後端までのデータを読み出して展開し、展開したデータの先端から所定サイズのデータを取得する展開部をさらに備え、
前記第2圧縮部は、前記基準位置と前記圧縮データの中心位置との第1相対距離を、前記圧縮データの前記基準位置に登録し、
前記格納処理部は、前記記憶部における前記圧縮データ上の先端の位置及び前記圧縮データの先端の位置から前記基準位置までの第2相対距離を前記管理データに登録する
ことを特徴とする請求項3に記載の情報処理装置。 - 前記第1圧縮部は、前記入力データの圧縮を前記中心位置から前記圧縮データにおける前記両端の前記他方に向けて圧縮を実行していきながら第1圧縮率を算出し、算出した前記第1圧縮率から前記両端の一方から圧縮を終えた位置までの前記圧縮データの第2圧縮率を推測して、前記第1圧縮位置を予測する、
前記第2圧縮部は、前記入力データの圧縮を前記中心位置から前記圧縮データにおける前記両端の一方に向けて圧縮を実行していきながら第3圧縮率を算出し、算出した前記第3圧縮率から前記両端の前記他方から圧縮を終えた位置までの前記圧縮データの第4圧縮率を推測して、前記第2圧縮位置を予測する
ことを特徴とする請求項3又は4に記載の情報処理装置。 - 前記第1圧縮部、前記第2圧縮部、前記第3圧縮部及び前記第4圧縮部により生成された前記圧縮データにおいて前記第1圧縮位置に対応する位置から前記両端の一方までのサイズが所定サイズを超える場合、又は、前記第2圧縮位置に対応する位置から前記両端の前記他方までのサイズが所定サイズを超える場合、前記第2圧縮部、前記第3圧縮部及び前記第4圧縮部による圧縮結果を破棄して、前記入力データの先端から前記中心位置までの前半のデータに対して、前記前半のデータを基に圧縮を行い、且つ、前記入力データの中心位置から後端までの後半のデータに対して、前記後半のデータを基に圧縮を行う再圧縮部をさらに備えたことを特徴とする請求項3〜5のいずれか一つに記載の情報処理装置。
- 入力データを所定サイズ毎に分けた場合の1つ又は複数の区分位置を特定し、
前記入力データを圧縮して生成される圧縮データにおける両端からのサイズが所定サイズとなる位置、及び、前記区分位置が複数存在する場合に隣合う前記区分位置を挟みその間のサイズが所定サイズ以上となる位置に対応する前記入力データにおける圧縮位置を特定し、
前記入力データにおける前記区分位置を挟んで並ぶ前記圧縮位置の間の第1領域に含まれる各第1データの圧縮を行い、
前記入力データにおける前記第1領域以外の第2領域のそれぞれに含まれる各第2データの圧縮を行い、前記第1データ及び前記第2データを圧縮したデータを含む前記圧縮データを生成する
ことを特徴とするデータ圧縮方法。 - 入力データを所定サイズ毎に分けた場合の1つ又は複数の区分位置を特定し、
前記入力データを圧縮して生成される圧縮データにおける両端からのサイズが所定サイズとなる位置、及び、前記区分位置が複数存在する場合に隣合う前記区分位置を挟みその間のサイズが所定サイズ以上となる位置に対応する前記入力データにおける圧縮位置を特定し、
前記入力データにおける前記区分位置を挟んで並ぶ前記圧縮位置の間の第1領域に含まれる各第1データの圧縮を行い、
前記入力データにおける前記第1領域以外の第2領域のそれぞれに含まれる各第2データの圧縮を行い、前記第1データ及び前記第2データを圧縮したデータを含む前記圧縮データを生成する
処理をコンピュータに実行させることを特徴とするデータ圧縮プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017027056A JP6841074B2 (ja) | 2017-02-16 | 2017-02-16 | 情報処理装置、データ圧縮方法及びデータ圧縮プログラム |
US15/890,555 US10776052B2 (en) | 2017-02-16 | 2018-02-07 | Information processing apparatus, data compressing method, and computer-readable recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017027056A JP6841074B2 (ja) | 2017-02-16 | 2017-02-16 | 情報処理装置、データ圧縮方法及びデータ圧縮プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018132991A JP2018132991A (ja) | 2018-08-23 |
JP6841074B2 true JP6841074B2 (ja) | 2021-03-10 |
Family
ID=63104664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017027056A Active JP6841074B2 (ja) | 2017-02-16 | 2017-02-16 | 情報処理装置、データ圧縮方法及びデータ圧縮プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10776052B2 (ja) |
JP (1) | JP6841074B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2599566B (en) * | 2016-09-08 | 2022-10-05 | V Nova Int Ltd | Data processing apparatuses, methods, computer programs and computer-readable media |
KR20230012872A (ko) * | 2021-07-16 | 2023-01-26 | 주식회사 쏠리드 | 프론트홀 다중화 장치 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003319186A (ja) | 2002-04-25 | 2003-11-07 | Nec Micro Systems Ltd | 圧縮画像データの復元システム及び復元方法 |
JP2010061518A (ja) * | 2008-09-05 | 2010-03-18 | Nec Corp | データ保存装置及びデータ保存方法並びにプログラム |
JP5188348B2 (ja) * | 2008-09-25 | 2013-04-24 | 三菱電機株式会社 | データアクセス装置 |
JP6032292B2 (ja) * | 2012-12-19 | 2016-11-24 | 富士通株式会社 | 圧縮プログラム、圧縮装置、伸張プログラムおよび伸張装置 |
EP3041145B1 (en) * | 2013-08-30 | 2019-04-10 | Fujitsu Limited | Data compression device, method, and program |
JP6471012B2 (ja) * | 2015-03-25 | 2019-02-13 | 株式会社メガチップス | 半導体メモリ、記憶装置、上位装置、データ処理システム、データ書き込み装置、データ書き込みプログラム、制御プログラム及びデータ書き込み方法 |
-
2017
- 2017-02-16 JP JP2017027056A patent/JP6841074B2/ja active Active
-
2018
- 2018-02-07 US US15/890,555 patent/US10776052B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20180232182A1 (en) | 2018-08-16 |
US10776052B2 (en) | 2020-09-15 |
JP2018132991A (ja) | 2018-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180349030A1 (en) | Storage control device, storage control program, and storage system | |
US9696910B2 (en) | Data compression and management | |
KR101962359B1 (ko) | 저장 장치에 의해 데이터를 저장하기 위한 방법 및 저장 장치 | |
US20160335195A1 (en) | Storage device | |
WO2015162681A1 (ja) | ストレージシステムおよび記憶デバイスの制御方法 | |
CN110532201B (zh) | 一种元数据处理方法及装置 | |
CN108628541B (zh) | 一种文件存储的方法、装置及存储系统 | |
JPWO2015128955A1 (ja) | 記憶デバイス、記憶デバイスを有する装置、及び記憶制御方法 | |
JP6139711B2 (ja) | 情報処理装置 | |
CN107135662B (zh) | 一种差异数据备份方法、存储系统和差异数据备份装置 | |
US20180307426A1 (en) | Storage apparatus and storage control method | |
KR20110139956A (ko) | 맵핑 테이블을 복구하는 데이터 기억 장치 및 데이터 관리 방법 | |
JP6841074B2 (ja) | 情報処理装置、データ圧縮方法及びデータ圧縮プログラム | |
WO2024098698A1 (zh) | 一种磁盘阵列初始化方法、装置、设备及可读存储介质 | |
US9213486B2 (en) | Writing new data of a first block size to a second block size using a write-write mode | |
TWI707234B (zh) | 資料儲存裝置與資料處理方法 | |
KR20070031647A (ko) | 플래시 메모리 장치에 압축 데이터를 기록하는 방법 및상기 기록된 데이터를 읽는 방법, 그리고 상기 방법을이용하는 플래시 메모리 장치 | |
WO2015162755A1 (ja) | データを圧縮して格納するストレージ装置 | |
JP4788492B2 (ja) | ストレージ装置の容量拡張方法、プログラム、およびストレージ装置 | |
CN108877862B (zh) | 页条带的数据组织以及向页条带写入数据的方法与装置 | |
CN103645995B (zh) | 写数据的方法及装置 | |
US20230142948A1 (en) | Techniques for managing context information for a storage device | |
CN110990301A (zh) | 多plane存储介质的顺序读方法及相关装置 | |
JP2020135134A (ja) | ストレージシステム及び圧縮方法 | |
US20170300381A1 (en) | Memory controller and data control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200817 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200825 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201023 |
|
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: 20210119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210201 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6841074 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |