JPH10275105A - データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体 - Google Patents

データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体

Info

Publication number
JPH10275105A
JPH10275105A JP9344707A JP34470797A JPH10275105A JP H10275105 A JPH10275105 A JP H10275105A JP 9344707 A JP9344707 A JP 9344707A JP 34470797 A JP34470797 A JP 34470797A JP H10275105 A JPH10275105 A JP H10275105A
Authority
JP
Japan
Prior art keywords
file
record
records
data
storage unit
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
JP9344707A
Other languages
English (en)
Other versions
JP4036514B2 (ja
Inventor
Kiyomitsu Hiyoshi
清充 日吉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP34470797A priority Critical patent/JP4036514B2/ja
Publication of JPH10275105A publication Critical patent/JPH10275105A/ja
Application granted granted Critical
Publication of JP4036514B2 publication Critical patent/JP4036514B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 圧縮効率の向上とソートマージ処理時のディ
スクスペースの節約。 【解決手段】 m個のコラムからなり所定のフォーマッ
トで作成されたn個のレコードを有するファイルを圧縮
し、各レコードの同一コラム番号のデータが全て一致す
るコラム番号2、5、…を検索して記憶し、該コラム番
号の数からファイル内で圧縮可能なレコード数を算出
し、圧縮対象レコードk+1、…、nと圧縮非対象レコ
ード1、2、3、…、kとを決定し、圧縮非対象レコー
ドの内、第1レコードのデータはそのまま記憶し、第2
レコードはコラム番号2、5、…を記憶するために使用
し、圧縮対象レコードにおけるコラム番号以外のコラム
番号1、3、4、…の記憶部に格納されたデータを、圧
縮非対象レコード3、4、…、kにおけるコラム番号
2、5、…の記憶部に移動する各ステップを備える。こ
の圧縮処理をソートマージ処理時のメモリ/ディスク間
の転送時に用いる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ圧縮方法とデ
ータ復元方法およびソートマージ処理装置とソートマー
ジ処理方法およびこれら方法のプログラムを記録する媒
体に関する。
【0002】
【従来の技術】数字、アルファベット、漢字等の文字か
ら構成されるデータを圧縮する方法に辞書型符号化方式
が知られている。辞書型符号化方式は、所定の文字列に
対してコードを割り振った辞書を用いてデータ中に現れ
る連続する文字列をコードに置換して圧縮し、同一文字
が連続する箇所を制御文字でさらに圧縮するものであ
る。この方式は事前に所定の文字列を辞書に登録する必
要があり、事前の準備に時間と労力を要し、登録漏れが
あれば圧縮できない。また圧縮時に辞書を逐次検索する
処理に時間を要する。そこで、特開平7−239771
号公報に記載されたデータレコード圧縮方法は、辞書の
作成等の特別な作業なしでデータファイル中の連続する
データレコード間に同一値のフィールドが存在する場合
にデータレコードを圧縮する方法を開示している。
【0003】上記データレコード圧縮方法は、連続する
2つのデータレコードの同一箇所に同一文字が予め定め
られた文字数にわたって連続して現れた部分を垂直圧縮
し、さらに、該垂直圧縮したレコードに対し同一文字が
予め定められた文字数にわたって連続している部分を水
平圧縮するものである。ところで、一般に大量のデータ
レコードをソートする場合、ソートマージ処理が行われ
るが、このソートマージ処理は、入力ファイルに格納さ
れた複数のデータレコードを1つづつ入力バッファに読
込み、入力バッファに読込んだデータレコードを作業域
が一杯になるまで作業域に転送し、作業域に転送された
データレコード群内でソートした後一時バッファに転送
し、一時バッファから一時ファイルに転送する。この一
連の処理をソート対象の全てのデータレコード対し繰り
返し実行し、しかる後に、一時ファイルに蓄えられたソ
ート後の複数のデータレコード群を個別の一時バッファ
に転送し、これら一時バッファから作業域に転送し、マ
ージして1本のレコード列を生成して該レコード列を出
力ファイルに出力する処理を行っている。
【0004】
【発明が解決しようとする課題】しかしながら、上記特
開平7−239771号公報に記載の圧縮方法は、連続
する2つのデータレコード間の圧縮に止まり、連続する
3つ以上のデータレコードを一括して圧縮できず、圧縮
効率が十分でないという問題がある。一方、上記従来技
術によるソートマージ処理は、大量のデータレコードを
ソートする場合、外部記憶装置の一時ファイルと主記憶
装置内の一時バッファとの間のデータ転送に時間を要
し、かつ外部記憶装置に退避させるデータ量が増大し、
その結果ソートマージ処理時間が増大し、外部記憶装置
内のディスクスペースが確保できないという問題があ
る。
【0005】それゆえ、本発明は前記問題を解決し、連
続する複数のデータレコードを一括して圧縮することに
より圧縮効率を向上させたデータ圧縮方法およびデータ
復元方法を提供することを目的とする。また、本発明は
ソートマージ処理時間を短縮するとともに外部記憶装置
内の記憶部使用エリア(ディスクスペース)を節約する
ソートマージ処理装置と方法を提供することを他の目的
とする。
【0006】
【課題を解決するための手段】図1は本発明によるデー
タ圧縮方法の原理図である。前記問題を解決する本発明
の第1態様によるデータ圧縮方法は、複数1〜mのコラ
ムからなり所定のフォーマットで作成された複数n個の
レコード1〜nを有するファイルを圧縮するデータ圧縮
方法において、ファイル内の各レコードの同一コラム番
号のデータが全て一致するコラム番号2、5、…を検索
して記憶する。次いで、検索されたコラム番号の数から
ファイル内における圧縮可能なレコード数を算出し、圧
縮可能なレコード数の算出結果から、ファイル内のレコ
ードの内、圧縮対象レコードk+1、…、nと圧縮非対
象レコード1、2、3、…、kとを決定し、圧縮非対象
レコード1、2、3、…、kの内、第1レコードのデー
タはそのまま記憶し、第2レコードは前記コラム番号
2、5、…を記憶するために使用し、圧縮対象レコード
k+1、…、nにおけるコラム番号2、5、…以外のコ
ラム番号1、3、4、…の記憶部に格納されたデータ
を、圧縮非対象レコード3、4、…、kにおけるコラム
番号2、5、…の記憶部に移動する各ステップを備えた
ことを特徴とする。
【0007】上記本発明の第1態様によるデータ圧縮方
法は、レコード単位のデータは一般的に同一コラム番号
に同一データが出現する確率が高いことに着目し、複数
のレコードを圧縮するに際し、各レコードの同一コラム
番号のデータを順次比較して全てのレコードにおける同
一コラム番号のデータが一致するコラム番号を検索し、
第1レコードはそのまま記憶し、第2レコードは該コラ
ム番号のレコード内の位置を記憶し、前記検索されたコ
ラム番号の数から圧縮対象レコードと圧縮非対象レコー
ドとを決定し、圧縮対象レコードにおける前記コラム番
号以外のコラム番号のデータを、第1レコードと第2レ
コードを除く圧縮非対象レコードの前記コラム番号の記
憶部に移動することにより、データ圧縮を行う。
【0008】本発明の第2態様によるデータ圧縮方法
は、複数のコラムからなるフィールドを複数有してなり
所定のフォーマットで作成されたレコードを複数有する
ファイルを圧縮するデータ圧縮方法において、前記ファ
イル内の各レコードの同一フィールド番号のデータが全
て一致するフィールド番号を検索して記憶し、検索され
た前記フィールド番号の数から前記ファイル内における
圧縮可能なレコード数を算出し、前記ファイル内のレコ
ードの内、圧縮対象レコードと圧縮非対象レコードとを
決定し、前記圧縮非対象レコードの内、第1レコードの
データはそのまま記憶し、第2レコードは前記フィール
ド番号を記憶するために使用し、前記圧縮対象レコード
における前記フィールド番号以外のフィールド番号の記
憶部に格納されたデータを、第1および第2レコードを
除く前記圧縮非対象レコードにおける前記フィールド番
号の記憶部に移動する各ステップを備えたことを特徴と
する。
【0009】本発明の第3態様によるデータ復元方法
は、複数のコラムからなり所定のフォーマットで作成さ
れたレコードを複数有する第1ファイルを圧縮した第2
ファイルを第1ファイルに復元するデータ復元方法であ
って、前記第1ファイルは、第1ファイル内の各レコー
ドの同一コラム番号のデータが全て一致するコラム番号
が検索され、前記第2ファイルは、前記第1ファイル内
の復元対象レコードを除いたレコードからなり、第2フ
ァイル内の復元非対象レコードにおける前記コラム番号
の記憶部に、第1ファイル内の復元対象レコードにおけ
る前記コラム番号以外のコラム番号の記憶部に格納され
たデータが移動されてなり、前記第2ファイル内の第1
および第2レコードを除く前記復元非対象レコードにお
ける前記コラム番号の記憶部に格納されたデータを、前
記第1ファイル内の前記復元対象レコードにおける前記
コラム番号以外のコラム番号の記憶部に移動し、前記第
1ファイルの前記復元対象レコードおよび第2レコード
における前記コラム番号の記憶部に第1レコードの前記
コラム番号の記憶部に格納されたデータを複写する各ス
テップを備え、第1ファイルを圧縮した第2ファイルを
第1ファイルに復元することを特徴とする。
【0010】本発明の第4態様によるデータ復元方法
は、複数のコラムからなるフィールドを複数有してなり
所定のフォーマットで作成されたレコードを複数有する
第1ファイルを圧縮した第2ファイルを第1ファイルに
復元するデータ復元方法であって、前記第1ファイル
は、第1ファイル内の各レコードの同一フィールド番号
のデータが全て一致するフィールド番号が検索され、前
記第2ファイルは、前記第1ファイル内の復元対象レコ
ードを除いたレコードからなり、第2ファイル内の復元
非対象レコードにおける前記フィールド番号の記憶部
に、第1ファイル内の復元対象レコードにおける前記フ
ィールド番号以外のフィールド番号の記憶部に格納され
たデータが移動されてなり、前記第2ファイル内の第1
および第2レコードを除く前記復元非対象レコードにお
ける前記フィールド番号の記憶部に格納されたデータ
を、前記第1ファイル内の前記復元対象レコードにおけ
る前記フィールド番号以外のフィールド番号の記憶部に
移動し、前記第1ファイルの前記復元対象レコードおよ
び第2レコードにおける前記コラム番号の記憶部に第1
レコードの前記フィールド番号の記憶部に格納されたデ
ータを複写する各ステップを備え、第1ファイルを圧縮
した第2ファイルを第1ファイルに復元することを特徴
とする。
【0011】前記問題を解決する本発明の第5態様によ
るソートマージ処理装置は、複数のレコードを格納する
入力ファイルから順次レコードを受け、これらレコード
をソートマージするソートマージ処理装置において、所
定数のレコード毎に所定のキーに従ってソートする手段
と、ソートしたレコード群を蓄える第1バッファと、第
1バッファに蓄えられたレコード群を圧縮する圧縮手段
と、圧縮したレコード群を前記第1バッファから一時フ
ァイルに転送する手段と、転送された複数のレコード群
を個別に一時ファイルから受ける複数の第2バッファ
と、前記第2バッファに蓄えられたレコード群を復元す
る復元手段と、復元した複数のレコード群をマージして
1本のレコード列を生成する手段と、マージして生成さ
れた1本のレコード列を出力ファイルに出力する手段
と、を備えたことを特徴とする。
【0012】上記本発明の第5態様によるソートマージ
処理装置は、一時ファイルと第1バッファおよび第2バ
ッファとの間で転送されるデータ長が圧縮により短くな
っているので、I/O処理時間が短縮されるとともに一
時ファイルで使用するディスクスペースが節約できる。
本発明の第5態様によるソートマージ処理装置におい
て、前記圧縮手段は、複数のコラムからなり所定のフォ
ーマットで作成されたレコードを複数有するファイルを
圧縮するデータ圧縮方法において、前記ファイル内の各
レコードの同一コラム番号のデータが全て一致するコラ
ム番号を検索して記憶し、検索された前記コラム番号の
数から前記ファイル内における圧縮可能なレコード数を
算出し、前記ファイル内のレコードの内、圧縮対象レコ
ードと圧縮非対象レコードとを決定し、前記圧縮対象レ
コードの内、第1レコードのデータはそのまま記憶し、
第2レコードは前記コラム番号を記憶するために使用
し、前記圧縮対象レコードにおける前記コラム番号以外
のコラム番号の記憶部に格納されたデータを、第1およ
び第2レコードを除く前記圧縮非対象レコードにおける
前記コラム番号の記憶部に移動する各ステップを備えた
データ圧縮方法を用いる。
【0013】本発明の第5態様によるソートマージ処理
装置において、前記圧縮手段は、複数のコラムからなり
所定のフォーマットで作成されたレコードを複数有する
第1ファイルを圧縮した第2ファイルを第1ファイルに
復元するデータ復元方法であって、前記第1ファイル
は、第1ファイル内の各レコードの同一コラム番号のデ
ータが全て一致するコラム番号が検索され、前記第2フ
ァイルは、前記第1ファイル内の復元対象レコードを除
いたレコードからなり、第2ファイル内の復元非対象レ
コードにおける前記コラム番号の記憶部に、第1ファイ
ル内の復元対象レコードにおける前記コラム番号以外の
コラム番号の記憶部に格納されたデータが移動されてな
り、前記第2ファイル内の第1および第2レコードを除
く前記復元非対象レコードにおける前記コラム番号の記
憶部に格納されたデータを、前記第1ファイル内の前記
復元対象レコードにおける前記コラム番号以外のコラム
番号の記憶部に移動し、前記第1ファイルの前記復元対
象レコードおよび第2レコードにおける前記コラム番号
の記憶部に第1レコードの前記コラム番号の記憶部に格
納されたデータを複写する各ステップを備え、第1ファ
イルを圧縮した第2ファイルを第1ファイルに復元する
データ復元方法を用いる。
【0014】本発明の第5態様によるソートマージ処理
装置において、前記圧縮手段は、複数のコラムからなる
フィールドを複数有してなり所定のフォーマットで作成
されたレコードを複数有するファイルを圧縮するデータ
圧縮方法において、前記ファイル内の各レコードの同一
フィールド番号のデータが全て一致するフィールド番号
を検索して記憶し、検索された前記フィールド番号の数
から前記ファイル内における圧縮可能なレコード数を算
出し、前記ファイル内のレコードの内、圧縮対象レコー
ドと圧縮非対象レコードとを決定し、前記圧縮非対象レ
コードの内、第1レコードのデータはそのまま記憶し、
第2レコードは前記フィールド番号を記憶するために使
用し、前記圧縮対象レコードにおける前記フィールド番
号以外のフィールド番号の記憶部に格納されたデータ
を、第1および第2レコードを除く前記圧縮非対象レコ
ードにおける前記フィールド番号の記憶部に移動する各
ステップを備えたデータ圧縮方法を用いる。
【0015】本発明の第5態様によるソートマージ処理
装置において、前記圧縮手段は、複数のコラムからなる
フィールドを複数有してなり所定のフォーマットで作成
されたレコードを複数有する第1ファイルを圧縮した第
2ファイルを第1ファイルに復元するデータ復元方法で
あって、前記第1ファイルは、第1ファイル内の各レコ
ードの同一フィールド番号のデータが全て一致するフィ
ールド番号が検索され、前記第2ファイルは、前記第1
ファイル内の復元対象レコードを除いたレコードからな
り、第2ファイル内の復元非対象レコードにおける前記
フィールド番号の記憶部に、第1ファイル内の復元対象
レコードにおける前記フィールド番号以外のフィールド
番号の記憶部に格納されたデータが移動されてなり、前
記第2ファイル内の第1および第2レコードを除く前記
復元非対象レコードにおける前記フィールド番号の記憶
部に格納されたデータを、前記第1ファイル内の前記復
元対象レコードにおける前記フィールド番号以外のフィ
ールド番号の記憶部に移動し、前記第1ファイルの前記
復元対象レコードおよび第2レコードにおける前記フィ
ールド番号の記憶部に第1レコードの前記フィールド番
号の記憶部に格納されたデータを複写する各ステップを
備え、第1ファイルを圧縮した第2ファイルを第1ファ
イルに復元するデータ復元方法を用いる。
【0016】本発明の第6態様によるソートマージ処理
方法は、複数のレコードを格納する入力ファイルから順
次レコードを受け、これらレコードをソートマージする
ソートマージ処理方法において、所定数のレコード毎に
所定のキーに従ってソートする第1ステップと、ソート
したレコード群を第1バッファに蓄える第2ステップ
と、前記第1バッファに蓄えられたレコード群を圧縮す
る第3ステップと、圧縮されたレコード群を前記第1バ
ッファから一時ファイルに転送する第4ステップと、転
送された複数のレコード群を個別に前記一時ファイルか
ら第2バッファに転送する第5ステップと、前記第2バ
ッファに蓄えられたレコード群を復元する第5ステップ
と、復元した複数のレコード群をマージして1本のレコ
ード列を生成する第6ステップと、マージして生成され
た1本のレコード列を出力ファイルに出力する第7ステ
ップと、を備えたことを特徴とする。
【0017】本発明の第6態様によるソートマージ処理
方法において、第3ステップのデータ圧縮処理は、前記
第1態様又は第2態様に記載の各ステップを備える。本
発明の第6態様によるソートマージ処理方法において、
第5ステップのデータ復元処理は、前記第3態様又は第
4態様に記載の各ステップを備える。本発明の第7態様
による媒体は、前記第1態様又は第2態様に記載の各ス
テップを備えたデータ圧縮方法を実行させるためのプロ
グラムを記録した媒体である。
【0018】本発明の第8態様による媒体は、コンピュ
ータに前記第3態様又は第4態様に記載の各ステップを
備えたデータ復元方法を実行させるためのプログラムを
記録した媒体である。本発明の第9態様による媒体は、
コンピュータに前記第6態様に記載の各ステップを備え
たソートマージ処理方法を実行させるためのプログラム
を記録した媒体である。
【0019】
【発明の実施の形態】図2は本発明によるソートマージ
処理装置の概略構成図である。前記問題を解決する本発
明の第5態様によるソートマージ処理装置は、複数のレ
コードを格納する入力ファイル1から順次レコードを入
力バッファ2で受け、これらレコードを第1作業域3に
展開してソートマージするソートマージ処理装置10に
おいて、所定数のレコード毎に所定のキーに従ってソー
トするソート手段と、ソートしたレコード群を一時的に
蓄える第1バッファ4と、第1バッファ4に蓄えられた
レコード群を圧縮する圧縮手段と、圧縮したレコード群
を第1バッファ4から一時ファイル5に転送する転送手
段と、転送された複数のレコード群を個別に一時ファイ
ル5から受ける複数の第2バッファ6と、第2バッファ
6に一時的に蓄えられたレコード群を第2作業域7に展
開して復元する復元手段と、復元した複数のレコード群
を第2作業域で展開してマージし、1本のレコード列を
生成する第1列生成手段と、マージして生成された1本
のレコード列を出力ファイルに出力する第1出力手段
と、転送された複数のレコード群を個別に一時ファイル
から受ける複数の第2バッファ6と、第2バッファ6に
格納されたレコード群を復元する復元手段と、復元した
複数のレコード群をマージして1本のレコード列を生成
する第2列生成手段と、マージして生成されたレコード
列を出力ファイルに出力する第2出力手段と、を備えた
ことを特徴とする。
【0020】上記各手段はソートマージ処理装置10に
おけるメモリ(図示せず)内に格納された各々のプログ
ラムを実行することにより達成される。また、ソートマ
ージ処理装置10には補助記憶装置(図示せず)が接続
されており、この補助記憶装置を介してソートマージ処
理装置10のCPUは、媒体20に記録された種々のプ
ログラムを読取り、各種の処理を実行する。媒体20に
は、本発明のデータ圧縮方法を実行させるためのプログ
ラムを記録した媒体、本発明のデータ復元方法を実行さ
せるためのプログラムを記録した媒体および本発明のソ
ートマージ処理方法を実行させるためのプログラムを記
録した媒体、等が記録される。
【0021】図2に示す本発明のソートマージ処理装置
は、一時ファイルと第1バッファおよび第2バッファと
の間で転送されるデータ長が圧縮により短くなっている
ので、I/O処理時間が短縮されるとともに一時ファイ
ルで使用するディスクスペースが節約できる。図3〜5
は本発明による実施例のソートマージ処理のフローチャ
ートである。本実施例は、図2に示すソートマージ処理
装置を用いて18個のレコードをソートマージする例を
示す。図3〜5において各ブロックの左上にステップ番
号を示す。以下、図2と図3〜5を相互に参照しつつ説
明する。先ず、ステップ1では、入力ファイル1にソー
トマージする18個のレコードを設定する。
【0022】ステップ2では、入力ファイル2から主記
憶装置(以下メモリと記す)内の入力バッファ2に3個
のレコード0、7、6を読込む。ステップ3では、入力
バッファ2内のデータをレコード単位にメモリ上の第1
作業域3へ移動する。ステップ4では、メモリ上の第1
作業域3に空きがあるのでさらに入力ファイル1からレ
コード11、3、14を読込み、第1作業域3に移動す
る。その結果、第1作業域3には、レコード0、7、
6、11、3、14が書込まれる。
【0023】次に、ステップ5では、第1作業域3が一
杯になったら、昇順にソートする。そのソート結果は
0、3、6、7、11、14となる。ステップ6では、
入力ファイル1にまだデータが残っているので、ソート
済のレコードを一時的に使用する第1バッファ4に3レ
コード分詰める。この第1バッファ4は3レコード分だ
けデータを蓄えることができる。
【0024】次に、図4に示すステップ7では、第1バ
ッファ4内のデータ0、3、7を圧縮した後、一時ファ
イル5へ移動(転送)する。ステップ6、7を繰り返す
と、第1バッファ4内のデータは、0、3、6、7、1
1、14となる。次いで、ステップ8では、ステップ1
で設定した入力ファイル2内のデータが全て入力バッフ
ァ2に読込まれるまでステップ1〜7を繰り返す。その
結果、一時ファイル5内には図示の様にデータが書込ま
れる。
【0025】次に、図5に示すステップ9では、一時フ
ァイル5内の各ストリングI、II、III の先頭ブロック
(3レコード分)、すなわちストリングIからはレコー
ド列0、3、6がストリングIIからはレコード列2、
5、8が、ストリングIII からはレコード列1、4、9
が、それぞれ内部メモリ内の3個の第2バッファ6a、
6b、6cに読込まれる。次いで、ステップ10では、
一時的にデータを蓄える3個の第2バッファ6a、6
b、6cに読込まれたレコード列を復元する。ステップ
11では、復元したレコード列をメモリ上の第2作業域
7に移動し、第2作業域7上で展開してマージし、その
結果を出力バッファ8を介して出力ファイル9に書込
む。
【0026】次に、本発明のデータ圧縮方法について以
下に説明する。図6は本発明による実施例のデータ圧縮
方法における初期処理の説明図であり、(A)は圧縮前
の9つのレコードからなるバッファを示す図であり、
(B)はバッファ内の各レコードの同一コラム番号のデ
ータが全て一致するコラム番号を検索した後の状態を示
す図である。図6以降において、第1レコードから第9
レコードの各レコードは32文字からなり、1文字1バ
イトであるのでレコード長は32バイトである。したが
って、図6に示すバッファ長は288バイトである。
【0027】実施例のデータ圧縮方法の初期処理は以下
の手順で実行される。 1)第1レコード目と第2レコード目の同一オフセット
の文字をレコードの先頭から順に比較する。ここで、オ
フセットとは、先頭から何コラム離れているかを示すも
ので、例えば第1レコードのオフセット3は文字1、オ
フセット5は文字H、オフセット20は文字7である。
このように、各レコードはオフセット0〜31の位置に
1つの文字データを有する。
【0028】2)上記ステップ1)の結果、同一文字の
ときは、第2レコード目の同一オフセットの位置(同一
コラム番号)にフラグ*を立てる。このフラグ*は、第
2レコード内の文字情報として使用されないものから適
宜選択して決定する。 3)次に、第1レコードと第3レコードの同一オフセッ
トの文字を比較し、同一文字であれば第4レコードの同
一オフセットの文字と比較し、順次第9レコードまでこ
の比較を繰り返す。
【0029】4)上記ステップ3)の途中で、同一オフ
セットの文字の比較結果、異なる文字のときは、第2レ
コードのフラグを第1レコードの同一オフセット位置の
文字に複写して元に戻し、比較を中断する。 5)さらに、第1レコード目と第2レコード目の同一オ
フセットの文字の比較を繰り返し実行し、レコード長だ
け、すなわちオフセット31まで行う。
【0030】図6の(B)は、上記ステップ1)〜5)
を終了した後のバッファを示す。図示するように第2レ
コードのフラグ*の位置では、各レコードの同一オフセ
ットの文字が全て同一であることが判る。図7は本発明
による実施例のデータ圧縮方法における圧縮可能レコー
ド数の計算処理の説明図である。図示するように、1レ
コードの長さをRL、1バッファ中のレコード数(ブロ
ッキングファクタ)をBF、初期処理でマークされたフ
ラグ*の数をA、圧縮後のレコード数をX、圧縮対象の
レコード数をYとすると、下記の式が成立する。
【0031】 Y =BF − X ……… (1) ここで、RL=32バイト、BF=9レコード、A=1
4個である。また、圧縮(移動)元バイト数と圧縮(移
動)先バイト数との関係は、圧縮(移動)元バイト数≦
圧縮(移動)先バイト数であり、これは下式で表され
る。 Y(RL−A)≦(X−2)A …… (2) 式(2)の右辺で−2と減算するのは、第1レコードが
同一オフセットの文字を記憶しておくために使用され、
第2レコードが全てのレコードにおいて同一文字が書込
まれたオフセットの位置を記憶しておくために使用され
ることから、この2レコード分を圧縮の対象から除外す
るためである。本実施例では下記の式が成立する。
【0032】 Y =9 − X ……… (1’) Y(32−14)≦(X−2)14 ……… (2’) (2’)は次式で表される。 9Y≦(X−2)7 ……… (2”) したがって、Y≦3.0625となり、Yの最も大きい
整数3が圧縮(移動)可能なレコード数となる。
【0033】次に、本発明による実施例のバッファ圧縮
処理について図8と図9を参照しつつ以下に説明する。
図8は本発明による実施例のバッファ圧縮処理における
文字データの移動の説明図であり、(A)は移動対象レ
コードを示す図であり、(B)は移動対象部分を示す図
である。上述したように、圧縮(移動)レコード数が決
定した後、圧縮非対象レコードの内、第1レコードが同
一オフセットの文字を記憶しておくために使用され、第
2レコードが全てのレコードにおいて同一文字が書込ま
れたオフセットの位置を記憶しておくために使用され、
他の圧縮非対象レコード、すなわち第3〜第6レコード
におけるフラグ*の位置に、圧縮対象レコード、すなわ
ち第7〜9レコードにおけるフラグ*の位置以外のオフ
セットの位置の記憶部に格納されたデータを移動する。
図8の(A)に示すように、移動対象レコードは、第7
〜9レコードであり、図8の(B)に示すように、移動
対象部分は、第7〜9レコードにおけるフラグ*のない
オフセット位置、すなわちオフセット3、5〜13、1
8、20、21、23〜26および31である。
【0034】図9は本発明による実施例のバッファ圧縮
処理における文字データの移動の説明図であり、(A)
は圧縮非対象レコード内の記憶場所を示す図であり、
(B)は圧縮後のバッファ内のデータ配列を示す図であ
る。図9の(A)に示すように、図8の(B)で示した
移動対象部分の文字データは、第3レコードから第6レ
コードにおけるフラグ*の下のオフセット位置に移動さ
れる。すなわち、これらの位置が圧縮非対象レコード内
の記憶場所である。図9の(B)に示すように、圧縮後
のバッファ内のデータ配列は、本発明により9レコード
が6レコードに圧縮されたことを示している。次に、本
発明による実施例のバッファ圧縮処理の手順を図10に
示すフローチャートを用いて以下に説明する。
【0035】図10は本発明による実施例のバッファ圧
縮処理のフローチャートである。図8と図9を参照しつ
つ本バッファ圧縮処理を説明する。先ず、ステップ10
01では、初期設定する。すなわち、I=0、BF=
(X+Y)=9、X=6、C=(レコード長−フラグの
数)×(BF−X)=(32−14)×(9−6)=5
4、移動元レコード番号のカウンタJ=X+1=7、移
動先のレコード番号のカウンタK=3にそれぞれ設定す
る。ここで、Iは本処理ルーチンの終了判定に使用する
カウンタで移動対象文字数C(=54)までカウントし
て終了する。BFは圧縮前のレコード数で9、Xは圧縮
後のレコード数で6、YはBF−X(=9−6)で3で
ある。ステップ1002では、移動元を第J(7、8、
9、7、8、…)レコード上の第2レコードのフラグ以
外の位置と同一オフセットに決定する。ステップ100
3では、移動先を第K(3、4、5、6、3、4、…)
レコード上で第2レコードのフラグの位置と同一オフセ
ットに決定する。
【0036】次いで、ステップ1004では、移動元か
ら移動先へ複写する。ステップ1005では、I、J、
Kにそれぞれ1を加算する。次に、ステップ1006で
は、カウンタIがCまでカウントしたか否かを判別し、
その判別結果がYESのときは圧縮処理を終了し、NO
のときはステップ1007へ進む。ステップ1007で
は、移動元のレコード番号JがBFより小(J≦BF)
か否かを判別し、J≦BFのときはステップ1008へ
進み、J>BFのときはステップ1009へ進み、ステ
ップ1009ではJ=X+1を計算する。ステップ10
08では移動元を第Jレコードの同一オフセットに変更
し、ステップ1011へ進む。ステップ1010では移
動元を第Jレコード上で第2レコードの次のフラグ以外
の位置と同一オフセットに変更し、ステップ1011へ
進む。
【0037】ステップ1011では、K≦Xか否かを判
別し、K≦Xのときはステップ1012へ進み、K>X
のときはステップ1013へ進む。ステップ1012で
は移動先を第Kレコードの同一オフセットに変更する。
ステップ1013では、K=3に設定し、次いでステッ
プ1014へ進む。ステップ1014では、移動先を第
Kレコード上で第2レコードの次のフラグの位置と同一
オフセットに変更する。ステップ1012およびステッ
プ1014実行後は再びステップ1004へ戻り、ステ
ップ1006でI=Cとなるまでステップ1004から
1014を繰り返す。
【0038】次に、本発明による実施例のバッファ復元
処理について図11と図12を参照しつつ以下に説明す
る。図11は本発明による実施例のバッファ復元処理に
おける文字データの移動の説明図であり、(A)は復元
対象部分を示す図であり、(B)は復元により圧縮され
た文字が元の位置に戻される復元部分を示す図である。
図11の(A)に示す復元対象部分は、図9の(A)で
示した圧縮非対象レコード内の記憶場所に対応する。図
11の(B)に示す復元により圧縮された文字が元の位
置に戻される部分は図8の(B)で示す移動対象部分に
対応する。
【0039】図12は本発明による実施例のバッファ復
元処理における文字データの移動の説明図であり、
(A)はフラグのオフセット列を除き復元により圧縮さ
れた文字が元の位置に戻された状態を示す図であり、
(B)はフラグのオフセット列を含めた圧縮後のバッフ
ァ内のデータ配列を示す図である。図12の(A)は、
図11の(A)に示す復元対象部分を図11の(B)に
示す復元部分に移動した後のバッファのデータ配列を示
す。図12の(B)はレコード番号2以降のレコード番
号2にフラグ*があるオフセットの列を同一オフセット
に相当する第1レコードの文字データを複写した後の復
元終了後のバッファ内のデータ配列を示す図である。次
に、本発明による実施例のバッファ復元処理の手順を図
13に示すフローチャートを用いて以下に説明する。
【0040】図13は本発明による実施例のバッファ復
元処理のフローチャートである。先ず、ステップ130
1では、初期設定する。すなわち、I=0、BF=(X
+Y)=9、X=6、C=(レコード長−フラグの数)
×(BF−X)=(32−14)×(9−6)=54、
移動元レコード番号のカウンタJ=3、移動先のレコー
ド番号のカウンタK=X+1=6+1=7にそれぞれ設
定する。ここで、Iは本処理ルーチンの終了判定に使用
するカウンタで移動対象文字数C(=54)までカウン
トして終了する。BFは復元後のカウント数で9、Xは
復元前のレコード数で6、YはBF−X(=9−6)で
3である。ステップ1302では、移動先を第K(7、
8、9、7、8、…)レコード上の第2レコードのフラ
グ以外の位置と同一オフセットに決定する。ステップ1
303では、移動元を第J(3、4、5、6、3、4、
…)レコード上で第2レコードのフラグの位置と同一オ
フセットに決定する。
【0041】次いで、ステップ1304では、移動元か
ら移動先へ複写する。ステップ1305では、I、J、
Kにそれぞれ1を加算する。次に、ステップ1306で
は、カウンタIがCまでカウントしたか否かを判別し、
その判別結果がYESのときはステップ1308へ進
み、第1レコード上で第2レコードのフラグ位置と同一
オフセットの文字を第2レコードから第BF(=9)レ
コード上の同一オフセットに複写し、第2レコード上の
全てのフラグに対して上記複写を実行し、復元処理を終
了する。一方、ステップ1306の判別結果がNOのと
きはステップ1307へ進む。ステップ1307では、
移動先のレコード番号KがBFより小(K≦BF)か否
かを判別し、K≦BFのときはステップ1309へ進
み、K>BFのときはステップ1310へ進み、ステッ
プ1310ではK=X+1を計算する。ステップ130
9では移動元を第Kレコードの同一オフセットに変更
し、ステップ1312へ進む。ステップ1311では移
動元を第Kレコード上で第2レコードの次のフラグ以外
の位置と同一オフセットに変更し、ステップ1312へ
進む。
【0042】ステップ1312では、J≦Xか否かを判
別し、J≦Xのときはステップ1313へ進み、J>X
のときはステップ1314へ進む。ステップ1313で
は移動先を第Jレコードの同一オフセットに変更する。
ステップ1314では、J=3に設定し、次いでステッ
プ1315へ進む。ステップ1315では、移動先を第
Jレコード上で第2レコードの次のフラグの位置と同一
オフセットに変更する。ステップ1313およびステッ
プ1315実行後は再びステップ1304へ戻り、ステ
ップ1306でI=Cとなるまでステップ1304から
1315を繰り返す。
【0043】次に、本発明のソートマージ処理手順を図
2を参照しつつ以下に説明する。図14は本発明のソー
トマージ処理におけるソート処理のフローチャートであ
り、図15は本発明のソートマージ処理におけるマージ
処理のフローチャートである。先ず、ステップ1401
では入力ファイル1から入力バッファ2にレコードデー
タを順次読込む。ステップ1402では、入力バッファ
2から第1作業域3にレコードを移動する。ステップ1
403では、第1作業域3に空きが有るか否かを判別す
る。その判別結果がYESのときはステップ1401へ
戻り、ステップ1401、1402を繰り返し実行す
る。その判別結果がNOのときはステップ1404へ進
み、第1作業域3上のレコードをソートする。ステップ
1405では、入力ファイル1内のレコードの読込みが
完了したか否かを判別し、その判別結果がYESのとき
はステップ1406へ進み、NOのときは1407へ進
む。ステップ1406では、一時ファイル5を使用した
か否かを判別し、その判別結果がYESのときはステッ
プ1407へ進み、NOのときはステップ1408へ進
み、ステップ1408では、第1作業域3上でソートし
たレコードを図示しない出力バッファを介して出力ファ
イル9へ書込み、本ソートマージ処理を終了する。
【0044】次に、ステップ1407では、第1作業域
3上のレコードを第1バッファ4に移動し、ステップ1
409へ進む。ステップ1409では、第1バッファ4
がレコードで一杯になったか否かを判別し、その判別結
果がYESのときはステップ1410へ進み、NOのと
きはステップ1407へ戻り、ステップ1407を繰り
返し実行する。ステップ1410では、第1バッファ4
を圧縮し一時ファイル5に書込む(転送する)。次い
で、ステップ1411では、第1作業域3は全て空きか
否かを判別し、その判別結果がYESのときはステップ
1412へ進み、NOのときはステップ1407へ戻
り、ステップ1407を繰り返し実行する。
【0045】ステップ1412では、一時ファイル5に
転送されたストリング(レコード列)をカウントする。
ステップ1413では、入力ファイル5内のレコードの
読込みが完了したか否かを判別し、その判別結果がYE
Sのときはステップ1414へ進み、NOのときはステ
ップ1401へ戻る。ステップ1414では、各ストリ
ングの先頭から順に1ブロック分づつ一時ファイル5か
ら第2バッファに読込む。ステップ1415では、第2
バッファ6を復元し、ステップ1416では、各第2バ
ッファ6の先頭レコードから順に第2作業域7へ展開し
てマージし、出力バッファ8に書込む。ステップ141
7では、出力バッファ8から出力ファイル9へレコード
を書込む。ステップ1418では、全てのマージ処理が
完了したか否かを判別し、その判別結果がYESのとき
は本ソートマージ処理を終了し、NOのときはステップ
1414へ戻り、ステップ1414〜1418を繰り返
し実行する。
【0046】以上、説明した実施例は、複数のレコード
間の同一コラム番号の文字データが全て一致するコラム
番号を検索し、これらのコラムを圧縮に利用するもので
あるが、本発明はこのコラムに代えて複数のコラムから
なるフィールド単位で圧縮することもできる。すなわ
ち、コラム同様に、複数のフィールドからなる所定のフ
ォーマットで作成したレコード間の同一フィールド番号
のデータが全て一致するフィールド番号を検索し、これ
らのフィールドの記憶部を圧縮に利用することによりさ
らに大容量の圧縮が可能である。
【0047】
【発明の効果】本発明のデータ圧縮方法とデータ復元方
法によれば、複数nのレコード内の同一コラム又は同一
フィールドのデータの一致を検索し、複数(n−k)個
の圧縮対象レコードにおけるデータが一致したコラム又
はフィールドと異なるコラム又はフィールドのデータ
を、圧縮対象レコードk個の内、(k−2)個のレコー
ドにおける前記コラム又はフィールドの記憶部に移動し
て圧縮するので、圧縮効率が大幅に向上する。
【0048】本発明のソートマージ処理装置またはソー
トマージ処理方法によれば、外部記憶装置(一時ファイ
ル)と主記憶装置(バッファ)との間で転送されるデー
タ長が圧縮により短くなるので、I/O処理時間を短縮
できるとともにディスクスペースが節約できる。
【図面の簡単な説明】
【図1】本発明によるデータ圧縮方法の原理図である。
【図2】本発明によるソートマージ処理装置の概略構成
図である。
【図3】本発明による実施例のソートマージ処理のフロ
ーチャート前半部である。
【図4】本発明による実施例のソートマージ処理のフロ
ーチャート中半部である。
【図5】本発明による実施例のソートマージ処理のフロ
ーチャート後半部である。
【図6】本発明による実施例のデータ圧縮方法における
初期処理の説明図であり、(A)は圧縮前の9つのレコ
ードからなるファイルを示す図であり、(B)はファイ
ル内の各レコードの同一コラム番号のデータが全て一致
するコラム番号を検索した後の状態を示す図である。
【図7】本発明による実施例のデータ圧縮方法における
圧縮可能レコード数の計算処理の説明図である。
【図8】本発明による実施例のバッファ圧縮処理におけ
る文字データの移動の説明図であり、(A)は移動対象
レコードを示す図であり、(B)は移動対象部分を示す
図である。
【図9】本発明による実施例のバッファ圧縮処理におけ
る文字データの移動の説明図であり、(A)は圧縮非対
象レコード内の記憶場所を示す図であり、(B)は圧縮
後のバッファ内のデータ配列を示す図である。
【図10】本発明による実施例のバッファ圧縮処理のフ
ローチャートである。
【図11】本発明による実施例のバッファ復元処理にお
ける文字データの移動の説明図であり、(A)は復元対
象部分を示す図であり、(B)は復元により圧縮された
文字が元の位置に戻される部分を示す図である。
【図12】本発明による実施例のバッファ復元処理にお
ける文字データの移動の説明図であり、(A)はフラグ
のオフセット列を除き復元により圧縮された文字が元の
位置に戻された状態を示す図であり、(B)はフラグの
オフセット列を含めた圧縮後のバッファ内のデータ配列
を示す図である。
【図13】本発明による実施例のバッファ復元処理のフ
ローチャートである。
【図14】本発明のソートマージ処理におけるソート処
理のフローチャートである。
【図15】本発明のソートマージ処理におけるマージ処
理のフローチャートである。
【符号の説明】
1…入力ファイル 2…入力バッファ 3…第1作業域 4…第1バッファ 5…一時ファイル 6…第2バッファ 7…第2作業域 8…出力バッファ 9…出力ファイル 10…ソートマージ処理装置 20…記録媒体

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 複数のコラムからなり所定のフォーマッ
    トで作成されたレコードを複数有するファイルを圧縮す
    るデータ圧縮方法において、 前記ファイル内の各レコードの同一コラム番号のデータ
    が全て一致するコラム番号を検索して記憶し、 検索された前記コラム番号の数から前記ファイル内にお
    ける圧縮可能なレコード数を算出し、 前記圧縮可能なレコード数の算出結果から、前記ファイ
    ル内のレコードの内、圧縮対象レコードと圧縮非対象レ
    コードとを決定し、 前記圧縮非対象レコードの内、第1レコードのデータは
    そのまま記憶し、 第2レコードは前記コラム番号を記憶するために使用
    し、 前記圧縮対象レコードにおける前記コラム番号以外のコ
    ラム番号の記憶部に格納されたデータを、第1および第
    2レコードを除く前記圧縮非対象レコードにおける前記
    コラム番号の記憶部に移動する各ステップを備えたこと
    を特徴とするデータ圧縮方法。
  2. 【請求項2】 複数のコラムからなるフィールドを複数
    有してなり所定のフォーマットで作成されたレコードを
    複数有するファイルを圧縮するデータ圧縮方法におい
    て、 前記ファイル内の各レコードの同一フィールド番号のデ
    ータが全て一致するフィールド番号を検索して記憶し、 検索された前記フィールド番号の数から前記ファイル内
    における圧縮可能なレコード数を算出し、 前記ファイル内のレコードの内、圧縮対象レコードと圧
    縮非対象レコードとを決定し、 前記圧縮非対象レコードの内、第1レコードのデータは
    そのまま記憶し、 第2レコードは前記フィールド番号を記憶するために使
    用し、 前記圧縮対象レコードにおける前記フィールド番号以外
    のフィールド番号の記憶部に格納されたデータを、第1
    および第2レコードを除く前記圧縮非対象レコードにお
    ける前記フィールド番号の記憶部に移動する各ステップ
    を備えたことを特徴とするデータ圧縮方法。
  3. 【請求項3】 複数のコラムからなり所定のフォーマッ
    トで作成されたレコードを複数有する第1ファイルを圧
    縮した第2ファイルを第1ファイルに復元するデータ復
    元方法であって、 前記第1ファイルは、第1ファイル内の各レコードの同
    一コラム番号のデータが全て一致するコラム番号が検索
    され、 前記第2ファイルは、前記第1ファイル内の復元対象レ
    コードを除いたレコードからなり、第2ファイル内の復
    元非対象レコードにおける前記コラム番号の記憶部に、
    第1ファイル内の復元対象レコードにおける前記コラム
    番号以外のコラム番号の記憶部に格納されたデータが移
    動されてなり、 前記第2ファイル内の第1および第2レコードを除く前
    記復元非対象レコードにおける前記コラム番号の記憶部
    に格納されたデータを、前記第1ファイル内の前記復元
    対象レコードにおける前記コラム番号以外のコラム番号
    の記憶部に移動し、 前記第1ファイルの前記復元対象レコードおよび第2レ
    コードにおける前記コラム番号の記憶部に第1レコード
    の前記コラム番号の記憶部に格納されたデータを複写す
    る各ステップを備え、 第1ファイルを圧縮した第2ファイルを第1ファイルに
    復元することを特徴とするデータ復元方法。
  4. 【請求項4】 複数のコラムからなるフィールドを複数
    有してなり所定のフォーマットで作成されたレコードを
    複数有する第1ファイルを圧縮した第2ファイルを第1
    ファイルに復元するデータ復元方法であって、 前記第1ファイルは、第1ファイル内の各レコードの同
    一フィールド番号のデータが全て一致するフィールド番
    号が検索され、 前記第2ファイルは、前記第1ファイル内の復元対象レ
    コードを除いたレコードからなり、第2ファイル内の復
    元非対象レコードにおける前記フィールド番号の記憶部
    に、第1ファイル内の復元対象レコードにおける前記フ
    ィールド番号以外のフィールド番号の記憶部に格納され
    たデータが移動されてなり、 前記第2ファイル内の第1および第2レコードを除く前
    記復元非対象レコードにおける前記フィールド番号の記
    憶部に格納されたデータを、前記第1ファイル内の前記
    復元対象レコードにおける前記フィールド番号以外のフ
    ィールド番号の記憶部に移動し、 前記第1ファイルの前記復元対象レコードおよび第2レ
    コードにおける前記コラム番号の記憶部に第1レコード
    の前記フィールド番号の記憶部に格納されたデータを複
    写する各ステップを備え、 第1ファイルを圧縮した第2ファイルを第1ファイルに
    復元することを特徴とするデータ復元方法。
  5. 【請求項5】 複数のレコードを格納する入力ファイル
    から順次レコードを受け、これらレコードをソートマー
    ジするソートマージ処理装置において、 所定数のレコード毎に所定のキーに従ってソートする手
    段と、 ソートしたレコード群を蓄える第1バッファと、 第1バッファに蓄えられたレコード群を圧縮する圧縮手
    段と、 圧縮したレコード群を前記第1バッファから一時ファイ
    ルに転送する手段と、 転送された複数のレコード群を個別に一時ファイルから
    受ける複数の第2バッファと、 前記第2バッファに蓄えられたレコード群を復元する復
    元手段と、 復元した複数のレコード群をマージして1本のレコード
    列を生成する手段と、 マージして生成された1本のレコード列を出力ファイル
    に出力する手段と、を備えたことを特徴とするソートマ
    ージ処理装置。
  6. 【請求項6】 前記圧縮手段は、 複数のコラムからなり所定のフォーマットで作成された
    レコードを複数有するファイルを圧縮するデータ圧縮方
    法において、 前記ファイル内の各レコードの同一コラム番号のデータ
    が全て一致するコラム番号を検索して記憶し、 検索された前記コラム番号の数から前記ファイル内にお
    ける圧縮可能なレコード数を算出し、 前記ファイル内のレコードの内、圧縮対象レコードと圧
    縮非対象レコードとを決定し、 前記圧縮非対象レコードの内、第1レコードのデータは
    そのまま記憶し、 第2レコードは前記コラム番号を記憶するために使用
    し、 前記圧縮対象レコードにおける前記コラム番号以外のコ
    ラム番号の記憶部に格納されたデータを、第1および第
    2レコードを除く前記圧縮非対象レコードにおける前記
    コラム番号の記憶部に移動する各ステップを備えたデー
    タ圧縮方法を用いる請求項5に記載のソートマージ処理
    装置。
  7. 【請求項7】 前記復元手段は、 複数のコラムからなり所定のフォーマットで作成された
    レコードを複数有する第1ファイルを圧縮した第2ファ
    イルを第1ファイルに復元するデータ復元方法であっ
    て、 前記第1ファイルは、第1ファイル内の各レコードの同
    一コラム番号のデータが全て一致するコラム番号が検索
    され、 前記第2ファイルは、前記第1ファイル内の復元対象レ
    コードを除いたレコードからなり、第2ファイル内の復
    元非対象レコードにおける前記コラム番号の記憶部に、
    第1ファイル内の復元対象レコードにおける前記コラム
    番号以外のコラム番号の記憶部に格納されたデータが移
    動されてなり、 前記第2ファイル内の第1および第2レコードを除く前
    記復元非対象レコードにおける前記コラム番号の記憶部
    に格納されたデータを、前記第1ファイル内の前記復元
    対象レコードにおける前記コラム番号以外のコラム番号
    の記憶部に移動し、 前記第1ファイルの前記復元対象レコードおよび第2レ
    コードにおける前記コラム番号の記憶部に第1レコード
    の前記コラム番号の記憶部に格納されたデータを複写す
    る各ステップを備え、第1ファイルを圧縮した第2ファ
    イルを第1ファイルに復元するデータ復元方法を用いる
    請求項5に記載のソートマージ処理装置。
  8. 【請求項8】 前記圧縮手段は、 複数のコラムからなるフィールドを複数有してなり所定
    のフォーマットで作成されたレコードを複数有するファ
    イルを圧縮するデータ圧縮方法において、 前記ファイル内の各レコードの同一フィールド番号のデ
    ータが全て一致するフィールド番号を検索して記憶し、 検索された前記フィールド番号の数から前記ファイル内
    における圧縮可能なレコード数を算出し、 前記ファイル内のレコードの内、圧縮対象レコードと圧
    縮非対象レコードとを決定し、 前記圧縮非対象レコードの内、第1レコードのデータは
    そのまま記憶し、 第2レコードは前記フィールド番号を記憶するために使
    用し、 前記圧縮対象レコードにおける前記フィールド番号以外
    のフィールド番号の記憶部に格納されたデータを、第1
    および第2レコードを除く前記圧縮非対象レコードにお
    ける前記フィールド番号の記憶部に移動する各ステップ
    を備えたデータ圧縮方法を用いる請求項5に記載のソー
    トマージ処理装置。
  9. 【請求項9】 前記復元手段は、 複数のコラムからなるフィールドを複数有してなり所定
    のフォーマットで作成されたレコードを複数有する第1
    ファイルを圧縮した第2ファイルを第1ファイルに復元
    するデータ復元方法であって、 前記第1ファイルは、第1ファイル内の各レコードの同
    一フィールド番号のデータが全て一致するフィールド番
    号が検索され、 前記第2ファイルは、前記第1ファイル内の復元対象レ
    コードを除いたレコードからなり、第2ファイル内の復
    元非対象レコードにおける前記フィールド番号の記憶部
    に、第1ファイル内の復元対象レコードにおける前記フ
    ィールド番号以外のフィールド番号の記憶部に格納され
    たデータが移動されてなり、 前記第2ファイル内の第1および第2レコードを除く前
    記復元非対象レコードにおける前記フィールド番号の記
    憶部に格納されたデータを、前記第1ファイル内の前記
    復元対象レコードにおける前記フィールド番号以外のフ
    ィールド番号の記憶部に移動し、 前記第1ファイルの前記復元対象レコードおよび第2レ
    コードにおける前記フィールド番号の記憶部に第1レコ
    ードの前記フィールド番号の記憶部に格納されたデータ
    を複写する各ステップを備え、第1ファイルを圧縮した
    第2ファイルを第1ファイルに復元するデータ復元方法
    を用いる請求項5に記載のソートマージ処理装置。
  10. 【請求項10】 複数のレコードを格納する入力ファイ
    ルから順次レコードを受け、これらレコードをソートマ
    ージするソートマージ処理方法において、 所定数のレコード毎に所定のキーに従ってソートする第
    1ステップと、 ソートしたレコード群を第1バッファに蓄える第2ステ
    ップと、 前記第1バッファに蓄えられたレコード群を圧縮する第
    3ステップと、 圧縮されたレコード群を前記第1バッファから一時ファ
    イルに転送する第4ステップと、 転送された複数のレコード群を個別に前記一時ファイル
    から第2バッファに転送する第5ステップと、 前記第2バッファに蓄えられたレコード群を復元する第
    5ステップと、 復元した複数のレコード群をマージして1本のレコード
    列を生成する第6ステップと、 マージして生成された1本のレコード列を出力ファイル
    に出力する第7ステップと、を備えたことを特徴とする
    ソートマージ処理方法。
  11. 【請求項11】 前記ステップ3は、 複数のコラムからなり所定のフォーマットで作成された
    レコードを複数有するファイルを圧縮するデータ圧縮方
    法において、 前記ファイル内の各レコードの同一コラム番号のデータ
    が全て一致するコラム番号を検索して記憶し、 検索された前記コラム番号の数から前記ファイル内にお
    ける圧縮可能なレコード数を算出し、 前記ファイル内のレコードの内、圧縮対象レコードと圧
    縮非対象レコードとを決定し、 前記圧縮非対象レコードの内、第1レコードのデータは
    そのまま記憶し、 第2レコードは前記コラム番号を記憶するために使用
    し、 前記圧縮対象レコードにおける前記コラム番号以外のコ
    ラム番号の記憶部に格納されたデータを、第1および第
    2レコードを除く前記圧縮非対象レコードにおける前記
    コラム番号の記憶部に移動する各ステップを備えたデー
    タ圧縮方法を用いる請求項10に記載のソートマージ処
    理方法。
  12. 【請求項12】 前記ステップ5は、 複数のコラムからなり所定のフォーマットで作成された
    レコードを複数有する第1ファイルを圧縮した第2ファ
    イルを第1ファイルに復元するデータ復元方法であっ
    て、 前記第1ファイルは、第1ファイル内の各レコードの同
    一コラム番号のデータが全て一致するコラム番号が検索
    され、 前記第2ファイルは、前記第1ファイル内の復元対象レ
    コードを除いたレコードからなり、第2ファイル内の復
    元非対象レコードにおける前記コラム番号の記憶部に、
    第1ファイル内の復元対象レコードにおける前記コラム
    番号以外のコラム番号の記憶部に格納されたデータが移
    動されてなり、 前記第2ファイル内の第1および第2レコードを除く前
    記復元非対象レコードにおける前記コラム番号の記憶部
    に格納されたデータを、前記第1ファイル内の前記復元
    対象レコードにおける前記コラム番号以外のコラム番号
    の記憶部に移動し、 前記第1ファイルの前記復元対象レコードおよび第2レ
    コードにおける前記コラム番号の記憶部に第1レコード
    の前記コラム番号の記憶部に格納されたデータを複写す
    る各ステップを備え、第1ファイルを圧縮した第2ファ
    イルを第1ファイルに復元するデータ復元方法を用いる
    請求項10に記載のソートマージ処理方法。
  13. 【請求項13】 前記ステップ3は、 複数のコラムからなるフィールドを複数有してなり所定
    のフォーマットで作成されたレコードを複数有するファ
    イルを圧縮するデータ圧縮方法において、 前記ファイル内の各レコードの同一フィールド番号のデ
    ータが全て一致するフィールド番号を検索して記憶し、 検索された前記フィールド番号の数から前記ファイル内
    における圧縮可能なレコード数を算出し、 前記ファイル内のレコードの内、圧縮対象レコードと圧
    縮非対象レコードとを決定し、 前記圧縮非対象レコードの内、第1レコードのデータは
    そのまま記憶し、 第2レコードは前記フィールド番号を記憶するために使
    用し、 前記圧縮対象レコードにおける前記フィールド番号以外
    のフィールド番号の記憶部に格納されたデータを、第1
    および第2レコードを除く前記圧縮非対象レコードにお
    ける前記フィールド番号の記憶部に移動する各ステップ
    を備えたデータ圧縮方法を用いる請求項10に記載のソ
    ートマージ処理方法。
  14. 【請求項14】 前記ステップ5は、 複数のコラムからなるフィールドを複数有してなり所定
    のフォーマットで作成されたレコードを複数有する第1
    ファイルを圧縮した第2ファイルを第1ファイルに復元
    するデータ復元方法であって、 前記第1ファイルは、第1ファイル内の各レコードの同
    一フィールド番号のデータが全て一致するフィールド番
    号が検索され、 前記第2ファイルは、前記第1ファイル内の復元対象レ
    コードを除いたレコードからなり、第2ファイル内の復
    元非対象レコードにおける前記フィールド番号の記憶部
    に、第1ファイル内の復元対象レコードにおける前記フ
    ィールド番号以外のフィールド番号の記憶部に格納され
    たデータが移動されてなり、 前記第2ファイル内の第1および第2レコードを除く前
    記復元非対象レコードにおける前記フィールド番号の記
    憶部に格納されたデータを、前記第1ファイル内の前記
    復元対象レコードにおける前記フィールド番号以外のフ
    ィールド番号の記憶部に移動し、 前記第1ファイルの前記復元対象レコードおよび第2レ
    コードにおける前記フィールド番号の記憶部に第1レコ
    ードの前記フィールド番号の記憶部に格納されたデータ
    を複写する各ステップを備え、第1ファイルを圧縮した
    第2ファイルを第1ファイルに復元するデータ復元方法
    を用いる請求項10に記載のソートマージ処理方法。
  15. 【請求項15】 コンピュータに請求項1又は2に記載
    の各ステップを備えたデータ圧縮方法を実行させるため
    のプログラムを記録した媒体。
  16. 【請求項16】 コンピュータに請求項3又は4に記載
    の各ステップを備えたデータ復元方法を実行させるため
    のプログラムを記録した媒体。
  17. 【請求項17】 コンピュータに請求項10乃至14の
    何れか1項に記載の各ステップを備えたソートマージ処
    理方法を実行させるためのプログラムを記録した媒体。
JP34470797A 1997-01-31 1997-12-15 データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体 Expired - Fee Related JP4036514B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34470797A JP4036514B2 (ja) 1997-01-31 1997-12-15 データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP9-18658 1997-01-31
JP1865897 1997-01-31
JP34470797A JP4036514B2 (ja) 1997-01-31 1997-12-15 データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体

Publications (2)

Publication Number Publication Date
JPH10275105A true JPH10275105A (ja) 1998-10-13
JP4036514B2 JP4036514B2 (ja) 2008-01-23

Family

ID=26355370

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34470797A Expired - Fee Related JP4036514B2 (ja) 1997-01-31 1997-12-15 データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体

Country Status (1)

Country Link
JP (1) JP4036514B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9183320B2 (en) 2011-08-23 2015-11-10 Fujitsu Limited Data managing method, apparatus, and recording medium of program, and searching method, apparatus, and medium of program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9183320B2 (en) 2011-08-23 2015-11-10 Fujitsu Limited Data managing method, apparatus, and recording medium of program, and searching method, apparatus, and medium of program

Also Published As

Publication number Publication date
JP4036514B2 (ja) 2008-01-23

Similar Documents

Publication Publication Date Title
JP3217781B2 (ja) 多重レベルを利用するデータ圧縮
JP4261779B2 (ja) データ圧縮装置および方法
EP0293161B1 (en) Character processing system with spelling check function
JP3225638B2 (ja) データを圧縮するための装置及び方法並びにデータ処理システム
US20130103655A1 (en) Multi-level database compression
EP0471518A1 (en) Data compression method and apparatus
CN105653499A (zh) 用于单指令多数据处理器的高效硬件指令
KR0147355B1 (ko) 그래픽 영상 데이타 압축 방법
US6226411B1 (en) Method for data compression and restoration
US5710919A (en) Record compression
JPH0666050B2 (ja) ソート処理方法
US5623556A (en) System and method of extracting binary image data
JPH10275105A (ja) データ圧縮方法とデータ復元方法およびソートマージ処理装置とソートマージ処理方法およびこれら方法のプログラムを記録した媒体
JP3534471B2 (ja) マージソート方法及びマージソート装置
JPH0628149A (ja) 複数種類データのデータ圧縮方法
Linderman The UNIX system: Theory and practice in the construction of a working sort routine
Park et al. An algorithm for dynamic processing of DAWG's
JP2535655B2 (ja) 辞書検索方式
JP4152491B2 (ja) データ整列装置及び圧縮装置
JP2772124B2 (ja) 辞書検索方式
Bassiouni et al. Enhancing arithmetic and tree-based coding
JP2852253B2 (ja) データ検索装置
JPH04123619A (ja) データ圧縮及び復元装置
JPS5827240A (ja) フアイル記憶方式
JPH07101382B2 (ja) マ−ジ処理装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070320

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070626

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070827

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071030

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101109

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111109

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111109

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121109

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121109

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131109

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees