JPH11191267A - 圧縮データ・レコードの格納のためにディスク記憶空間を割り振るための方法および記憶媒体 - Google Patents

圧縮データ・レコードの格納のためにディスク記憶空間を割り振るための方法および記憶媒体

Info

Publication number
JPH11191267A
JPH11191267A JP10116313A JP11631398A JPH11191267A JP H11191267 A JPH11191267 A JP H11191267A JP 10116313 A JP10116313 A JP 10116313A JP 11631398 A JP11631398 A JP 11631398A JP H11191267 A JPH11191267 A JP H11191267A
Authority
JP
Japan
Prior art keywords
record
ccr
storage space
value
ecr
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.)
Granted
Application number
JP10116313A
Other languages
English (en)
Other versions
JP3532413B2 (ja
Inventor
James Thomas Brady
ジェームズ・トーマス・ブラディ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH11191267A publication Critical patent/JPH11191267A/ja
Application granted granted Critical
Publication of JP3532413B2 publication Critical patent/JP3532413B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 圧縮データのための改良された記憶装置割振
りの提供。 【解決手段】 圧縮レコードの格納のためのディスク記
憶空間を割り振り、ディスク22記憶空間上の順次物理
位置に圧縮レコードを格納可能にする。圧縮の更新済み
レコードが、後続処理中に、元々割り当ての物理位置に
おさまる高確度が保証され、RAID編成との互換性を
有する。この方法に使用のディスク空間割振り手順2
0'には、レコードを圧縮するステップと、圧縮率(C
R)値と非圧縮レコード内の連続する同一データ・セグ
メントの最大ラン・レングス(RL)とを判定するステ
ップと、レコードに含まれる連続する同一データ・セグ
メントのRLなしでレコードの圧縮を繰り返して修正圧
縮率(CCR)を判定するステップ等、CCR値が予想
圧縮率(ECR)未満の場合に、圧縮レコード用の記憶
空間を割り振るためにCCR値を使用するステップとが
含まれる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、全般的には圧縮デ
ータ用の記憶区域の割振りを管理するための方法および
装置に関し、具体的には、圧縮された更新済みデータ
が、再圧縮の際に、元々割り振られていた物理記憶位置
におさまる確度を保証する、記憶空間の割振りのための
方法および装置に関する。
【0002】
【従来の技術】ディスク・アレイでのデータ圧縮は、従
来技術では、たとえばログ構造化システムなどの複雑な
ファイル・システムの使用を必要とする。ログ構造化フ
ァイル・システムは、ディスクに対する変更のすべてが
ログ様ファイル構造に順次書き込まれる、ディスク記憶
域管理のための技法である。このログ様ファイル構造に
は、格納されたファイルを効率的な形でログから読み戻
せるようにするためのインデクシング情報が含まれる。
このようなログ構造化アレイの1態様は、書込み処理を
高速化するために大きい空き区域がディスク上に維持さ
れることである。大きい空き区域を維持するために、ロ
グをセグメントに分割し、セグメント「クリーナ」を使
用して、激しく断片化したセグメントから情報を圧縮
し、これによって、後続の書込みのためにセグメントを
解放する。
【0003】ログ構造化アレイに伴う問題の1つは、こ
れによって、ディスク全体にまたがるデータ記憶領域の
かなりの分散がもたらされ、順次データ・レコードが、
別々の物理記憶位置にまたがって広範囲に分散されるこ
とである。したがって、データ・レコードの順次アクセ
スを実行する時には、順次データ・アクセスを達成する
ための読み書きヘッドの位置決めと再位置決めに必要な
移動量が多いので、総合的なディスク性能が低下する。
【0004】上で示したように、データ圧縮をサポート
するログ構造化ディスク・コントローラでは、ディスク
への書込みが、同じ場所に書き込まれるのではなく、前
は空であったディスク上の新しい位置に書き込まれる。
ディスク・コントローラは、ディスクをセグメントに分
割し、このセグメントの一部は、「空」に保たれる。シ
ステムからの新しい書込みは、空セグメント内に配置さ
れたセクタに書き込まれる。その結果、書込みデータま
たは更新データのそれぞれが、新しい物理位置へのデー
タの書込みを引き起こし、データの物理位置は、その後
収集され、将来の書込みに再利用される。
【0005】米国特許第5574952号明細書(本明
細書と同一の譲受人に譲渡された)では、ログ構造化デ
ータ記憶の制御のための改良された方法に、データ・ユ
ニットの非圧縮サイズの第1の所定の比率として圧縮デ
ータ・ユニットのために第1の量のディスク空間を割り
振るステップと、割り振られるディスク空間の総量を得
るため、第1の所定の比率より小さい第2の所定の比率
だけ割振りを増加するステップとが含まれる。第1の所
定の比率は、データ・ユニットに関して期待される圧縮
率の関数であり、第2の所定の比率は、データ・ユニッ
トに関して期待される圧縮率と圧縮データ・ユニットの
サイズの期待される変化の関数である。この方法では、
さらに、更新動作中に、圧縮された更新済みデータ・ユ
ニットのサイズを割り振られたディスク空間の総量と比
較し、圧縮された更新済みデータ・ユニットのサイズが
割り振られたディスク空間の総量以下の場合には、圧縮
された更新済みデータをそこに格納する。そうでない場
合には、圧縮データ・ユニットの格納のために他のディ
スク空間を割り振る。
【0006】上で説明した米国特許第5574952号
明細書の手順では、データの物理的分散の問題が軽減さ
れるが、圧縮形式でディスクに記録されるデータが、当
初に割り振られたディスク上の物理シーケンス内で論理
的に順次形式であることは保証されない。米国特許第5
574952号明細書の教示と開示を参考にされたい。
【0007】本明細書と同一の譲受人に譲渡された米国
特許第5537588号明細書にも、ディスク空間の区
分のためのログ構造化ファイル・システムが記載されて
いる。同明細書に開示された方法には、ディスク・デー
タ記憶システムを、第1区画および第2区画を含む複数
の区画に区分するステップが含まれる。第1区画は、活
動データ・ユニットからなるセグメントの格納のための
ログ構造化ファイル・システムとして管理され、活動デ
ータ・ユニットは、それぞれが、所定の閾値を超えるア
クセス活動値を有する。第2区画内には、活動性が低
く、第1の所定の閾値より低いアクセス活動値を示すデ
ータ・ユニットが格納される。
【0008】米国特許第5237460号明細書には、
ディスク記憶装置を区分して、1ブロックのデータの圧
縮版を格納できる第1サイズの多数の記憶位置を含む第
1記憶空間を提供する、ディスク記憶域割振り手順が開
示されている。データ・ブロックの非圧縮版を格納でき
る固定サイズの多数の記憶位置を含む第2記憶空間を含
むもう1つの区画が設けられる。データ・ブロックが受
け取られる時には、データ・ブロックが圧縮され、その
後、圧縮ブロックのそれぞれが、第1サイズと同等に小
さく、第1記憶空間内に納まるか否かが検出される。そ
の後、第1空間におさまる圧縮データ・ブロックは、第
1空間に格納され、そこにおさまらない圧縮データ・ブ
ロックは、非圧縮形式で第2データ空間に格納される。
【0009】当技術分野では、小型の安価なディスクの
大規模なアレイにまたがってデータを分散することが既
知である。このようなシステムは、パターソン(Patter
son)他著、「Redundant Array of Inexpensive Disks
(RAID)」、ACM Sigmod Conference、Chicago、Illinoi
s、1988年6月1日〜3日、第109ページないし
116ページに記載されている。RAID構造では、複
数のディスク駆動装置にまたがるさまざまな配置のデー
タ分離が記述される。圧縮データに適応する記憶域割振
り手順は、RAID編成と互換性を有することが望まし
い。
【0010】
【発明が解決しようとする課題】したがって、本発明の
目的は、圧縮データのための改良された記憶装置割振り
方法を提供することである。
【0011】本発明のもう1つの目的は、物理的に連続
した、当初に割り振られたディスク空間に、圧縮された
更新済みデータ・レコードが収容される確度が適度であ
ることを保証する、改良された記憶装置割振りの方法お
よび装置を提供することである。装置は、コンピュータ
を制御するための記憶媒体としても実現される。
【0012】本発明のもう1つの目的は、RAID編成
との互換性を有する、ディスク表面での圧縮データの割
振りのための改良された方法および装置を提供すること
である。
【0013】
【課題を解決するための手段】本発明のシステムおよび
方法によって、圧縮レコードの格納のためのディスク記
憶空間を割り振り、ディスク記憶空間上の順次物理位置
に圧縮レコードを格納できるようにする。さらに、この
方法および装置によって、圧縮された更新済みレコード
が、後続処理中に、元々割り当てられていた物理位置に
おさまる確度が高いことが保証される。この方法には、
レコードを圧縮するステップと、圧縮率(CR)値と非
圧縮レコード内の連続する同一データ・セグメントの最
大ラン・レングス(RL)とを判定するステップと、レ
コードに含まれる連続する同一データ・セグメントのR
Lなしでレコードの圧縮を繰り返すことによって修正圧
縮率(CCR)を判定するステップと、CCR値が予想
圧縮率(ECR)未満の場合に、圧縮レコード用の記憶
空間を割り振るためにCCR値を使用するステップとが
含まれる。CCR値がECR値以上の場合には、ECR
値を使用して、レコードのための記憶空間を割り振る。
【0014】
【発明の実施の形態】以下では、磁気ディスク表面上の
記憶空間の割振りに関して本発明を説明するが、本発明
は、データ・レコードが、トラックに格納され、読み書
き変換器とトラックの間の相対的な移動によってアクセ
スされる直接アクセス記憶装置のすべてに対して同等に
適用可能であることを理解されたい。
【0015】図1を参照すると、データ処理システム1
0は、本発明に従って構成され、動作する。データ処理
システム10には、中央処理装置(CPU)12が含ま
れ、CPU12は、バス・システム14によって、デー
タ圧縮伸長モジュール16およびメモリ18に結合され
る。入出力インターフェース20が、ホスト・プロセッ
サ(図示せず)とのデータ通信を提供する。メモリ18
内には、接続された磁気ディスク装置22でのディスク
空間の割振りを可能にする、ディスク空間割振り手順2
0'が含まれる。
【0016】以下では、ディスク空間割振り手順20'
がCPU12を制御して、磁気ディスク装置22上の記
憶空間を割り振り、その結果、論理的に連続したレコー
ドが、磁気ディスク装置22上に圧縮形式で格納される
時に、物理的に連続した位置に格納され、順次書込みお
よび順次読取りを最小の時間で行えるようになることを
理解されたい。このような割振りは、将来のデータ更新
から生じる可能性のあるデータ・サイズの増加の可能性
に対応している。磁気ディスク装置の空間を保存するた
めに、データ圧縮伸長モジュール16を使用し、これに
よって、入出力インターフェース20を介して到達する
データ・レコードを、磁気ディスク装置22への記録の
ために圧縮できるようにする。
【0017】ログ構造は、CPU12によって作成さ
れ、メモリ18に格納されるが、ログ構造の具体的な配
置は、本発明に直接には関係せず、したがって、これ以
上検討しない。ログは、さまざまな論理レコードへの後
続のアクセスを可能にするために、それらが磁気ディス
ク装置22上のどこにあるかの記録を維持すると述べれ
ば十分である。
【0018】下で説明する割振り手順が、圧縮データ・
レコードの格納を可能にするために十分な記憶空間を割
り振り、ディスク表面上のデータ・レコードの物理位置
の変更を必要とせずに、将来の更新の際にデータ・レコ
ードのサイズの変更に適応することが、本発明の主要な
特徴である。この方法では、すべての状況で、十分なデ
ィスク記憶空間がすべての更新状況に適応するのに十分
であることを保証できない(これはディスク空間の浪費
になる)が、本発明の主目的は、ほとんどの状況で、更
新されたデータ・レコードのサイズの変更に適応するの
に十分なディスク空間が事前に割り振られることを保証
することである。
【0019】ディスク空間割振り手順20'の説明の中
で言及するパラメータを、ここで定義する。 「圧縮率(CR)」これは、データ・レコードの圧縮後
のサイズに対する非圧縮データ・レコードのサイズの比
率である。たとえば、4000バイトのレコードが10
00バイトに圧縮される場合、CR=4である。 「エクストラ・スペース」これは、将来の新しい論理レ
コードの追加のためにファイルの物理レコード内に余地
を残すためにホスト・プロセッサのファイル・システム
またはデータ・ベース・システムによって追加される空
間である。物理レコード空間にエクストラ・スペースが
ないと、オーバーフロー区域を指す複雑なポインタまた
は同様の機構を使用しなければ、新しい論理レコードを
追加できない。 「パッド」これは、レコードが更新される時の拡張に備
えて追加される、圧縮レコードの比率である。パッド・
データには、通常は0の連なりが含まれる。 「最大ラン・レングス(RL)」これは、非圧縮レコー
ドにある連続した同一バイトの最大の長さである。 「エクステント・サイズ(ES)」これは、非圧縮ファ
イルに割り当てられる連続した空間の量であり、これに
は、複数のレコードを含めることができ、単一のトラッ
クから複数のトラックに拡張できる。 「レコード・サイズ(RS)」これは、割り振られた記
憶サイズを埋めるために追加された、埋め込まれている
が未使用の空間を含む、非圧縮物理レコードのサイズで
ある(拡張空間のために提供されるパッド・データとは
異なる)。 「圧縮レコード・サイズ(CRS)」これは、割り振ら
れた記憶サイズを埋めるために追加された、埋め込まれ
ているが未使用の空間を含む、圧縮レコードのサイズで
ある(拡張空間のために提供されるパッド・データとは
異なる)。 「修正圧縮率(CCR)」これは、レコード・サイズを
圧縮率で割った値に対する、最大ラン・レングス・デー
タ未満のレコード・サイズの比すなわち、(RS−R
L)/(RS/CR)である。 「予想圧縮率(ECR)」これは、過去に経験した圧縮
率である。 「ラン・レングス・リミット(RLL)」これは、記憶
空間を一時的に割り振る必要があることを示すのに使用
される、レコード・サイズの比率である。 「リミット」これは、圧縮率(CR)がこれ未満の場合
に、固定記憶空間が割り振られる圧縮率である。
【0020】簡単に言うと、本発明の手順では、圧縮率
とデータ圧縮伸長モジュール16から受け取るラン・レ
ングス・パラメータとに基づいて、物理ディスク上の順
次空間を割り振ることによって、記憶空間の初期割振り
を達成する。本発明の方法を用いると、更新時にレコー
ドの順次位置が維持される、空間の割振りが可能にな
る。その結果、この方法では、潜在的に使用可能なデー
タ圧縮が多少犠牲になる。
【0021】この方法を達成するために、レコードの最
初の圧縮の結果として達成される圧縮率(CR)を検査
して、CRが所定の値(たとえば5またはそれ以下)よ
り小さいかどうかを判定する。このような結果は、RL
でカウントされる連続した同一バイトの数が、無視でき
るほど小さいことを示すものと解釈される。すなわち、
ファイル・システムまたはデータベース・システムは、
レコード内のエクストラ・スペースを使い果たしたか、
十分に割り振っておらず、割り振られた空間内で無視で
きる。そのような場合には、最大ラン・レングス値を使
用して、修正圧縮率(CCR)を判定し、そのCCRに
基づいて記憶空間の固定割振りを行う。具体的に言う
と、比較的小さいCR値(および計算されたCCR値)
に基づく記憶空間割振りを基礎とすることによって、割
り振られる空間が後続の更新を収容するのに十分である
確度が高くなる。
【0022】これに対して、圧縮率が前述の限界値より
高い場合、その結果は、良すぎると解釈される。すなわ
ち、データは、予想以上に圧縮されており、この圧縮
は、過剰なラン・レングスのデータ(たとえば、多すぎ
るパッド・バイト)の存在に起因する可能性がある。た
とえば、市販データベース・データの場合、5を超える
圧縮率は要注意である。機械コード・プログラム・ファ
イルの場合、予想圧縮率は、通常は約2.2を超えな
い。したがって、このシステムは、ディスクに書き込ま
れるデータのタイプに基づいて、リミットにセットする
値を与えられる。CRが高すぎ、そのCRが記憶空間割
振りに使用される場合、将来の更新を収容するには少な
すぎる記憶空間が割り振られる確度が高い。
【0023】上で述べたように、CRがリミットを超え
る場合、RLを検査し、RLがRSのラン・レングス限
界比率を超える場合には、記憶空間は、ECRを使用し
て、可変式に割り振られる。記憶空間を可変式に割り振
る理由は、レコード内のエクストラ・スペースの量が非
常に大きく、CCR値に基づく計算を信頼できないの
で、空間の推定に含まれるリスクが高すぎるからであ
る。
【0024】可変式に割り振られる空間が、後に更新書
込みを受け取る時には、CRとRLを使用して、可変割
振りを固定割振りに変換する必要があるかどうかを確立
する。その必要がある場合、新しい空間は、前述と同一
の形でCCR値を使用して割り振られる。
【0025】図2および図3に移って、本発明の方法の
詳細な動作を説明する。まず、ブロック30で、非圧縮
レコード・サイズ(RS)を記録し、次に、ブロック3
2で、レコード・データを圧縮する。ブロック34で、
圧縮機構が圧縮率(CR)と最大ラン・レングス(R
L)を出力する。次に、ブロック36で、次式を使用し
て修正圧縮率(CCR)を計算する。 CCR=CR×(RS−RL)/RS
【0026】次に、ブロック38で、新たに計算された
CCRを使用して予想圧縮率(ECR)を更新し、この
値が、以下でパラメータとして使用される。
【0027】判断ブロック40で、レコードの記憶空間
が以前に割り振られていない場合には、判断ブロック4
2で、CCR値をECRと比較する。CCR値がECR
未満の場合、CCRに基づく記憶空間割振りは、後続の
レコード更新を収容するのに十分な保存力を有すると仮
定される。したがって、ブロック44で、次式に基づい
て記憶空間の固定割振りを計算する。 (1+パッド%)×エクステント・サイズ/CCR
【0028】上の式は、修正圧縮率に基づく量で除算さ
れ、パッド比率だけ増やされるエクステント・サイズ
が、そのレコードの記憶空間の固定割振りを提供するの
に十分であることを示す。具体的に言うと、こうして計
算される割振りは、物理レコード空間の再配置を必要と
せずに、レコードに対する将来の変更を収容するのに十
分である。
【0029】逆に、判断ブロック42で、CCR値がE
CR値より大きいことが判明した場合、ブロック46
で、次式に従って記憶空間を可変割振りする。 (1+パッド%)×エクステント・サイズ/ECR
【0030】上の式は、一時的に割り振られる記憶空間
の量が、エクステント・サイズを予想圧縮率に等しい値
で除算し、1とパッド比率の和を乗じた値になることを
示す。可変割振りが行われるのは、エクストラ・スペー
スの最初の割振りが非常に大きく、CCR値を信頼でき
ないという事実に起因する。
【0031】判断ブロック40に戻って、記憶空間が前
に割り振られている場合、レコード更新が発生してお
り、この手順は判断ブロック50(図3)に進んで、記
憶空間が固定式と可変式のどちらで割り振られたかを判
定する。記憶空間が固定式に割り振られた場合、次に、
判断ブロック52で、固定レコード空間に更新されたレ
コードを収容できるかどうかを判定する。収容できる場
合には、ブロック54でレコードを同位置で更新し、収
容できない場合には、ブロック56で、オーバーフロー
空間を割り振り、更新されたレコードをそこに配置し、
元々割り振られていた空間にはポインタを配置する。
【0032】判断ブロック50で、記憶空間が可変式に
割り振られていた場合、判断ブロック58で、更新され
たレコードについて新たに計算したCCR値をECR値
と比較する。CCRがECR未満であることが判明した
場合、ブロック60で、記憶空間を固定式に再割振り
し、ブロック62でレコードを更新する。新たに計算さ
れたCCR値がECR以上であることが判明した場合、
その記憶空間は可変式に割り振られたままになり、次
に、判断ブロック64で、CCR値が、ECRと閾値の
和を超えるかどうかを判定する。超える場合には、ブロ
ック66で、圧縮レコードを格納するのに十分な記憶空
間を保持しながら可変割振りを減らし(不要な記憶空間
を使用可能にする)、レコードを更新する。超えない場
合には、可変割振りの現状を維持し、レコードを更新す
る。
【0033】その後、固定割振りされたデータ空間への
更新書込みが行われ、更新されたレコードが割り振られ
た空間におさまらない場合には、更新されたレコード
は、スピル区域に書き込まれ、その位置が、ホーム位置
にないレコードのディレクトリに配置される。さらに、
ホーム位置がマークされ、スピル区域を指すポインタ
が、レコードのホーム区域に配置される。レコードの数
が「スピル」した(あふれた)時には、新規レコードと
のそのパディングを保持するのに必要な空間を取得する
ために、そのレコードの周囲の区域のレコードおよびト
ラックからパディングを集めるガーベジ・コレクション
処理が開始される。十分なパディングを獲得できない場
合、そのデータを保持するのに十分な大きさの新しい物
理空間にエクステントを再割振りする。この物理空間
は、連続している必要があるが、複数の物理的に連続し
た区域であってもよい。最後に、物理空間が断片化した
場合、複数の周知の断片化解消アルゴリズムのうちの1
つを使用して、回復することができる。
【0034】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0035】(1)a)レコードを圧縮するステップ
と、 b)ステップa)からもたらされる圧縮率(CR)と、
前記レコードの非圧縮版での連続するデータ・セグメン
トの最大ラン・レングス(RL)とを判定するステップ
と、 c)前記レコードに含まれる前記RLなしでステップ
a)を繰り返すことによって修正圧縮率(CCR)を判
定するステップと、 d)CCRが予想圧縮率(ECR)未満の場合に、ステ
ップa)で圧縮された前記レコード用の記憶空間を割り
振るために前記CCRを使用するステップとを含む、圧
縮レコードを前記記憶空間内の順次物理位置に格納でき
るようにし、上記レコードが後続の処理および修正の間
に、元々割り振られた物理位置におさまる確度がかなり
高いことを保証する、前記圧縮レコードの格納のために
記憶空間を割り振るための方法。 (2)e)CCRが前記ECR以上の場合に、ステップ
a)で圧縮された前記レコード用の記憶空間を割り振る
ために前記ECRを使用するステップをさらに含む、上
記(1)に記載の方法。 (3)f)前記レコードに対する後続の更新の際に、前
記更新されたレコードの修正圧縮率(CCR)を判定す
るステップと、 g)ステップf)で判定されたCCRがECR値未満の
場合に、前記レコード用の可変式に割り振られた記憶空
間を固定式に割り振り、前記レコードを更新するステッ
プとをさらに含む、上記(2)に記載の方法。 (4)前記ECR値が、過去に経験した圧縮率を考慮に
入れた平均である、上記(2)に記載の方法。 (5)f)ステップb)で判定されたCCR値が、前記
ECR値以上の場合に、前記レコードのために以前に割
り振られた記憶空間の量から過剰な量の記憶空間を解放
するステップをさらに含む、上記(3)に記載の方法。 (6)a)レコードを圧縮するためにコンピュータを制
御する手段と、 b)手段a)からもたらされる圧縮率(CR)値と、前
記レコードの非圧縮版での連続するデータ・セグメント
の最大ラン・レングス(RL)とを判定するために前記
コンピュータを制御する手段と、 c)前記レコードに含まれる連続したデータ・セグメン
トの前記RLなしで手段a)の動作を繰り返すことによ
って修正圧縮率(CCR)値を判定するために前記コン
ピュータを制御する手段と、 d)CCR値が予想圧縮率(ECR)未満の場合に、手
段a)によって圧縮された前記レコード用のディスク記
憶空間を割り振るために前記CCRを使用するために前
記コンピュータを制御する手段とを含み、圧縮レコード
を前記ディスク記憶空間上の順次物理位置に格納できる
ようにし、上記レコードが後続の処理および修正の間
に、元々割り振られた物理位置におさまる確度がかなり
高いことを保証するために、前記圧縮レコードの格納の
ために前記ディスク記憶空間を割り振るために前記コン
ピュータを制御するための記憶媒体。 (7)e)前記ECR以上のCCR値に応答して、手段
a)によって圧縮された前記レコード用の記憶空間を割
り振るために前記ECRを使用するために前記コンピュ
ータを制御する手段をさらに含む、上記(6)に記載の
記憶媒体。 (8)f)前記レコードに対する後続の更新に応答し
て、前記更新されたレコードの修正圧縮率(CCR)を
判定するために前記コンピュータを制御する手段と、 h)CCRが前記ECR値未満であることに応答して、
前記レコード用の前記割り振られたディスク記憶空間を
固定式に割り振るために前記コンピュータを制御する手
段とをさらに含む、上記(7)に記載の記憶媒体。 (9)前記ECR値が、過去に経験した圧縮率の平均で
ある、上記(7)に記載の記憶媒体。 (10)g)手段b)によって判定されたCCR値が前
記ECR値以上であることに応答して、前記レコードの
ために以前に割り振られた記憶空間の量から過剰な量の
記憶空間を解放するために前記コンピュータを制御する
手段をさらに含む、上記(7)に記載の記憶媒体。
【図面の簡単な説明】
【図1】本発明に従って構成され、動作するデータ処理
システムを示すブロック図である。
【図2】図1のシステムによって使用される、ディスク
空間割振り手順の一部を示す論理流れ図である。
【図3】図1のシステムによって使用される、ディスク
空間割振り手順の残りの部分を示す論理流れ図である。
【符号の説明】
10 データ処理システム 12 中央処理装置(CPU) 14 バス・システム 16 データ圧縮伸長モジュール 18 メモリ 20 入出力インターフェース 20' ディスク空間割振り手順 22 磁気ディスク装置

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】a)レコードを圧縮するステップと、 b)ステップa)からもたらされる圧縮率(CR)と、
    前記レコードの非圧縮版での連続するデータ・セグメン
    トの最大ラン・レングス(RL)とを判定するステップ
    と、 c)前記レコードに含まれる前記RLなしでステップ
    a)を繰り返すことによって修正圧縮率(CCR)を判
    定するステップと、 d)CCRが予想圧縮率(ECR)未満の場合に、ステ
    ップa)で圧縮された前記レコード用の記憶空間を割り
    振るために前記CCRを使用するステップとを含む、圧
    縮レコードを前記記憶空間内の順次物理位置に格納でき
    るようにし、上記レコードが後続の処理および修正の間
    に、元々割り振られた物理位置におさまる確度がかなり
    高いことを保証する、前記圧縮レコードの格納のために
    記憶空間を割り振るための方法。
  2. 【請求項2】e)CCRが前記ECR以上の場合に、ス
    テップa)で圧縮された前記レコード用の記憶空間を割
    り振るために前記ECRを使用するステップをさらに含
    む、請求項1に記載の方法。
  3. 【請求項3】f)前記レコードに対する後続の更新の際
    に、前記更新されたレコードの修正圧縮率(CCR)を
    判定するステップと、 g)ステップf)で判定されたCCRがECR値未満の
    場合に、前記レコード用の可変式に割り振られた記憶空
    間を固定式に割り振り、前記レコードを更新するステッ
    プとをさらに含む、請求項2に記載の方法。
  4. 【請求項4】前記ECR値が、過去に経験した圧縮率を
    考慮に入れた平均である、請求項2に記載の方法。
  5. 【請求項5】f)ステップb)で判定されたCCR値
    が、前記ECR値以上の場合に、前記レコードのために
    以前に割り振られた記憶空間の量から過剰な量の記憶空
    間を解放するステップをさらに含む、請求項3に記載の
    方法。
  6. 【請求項6】a)レコードを圧縮するためにコンピュー
    タを制御する手段と、 b)手段a)からもたらされる圧縮率(CR)値と、前
    記レコードの非圧縮版での連続するデータ・セグメント
    の最大ラン・レングス(RL)とを判定するために前記
    コンピュータを制御する手段と、 c)前記レコードに含まれる連続したデータ・セグメン
    トの前記RLなしで手段a)の動作を繰り返すことによ
    って修正圧縮率(CCR)値を判定するために前記コン
    ピュータを制御する手段と、 d)CCR値が予想圧縮率(ECR)未満の場合に、手
    段a)によって圧縮された前記レコード用のディスク記
    憶空間を割り振るために前記CCRを使用するために前
    記コンピュータを制御する手段とを含み、圧縮レコード
    を前記ディスク記憶空間上の順次物理位置に格納できる
    ようにし、上記レコードが後続の処理および修正の間
    に、元々割り振られた物理位置におさまる確度がかなり
    高いことを保証するために、前記圧縮レコードの格納の
    ために前記ディスク記憶空間を割り振るために前記コン
    ピュータを制御するための記憶媒体。
  7. 【請求項7】e)前記ECR以上のCCR値に応答し
    て、手段a)によって圧縮された前記レコード用の記憶
    空間を割り振るために前記ECRを使用するために前記
    コンピュータを制御する手段をさらに含む、請求項6に
    記載の記憶媒体。
  8. 【請求項8】f)前記レコードに対する後続の更新に応
    答して、前記更新されたレコードの修正圧縮率(CC
    R)を判定するために前記コンピュータを制御する手段
    と、 h)CCRが前記ECR値未満であることに応答して、
    前記レコード用の前記割り振られたディスク記憶空間を
    固定式に割り振るために前記コンピュータを制御する手
    段とをさらに含む、請求項7に記載の記憶媒体。
  9. 【請求項9】前記ECR値が、過去に経験した圧縮率の
    平均である、請求項7に記載の記憶媒体。
  10. 【請求項10】g)手段b)によって判定されたCCR
    値が前記ECR値以上であることに応答して、前記レコ
    ードのために以前に割り振られた記憶空間の量から過剰
    な量の記憶空間を解放するために前記コンピュータを制
    御する手段をさらに含む、請求項7に記載の記憶媒体。
JP11631398A 1997-05-06 1998-04-27 圧縮データ・レコードの格納のためにディスク記憶空間を割振るための方法及びデータ処理システム Expired - Fee Related JP3532413B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/851109 1997-05-06
US08/851,109 US6000009A (en) 1997-05-06 1997-05-06 Method and apparatus for allocation of disk memory space for compressed data records

Publications (2)

Publication Number Publication Date
JPH11191267A true JPH11191267A (ja) 1999-07-13
JP3532413B2 JP3532413B2 (ja) 2004-05-31

Family

ID=25310003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11631398A Expired - Fee Related JP3532413B2 (ja) 1997-05-06 1998-04-27 圧縮データ・レコードの格納のためにディスク記憶空間を割振るための方法及びデータ処理システム

Country Status (4)

Country Link
US (1) US6000009A (ja)
JP (1) JP3532413B2 (ja)
KR (1) KR100324867B1 (ja)
SG (1) SG67500A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9606927D0 (en) * 1996-04-02 1996-06-05 Memory Corp Plc Data storage devices
JP3580982B2 (ja) * 1997-04-30 2004-10-27 パイオニア株式会社 情報記録方法及び装置
US6092163A (en) * 1998-12-04 2000-07-18 W. Quinn Associates, Inc. Pageable filter driver for prospective implementation of disk space quotas
US6178489B1 (en) * 1998-06-08 2001-01-23 International Business Machines Corporation Method and apparatus for managing linear address mapped storage under selective compression and regency of usage constraints
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
US7417568B2 (en) 2000-10-03 2008-08-26 Realtime Data Llc System and method for data feed acceleration and encryption
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US6877081B2 (en) * 2001-02-13 2005-04-05 International Business Machines Corporation System and method for managing memory compression transparent to an operating system
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US6775751B2 (en) * 2002-08-06 2004-08-10 International Business Machines Corporation System and method for using a compressed main memory based on degree of compressibility
US7765377B2 (en) * 2003-05-08 2010-07-27 International Business Machines Corporation Apparatus and method to write information to one or more information storage media
US7292729B2 (en) * 2004-05-07 2007-11-06 International Business Machines Corporation Device, system, and method for contiguous compressed data
US7480238B2 (en) * 2005-04-14 2009-01-20 International Business Machines Corporation Dynamic packet training
JP4798582B2 (ja) * 2006-08-22 2011-10-19 株式会社リコー 画像処理装置、画像処理方法およびプログラム
DE102006041311A1 (de) * 2006-09-01 2008-03-20 Siemens Ag Datenbanksystem, Verfahren zum Betreiben des Datenbanksystems und Computerprogrammprodukt
US8321386B1 (en) * 2008-04-14 2012-11-27 Netapp, Inc. System and method for estimating a compressibility of data in a storage device
US8762348B2 (en) * 2009-06-09 2014-06-24 Emc Corporation Segment deduplication system with compression of segments
US8731190B2 (en) * 2009-06-09 2014-05-20 Emc Corporation Segment deduplication system with encryption and compression of segments
US8401181B2 (en) * 2009-06-09 2013-03-19 Emc Corporation Segment deduplication system with encryption of segments
US8495267B2 (en) * 2010-11-24 2013-07-23 International Business Machines Corporation Managing shared computer memory using multiple interrupts
US8527467B2 (en) * 2011-06-30 2013-09-03 International Business Machines Corporation Compression-aware data storage tiering
US9471500B2 (en) 2013-04-12 2016-10-18 Nec Corporation Bucketized multi-index low-memory data structures
US9483184B2 (en) 2014-12-19 2016-11-01 International Business Machines Corporation Method to improve page out mechanism with compressed memory pools
US11226987B2 (en) * 2015-10-23 2022-01-18 Oracle International Corporation System and method for in-place data writes to reduce fragmentation in a multidimensional database environment
US11907565B2 (en) * 2020-04-14 2024-02-20 International Business Machines Corporation Storing write data in a storage system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5649151A (en) * 1992-06-29 1997-07-15 Apple Computer, Inc. Efficient method and apparatus for access and storage of compressed data
US5394534A (en) * 1992-09-11 1995-02-28 International Business Machines Corporation Data compression/decompression and storage of compressed and uncompressed data on a same removable data storage medium
JP3234075B2 (ja) * 1993-11-30 2001-12-04 ローム株式会社 立体映像再生装置

Also Published As

Publication number Publication date
SG67500A1 (en) 1999-09-21
KR100324867B1 (ko) 2002-05-09
KR19980086802A (ko) 1998-12-05
JP3532413B2 (ja) 2004-05-31
US6000009A (en) 1999-12-07

Similar Documents

Publication Publication Date Title
JP3532413B2 (ja) 圧縮データ・レコードの格納のためにディスク記憶空間を割振るための方法及びデータ処理システム
JP2846839B2 (ja) データ記憶システム及び関連する方法
EP0375188B1 (en) File system
EP1805589B1 (en) Tape emulating disk based storage and method with automatically resized emulated tape capacity
US5537588A (en) Partitioned log-structured file system and methods for operating the same
US5734861A (en) Log-structured disk array with garbage collection regrouping of tracks to preserve seek affinity
JP3715000B2 (ja) データ記憶装置のデータを選択する方法
US7584229B2 (en) Method and system for priority-based allocation in a storage pool
US5235695A (en) Apparatus for efficient utilization of removable data recording media
EP0798656B1 (en) File system level compression using holes
US5666114A (en) Method and means for managing linear mapped address spaces storing compressed data at the storage subsystem control unit or device level
EP0797805B1 (en) Storage of computer data
US4974197A (en) Batching data objects for recording on optical disks with maximum object count
JPH08249134A (ja) 冗長性パリティ記憶技法に従ってユーザ・データを書き込む方法
JPH096540A (ja) 直接アクセス記憶装置のデータ圧縮用組込みディレクトリ方法及びディレクトリ・レコード
WO2005066787A1 (ja) 情報記録媒体
JPH04268622A (ja) 回転メモリシステム
EP0694831A2 (en) Computer system having storage unit provided with data compression function andmethod of management of storage area thereof
EP1470484B1 (en) Method and system for providing direct access recovery using seekable tape device
JP3669103B2 (ja) 記憶装置および記憶装置サブシステム
EP0720085A2 (en) Compression monitoring system for controlling physical space allocation in a logically-mapped data store
JPH08314639A (ja) 情報記録再生装置
JP2004013373A (ja) 外部記憶装置システム及び記憶制御装置
JPH06332622A (ja) 情報処理装置
EP0341036B1 (en) A method of operating an information handling system

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20031218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040303

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090312

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090312

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100312

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees