JPH0212463A - データ記憶検索システム - Google Patents

データ記憶検索システム

Info

Publication number
JPH0212463A
JPH0212463A JP1025963A JP2596389A JPH0212463A JP H0212463 A JPH0212463 A JP H0212463A JP 1025963 A JP1025963 A JP 1025963A JP 2596389 A JP2596389 A JP 2596389A JP H0212463 A JPH0212463 A JP H0212463A
Authority
JP
Japan
Prior art keywords
data
column
records
record
length
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
JP1025963A
Other languages
English (en)
Other versions
JPH07104868B2 (ja
Inventor
Virginia L Alexander
バージニア・リー・アレクサンダー
James L Gaudet
ジエームス・ルイス・ガウデツト
Ii Lloyd E Jordan
ロイド・ジユーゼン・ジヨーダン、セカンド
Raymond Hernandez
レイモンド・ヘルナンデス
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 JPH0212463A publication Critical patent/JPH0212463A/ja
Publication of JPH07104868B2 publication Critical patent/JPH07104868B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は総括的にコンピュータの分野に関するものであ
り、具体的には、データ記憶検索システムに関するもの
である。
B、従来技術 ウィンチエスタ・ハード・ディスクまたは51/4イン
チ・ディスケット等の記録媒体上に記憶されたデータの
記憶及び検索を容易にするデータベース管理プログラム
は、ディジタル・コンピュータ・システムでは周知であ
る。特に、コンピュータ及びそれらの関連周辺記憶装置
の大きさが小さくなったので、使用可能な記憶域を効率
的に使用することが望ましい。
データベース内のデータ様式は通常、種々の大きさの複
数のデータ・フィールドを含む。各フィールドの大きさ
は、固定長項目の場合はデータ項目内のバイトの数に等
しく設定され、可変長項目の場合はデータ項目の最大炎
に等しく設定される。
可変長データ項目の場合、または特定のフィールドにつ
いて項目が必ずしも、存在するとは限らない場合は、実
際に存在するデータ項目のみを収容するためフィールド
の大きさを縮小することにより、データを圧縮すること
ができる。
したがって、たとえば従業員名、社会保障番号、誕生日
等の連続したフィールドからなる従業員記録では、名前
フィールドが可変長であるのに対し、社会保障番号及び
誕生日のフィールドは固定長である。後の2つのフィー
ルドについては、社会保障番号をその各フィールドに入
力することが常に必要であるが、誕生日を含む必要はな
いことがある。したがって、これらのそれぞれのフィー
ルドのデータは以下の形態を取ることができる。
JOIIN E DOE/9876543211012
345MARY J POPPINS/1234567
891000000最初のフィールド、すなわち名前フ
ィールドは、いかなる長さの名前でも収容するのに十分
な長さでなければならず、2番目のフィールドは正確に
9文字の長さでなければならず、3番目のフィールドは
6文字の長さでなければならない。場合によっては、上
の例でOにより示すように、データが誕生日フィールド
に入力されないこともある。
これらのフィールドに配置されたこれらのデータ項目を
記憶するときは、実際に有用なデータのみを記憶するこ
とが望ましい。このことを実現するには、データベース
管理プログラムは、実際のデータが必要とするよりも大
きくならないように、記憶域内のフィールドの大きさを
変更しなければならない。記憶域内のデータ様式によっ
ては、このことは簡単な課題にもなることもあれば、非
常に難しい課題になることもある。
単純なデータ圧縮に適さないデータ様式の1つは、いわ
ゆる「関係データベース・テーブル」である。「関係デ
ータベース・テーブル」はデータ項目の2次元の配列、
すなわち行及び列を形成するデータ項目の配列である。
テーブルの各行は1つまたは複数の情報レコードからな
っている。各データ・レコードは、データ項目が配置さ
れた1つまたは複数のフィールドからなっている。これ
らのフィールドが社会保障番号、誕生日等の異なる属性
を有していてもかまわないし、またフィールドのグルー
プが特定のパラメータに対する統計資料グループ等の同
じ属性を有していてもかまわない。テーブルの列はすべ
てのレコードで同じフィールドである。1つの列に対す
るすべてのデータ項目は同じデータ・タイプでなければ
ならない(整数、浮動小数点数、固定長文字、可変長図
形等)。
したがって、テーブル内の特定のデータ項目はすべて正
確に1行及び1列に属し、そのようなものとして配置す
ることが可能である。
関係テーブルの一般的な使い方は、同種のデータ・オブ
ジェクトの集合を記述することである。
行はオブジェクトの単一の事例(インスタンス)を示し
、列はそのオブジェクトに関する記述データ属性である
。たとえば、従業員を記述するデータのテーブルは、名
前、社会保障番号、誕生日等に関する列値によって各従
業員に対して定義された行を含むことができる。
したがって、関係テーブル内のr列」を、テーブルの垂
直次元の1単位として定義することができる。列は通常
、列ロケーシヨンを有する全データ項目に適用される特
定のデータ属性を有する。
データ・ 「フィールド」に類似した列がテーブルのす
べての行に適用可能である。
関係テーブルの「行」をテーブルの水平次元の1単位と
して定義することができる。行はテーブルの各列からの
データ項目を含むが、データ項目は行及び列ロケーシロ
ンのあるものから失われる可能性がある。すべての列は
すべての行について同じ順序であるものと見なされる。
したがって、行は非関係データベース内の「レコード」
と類似している。
テーブル内の行の順序についての前提は何もない。テー
ブルの行を異なった方法で論理的に規定するため、イン
デックスをユーザが作成することができ、したがって、
各インデックスは別の順序を定義する。したがって、「
インデックス」という用語を、昇順または降順の指定を
有するテーブル内の列の集合として定義することができ
る。−度定義されると、インデックスはデータベース管
理プログラムにより内部的に維持される。インデックス
は、データを操作または検索するためのユーザ要求では
決して参照されることはないが、順次ファイル検索によ
るよりも既存のインデックスを使用したアクセスの方が
速いと判断されるときに、内部的に使用される。
インデックスはいつでも作成することができ、いつでも
除去することができる。テーブルに対して何らかのイン
デックスが存在する必要性はない。
「基本テーブル」は、実データとして記録媒体上に物理
的に記憶される関係テーブルである。
「視点」 (ビュー)は、物理的記憶域には存在しない
が、1つまたは複数の基本テーブルから得られる関係テ
ーブルである。
この形式のデータが与えられると、「データベース」を
関係テーブル、カタログ・テーブル及び回復ログの集合
として定義することができる。データベースを、たとえ
ば、単一のO8/2フアイル・システム内にあるものと
限定することができる。
この限定は、すべてのカタログ及び回復機能を、任意の
データについて、その制御下で任意の時点で実行するこ
とが可能であることを保証する。データベースはハード
・ファイルまたはディスケットに記憶することができる
。多数のデータベースを単一のO8/2フアイル・シス
テム上に置くことができる。
本発明を理解するため必要なもう1つの用語は、データ
ベースのいわゆる「コードページ」環境である。「コー
ドページ」は変換テーブル、すなわち印刷装置、表示装
置またはその他の入出力装置により作成される文字表示
へのバイト・セット(256バイトある)のマツピング
として定義することができる。周知のコードページには
、EBCDIC文字セット(拡張2進化10進コード)
の他に、ASCII(情報交換用米国標準コード)IB
M米国コードベージ437及び国際コードベージ850
がある。
あるデータベースと別のデータベースの間でデータを交
換する際は、必要な場合には、あるコードページから別
のコードページにデータの保全性を維持することができ
るように、データのコードページを知り、追跡すること
が必要である。しかし、交換方法はまた、原始データベ
ース上にある構造を目標データベース上で作成すること
を可能とするものでなければならない。このことは、テ
ーブル名、列名、列タイプ及びインデックスを交換の一
部として移さなければならないことを意味する。
C0発明が解決しようとする問題点 本発明の主な目的は、使用可能記憶域の効率的使用によ
り、関係データベースを記録媒体上に記憶することを可
能にする、データベース管理システムで使用するための
交換様式を提供することである。
本発明のさらに具体的な目的は、データ項目が空白であ
るか、またはその最大長よりも短かいときにファイル圧
縮を可能にする関係データベース・テーブル用のファイ
ル様式を提供することである。
本発明のさらに具体的な目的は、データベース間での関
係テーブルの内容の交換のためのファイル様式を提供す
ることである。
D1問題点を解決するための手段 これらの目的は、本発明によれば、以下からなる関係テ
ーブル・ファイル様式で、(1)データを記録媒体に伝
送するか、または(2)データを記録媒体に記憶し、か
つそこから検索することによって達成される。
(1)複数のデータ(rDJ )レコード。各Dレコー
ドは可変長であり、連続して順次配置された、特定の行
に対する項目を含み、それにより、各Dレコード内の各
データ項目が別々の列に配置された複数のデータ行及び
列を形成し、1つのデータ行当り少なくとも1つのDレ
コードがあり、テーブルの各行には一定数のDレコード
がある。
(2)複数の列記述子(rcJ )レコード。各Cレコ
ードは1つのテーブル列と関連づけられ、さらに以下を
指定する。
(i)  それぞれのCレコードと関連づけられた上記
列の識別、 (ii )上記の関連した列に置かれるデータ項目を含
むテーブル行内の関連Dレコードの識別。
(iii )データ・タイプにより数が暗示されていな
い場合は、上記関連列でデータ項目を形成する文字の最
大数、及び (iv )上記関連Dレコード内の関連列の開始位置。
すべての列記述子(rcJ )レコードが、伝送または
記憶/検索中、連続配置レコードにおけるデータ(rD
J )レコードに先行するのが好ましい。
列記述子(rcJ )レコードはデータ(rDJ )レ
コード及び位置を昇順で含んでいなければならないが、
列記述子レコード自体はどのような順序で配置してもか
まわない。
このテーブル・ファイル様式により、1行分のデータ内
に列に対するデータを配置するため、2つのフィールド
が列記述子(rcJ ) L/:I−ト(7)各々に設
けられる。すなわち、どのデータ(rDJ )・レコー
ドが(1行のデータからなる幾つかのデータ・レコード
の内の)この列に対するデータを含むかを指定するデー
タ・レコード識別子及び1行のデータの一部である。以
前に選択されたデータ・レコード内に、列に対するデー
タを配置するため使用されるデータ・レコード位置であ
る。したがって、このレコード位置は、特定のデータ・
レコード内でのそれぞれの列に対するデータ項目の絶対
変位を示す。
このファイル様式はまたCレコード内で、関連の列(列
名)、ならびにデータ・タイプ、データ精度、データ空
白可能度及びコードページ環境等のこの列の属性の識別
を可能にする。したがって、各列のこれらの属性はすべ
てテーブルに一度だけ記憶される。さらに、この様式は
その他の列属性を含めるため、容易に拡張可能である。
好都合にも、このファイル様式は、あるデータベースか
ら別のデータベースにデータを転送するときに、データ
ベースのデータのいかなる変換も生じさせないので、こ
のファイル様式によるデータ消失の問題は全くない。強
制的な変換がないことは、同様なシステム間でデータ交
換が行なわれるとき、処理を最小限にする傾向がある。
一般に、上記のファイル様式を使用すると、どのような
列も、そのデータ・レコード内の最後の列であれば、圧
縮可能である。このことは、任意の可変長または空白可
能データ・フィールドの後に新しいデータ・レコードを
開始することにより実現される。このフィールドの始ま
りは、列記連子レコー・ドにより識別され、一方、この
フィールドの終わりは、「D」レコード内における先行
する空白標識ないし長さ標識により識別される。
任意の定数よりも長い最大長さを有する空白可能または
可変長フィールドのみが圧縮されることが好ましい。た
とえば、そのような定数を、サポートされる任意の数値
の最長の長さに等しくすることができる。非常に長くな
る可能性があるものと認識された可変長フィールドは(
たとえば、rLONG VARCHARJ及びrLON
G VARGRAPHICJにより)それら自身の専用
データ・レコードを各々占有することができる。
列記述子(rcJ )及びデータ(rDJ )・レコー
ドに加えて、関係テーブルはヘッダ(rHJ )・レコ
ード、テーブル(rTJ)  ・レコード、インデック
ス(rAIJ)・レコード及び終了(rAEJ )レコ
ード等の他のレコードを含むことができる。H,T及び
AIレコードは、以下に詳細に考察するように、各々幾
つかの情報項目を指定することができる。AEレコード
は、テーブルの終わりのHを指定するのが好ましい。
レコード長フィールドがすべてのレコード(Hレコード
、Tレコード、Cレコード、Dレコード、AIレコード
及びAEレコード)の始めに付加される。Cレコードは
記録媒体上における順次配置レコード内のDレコードに
先行する。
単一バイト及び2バイト・コードページ・フィールドが
、テーブル・ファイルを開始するHレコードに付加され
る。単一バイト及び2バイト・コードページ・フィール
ドはCレコードにも含まれる。
Hレコード内のコードページ・フィールドはテーブル内
の文字データのコードページを指定するが、以下の2つ
の例外の可能性がある。
(1)データ・レコードのデータ部分内の列データ、及
び (2)その他のアプリケージ日ン固有レコード内のデー
タ。
文字(及び図形)列のCレコード内のコードページ・フ
ィールドは、それぞれの列に対するデータのコードペー
ジを指定する。「ピット・データ」の文字列は、ビット
・データが印刷時に文字に変換されないことを示すため
、その単一または2バイト・コードページに対して0を
存することができる。
これらのコードページ識別フィールドは、ホスト自コン
ピュータとパーソナル・コンピュータの間のデータベー
ス・データの移行について責任を負うプログラムが、ど
のフィールドに文字変換が適用されるのかを識別するこ
とを可能にする。また、あるデータベースから別のデー
タベースにデータを移行するとき、ユーザが選択を行な
うことを可能とする。たとえば、異なるコードページ環
境から現われるデータをユーザが受は入れるか、または
拒絶することを可能にする。
本発明を完全に理解するため、本発明の好ましい実施例
についての以下の詳細な説明及び添付の図面を次に参照
するべきである。
E、実施例 次に、図面の第1図ないし第6図に関連して本発明の好
ましい実施例について説明する。
第1図は本発明の概略的なコンピュータ・ハードウェア
環境を示す。本発明は単一のパーソナル・コンピュータ
、情報を交換するため互いに接続された2台以上のパー
ソナル・コンピュータ、または、第1図に示すように、
互いに接続され、かつIBM370システム等のホスト
・コンピュータに接続された2台以上のパーソナル・コ
ンピュータ上に存在することができる。第1図は、大型
ディスク記憶ファイル12と動作するホスト・コンピュ
ータ10を示す。第1のパーソナル・コンピュータ14
と第2のパーソナル・コンピュータ16が、データ及び
制御情報を伝送する複数の線18及び20をそれぞれ介
して、ホスト・コンピュータ10に接続される。2台の
パーソナル・コンピュータはまたデータ及び制御線22
を介して互いに接続されている。
本発明のデータベース環境は、第2図に示す形態を取る
ことができる。この場合は、PS/2パーソナル・コン
ピュータは、関係テーブル構造及びデータの交換を可能
にする統合交換様式(IXF)データ交換ソフトウェア
を変形したO8/2拡張版データベース・マネージャで
動作する。文字データは、IBMASCIIコードペー
ジ4コードページ環境−ドページ環境における1つまた
は複数のデータベースに記憶される。数字及び87時デ
ータは、基本オペレーティング・システム及びハードウ
ェアがサポートする様式で内部的に記憶される。
詳細にいえば、データベース・マネージャは、すべての
データがテーブルの集合と見なされるようになった関係
データベース・モデルをサポートするデータベース管理
システム(ハードウェア及びソフトウェア)である。デ
ータベース・マネージャは、以下で説明する「データベ
ース・サービス」と呼ばれる関係コマンド・プロセッサ
、別のコンピュータ・システムからデータを搬入し、か
つ別のコンピュータ・システムにデータを搬出するため
のシステム、及び個々の関係データベース・テーブルの
バックアップ及び復元とテーブル維持のためのシステム
を提供する。
データベース・サービスはデータベース・マネージャの
関係コマンド・プロセッサである。データベース・サー
ビスは多数の機能を提供するものであって、これらの機
能には、記憶アクセスのためのシステム、構造化照会言
語(SQL)ステートメント処理、データベース管理、
ロック管理、競合管理、先行書込みロギング、回復サー
ビス、行レベル・ロッキング細分性、アプリケーション
、システムまたは記録媒体が故障した場合のデータ回復
、及び安全保護制御がある。
PC/IXFアーキテクチャは、受信側(ハードウェア
及びソフトウェア)データベース・システムの要件及び
特質を予想する必要性なしに、データベース・サービス
がデータベースを搬出することを可能にする。同様に、
PC/IXFファイルを搬入するデータベース・システ
ムはPC/IXFアーキテクチャを理解するだけでよく
、ファイルを搬出したシステムの特性は関係ない。PC
/IXFファイル・アーキテクチャはデータベース・シ
ステムの搬出及び搬入の両方の独立性を維持する。
IXFアーキテクチャは、総称関係データベース交換様
式として、多分特定の関係データベース・プロダクトに
よりサポートされない幾つかのデータ・タイプを含む大
きな関係データ・タイプ・セットをサポートすることが
好ましい。PC/IMFファイル様式はこの融通性を保
持する。たとえば、PC/IXFアーキテクチャは単一
バイト及び2バイト両方のストリング・データ・タイプ
をサポートする。すべてのデータベース・システムがす
べてのPC/IXFデータ・タイプをサポートするわけ
ではないが、限定されたデータ・システム実施例でさえ
、搬入中に、サポートされていないデータ・タイプの検
出及び後処理をもたらす。
以下では、特にPC/IXFと関連して本発明について
説明するが、本発明の教示するところはPC環境のみに
限定されるものではない。具体的には、本発明はPCに
対する機械依存性はなく、IBM社のPS/2及びRT
コンピュータ、中型コンピュータ等のその他のコンピュ
ータでの使用に適合させることができる。
同様に、O8/2オペレーテイング・システムと関連し
て本発明は説明するが、本発明はこれに限定されるもの
ではなく、周知のオペレーティング・システムのどのよ
うなものでの使用にも適合させることができる。O8/
2、O8/2拡張版、O8/2EE、PS/2及びRT
はIBM社の商標である。
第3図は、典型的な連系データベース・テーブルを示す
。このようなテーブルを含むファイルは、ファイル/レ
コード/フィールドまたは関係/集合/属性に対立する
ものとしてのテーブル維持/列という用語を使用する。
明らかなように、テーブル名は「都市」である。テーブ
ルは各都市にっき1行ずつの複数の水平行を含み、各行
は複数の情報フィールドからなる。これらの情報フィー
ルドは各情報フィールドにつき1列ずつの垂直列に配置
されている。
実際には、関係テーブルの各行に含まれるデータ・レコ
ードは、第4図に示す方法で選択される。
この図は、Dレコードを第3図のテーブル内で割り振る
ための可能な方式を示す。各列の最上部には、列名とこ
の列に含まれるデータのタイプが示される。データ・タ
イプはデータ・タイプの規定されているセットから選択
される。これらのデータ・タイプは、たとえば、以下を
含む。
INTEGER: −2147483848と+214
7483647の間のすべての数を表わす4バイトの整
数。
VARCIIAR:可変長文字ストリング。ストリング
の最大長(バイト)は254バイトを超えることはでき
ない。ストリングは、この列に対して規定されたコード
ページにある。
CIIAR: 254バイトの最大ストリング長を有す
る固定長文字ストリング。ストリングは、この列に対し
て規定されたコードページにある。
LONGVARCHAR: 32767 ハイ)を超エ
ルコトができない可変長文字ストリング。このストリン
グは、この列に対して指示されたコードページにある。
ストリング自体の前には、ストリングの長さをバイトで
指定する2バイトの整数である現在長標識が付けられる
SMALLINT : −32788と+32767の
間のすべての数を表わす2バイトの整数。
FLOATING POINT : IEEE様式の良
精度(8バイト)または短精度(4バイト)浮動小数点
数のいずれか。
GRAPHIC: 127を超えることができない2バ
イト文字の固定長ストリング。ストリングは、この列に
対して指定されたコードページにある。
VARGRAPHIC:最大数が127を超えることが
できない2バイト文字の可変長ストリング。このVAR
GRAP)IIc データに対するコードページは、そ
の列に対して指定された通りである。
本発明に従って記憶データの圧縮も可能にするため、行
データは、1.2及び3の番号を付された別々のデータ
(rDJ )・レコード(この事例では3個)に分割さ
れる。各Dレコードは可変長フィールド(列)または、
データを含まなくてもよい(空白)フィールド(列)の
いずれかで終了する。このようにして、特定の行におけ
るデータ・レコードは、それらの最後のフィールドに含
まれる実際のデータにとって必要な大きさよりも長い必
要はない。
上で説明したように、本発明によるファイル様式は、関
連するDレコード識別番号(1,2,3等)及び関連す
るDレコード位置を指定する列記述子(「C」)レコー
ドを含む。Dレコード位置は、列の始めに対するDレコ
ードのデータ域部分内にバイト変位として記憶される。
一般にそのデータベース・サービスにより書き込まれる
か、または読み取られるPC/IXFファイル、または
データベース・サービスの出力は連続した一連の可変長
レコードからなる。ファイルは、所定の順序で以下のレ
コード・タイプを含む。
1つのヘッダ(rHJ ’)・レコード、1つのテーブ
ル(rTJ ”)・レコード、複数の列記述子(「C」
)・レコード(テーブル内の各データ列ごとにルコード
)、 複数のデータ(rDJ)・レコード(テーブルの各行は
1つまたは複数のrDJレコードにより表わされる)、
及び 011または複数のインデックス(rAIJ)・レコー
ド(各インデックスはテーブルから定義される)、及び 1つの終了(rAEJ )・レコード。
PC/IXFファイルはまた、rHJレコードの後のど
こにでもアプリケーション固宵(rAJ )レコードを
含むことができる。これらのrAJレコードはPC/I
XFファイルで、アプリケージ日ンが、PC/IXF様
式により定義されない追加データをPC/IXFファイ
ルに含むことができるようにすることができる。たとえ
ば、テーブルのインデックスを記憶するため、もしくは
単一■XFファイルの複数ディスケット記憶を可能にす
るため、「A」レコードを使用することができる。
rAJレコード内のアプリケ−シロン識別子により暗示
されるデータ様式及び内容に関する特定の知識を持たな
いPC/IXFファイルを読むあらゆるプログラムは、
「A」レコードを無視する。
次のテーブルでは、各々の特定レコードは、各々がフィ
ールド名を与えられた一連のフィールドとして記述され
ている。各レコードについて、これらのフィールドは定
義された長さであり、示された順序で現われねばならな
い。
ヘッダ・レコード フィールド名   フィールド長(バイト)レコード長
         06 レコード・タイプ=rHj   01 1XF識別子        03 IXFバ一ジ日ン     04 ソフトウェア・プロダクト  12 書かれた日付        08 書かれた時間        06 ヘツデイング・       05 レコード・カウント 単一バイト・コードページ  05 2バイト書コードページ   05 予約            02 テーブル・レコード フィールド名    フィールド長(バイト)レコード
長         06 レコード・タイプ=rTJ   01 名前長          02 データの名前(テーブル名)18 修飾子           08 データ・ソース       12 デ一タ規則=rCJ      01 デ一タ様式= rMJ      O1機械様式= r
PcJ      05データ・ロケーシヨン    
01 =「I」 「C」レコード・カウント  05 予約            02 データ記述         30 列記述子レコード レコード長 レコード・タイプ=「Cj 列名長 列名 列は空白を許容する 列はフラッグを選択した 主要な列フラッグ データ・クラス データ・タイプ 単一バイト・コードページ 2バイト・コードページ 列データ長 rDJレコード識別子 列位置 列記述 次元数 各次元の大きさ 工8 可変 データ・レコード フィールド名    フィールド長(バイト)レコード
長         06 レコード・タイプ==r[)J   01rDJレコー
ド識別子   03 予約            04 列データ零         可変 傘空白標識値及び可変長フィールドの長さを含む。
アプリケーション・レコード フィールド名    フィールド長(バイト)レコード
長         06 レコード・タイプ=rAJ   ot アプリケージ日ノン識別子  12 アプリケージ目ン固有データ可変 これらのレコードは、第5図に示す順序でファイル内に
配置される。アプリケーシヨン・レコードは他の任意の
2つのレコード・タイプの間に配置することができる。
第6A図及び第6B図は、PC/IXFファイルを記録
媒体上に書き込むためデータベース・ユーティリティが
どのように動作するかを示す。レコードからデータを読
み取るための処理は、書込みの手順と同様である。
テーブルを記憶する最初のステップは、原始データベー
スのコードページ環境を含むHレコードを書くことであ
る。その後、Tレコードが生成され、記録媒体上に書き
込まれる。Tレコードに続いて、Cレコードが1つずつ
書き込まれる。上で説明したように、これらのCレコー
ドは各々1列のテーブル列に関連づけられ、さらに以下
を指定する。
(1)データ・タイプ等、それぞれのCレコードと関連
した列の識別及び規定の属性、 (2)関連した列に配置されるデータ項目を含むテーブ
ル列における関連したDレコードの識別、(3)データ
・タイプにより数が暗示されていない場合は、関連した
列におけるデータ項目を形成する最大数の文字、 (4)関連したDレコード内の関連した列の位置。
すべてのCレコードが書き込まれた後、プログラムはテ
ーブル内の各々の連続杆について個々のDレコードの書
込みを始める。Dレコードは、テーブル内のデータが要
求するように、可変長である。
各Dレコードの最後のフィールドは行内の最後の列か、
または可変長データ項目か、または空白にすることが可
能なデータ項目のいずれかを含む列のいずれかであるこ
とが好ましい。
第6B図から明らかなように、アルゴリズムはまず、す
べてのデータ行が書き込まれたかどうか質問し、書き込
まれていない場合は、現在の行内のすべてのDレコード
が考慮されたかどうか質問する。書き込むべきDレコー
ド及び行が他にない場合は、プログラムはインデックス
もしくは終了レコード等の同じアプリケーション固有情
報を書き込み、次にテーブルの終わりに終了(rAEJ
 )レコードを書き込むことができる。さらにDレコー
ドが書き込まれる場合は、プログラムは現在のDレコー
ドの最後の列を探し、次に、バッファに記憶された列デ
ータからDレコードの大きさを計算する。これは、バッ
ファ内の最後の有意データの終わりに基づく変数である
。−度大きさが計算されると、Dレコードが記録媒体に
書き込まれ、プログラムは現在の行における次のDレコ
ードについて処理を繰り返し、その後で、次の後続行に
おける最初のDレコードについて処理を繰り返す。
F0発明の効果 要するに、本発明のファイル様式は多くの点で従来技術
よりも優れている。最初の空白フィールドまたは最大サ
イズよりも小さい可変長フィールドは圧縮可能である。
列属性のさらに他の記憶は多くの理由で理想的である。
各列の属性は正確に一度記憶される。すべての属性(列
名、列タイプ、精度、長さまたは最大長、空白可能性、
コードページ)を記憶することができ、様式はその他の
列属性に対して容易に拡張可能である。また、すべての
関係タイプがサポートされ、様式は新しいタイプに対し
て容易に拡張可能である。
本発明のさらに他の肯定的な特徴には、データベース・
データの強制変換がないので、様式に起因するデータ消
失の問題はなく、類似システム間でデータ変更があると
きに処理時間が最小にされるということがある。さらに
、コードページ識別フィールドは、異なるコードページ
環境からのデータを受は入れるか、または拒絶するため
のユーザの選択を可能にする。その他のアプリケージ日
ン固存レコードに対するサポートは、その他のアプリケ
ーション固有(A)レコードの包含等の利益をさらにも
たらす。そのようなレコードは、たとえば、テーブルの
インデックスを記憶するため使用することができ、さら
に、単一PC/IXFファイルの複数ディスケット記憶
を可能にすることができる。
【図面の簡単な説明】
第1図は、ホスト・コンピュータ及び2台のパーソナル
・コンピュータからなる小ネットワークを示すブロック
・ダイヤグラムである。 第2図は、データベース管理プログラム及び2つの独立
したデータベースをサポートするオペレーティング令シ
ステムを使用したパーソナルΦコンピュータ・システム
のブロック・ダイヤグラムである。 第3図は、関係テーブルに配置することができるデータ
の一例である。 第4図は、異なるデータ・タイプの列と異なる長さのデ
ータ・レコードを含む関係テーブルの特定の例である。 第5図はPC/IXFファイル内のレコードの配置を示
すチャートである。 第6A図及び第6B図(ひとまとめにして)は、PC/
IXFファイルを書くための流れ図である。 10・・・・ホスト・コンビエータ、12・・・・ディ
スク記憶装置、14.18・・・・パーソナル・コンビ
エータ。 出願人  インターナショナル−ビジネス・マシーンズ
・コーポレーシヨン 復代理人 弁理士  澤  1) 俊  夫葛4図 ′$6A図

Claims (1)

  1. 【特許請求の範囲】 データを記憶するための記録媒体と、 上記記録媒体上に記憶される関係データ・テーブルとか
    らなり、 上記テーブルが、複数のテーブル行と複数のテーブル列
    の交点に配置された複数のデータ項目からなり、上記テ
    ーブルが、連続して直列に配置された複数のレコードを
    含み、 上記レコードが、つぎの(a)及び(b)のレコードを
    含むようにしたことを特徴とするデータ記憶検索システ
    ム。 (a)複数のデータ・レコード 上記データ・レコードの各々は可変長であり、かつ連続
    して順次に配置された、特定の行に対するデータ項目を
    含む。各データ・レコードの各データ項目は別個の列に
    属し、複数のデータ・レコードにより複数のデータ行及
    び列を形成する。 1つのデータ行当り少なくとも1つのデータ・レコード
    があり、一定数のデータ・レコードが上記テーブルの各
    行にある。 (b)複数の列記述子レコード 上記列記述子レコードの各々は1つのテーブル列と関係
    付けられるとともに、 (i)それぞれの列記述子レコードと関連した上記列の
    識別、 (ii)上記の関連した列に置かれるデータ項目を含む
    テーブル行における関連データ・レコードの識別、 (iii)上記データ項目におけるデータ・タイプによ
    り数が暗示されていない場合は、上記の関連した列にお
    けるデータ項目を形成する最大数の文字、及び (iv)上記の関連したデータ・レコード内の関連した
    列の開始部分を指定する。
JP1025963A 1988-04-08 1989-02-06 データ記憶検索システム Expired - Lifetime JPH07104868B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17931688A 1988-04-08 1988-04-08
US179316 1988-04-08

Publications (2)

Publication Number Publication Date
JPH0212463A true JPH0212463A (ja) 1990-01-17
JPH07104868B2 JPH07104868B2 (ja) 1995-11-13

Family

ID=22656055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1025963A Expired - Lifetime JPH07104868B2 (ja) 1988-04-08 1989-02-06 データ記憶検索システム

Country Status (4)

Country Link
US (1) US5414834A (ja)
EP (1) EP0336586A3 (ja)
JP (1) JPH07104868B2 (ja)
BR (1) BR8901642A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007130521A (ja) * 2005-11-08 2007-05-31 Before After:Kk スプレー装置
JP2011505606A (ja) * 2007-10-25 2011-02-24 マイクロソフト コーポレーション 表形式データストリームプロトコルの行におけるヌル列の圧縮

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03127122A (ja) * 1989-10-12 1991-05-30 Fujitsu Ltd データ処理装置における演算処理方式
JPH03130874A (ja) * 1989-10-17 1991-06-04 Fujitsu Ltd リレーショナル・データベースの検索処理方式
FR2655442A1 (fr) * 1989-12-04 1991-06-07 Gabelus Jean Claude Dispositif de memorisation stockant une base de donnees relationnelle.
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5687397A (en) * 1993-02-26 1997-11-11 Sony Corporation System for expansion of data storage medium to store user data
US5918225A (en) * 1993-04-16 1999-06-29 Sybase, Inc. SQL-based database system with improved indexing methodology
FR2707775B1 (fr) * 1993-07-12 1996-04-12 Duret Chrsitian Procédé et dispositif d'analyse d'informations contenues dans des structures de données.
US5546573A (en) * 1993-10-27 1996-08-13 International Business Machines Corporation Specification of cultural bias in database manager
JP3526595B2 (ja) * 1993-10-29 2004-05-17 富士通株式会社 情報管理機構
AUPM813394A0 (en) * 1994-09-14 1994-10-06 Dolphin Software Pty Ltd A method and apparatus for preparation of a database document in a local processing apparatus and loading of the database document with data from remote sources
US5721915A (en) * 1994-12-30 1998-02-24 International Business Machines Corporation Interaction between application of a log and maintenance of a table that maps record identifiers during online reorganization of a database
US5729730A (en) * 1995-03-28 1998-03-17 Dex Information Systems, Inc. Method and apparatus for improved information storage and retrieval system
US5675784A (en) * 1995-05-31 1997-10-07 International Business Machnes Corporation Data structure for a relational database system for collecting component and specification level data related to products
DE19538448B4 (de) * 1995-10-16 2006-04-06 Logic Data Gmbh Datenbankmanagementsystem sowie Datenübertragungsverfahren
US5778359A (en) * 1996-04-18 1998-07-07 Davox Corporation System and method for determining and verifying a file record format based upon file characteristics
US5946691A (en) * 1996-05-15 1999-08-31 Microsoft Corporation Method of presenting, storing, and updating a filing identifier for a data record
US20050015411A1 (en) * 1996-06-27 2005-01-20 Gerald Altman Systems, processes, and products for storage and retrieval of electronic files
US5778375A (en) * 1996-06-27 1998-07-07 Microsoft Corporation Database normalizing system
US20040059742A1 (en) * 1996-06-27 2004-03-25 Gerald Altman Database systems and processes for storage and retrieval of electronic and related documents
US5999928A (en) * 1997-06-30 1999-12-07 Informix Software, Inc. Estimating the number of distinct values for an attribute in a relational database table
US7076507B1 (en) 1998-07-08 2006-07-11 Required Technologies, Inc. Value-instance-connectivity computer-implemented database
US6009432A (en) * 1998-07-08 1999-12-28 Required Technologies, Inc. Value-instance-connectivity computer-implemented database
US6513041B2 (en) 1998-07-08 2003-01-28 Required Technologies, Inc. Value-instance-connectivity computer-implemented database
US6381616B1 (en) * 1999-03-24 2002-04-30 Microsoft Corporation System and method for speeding up heterogeneous data access using predicate conversion
US6622142B1 (en) * 1999-04-13 2003-09-16 Staktek Group, L.P. Database utilities
US6532476B1 (en) 1999-11-13 2003-03-11 Precision Solutions, Inc. Software based methodology for the storage and retrieval of diverse information
US6618822B1 (en) * 2000-01-03 2003-09-09 Oracle International Corporation Method and mechanism for relational access of recovery logs in a database system
US6631374B1 (en) * 2000-09-29 2003-10-07 Oracle Corp. System and method for providing fine-grained temporal database access
US8161081B2 (en) 2001-03-16 2012-04-17 Michael Philip Kaufman System and method for generating automatic user interface for arbitrarily complex or large databases
CA2427354A1 (en) * 2000-10-31 2002-08-01 Michael Philip Kaufman System and method for generating automatic user interface for arbitrarily complex or large databases
FR2833094B1 (fr) * 2001-11-30 2004-01-30 Penbase Dispositif informatique du type pda pour le stockage et la gestion de bases de donnees relationnelles
US7496599B2 (en) * 2002-04-30 2009-02-24 Microsoft Corporation System and method for viewing relational data using a hierarchical schema
EP1504377B1 (en) * 2002-05-10 2011-06-22 Oracle International Corporation Storing and querying relational data in compressed storage format
US7103608B1 (en) * 2002-05-10 2006-09-05 Oracle International Corporation Method and mechanism for storing and accessing data
US7058783B2 (en) * 2002-09-18 2006-06-06 Oracle International Corporation Method and mechanism for on-line data compression and in-place updates
US7133885B2 (en) * 2002-11-26 2006-11-07 International Business Machines Corporation Database management system using offsets in entries with at least one varying-length column
WO2005004000A1 (fr) * 2003-06-04 2005-01-13 M-Penbase Dispositif informatique du type pda pour le stockage et la gestion de bases de donnees relationnelles
US20040268419A1 (en) * 2003-06-24 2004-12-30 Microsoft Corporation Interactive content without embedded triggers
JP2005216203A (ja) * 2004-02-02 2005-08-11 Mantaro Yajima 表フォーマットデータ処理方法並びに表フォーマットデータ処理装置
US7711750B1 (en) 2004-02-11 2010-05-04 Microsoft Corporation Systems and methods that specify row level database security
US7661141B2 (en) * 2004-02-11 2010-02-09 Microsoft Corporation Systems and methods that optimize row level database security
US7499953B2 (en) * 2004-04-23 2009-03-03 Oracle International Corporation Online recovery of user tables using flashback table
US7587396B2 (en) * 2004-11-24 2009-09-08 Oracle International Corporation Encoding data to be sorted
US7680791B2 (en) * 2005-01-18 2010-03-16 Oracle International Corporation Method for sorting data using common prefix bytes
US7676797B2 (en) * 2005-01-31 2010-03-09 Computer Associates Think, Inc. System and method for managing long names in an application programming interface
US7536398B2 (en) * 2005-03-29 2009-05-19 Is Technologies, Llc On-line organization of data sets
US8326877B2 (en) * 2005-05-04 2012-12-04 Microsoft Corporation Region-based security
US7496589B1 (en) * 2005-07-09 2009-02-24 Google Inc. Highly compressed randomly accessed storage of large tables with arbitrary columns
US7567973B1 (en) 2005-08-05 2009-07-28 Google Inc. Storing a sparse table using locality groups
US7668846B1 (en) 2005-08-05 2010-02-23 Google Inc. Data reconstruction from shared update log
US7548928B1 (en) 2005-08-05 2009-06-16 Google Inc. Data compression of large scale data stored in sparse tables
US8484351B1 (en) 2008-10-08 2013-07-09 Google Inc. Associating application-specific methods with tables used for data storage
US20120323971A1 (en) * 2011-06-14 2012-12-20 Sybase, Inc. Optimizing data storage and access of an in-memory database
US10909113B2 (en) 2013-07-31 2021-02-02 Sap Se Global dictionary for database management systems
US9659050B2 (en) 2013-08-06 2017-05-23 Sybase, Inc. Delta store giving row-level versioning semantics to a non-row-level versioning underlying store
CN105279171B (zh) * 2014-06-27 2018-11-27 国际商业机器公司 在压缩的可变长度字符串上进行谓词评估的方法和设备
CN107273430B (zh) * 2017-05-16 2021-05-18 北京奇虎科技有限公司 一种数据存储方法和装置
CN107291951B (zh) * 2017-07-24 2020-09-29 北京都在哪智慧城市科技有限公司 数据处理方法、装置、存储介质和处理器

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3938100A (en) * 1974-06-07 1976-02-10 Control Data Corporation Virtual addressing apparatus for addressing the memory of a computer utilizing associative addressing techniques
US4128891A (en) * 1976-12-30 1978-12-05 International Business Machines Corporation Magnetic bubble domain relational data base system
US4221003A (en) * 1978-05-04 1980-09-02 International Business Machines Corporation Bubble domain relational data base system
JPS583031A (ja) * 1981-06-30 1983-01-08 Fujitsu Ltd リレ−シヨナル・モデルにおけるジヨイン演算処理方式
JPS6047623B2 (ja) * 1982-02-12 1985-10-22 株式会社日立製作所 アドレス変換方式
US4654777A (en) * 1982-05-25 1987-03-31 Tokyo Shibaura Denki Kabushiki Kaisha Segmented one and two level paging address translation system
JPS61210477A (ja) * 1984-05-25 1986-09-18 Hitachi Ltd ベクトル型連想メモリシステム
US4829427A (en) * 1984-05-25 1989-05-09 Data General Corporation Database query code generation and optimization based on the cost of alternate access methods
US4839799A (en) * 1985-07-29 1989-06-13 Hitachi, Ltd. Buffer control method for quickly determining whether a required data block is in the buffer
JPH0782458B2 (ja) * 1985-09-06 1995-09-06 株式会社日立製作所 データ処理装置
US4680705A (en) * 1985-09-13 1987-07-14 International Business Machines Corporation Automatic data restructurer
US4841472A (en) * 1986-04-22 1989-06-20 Minolta Camera Kabushiki Kaisha Word processor capable of automatic tilting of documents
US4918593A (en) * 1987-01-08 1990-04-17 Wang Laboratories, Inc. Relational database system
US4845624A (en) * 1987-03-05 1989-07-04 International Business Machines Corporation Relational data base lock avoidance system
US4805099A (en) * 1987-04-17 1989-02-14 Wang Laboratories, Inc. Retrieval of related records from a relational database

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007130521A (ja) * 2005-11-08 2007-05-31 Before After:Kk スプレー装置
JP2011505606A (ja) * 2007-10-25 2011-02-24 マイクロソフト コーポレーション 表形式データストリームプロトコルの行におけるヌル列の圧縮
US9003054B2 (en) 2007-10-25 2015-04-07 Microsoft Technology Licensing, Llc Compressing null columns in rows of the tabular data stream protocol

Also Published As

Publication number Publication date
US5414834A (en) 1995-05-09
EP0336586A2 (en) 1989-10-11
JPH07104868B2 (ja) 1995-11-13
EP0336586A3 (en) 1992-10-28
BR8901642A (pt) 1989-11-21

Similar Documents

Publication Publication Date Title
JPH0212463A (ja) データ記憶検索システム
US5551020A (en) System for the compacting and logical linking of data blocks in files to optimize available physical storage
US5560006A (en) Entity-relation database
US8886617B2 (en) Query-based searching using a virtual table
US8799229B2 (en) Searchable archive
JP4227033B2 (ja) データベース統合参照装置、データベース統合参照方法およびデータベース統合参照プログラム
US5713014A (en) Multi-model database management system engine for database having complex data models
US4933848A (en) Method for enforcing referential constraints in a database management system
US5185887A (en) Database generation management method and system
US20080046804A1 (en) Change-oriented spreadsheet application
US5613110A (en) Indexing method and apparatus facilitating a binary search of digital data
JPH09212528A (ja) データベースを記憶する方法、データベースからレコードを検索する方法、および、データベース記憶/検索システム
JPS5892035A (ja) デ−タベ−ス処理方式
WO2005086003A1 (ja) データベース・システム
US5301315A (en) Indexing/compression scheme for supporting graphics and data selection
JPWO2009144941A1 (ja) データベースシステム、データベース管理方法、データベース構造およびコンピュータプログラム
US20110289112A1 (en) Database system, database management method, database structure, and storage medium
US5481704A (en) Indexing/compression scheme for supporting graphics and data selection
US9183320B2 (en) Data managing method, apparatus, and recording medium of program, and searching method, apparatus, and medium of program
JP5392254B2 (ja) データベースシステム、データベース管理方法、データベース構造およびコンピュータプログラム
EP0583108A2 (en) Entity-relation database
CN1018032B (zh) 对关系数据库的数据项(object)进行有效分析的系统和方法
Hammer et al. Data structures for databases
Nørvåg The design, implementation, and performance of the V2 temporal document database system
JP3980326B2 (ja) データ管理方法およびコンピュータ読み取り可能な記録媒体