JPS6037048A - データ・ベースにデータを記憶する方法およびデータ・ベース・システム - Google Patents

データ・ベースにデータを記憶する方法およびデータ・ベース・システム

Info

Publication number
JPS6037048A
JPS6037048A JP59089212A JP8921284A JPS6037048A JP S6037048 A JPS6037048 A JP S6037048A JP 59089212 A JP59089212 A JP 59089212A JP 8921284 A JP8921284 A JP 8921284A JP S6037048 A JPS6037048 A JP S6037048A
Authority
JP
Japan
Prior art keywords
record
data
range
level
value
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
JP59089212A
Other languages
English (en)
Other versions
JPH0766347B2 (ja
Inventor
アムノン・ワイズマン
アンドリユー・マーク・ウエイズ
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.)
Wang Laboratories Inc
Original Assignee
Wang Laboratories Inc
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 Wang Laboratories Inc filed Critical Wang Laboratories Inc
Publication of JPS6037048A publication Critical patent/JPS6037048A/ja
Publication of JPH0766347B2 publication Critical patent/JPH0766347B2/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/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9017Indexing; Data structures therefor; Storage structures using directory or table look-up
    • G06F16/902Indexing; Data structures therefor; Storage structures using directory or table look-up using more than one table in sequence, i.e. systems with three or more layers
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (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

【発明の詳細な説明】 産業の利用分野 本発明はデジタル計算機にデータを記憶させる方法に関
する。より詳細には、大量のデータを記憶し検索する改
良されたデータ・ベースに関する。
発明の技術的背景 今日、コンピュータは、考えられ得る全てのものについ
ての大量の情報を記憶するために使用されている。そし
て、それらのデータは大規模なデータベースに記憶され
ている。一旦、記憶された情報は、必要なときには迅速
に見つけだされなければならない。データベースにおけ
る、そのような手法の一つが、逆リスト(1nvert
ed 1ist)の使用である。
即ち、逆リストをデータベースにおいて使用することに
より迅速なサーチが可能になる。例えば、病院用データ
ベースにおいては、4ニジリンに対してアレルギー性の
患者の全記録を見つけ出せという要求が出されることが
ある。その情報をデータベースから得るために、患者の
記録の1つ1つを全てサーチしてそのアレルギーの欄(
フィールド)にペニシリンが記録はれていることにより
選び出す方法は時間がかかる。それよりも良い方法であ
って、データベースに3いて一般的に使用されている方
法は、そのデータベースに逆リストを保存することであ
る。この例の場合、逆リストを使用すれば、ペニシリン
に対してアレルギー性の全ての患者のりストを比較的容
易且つ迅速に得ることができる。
然しながら、逆リストは大きな記憶空間を必要とし、作
成に長時間を要し、迅速にデータを見出すために効率的
に編成されなければならない。そして逆リストはそれが
支援する元々のデータベースよりも大きな記憶空間を通
常必要とする。殆どのデータベースは限られたデータ項
目のみについて逆リストを使用し、従ってそれらのデー
タ項目に関してのみ迅速なサーチが可能である。
発明の概要 本発明は逆リストの非常に効率的な記憶を可能にする。
即ち、本発明に従う逆リストは、元のデータベースより
も非常に少ない記憶空間しか必要としない。このため従
来のように成る範囲のみを選択して記憶していたのと異
なりデータベースにおける全ての範囲に関し逆リストを
保存することが可能になった。更に、データベースのど
の範囲に関しても逆リストを用いた迅速なサーチが可能
になった。また、本発明に従う逆リストは特徴的で簡潔
なデータ構造を有するため、既知の構造を用いるデータ
ベースよりも非常に速く情報をサーチすることができる
要するに、本発明は可変長データフィールドを有する自
己記述的牽引キーフォーマットを使用するため、記憶さ
れ検量はれるデータの型や配列に無関係にデータベース
の操作をすることができる。
そのデータは、データテーブルを表わす変数と、そのデ
ータテーブル中のレコードを表わす変数と、そのレコー
ド内、の特別のフィールドを表わす変数との3つのイン
デックス変数によって特徴付けられる。各テーブルは、
データベースのBトIJ−構造にはめ込まれたデータか
ら構成される。
フィールド変数を用いるレコードをアクセスするために
、データ・ベースはくに元の牽引に論理的に関係付けら
れた逆E ) II−・インデックスを含んでいる。ま
た、データ圧縮や、各フィールドに対応付けられたレコ
ードを表わすスパース配列ビットマツプを使用すること
により牽引(インデックス)の操作性が高められた。更
に、データベースに8けるインデックス構造は、データ
の記憶されている物理的記憶位置に無関係なインデック
ス変数によってデータを識別することを可能にした。そ
して、記憶効率は、可変長データレコードでデータを記
憶することにより高に高められる。
また同様にスパース配列ビットマツプが、異なるデータ
テーブルに記憶されたレコードに関してレコード間の関
係を与えるために用いられる。
本発明が従来技術より改良された点及びそこから得られ
る利点は、以下の好適な実施例の説明を読めば一層明ら
かとなろう。
発明の好適な実施例の説明 本発明の詳細な説明する前に、先ずB ) IJ−・タ
イプのインデックスの作用を簡単に説明しておくことは
有益であろう。第1図には、アルファベット順に配列さ
れたデータ・ベース中のレコードをアクセスするための
Bトリーの構造が示されている。第1図のB ) IJ
−は2つのレベル10から成り、各レベルは更に1以上
のブロック12から構成されている。上のレベルは幾つ
かのエントリーから成るブロックから構成される。それ
らのエントリーの各々はデータを識別するキーと、ポイ
ンターとから成っている。最初のB ) II−の2つ
のレベルにおいては、ポインターがB トII−の低い
方のレベルのブロックの記憶場所を識別し、その記憶場
所は更にデータの孝引付けをする。最後の行においては
、各ブロックのエントリーはデータ・ベースの個々のレ
コードと対応付けられ、Bトリーの最も下のレベルのポ
゛インタはこのデータベースに2ける記憶場所を指示す
る。
Bトリーのインテックスを使用するためには、データが
見出されるべき記憶場所を指示するキーを見つけるまで
B トIJ−の上のレベルでキーをサーチする。例えば
第1図が名前のリストに関する牽引でおって「モリス(
Morris) Jという名前を見つけたい場合、その
名前を含んでいるであろうキーM−0を見出すまでプロ
グラムは上のレベルをサーチする。そのキーに関連した
キーによりプログラムは次のレベルのサーチを開始する
適切な記憶場所、この例の場合ではMの最初の記憶場所
を見つけることができる。
同様の手続が次のレベルでも行なわれ、サーチする範囲
はだんだん狭くなっていって、最も下のレベルで、ポイ
ンタは「モリス」に関するデータ・エントリを見つけて
いる。
ここで説明しているデータ・ベースでは3つの数によっ
てデータ・ベース内の全てのデータ・フィールドを識別
している。即ち、レコード識別子、レコード通し番号及
びフィールド識別子である。
これらの用語は第2図を参照しながら説明される。
第2図は病院で使用されるようなデータ・ベースの一部
を表わしている。その病院用データ・ベースは、第2図
に示される2つのデータ・テーブル、即ち患者テーブル
及び医師テーブルのような多数のデータ・テーブルを備
えている。これらのテーブルの各々は1つのレコード識
別子(RI)数によって識別される。第2図において、
医師のデータは、RIが17のテーブルにあり、患者の
データは、RIが47のテーブルにある。
各テーブルは、患者や医師の一人一人に対応したレコー
ドに分けられる。各患者や医師のレコードは、そのレコ
ード通し番号(R2H)によって識別される。各個人に
関するデータはフィールドに分けられ、また、その個人
に関する異なった種類のデータを表示している各フィー
ルドはそれぞれのフィールド識別子(Fl)を有してい
る。但し、第2図に示でれているデータは例示に過ぎな
い。
実際に応用される場合には、非常に大量のデータがデー
タ・ベースに記憶され(更にそのデータ・ベースには、
各々が多数のエントリーを有する多数のテーブルが備え
られる。例えば、ある大病院に8いては、医師や従業員
等のデータは言うまでもなく、現在収容している2、0
00人もの患者や過去に収容した何十万人もの患者のデ
ータを保存しておかなければならない。そのためデータ
・ベースは、明らかに大量にデータを記憶する必要があ
る。それにもかかわらず、そのようなデータ・ベースに
おける全てのデータ・エントリーは、3つの変数R1,
R2H及びFIによって一意的に識別することができる
第3図には、第2図の患者テーブルからのデータがBト
リー・インデックス自体の中に記憶されるときの結果が
示されている。第3図のエンドIJ−はB ) IJ−
の最も下のレベルを表している。第1図に示されたBト
リーでは、各エントリーはデータを識別するキーと、牽
引又はデータの記憶場所を位置付けるfcめのポインタ
とを有している。
ここで説明しているデータ・ベースの場合、Bトリーの
最も下のレベルにおけるポインタは実際のデータによっ
て置換えられている。このようにする別の方法としては
、B ) IJ−におけるデータが自分自体を定義する
こと、即ち、自己記述的にすることが挙げられる。キー
は、特定のデータの記憶場所を位置づける手段を提供す
る。換言すれば、そのキーは一種の「論理アドレス」で
あって、上記のような手続が後で行われることによって
、特定のデータをアクセスするために使用され得るもの
である。
自己記述的なデータを使用することにより幾つかの重要
な利点が得られる。先ず、データをアクセスするための
プログラムを変えることなく、そしてデータ・ベースを
再編成することもなく、データ・ベースの大きさを変え
、レコードにフィールドを追加することが可能である。
これは、その論理アドレスが記憶装置中のデータの物理
的記憶場所即ち物理アドレスに無関係であるためである
別の言い方をすれば、データがデータ・ベースに加えら
れたりデータ・ベースから削除されるときにBトリーが
記憶装置におい・てどのように再構成されるかに関係な
く、かつデータが記憶装置中で実際にどの記憶場所に物
理的に位置付けられるか【関係なく、データ・ベースに
はめこまれたキーを用いてデータの記憶場所が常に位置
決めてきるということである。
第3図に示されているデータやキーを記憶するために、
大規模なデータ・ベースでは、記憶空間の多くのオーバ
ーヘッドが必要であるように見える。然し、本発明に従
うシステムには、このことは当てはまらない。第3図に
示されるような情報は、記憶される前に圧縮されるのが
常である。例えば、第3図のデータは、第4図を参照し
ながら以下に説明されるように圧縮される。その説明か
ら明らかにされるように、データ・ベースにおけるデー
タの配列によって、この圧縮方法は記憶すべきデータ量
を著しく減少きせる。然し、従来より他の圧縮方法も知
られており、これらの方法も、一般的に言って、本発明
に従うデータ・ベースに適用できる。従って、好適な実
施例を説明する上で特別な圧縮方法を使用するといって
も、それによって本発明が限定されて考えられるべきで
はなG1゜ 第4図は、実施例に3いてデータが圧縮される方法を示
している。第4図において、CLは圧縮長を表示し、こ
の圧縮長は現在のキーの初期桁数を意味し、それより前
のキーにおける初期桁数と同じである。KLはキー長で
あり、DLはデータ長でおる。第4図に8ける第42b
行は、第3図に示される患者テーブルに8ける第1のデ
ータ42cLを表示している。それより前にはエントリ
ーがないので、圧縮長は零である。R1−R2H−Fl
キーの桁数(バイト数)である、キー長は6である。デ
ータ長は、名前のデータが5バイトであるため5である
次の第44b行については、圧縮長は5である。
(i1番目と第2番目のデータ・エントリーでは、キー
の初めの5桁が同一だからである。第2番目以降のエン
トリーのキー長は1になる。キーの中で変わるのにFI
変数だけであり、R1とR2Hの値は第1番目のレコー
ドの残りのフィール、ドと同じで一定だからである。第
4図の第46b行乃至第50行に3いても同様に圧縮さ
れる。
上記のような手続によって、R8Nキーを介してアクセ
スされるべきフィールドのデータについて、迅速なアク
セスが可能になる。然し、この方法だけでは、あるレコ
ードに対応した1つのフィールドのデータの値に基づい
て、そのレコードを迅速にアクセスすることはできない
。この方法だけでは、例えば、名前は不明であるが特定
の住所に住んでいることは分っている患者を見つけ出す
とか、ボストン(Boston)に住んでいる全ての患
者のリストを編集するとかのためには、全ての患者のレ
コードの番地フィールド全部をンーケンシャルにサーチ
しなければならないからである。
そのようにフィールドのデータに基づいて個々のレコー
ドをアクセスする機能は、上記のデータ・ベースの構造
に容易に付は加えることができる。
殆どのBトリー・インデックスの場合、サーチしたい各
フィールド変数に関し分離したB ) II−が必要で
あるが、本発明の場合には、所望の数のフィールドへア
クセスするために唯一っのBトリーしか必要としない。
このことは、以下のようにして達成される。
一般的に言って、上記の実施例においては、「備考欄」
のようなフィールドを除いて、全てのデータ・フィール
ドは逆キー・テーブルで牽引角は芒れる。箪引付けされ
る各フィールドに関して、逆キー・テーブルは次のよう
にして構成される。
先ず、問題となっている特定のデータ・テーブルの初期
データに関して、逆キーの論理的な記憶場所の位置付け
がなされなければならない。これは、上記の実施例にお
いては、RI変数として奇数のみを割り当て、その次の
偶数を、関連する逆キーに割り当てることにより行なわ
れている。その結果、元々のデータの形式に対して逆(
1nverse)のデータ構造のBトリーが構成される
。即ち、あるフィールドの異なる値の各々に関して、そ
のフィールにその値を有する全てのレコードが逆テーブ
ルに記録される。住所の番地情報のみを使用するデータ
・ベースにおいては、−1Å以上の患者を識別すること
、例えば特定の地域に住む全ての患者を識別することが
時々必要になる。第1図に示されたデータ・ベースにつ
いて言えば、本発明に従って、先ず、対応する逆テーブ
ルに関するキーを生成するためにR1変数の値に1を加
え、更に、住所番地を表示するFI変数の値によってエ
ントリーをサーチすることにより記録された逆リストを
使用して、地理的なサーチを容易に行なうことができる
第5図には、第3図のデータ・ベースにおける都市フィ
ールドに関する逆キードの例が示されている。キーd、
RIの1直に1を力0えて48とすることにより見つけ
られる。また都市を表わすフィールドに対応するFIの
値が選択される。そして、これらのRIO値とFIO値
を見つけるためにBトリガーがサーチ芒れる。その結果
、所望の都市に関するデータ、この場合Boston、
がサーチされる。Bostonの次の数は、Bosto
nの患者に関するレコードのR2Hである。R2Hは実
際にはデータを指示するポインタとして機能し、13o
stonに住む患者の清報を言むRI=47の患者デー
タ・テーブルのレコードが参照はれる。第5図に示され
るデータは、上記の圧縮方法と同様の方法で圧縮されて
記憶され得る。
フィールド・データを牽引付けするこの方法には幾つか
の利点がある。上述のように、逆テーブルにおけるデー
タのキー即ち論理アドレスは記憶装置中のデータの実際
の記憶場所とは無関係である。このため、逆テーブル中
のポインタの値を変えずにデータ・ベースを拡張したり
修正したりできる。また、データ・ベースをその中に記
憶されているデータのタイプとは無関係にすることもで
きる。その結果、より一般的に、データ・ベースを広範
囲に応用することができる。RSHの配列モ、多重のフ
ィールド・キーを用いるサーチ、即ち、特定の病気にか
かっている特定の都市に住む全ての患者のサーチに便利
である。都市のフィールド及び病気のフィールドに関す
るRSHのリストは数字の順序に並べられる。このため
、RSHの2つのリストを比較しRSHの同じものを選
択することによって一致を決定することが容易にな速度
とメモリの両者の必要性の見地からすると、逆テーブル
におけるデータのアクセス及び操作能力はスパース配列
ビット・マツプと称する手法によって更に高められる。
この手法は、逆テーブルにおける個々のレコードの存在
を個々のビットで表示することにより逆リストの圧縮を
するものであって、個々のRSNを使用するよりも記憶
空間を大幅に節約することができるものである。第5図
に示される逆テーブルを用いると、逆テーブルの各エン
トリーに関するRSHのリストはスパース配列によって
置換えられ、そのスパース行列においてはリスト中の特
定のレコードが発生したことを表示する数個のビットが
存在する。本発明に従えば、以下の説明から分かるよう
に、RSHの多数の桁が数個のビットによって置換えら
れる。
従って、何方あるいは何十万という数のレコードを有す
る大規模データ・ベースでは、4バイト又は5バイトの
記憶領域を必要とする4桁又は5桁の非常に多数のRS
Nが数ビットで置換えられることが可能である。
そのスパース配列ビット・マツプは次のようにして生成
される。先ず第1に、全てのRSHのリストは幾つかの
レンジ(range )に分割される。
上記の実施例では、各レンジは512レコードを有して
いる。各レンジには連続的なレンジ値(ff)が割り当
てられる。このようにして、RSNのOから511は0
のレンジ値を有する第ルンジに入れられる。RSHの5
12から1023はRVが1のレンジに入れられ、以下
同様に割り当てられていく。逆リスト中の1個以上のR
SHが1つのレンジ内に入れられたときには、対応する
RVは逆テーブル中に記憶される。そして非零スパース
配列を有するレンジのみが定義きれる。
あるレンジの中にある各R8Hの記憶場Ph■は、レン
ジ内の個々のRSNを表示するスパース配列に記憶され
る。第6図の一番上の行は、1バイト52を表わし、そ
の個々のビットは、特定のレンジにおける少なくとも1
つ、乃至は64のRSHの存在を表示している。そして
、第6図の最上位バイト52の各ビットは、同図の第2
のレベル54に示される、8ビツトからなるノ(イトの
対応するものを表示し、更に、第2レベルの各)(イト
の各ビットは第3し勺し56の8ビソトカ\も成るバイ
トの1つを表示している。各上位レベルにおける1つの
ビットは、次の下位レベル中の対応するバイトの8ビツ
トのうちの何れかに1つカー含捷れているときにセット
される。第3レベル56にオイては、512ビツトを有
する64)(イトカ1存在する。これらの512ビツト
の各々はそのレンジの対応するRSNを表示している。
このように、バイト52の何れ刀jのビットカーセット
・ビットであること(この実施例では1の1直をするビ
ットによって表わでれている)は、逆1ノストにおいて
1乃至64個のRSHが存在することを示している。ノ
くイト52の何れのビットもセット・ビットでないこと
(この実施例では0で表わされている)は、64個のR
SHか存在しなし)ことを示している。(8つのビット
が全てOの)Zイトは、第6図における対応するかぎ括
弧中の「x」で表わされている。)従って、512個の
個々のRSNの存在、非存在は第6図に示されるデータ
構造により表わされる。
バイト52の各ビットが0であることは、レベル54の
対応するバイト及びレベル56の対応する8つのバイト
が全てOであって、それらの9バイトは冗長情報である
からそれぞれ記憶する必要はないということである。同
様に、第2レベル54の各バイトの各ビットがOである
ことは、第3レベル56の1つのバイトの8つのビット
がOであることである。従って、第6、図に示されるデ
ータ構造の全ての情報を記憶するには、1つ以上の1を
有するバイトのみを記憶すればよいということになる。
第6区のスパース配列に関して言えば、1つのレンジの
中に1つのRSNが存在することを表示するために記憶
されなければならない最小のバイト数は3である。一方
、記憶されるべき最大のバイト数は73である。即ち、
レベル52.54及び56の全てのバイトの数である。
そのような必要性は、最下位レベル56の各バイトが少
なくとも1つのセット・ビットを有するときのみ生じ、
その結果73個のバイトが64個及び512個のRSN
を表示することになる。このようにして、データ記憶空
間の必要量を減少させることは、レンジ内のRSNの特
定のパターンに依存している。
第6図のスパース配列が構成された後には、データは、
第7図に示されるような態様で逆テーブルに記憶される
。ここで、各RVは、逆リストに少なくとも1つのRS
Nを営む各レンジに関するレンジ値を表わす。また、そ
のレンジには、対応するスパース配列の3バイト乃至7
3バイトが関連している。データは、Bトリーに記憶さ
れる以前に、上記のようにして圧縮される。
上記の実施例では、各レンジにおける領の最大数は51
2である。8ビツトのバイトを使用すれば、各レンジに
言まれる数は8の整数乗でなければならない。ディスク
のセクタ長とアクセスタイムを実用面71)ら考えれば
、上記の実施例においては、次に高い8の整数乗である
4048よりも512の方が望ましいといえる。他へ応
用する場面では、より大きい又は小濱いレンジが望まし
いこともあろう。
あるRSNからレンジ値とスパース配列を決定すること
は、簡単である。そのRSNは各レンジの大きさ、即ち
上記の実施例では512であるが、その大きさによって
割算される。その結果の整数部分はレンジ番号であり、
余シはそのRSNに対応するスパース配列内のビット位
置である。
この実施例では、レンジ値は1乃至4バイトのビット整
数として記憶される。バイトil、即ちビット整数の長
では、ビット整数の第1バイトの最初の2つのビット位
置に記憶される。「00」という匝は1バイトを必要と
するビット整数を示し、「01」という1直は2バイト
を必要とするビット整数を示し、以下同様である。第1
バイトの残りと他の付加的バイトは2進のレンジ値を記
憶する。
このことは第8図に示されている。上の方のビット整数
はレンジ値5を表わしζ 1バイトしか必要ではない。
2番目のビット整数はレンジ値100を表わし、2バイ
トを必要とする。ビット整数を表わすのにこの形式で最
大4バイトを用いれば、約10億までのレンジ値を表わ
すことが可能である。このようにして作られたビット整
数には、全てのビット整数がそれらの数値に従って正し
く並べられるという利点もある。
スパース配列ビットマツプのもう1つの長所として、デ
ータ・ベースの特定のサブセット(部分集合)を定義す
るのに必要な論理演算の結果を見出すために、RSNの
リストを容易に比較できるということがある。これは、
レンジ値がRSNのセット(集合)を表わすからであり
、従ってセント(集合)の演算はスパース配列とレンジ
値に適用でれる。セット(集合)の演算には、「積」、
「和」、[相対差(relative differe
n、ce) Jの機能があシ、それぞれは論理的AND
XOR及びAND−NoT機能を実行するものである。
例えば、ボストン(Hoston )に住んでいる全て
患者のデータと風邪をひいlt’lての患者のデータと
のANDをとってリストを作成しなければならない場合
を仮定する。これは、逆テーブルの「風邪」と(Bos
tonJO値により、(スパース配列によって表示され
た)R8Hのリストの「積」を決定することと同じこと
である。ボストンに住む全ての患者と風邪をひいた全て
の患者の2つのリストは、第2図に示される患者データ
・テーブルの都市名と病名のフィールドに関するテーブ
ル48(部分的に第4図に示されている)の逆リストか
ら直接得ることができる。次に、その2つのリストは同
じレンジ値に関してサーチされる。もし、同じレンジ番
号を有する1以上のエントリーが見つけられたならば、
スパース配列が比較されなければならない。第6図に示
されるように、ANDをとるべき2つのスパース配列(
以下、[入力前タ1月と称する)の各々の、最も上のレ
ベルのバイトのANDをとることにより得られる1バイ
トは、都市名のR2Hと病名のR8Hの1創を示す「出
力」スパース配列の最も上のレベルのバイトを表わして
いる。出力スパース配列の最も上のレベルのバイトがヌ
ル(nu、ll)、即ち全て零ならば、処理はそれ以上
先には適寸ない。何故なら、このことは2つの逆リスト
には何の共通要素もないことを示しているからである。
出力の最も上のレベルのバイトに1つ以上の1があるな
らば、入力配列の対応する第2のレベルのバイトのAN
Dがとられる。その結果、またヌルのバイトが存在する
ならば、そのバイトの表示するR8Hには共通の要素が
ないことを示している。もし、第2レベル54のバイト
のANDをとった結果、1パイトノ中に1に等しいビッ
トがあるなら、第3レベル56に関して処理手段が繰り
返される。2つのセット(集合)に共通の要素がある場
合に、上記の演算を通して生成される一連のバイトは、
その2つのセットの「イ責」を表わしている。
次に、2つの入力配列の和を決定するために論理OR演
算が行なわれる。先ず、その2つの配列の最も上のレベ
ルのバイトのORがとられて出力配列の最も上のレベル
のバイトが得られる。第2レベルのバイトは2つの異な
った方法のうちの1つによって取り扱われる。入力配列
の両方の最も上のレベルのバイトが同じビット位置に1
を有するならば、各入力配列の個々の第2レベルのバイ
トのORをとることにより出力配列の対応する第2レベ
ルのバイトが生成される。然し、最も上のバイトの一万
のみが、ある特定のビット位置に1を有する場合には、
出力配列の対応する第2レベルのバイトは、単にその入
力配列の第2レベルのバイトにすぎない。同様の手続が
第3レベルに関して行なわれる。
好適な実施例においては、2つのスパース配列ビットマ
ツプの「相対差」をとることが、論理的AND−NOT
機能の1つとして行なわれる。換言すれば、2つの入力
スパース配列即ちセット(集合)A及びBが与えられて
いるとき、この実施例はA AND NOT Bによっ
て得られるセット(集合)の値を決定する。ここで、ス
パース配列の補集合は、全スパース配列と補集合を得る
べき配列との間の「相対差」をとることによって簡単に
決定されることに注意されたい。
第10図には、2つのレベルのみを有し、しがも1バイ
トが3ビツトからなる簡単化されたスパース配列が、相
対的差を決定する手続の説明のために示されている。そ
の2つのスパース配列はA及びBで表わされている。操
作を始める際、Aスパース配列は、結果としてのスパー
ス配列が現われる領域にコピーされる。上のレベル72
から始められて、第1の配列Aにおいて成る1つのビッ
トがセットされ(即ち、この実施例では1になること)
、かつ対応するビットが第2の配列Bではセットされて
いない場合、A AND−NOT Bの演算の結果は単
なるAであり、そのビット位置に対応する次のレベル7
4のバイトは、Aスパース配列から直接得られるため同
じ形のま1得られる。このことは結果を表わすスパース
配列の、最も下のレベルの最左端のバイトによって示さ
れている。
第1の配列Aにおいて、成るビットがセットされていな
い(即ち、0である)場合、A AND−NOT Bの
結果はOであり、従って結果を示すスパース配列におけ
るそのビットに対応するビットはリセット(即ち、0と
)される。但し、このことは第10図には示されていな
い。
A及びBの両方の対応するビットがセット(即ち、■に
等しく)されている場合、次に低いレベルの対応するバ
イトが比較されなければならない。
Aの方のバイトの成るビットがセットされており、かつ
対応するBの方のバイトの更に対応するビットが0の場
合、結果を示すスパース配列における対応するビットは
セットされたままである。さもなければ、その対応する
ビットはリセット(即ち、0にセット)される。これは
第10図の低い方のレベル74の中央及び右側のバイト
に示されている。この演算の結果がヌル・バイトであれ
ば、結果を示すスパース配列の次に高いレベルまで零に
されなければならない。これは低い方のレベル74の右
端のバイトに示されている。
上記のスパース配列ビットマツプ法は、成るレコードを
、異なるR1を有する異なるデータ・テーブルに記憶さ
れた他のレコードとリンクするために同様に使用される
。これは、レコード間の関係を表わす効率的方法である
。第2図に戻って説明すると、そこに部分的に示されて
いる病院用データ・ベースでは、医師に関するデータは
成る1つのテーブルに記憶され、患者に関するデータは
もう1つのテーブルに記憶されている。例えば、各医師
に関係する全ての患者のリストがそのデータ・ベースに
追加されるとする。このことは、各医師に関する全ての
患者の名前が記憶されている医師データ・テーブルに患
者フィールドを付は加えることにより可能である。本発
明では、スパース配列ビットマツプの各患者に関するR
SNを記憶することにより各医師に関する全ての患者の
データは効率的に記憶される。上記の論理演算は、同様
にして、上記のレコード間の結合フィールドに基づいて
レコード間の照会を行なう上で利用され得るものである
第9図は、各医師をその患者と対応付けるためのフィー
ルドを有する、第2図の医師テーブルの一部を示してい
る。患者フィールドは、値が54のFIを有し、各医師
の全ての患者に関する患者テーブル(そのR1O値は1
7である)のRSNをも有している。本発明において、
各R8Hの数値的表示は、それらのRSNを表わすレン
ジ値及びスパース配列によって置換えられる。例えば、
第9図においては、医師フロイト(Freud)の第1
番目の患者は列60に示されているが、第ルンジに入れ
られており、RVO値はOでおる。本発明の場合は、R
SNを直接記憶するのではなく、レンジ値と165を表
わすスパース配列を記憶している。レンジ値は列62に
示きれており、列64にはそのレンジ内におけるスパー
ス配列の表す値が示されている。第2番目乃至第4番目
の、RSNが6410乃至6412である全ての患者は
同じレンジ内に入っている。これらの患者は1バイトの
レンジ値と、3バイトのスパース配列によって示されて
いる。この場合、本発明ではこれら3人の患者を表示す
るのにわずか4バイトしか必要としない。
この方法は、患者の名前自体を記憶する上でも幾つかの
利点を有している。スパース配列により必要とされる記
憶空間は患者の名前のために必要とされるものよりも少
なくてもよいことである。
患者テーブルの患者のRSNを参照することにより、デ
ータ・ベースは、各患者について記憶されたデータを容
易にアクセスすることができる。スパース配列ビットマ
ツプを使用してレコード間の関係を与えることにより、
特定の医師の全ての患者のリストのみならず、例えば、
特定の地域に住む特定の医師の全ての患者のリストさえ
も容易に得ることができる。医師と患者を関連付けるこ
の方法は、また、患者テーブルにおいて同じ名前を有す
る患者の間の不確定さの問題をも避けることかできる。
以上のように、データ・ベースの記憶及びアクセスに関
する新規で有用な方法を説明してきたが、そこにおいて
記述された本発明の教示するところを種々の応用に適用
する上で、修正及び追加をすることは当業者にとって自
明なことである。従って、本発明はここにおいて記載さ
れた好適な実施例のみに限定されるべきではなく、本明
細書の特許請求の範囲の記載に従って解釈されるべきで
ある。
【図面の簡単な説明】
第1図はBトリー・タイプのインデックスを示す線図で
あり、 第2図は本発明の詳細な説明する上で用いられるデータ
・ペースを表わす線図であり、第3図は本発明によって
記憶される形で第2図のデータを示し、 第4図は圧縮形式で記憶された形で第3図のデータを示
し、 第5図は逆キーの編成を示し、 第6図及び、、g7図はスパース行列ビットマツプの編
成を示し、 第8図はビット整数が値域を表示する態様を示し、 第9図はスパース行列における記録の通し番号のリスト
をスパース行列が置換する方法を示し、果10図はスパ
ース行列のANI)−NOT演算の結果を示してい石。 尚、図面において、 10・・・レベル、 12・・ブロック。 特許出願人 ウオング・ラボラトリーズ・インコーボレ
ーテツド 秦2図 #3凹 !10n−+47 120 1 Able集4図 ・ ・ 50b−一−332014Able ・ ・ ・ 菓5 図 48 3 Boston 11g 24 56 懸 秦6図 も7凹 尾a 図 u + uIJti+すυυ υIILJυ1υυ 1
00第9図 箒fO図 手続補正書(方式) 1.事件の表示 昭和H年箭竹願第 、p72/2− 号テ°−り 八゛
−λにj・11?イ乏/f111\3スl\−ス澤ごり
Jビノトマ17゜ 6、補正をする者 事件との関係 出 願 人 住所 グ 峙 り≠ンクーラす°゛ラド11−λイ〉ツー寸°
シーテ肩−。 4、代理人 6、補正の対象 夕TIn の久崎 t コニス肴!−”、L% 己A4
J 73 襲 θn t−pi j二 I雨間 細 書 1、発明の名称〕 データ・ベースにおいて使用されるスパース配列ビット
マツプ 2、特許請求の範囲〕 (1)データ・ベースにデータを記憶する方法であって
、次の(1)乃至(V)のステップを含むことを特徴と
する前記方法。 (1)各々が複数のレコードを有する、複数のデータ・
テーブルを設けるステップ、 (11)各データ・テーブルに対して一意的なレコード
・インデックス値を割当てることにより各データ・テー
ブルを識別するステップ、(曲 データ・テーブル内の
各レコードに対シて、そのデータ・テーブル内の該レコ
ードに関L−意的なレコード通し番号を割当てるステッ
プ、6M 各々が予め定められた数のレコード通し番号
を有し、且つ連続的レンジ値な割当てられているレンジ
に各データ・テーブルの前記レコード通し番号を分配す
るステップ、

Claims (1)

  1. 【特許請求の範囲】 (1)データ・ペースにデータを記憶する方法であって
    、次の(1)乃至(Vllのステップを含むことを特徴
    とする前記方法。 (1ン 各々が複数のレコードを有する、複数のデータ
    ・テーブルを設けるステップ、 (11)各データ・テーブルに対して一意的なレコード
    ・インデックス値を割当てることにより各データ・テー
    ブルを識別するステップ、(11D データ・テーブル
    内の各レコードに対して、そのデータ・テーブル内の該
    レコードに関し一意的なレコード通し番号を割当てるス
    テップ、GV) 各々が予め定められた数のレコード通
    し番号を有し、且つ連続的レンジ値を割当てられている
    レンジに各データ・テ・−プルの前記し2−ド通し番号
    を分配するステップ、 (V) 各データ・テーブルのレコードを複数のフィー
    ルドに分割し、1つのデータ・テーブル内の各フィール
    ドは、フィールド・インデックス値によって識別され且
    つ選択されたタイプのデータ値を含むようにするステッ
    プ、 (Vll 各々が前記データ・テーブルの1つに対応す
    る、複数の逆リスト・テーブル(irLvertedl
    ist table )を設け、更に次の(イ)及び(
    ロ)を含むステップ、 (イ)各々が特定のフィールドに対応し、且つその対応
    したフィールドの特定のデータ値の存在を表示する、複
    数のキーを生成するステップ、 (ロ)各キーと対応しており且つその対応付けられたキ
    ーによって表示されたデータ値を含むレコードのレコー
    ド通し番号を表わす、ポインタを設けるステップ。 (2) 前記のスパース配列ビットマツプを設けるステ
    ップは、次の(α)乃至Ce) k 苫むことを特徴と
    する特許請求の範囲第1項記載の方法。 (CL)各々が同数の最下位レベル・ビットを有する、
    複数の最下位レベル・バイトを決定し、前記最下位レベ
    ル・バイトの最下位レベル・ビット数を各レンジのレコ
    ード通し許号の数に等しくシ、各最下位レベル・ビット
    を各レンジの前記レコード通し番号の1つに対応付ける
    ステップ、 (b)1つのレンジ内に各レコード通し番号が存在する
    ことは、該レコード通し番号に関連する最下位レベル・
    ビットをセットするこによりコード化されるステップ、 <C)最上位レベルのバイト及び1つ以上の中間レベル
    の複数バイトを言む、より上位のレベルの複数パイ)’
    e、各レベルのノくイトのビット数が次に低いレベルの
    バイト数に等しくされ、そのより上位のYベルのノ(イ
    トの各ビットが次に低いレベルの)くイトの1つに対応
    付けられるように決定するステップ、 (力 前記のより上位のレベルの)(イトのビットを、
    前記の次に低いレベルにおいてそのバイトに対応付けら
    れたバイトが少なくとも1つのセット・ビットを言むよ
    うにするステップ、 (e)1つ以上のセットされたバイトを含む最下位レベ
    ルのバイトとそれより上位のレベルのバイトを記憶する
    ステップ。 (3)前記のより上位のレベルの複数バイトを決定する
    ステップは、更に次の(イ)及び(g)を含むことを特
    徴とする特許請求の範囲第2項に記載の方法。 (f)n個のビットを有する最上位レベルのバイトを設
    けるステップ、 (σ) n2個のビットを含むル・バイトを有する中間
    レベルを設け、1つのレンジ内のn3個のレコード通し
    番号はスパース配列によって表示きれるようにするステ
    ップ。 (4)前記のより上位のレベルの複数のバイトを設ける
    ステップは、8ビツトを有する最上位レベルの1バイト
    と各々が8ビツトからなる8つのバイトを有する1つの
    中間レベルとを設けるステップを含むことを特徴とする
    特許請求の範囲第2項記載の方法。 (5)データ・ベースにデータを記憶する方法であって
    、次の(1)乃至(Vii+) ’のステップを含むこ
    とを特徴とする前記方法。 (1)各々が複数のレコードを含む、複数のデータ・テ
    ーブルを設けるステップ、 (11)各データ・テーブルに対して一意的なレコード
    ・インデックス変数を割当てることにより各データ・テ
    ーブルを識別するステップ、(in) データ・テーブ
    ル内の各レコードに対して、そのデータ・テーブル内の
    該レコードに関し一意的なレコード通し番号を割当てる
    ステップ、 Qφ 各々が予め定められた数のレコード通し番号を有
    し、且つ連続的レンジ値を割当てられているレンジに各
    データ・テーブルの前記レコード通し番号を分配するス
    テップ、(■)各データ・テーブルのレコードを複数の
    フィールドに分割し、1つのデータ・テアプル内の各フ
    ィールドは、フィールド・インデツクス値によって識別
    きれ且つ選択されたタイプのデータ値を言むようにする
    ステップ、(vD 各々が前記データ・テーブルの1つ
    に対応し、データ・テーブルと同数である、複数の逆リ
    スト・テーブルを設け、次の(イ)及び(0)を含んで
    いるステップ、 (イ)各々が特定のフィールドに対応付けられ、その対
    応付けられたフィールドの特定のデータ値の、存在を表
    示する、複数のキーを生成し、 (ロ)各キーと対応付けられて5つ且つその対応付けら
    れたキーによって表示されたデータ値を含むレコードの
    レコード通し番号を表示する1つ以上のポインタを生成
    し、各ポインタは、レンジ内にある1つ以上のレコード
    通し番号の逆リスト・テーブルにおける存在を表示する
    レンジ値と、各レンジ値に対応し且つその対応付けられ
    たレンジ内のレコード通し番号を表示するスパース配列
    ビットマツプとを含むようにされるステップ、 (vl 前記複数のデータ・テーブルのうちの第1のデ
    ータ・テーブル内に、該第1データ・テーブルの各レコ
    ードと、第2のデータ・テーブルから選択された各レコ
    ードとの間の関係を表示する指示フィールドを設けるス
    テップ、 (Vii+) 前記第2データ・テーブルから選択され
    た前記レコードのレコード通し番号を表示するデータを
    前記指示フィールドに記憶することにより、データ・ベ
    ースに前記関係を記憶し、前記のレコード通し番号を表
    示するデータは、前記の選択でれたレコードのレコード
    通し番号のレンジ値と、各レンジ値に対応し且つ前記の
    選択されたレコードのレコード通し番号を表示するスパ
    ース配列ビットマツプとを含むようにされるステップ。 (6) データ・ベース・システムにレコード通し番号
    の逆リストをg5憶する方法であって、次の(υ乃至0
    11)を含むことを特徴とする前記方法。 (1)生じ得るレコード通し番号のリストを、予め定め
    られた数のレコード通し番号を有するレンジに分割し、
    各レンジは連続したレンジ値を有するようにするステッ
    プ、 (11)前記逆リストに存在し得る少なくとも1つのレ
    コード通し番号を含む各レンジについてレンジ値を選択
    するステップ、 (li+) 前記逆リスト中の各レコード通し番号の、
    選択されたレンジの各々における位置をコード化するス
    テップ。 (7) 次の(+)乃至(iii)を含むことを特徴と
    するデータ・ベース・/ステム。 (+) Pi数のデータ・テーブルであって、その各々
    のデータ・テーブルは識別用の一意的なレコード・イン
    デックス値と複数のレコードとを有し、 1つのデータ・テーブル内の各レコードは該データ・テ
    ーブル内のレコードに対して一意的なレコード通し番号
    によって識別され、各データ・テーブルのレコードは複
    数のフィールドを有して3つ、1つのデータ・テーブル
    内の各フィールドはフィールド・インデックス値によっ
    て識別ばれ、更にその各フィールドは選択されたタイプ
    のデータ値を含んでいる、前記複数のデータ・テーブル
    、(11)各データ・テーブルのレコード通し番号を、
    各々が予め定められた数のレコード通し番号を有し且つ
    連続したレンジ値を割当てられたレンジに分割する手段
    、 (IN) データ・テーブルと同数である複数の逆リス
    ト・テーブルであって、その各々は、前記データ・テー
    ブルの1つに対応付けられ、且つ次の(d)及び(6)
    を富んでいる前記の複数の逆リスト・テーブル。 ((L) 各々が特定のフィールドに対応し、そのフィ
    ールドの特定やデータ値の存在することを表示する複数
    のキー、 (b) 各キーに対応し、その対応付けられたキーによ
    2て表示された前記データ値を含むレコードのレコード
    通し番号を表わす1つ以上のポインタであって、その各
    々はレンジ値とスパース配列とを含んでいる前記ポイン
    タ。 (8)特許請求の範囲第7項記載のデータ・ベース・/
    ステムであって、更に複数のレベルを有するBトリー・
    インデックスを有し、前記データ・ベースに記憶された
    データ値は前記B ) l−の最下位レベルにおけるエ
    ントリーとしてBトリー内に記憶され、各データ・エン
    トリーは1つのキ一部と1つの対応付けられたデータ値
    を含み、該キ一部はレコード識別値と、レコード通し番
    号と、前記の対応付けられたデータ値のフィールド・イ
    ンデックス値とを有し、更にデータ・ベースにぢける各
    データ値は対応付けられたキーの直後にデータ・ベース
    に記憶され、各キーは対応付けられたデータ値の論理ア
    ドレスを与えることを特徴とする前記データ・ベース・
    システム。 (9) 前記スパース配列ビットマツプは最下位レベル
    の複数のバイトを有し、それらのバイトと同数の最下位
    レベル・ビットを前記バイトの各々は不しており、前記
    の最下位レベルの複数のバイトにおける最下位レベル・
    ビットの数は、各レンジのレコード通し番号の数に等し
    く、各最下位レベル・ビットは各レンジの前記レコード
    通し番号の1つに対応付けられていることと、更に次の
    (イ)乃至に)を宮むことを特徴とする特許請求の範囲
    第7項記載のデータ・ベース。 (イ)各レコード通し番号に対応付けられた最下位レベ
    ル・ビットをセットすることにより、レンジ内にレコー
    ド通し番号が存在することをコード化する手段、 (ロ) 1つの最上位レベル・バイトと1つ以上の中間
    レベルの複数バイトを含む、より上位の複数バイトであ
    って、各レベルの前記バイトのビット数は次に低いレベ
    ルのバイト数に等しく、より上位のレベルのバイト中の
    各ビットは次に低いレベルのバイトの1つに対応付けら
    れている、前記のより上位のレベルの複数バイト、 (ハ)次に低いレベルの対応したバイトが少なくとも1
    つのセットされたビットを含む、より上位のレベルのバ
    イト中のビットをセットするための手段、 に) 1つ以上のセットされたバイトを含むスパース配
    列ビットマツプのバイトを記憶する手段。 (]0)前記の、より上位のレベルの複数バイトは、n
    ビットを有する最上位レベルのバイトと n2個のビッ
    トを言むルバイトを有する1つの中間レベルとを含み、
    1つのレンジ内のn3個のレコード通し番号はスパース
    配列によって表示されることを特徴とする特許請求の範
    囲第9項記載のデータ・ベース・7ステム。 (Iυ 前記の、より上位のレベルの複数バイトは、8
    ビツトを有する最上位レベルのバイトと、各々が8ピツ
    )711=らなる8つのバイトを有する1つの中間レベ
    ルとを含むことを特徴とする特許請求の範囲第9項記載
    のデータ・ベース・/ステム。 (功 次の(1)乃至(ViiDを含むことを特徴とす
    るデータ・ベース・システム。 (1)各々が複数のレコードを有するデータ・テーブル
    を複数設ける手段、 (11)各データ・テーブルに一意的ナレコード・イン
    デックス変数を割当てることにより各データ・テーブル
    を識別する手段、 (iiD 1つのデータ・テーブル内の各レコードに、
    そのデータ・テーブル内のレコードについて一意的なレ
    コード通し番号を割当てる手段、 Oφ 各データ・テーブルのレコード通し番号を、各々
    が予め定められた数のレコード通し番号を含み、且つ連
    続的レンジ値を割当てられているレンジに分割する手段
    、 (V) 各データ・テーブルのレコードを複数フィール
    ドに分割し、1つのデータ・テーブル内の各フィールド
    がフィールド・インデックス変数により識別され、更に
    その各フィールドが選択されたタイプのデータ値を有す
    るようにする手段、 (VD データ・テーブルと同数である複数の逆リスト
    ・テーブルを設け、各逆リスト・テーブルが前記データ
    ・テーブルの1つに対応付けられ且つ次の(a、>及び
    (b)を言むようにする手段、 (α)生成された複数のキーであって、各キーは特定の
    フィールドに対応付けられてその対応付けられたフィー
    ルドの特定のデータ値の存在を表示するようになってい
    る前記複数のキー、 (b) 各キーに対応付けられ、前記の対応したキーに
    より表示されたデータ値を含むレコードのレコード通し
    番号を表わす1つ以上のポインタであって、各ポインタ
    は、レンジ内の1つ以上のレコード通し番号の、逆リス
    ト・テーブルに8ける存在を表示するレンジ値と、谷レ
    ンジ値に対応しその対応付けられたレンジ内のレコード
    通し番号が逆リスト・テーブルに存在することを示すス
    パース配列ビットマツプと、を有するようにされた前記
    ポインタ、 (ViD 前記の複数のデータ・テーブルのうちの第1
    のデータ・テーブル内に、該第1データ・テーブルの各
    レコード及び第2のデータ・テーブルから選択された各
    レコード間の関係を表示する指示フィールドを設ける手
    段、(viil) 前記指示フィールドに、前記の第2
    データ・テーブルから選択されたレコードのレコード通
    し番号を表示するデータを記憶することにより、前記デ
    ータ・ベースに前記の関係を記憶し、前記のレコード通
    し番号を表示するデータが前記の選択されたレコードの
    レコード通し番号のレンジ値と、各レンジ値に関連し且
    つ前記の選択でれたレコードのレコード通し番号を表示
    するスパース配列ピット・マツプを含むようにする手段
    。 (1,1特許請求の範囲第12項に記載されたデータベ
    ース−システムであって、更に、複数のレベルを有する
    Bトリー・インデックスを含み、前記データ・ベース・
    システムに記憶されたデータ値が前記B ) II−内
    、に、該B ) IJ−の最下位レベルのデータ・エン
    トリーとして記憶され、各データ・エントリーはキ一部
    及び対応するデータ値を含み、該キ一部はレコード識別
    値、レコード通し番号及び前記の対応付けられたデータ
    値のフィールド牽引値を有し、前記データ・ベースの各
    データ値は前記の対応付けられたキーの直後に記憶され
    、各キーは、その対応付けられたデータ値の論理アドレ
    スを与えることを特徴とする前記データ・ベース・シス
    テム。 (14) データ・ベース・システムにおいてレコード
    通し番号の逆リストを記憶するシステムであって、次の
    (1)乃至(川)を廿むことを特徴とする前記システム
    。 (1)生じ得るレコード通し番号のリストを、予め定め
    られた数のレコード通し番号を有するレンジに分割し、
    各レンジは連続したレンジ値を割当てられるようにする
    手段、 (Ji) 前記逆リストに存在する少なくとも1つのレ
    コード通し番号を営む各レンジについてそのレンジ値を
    選択する手段、 (fH) スパース配列によって前記逆リスト中の各レ
    コード通し番号の選択されたレンジにおける位置をコー
    ド化する手段。
JP59089212A 1983-05-02 1984-05-02 データ・ベースにデータを記憶する方法およびデータ・ベース・システム Expired - Lifetime JPH0766347B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US49081483A 1983-05-02 1983-05-02
US06/523,527 US4606002A (en) 1983-05-02 1983-08-17 B-tree structured data base using sparse array bit maps to store inverted lists
US523527 1983-08-17
US490814 1983-08-17

Publications (2)

Publication Number Publication Date
JPS6037048A true JPS6037048A (ja) 1985-02-26
JPH0766347B2 JPH0766347B2 (ja) 1995-07-19

Family

ID=27050186

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59089212A Expired - Lifetime JPH0766347B2 (ja) 1983-05-02 1984-05-02 データ・ベースにデータを記憶する方法およびデータ・ベース・システム

Country Status (5)

Country Link
US (1) US4606002A (ja)
EP (1) EP0124097B1 (ja)
JP (1) JPH0766347B2 (ja)
CA (1) CA1214284A (ja)
DE (1) DE3484910D1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62118435A (ja) * 1985-11-19 1987-05-29 Nec Corp 複数インデツクス生成方式
JPS62159222A (ja) * 1986-01-07 1987-07-15 Nec Corp デ−タ検索方式
JPH06243009A (ja) * 1992-12-08 1994-09-02 Microsoft Corp 全テキストインデックスを圧縮する方法

Families Citing this family (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4959769A (en) * 1983-10-03 1990-09-25 Wang Laboratories, Inc. Structures and methods for representing and processing documents
US4769772A (en) * 1985-02-28 1988-09-06 Honeywell Bull, Inc. Automated query optimization method using both global and parallel local optimizations for materialization access planning for distributed databases
JPS61220027A (ja) * 1985-03-27 1986-09-30 Hitachi Ltd 文書ファイリングシステム及び情報記憶検索システム
GB8515482D0 (en) * 1985-06-19 1985-07-24 Int Computers Ltd Search apparatus
US4803651A (en) * 1986-02-10 1989-02-07 Ibm Corporation Method for encoding and decoding acyclic, linked-list data structures for efficient storage, retrieval and searching
US5265244A (en) * 1986-02-14 1993-11-23 International Business Machines Corporation Method and system for facilitating processing of statistical inquires on stored data accessible through a data access structure
US6182062B1 (en) 1986-03-26 2001-01-30 Hitachi, Ltd. Knowledge based information retrieval system
US5010478A (en) * 1986-04-11 1991-04-23 Deran Roger L Entity-attribute value database system with inverse attribute for selectively relating two different entities
US4774657A (en) * 1986-06-06 1988-09-27 International Business Machines Corporation Index key range estimator
US5220652A (en) * 1986-07-21 1993-06-15 Rowley Blair A Computer application programs data input interface for handicapped persons responsive to multiple push buttons for selecting data stored in binary tree
US4945475A (en) * 1986-10-30 1990-07-31 Apple Computer, Inc. Hierarchical file system to provide cataloging and retrieval of data
US4841433A (en) * 1986-11-26 1989-06-20 American Telephone And Telegraph Company, At&T Bell Laboratories Method and apparatus for accessing data from data attribute tables
JPS63191226A (ja) * 1987-02-03 1988-08-08 Ricoh Co Ltd B↑+tree上における同時実行制御方式
US4858106A (en) * 1987-04-03 1989-08-15 General Electric Company Automated method implemented on a distributed data processing system for partitioning a data string into two substrings
US5060147A (en) * 1987-05-01 1991-10-22 General Electric Company String length determination on a distributed processing system
US5058002A (en) * 1987-06-23 1991-10-15 Mitsubishi Denki Kabushiki Kaisha Page splitting method and apparatus for a database stored in a plurality of memory storage units
US4802090A (en) * 1987-06-24 1989-01-31 General Electric Company Histogramming of pixel values on a distributed processing system
CA1288516C (en) * 1987-07-31 1991-09-03 Leendert M. Bijnagte Apparatus and method for communicating textual and image information between a host computer and a remote display terminal
US5072367A (en) * 1987-10-01 1991-12-10 International Business Machines Corporation System using two passes searching to locate record having only parameters and corresponding values of an input record
US4884218A (en) * 1987-10-01 1989-11-28 International Business Machines Corporation Knowledge system with improved request processing
EP0380574B1 (en) * 1987-10-07 1997-01-08 GORBATENKO, George G. Memory spaced array for storing relational data
US5008819A (en) * 1987-10-07 1991-04-16 Gorbatenko George G Memory spaced array
US4914569A (en) * 1987-10-30 1990-04-03 International Business Machines Corporation Method for concurrent record access, insertion, deletion and alteration using an index tree
US5123104A (en) * 1988-04-08 1992-06-16 International Business Machines Corporation Method and apparatus for concurrent modification of an index tree in a transaction processing system utilizing selective indication of structural modification operations
US4956774A (en) * 1988-09-02 1990-09-11 International Business Machines Corporation Data base optimizer using most frequency values statistics
GB8825780D0 (en) * 1988-11-03 1988-12-07 Microcomputer Tech Serv Digital computer
CA2001390C (en) * 1988-12-19 1997-12-30 Ming-Chien Shan View composition in a data-base management system
US5860136A (en) * 1989-06-16 1999-01-12 Fenner; Peter R. Method and apparatus for use of associated memory with large key spaces
AU620994B2 (en) * 1989-07-12 1992-02-27 Digital Equipment Corporation Compressed prefix matching database searching
US5247658A (en) * 1989-10-31 1993-09-21 Microsoft Corporation Method and system for traversing linked list record based upon write-once predetermined bit value of secondary pointers
GB9002875D0 (en) * 1990-02-08 1990-04-04 Hewlett Packard Co Method and apparatus for information management in a computer database
US5752016A (en) * 1990-02-08 1998-05-12 Hewlett-Packard Company Method and apparatus for database interrogation using a user-defined table
US5257365A (en) * 1990-03-16 1993-10-26 Powers Frederick A Database system with multi-dimensional summary search tree nodes for reducing the necessity to access records
US5367677A (en) * 1990-05-11 1994-11-22 Thinking Machines Corporation System for iterated generation from an array of records of a posting file with row segments based on column entry value ranges
US5295065A (en) * 1990-06-01 1994-03-15 Motorola, Inc. Resource-lot association coordinator
US5295261A (en) * 1990-07-27 1994-03-15 Pacific Bell Corporation Hybrid database structure linking navigational fields having a hierarchial database structure to informational fields having a relational database structure
DE69131941T2 (de) * 1990-10-05 2000-06-08 Microsoft Corp System und verfahren für informationsauffindung
WO1992009960A1 (en) * 1990-11-30 1992-06-11 Telematique International Laboratories Data retrieving device
GB9105367D0 (en) * 1991-03-13 1991-04-24 Univ Strathclyde Computerised information-retrieval database systems
US5430869A (en) * 1991-05-29 1995-07-04 Hewlett-Packard Company System and method for restructuring a B-Tree
EP0523269A1 (de) * 1991-07-18 1993-01-20 International Business Machines Corporation Computersystem zur Datenverwaltung
US5640599A (en) * 1991-12-30 1997-06-17 Apple Computer, Inc. Interconnect system initiating data transfer over launch bus at source's clock speed and transfering data over data path at receiver's clock speed
US5410677A (en) * 1991-12-30 1995-04-25 Apple Computer, Inc. Apparatus for translating data formats starting at an arbitrary byte position
US6256642B1 (en) * 1992-01-29 2001-07-03 Microsoft Corporation Method and system for file system management using a flash-erasable, programmable, read-only memory
GB9204450D0 (en) * 1992-03-02 1992-04-15 Ibm Concurrent access to indexed data files
JPH05324726A (ja) * 1992-05-25 1993-12-07 Fujitsu Ltd 文書データ分類装置及び文書分類機能構築装置
US5794228A (en) * 1993-04-16 1998-08-11 Sybase, Inc. Database system with buffer manager providing per page native data compression and decompression
US5852821A (en) * 1993-04-16 1998-12-22 Sybase, Inc. High-speed data base query method and apparatus
US5918225A (en) * 1993-04-16 1999-06-29 Sybase, Inc. SQL-based database system with improved indexing methodology
US5649181A (en) * 1993-04-16 1997-07-15 Sybase, Inc. Method and apparatus for indexing database columns with bit vectors
US5794229A (en) * 1993-04-16 1998-08-11 Sybase, Inc. Database system with methodology for storing a database table by vertically partitioning all columns of the table
US5560007A (en) * 1993-06-30 1996-09-24 Borland International, Inc. B-tree key-range bit map index optimization of database queries
US5613105A (en) * 1993-06-30 1997-03-18 Microsoft Corporation Efficient storage of objects in a file system
EP0646882B1 (en) * 1993-10-04 2002-03-20 Siemens Aktiengesellschaft Method and apparatus for fast accessing of data items from a sorted list and data base carrier for use with such method and/or apparatus
CA2117846C (en) * 1993-10-20 2001-02-20 Allen Reiter Computer method and storage structure for storing and accessing multidimensional data
US5363098A (en) * 1993-10-25 1994-11-08 Digital Equipment Corporation Byte aligned data compression
US5557786A (en) * 1994-01-24 1996-09-17 Advanced Computer Applications, Inc. Threaded, height-balanced binary tree data structure
US5664172A (en) * 1994-07-19 1997-09-02 Oracle Corporation Range-based query optimizer
US5678043A (en) * 1994-09-23 1997-10-14 The Regents Of The University Of Michigan Data compression and encryption system and method representing records as differences between sorted domain ordinals that represent field values
US5687361A (en) * 1995-02-13 1997-11-11 Unisys Corporation System for managing and accessing a dynamically expanding computer database
US5758145A (en) * 1995-02-24 1998-05-26 International Business Machines Corporation Method and apparatus for generating dynamic and hybrid sparse indices for workfiles used in SQL queries
JP3549608B2 (ja) * 1995-04-04 2004-08-04 富士通株式会社 識別子による階層構造データの構造判定方法および装置
US5748952A (en) * 1995-05-10 1998-05-05 International Business Machines Corporation System and method for avoiding complete index tree traversals in sequential and almost sequential index probes
US5644763A (en) * 1995-06-28 1997-07-01 Sybase, Inc. Database system with improved methods for B-tree maintenance
US5815829A (en) * 1995-07-19 1998-09-29 Zargar; Dara Job cost accounting data compression and indexing system and methods for doing the same
US5761652A (en) * 1996-03-20 1998-06-02 International Business Machines Corporation Constructing balanced multidimensional range-based bitmap indices
US5842196A (en) * 1996-04-03 1998-11-24 Sybase, Inc. Database system with improved methods for updating records
US5832484A (en) * 1996-07-02 1998-11-03 Sybase, Inc. Database system with methods for parallel lock management
US5940833A (en) * 1996-07-12 1999-08-17 Microsoft Corporation Compressing sets of integers
US6175835B1 (en) * 1996-07-26 2001-01-16 Ori Software Development, Ltd. Layered index with a basic unbalanced partitioned index that allows a balanced structure of blocks
IL118959A (en) 1996-07-26 1999-07-14 Ori Software Dev Ltd Database apparatus
US6208993B1 (en) * 1996-07-26 2001-03-27 Ori Software Development Ltd. Method for organizing directories
US6173298B1 (en) 1996-09-17 2001-01-09 Asap, Ltd. Method and apparatus for implementing a dynamic collocation dictionary
US6119114A (en) * 1996-09-17 2000-09-12 Smadja; Frank Method and apparatus for dynamic relevance ranking
US5937401A (en) * 1996-11-27 1999-08-10 Sybase, Inc. Database system with improved methods for filtering duplicates from a tuple stream
US6141656A (en) * 1997-02-28 2000-10-31 Oracle Corporation Query processing using compressed bitmaps
US5893094A (en) * 1997-07-25 1999-04-06 Claritech Corporation Method and apparatus using run length encoding to evaluate a database
FI109073B (fi) 1997-12-16 2002-05-15 Nokia Corp Menetelmä tietojen siirtämiseksi sanomamuodossa tietoliikennelaitteessa sekä tietoliikennelaite
US6675173B1 (en) 1998-01-22 2004-01-06 Ori Software Development Ltd. Database apparatus
EP0945784A1 (en) * 1998-03-27 1999-09-29 Motorola, Inc. Method for storing data structures in memory using address pointers, and apparatus
US6792432B1 (en) 1998-03-31 2004-09-14 Sybase, Inc. Database system with methods providing high-concurrency access in B-Tree structures
US6154822A (en) 1998-04-21 2000-11-28 International Business Machines Corporation Method and system for improving data storage and access for programs written in mid-level programming languages
US6070164A (en) 1998-05-09 2000-05-30 Information Systems Corporation Database method and apparatus using hierarchical bit vector index structure
US6192374B1 (en) * 1998-10-10 2001-02-20 Lawrence Technologies, Llc Efficient implementations of constructs such as feature tables
US6631366B1 (en) 1998-10-20 2003-10-07 Sybase, Inc. Database system providing methodology for optimizing latching/copying costs in index scans on data-only locked tables
US6363387B1 (en) 1998-10-20 2002-03-26 Sybase, Inc. Database system providing methodology for enhancing concurrency using row update bit and deferred locking
US6606626B1 (en) 1998-10-20 2003-08-12 Sybase, Inc. Database system with lock manager enhancement for improving concurrency
JP4156112B2 (ja) 1998-12-25 2008-09-24 富士通株式会社 高速検索方法及び高速検索装置
US6389507B1 (en) * 1999-01-15 2002-05-14 Gigabus, Inc. Memory device search system and method
US6154741A (en) * 1999-01-29 2000-11-28 Feldman; Daniel J. Entitlement management and access control system
US6591269B1 (en) 1999-05-19 2003-07-08 Sybase, Inc. Database system with methodology for online index rebuild
US6952741B1 (en) * 1999-06-30 2005-10-04 Computer Sciences Corporation System and method for synchronizing copies of data in a computer system
US7526487B1 (en) 1999-10-29 2009-04-28 Computer Sciences Corporation Business transaction processing systems and methods
US7571171B1 (en) 1999-10-29 2009-08-04 Computer Sciences Corporation Smart trigger for use in processing business transactions
US7693844B1 (en) 1999-10-29 2010-04-06 Computer Sciences Corporation Configuring processing relationships among entities of an organization
US7546304B1 (en) * 1999-10-29 2009-06-09 Computer Sciences Corporation Configuring keys for use in processing business data
US7363264B1 (en) 1999-10-29 2008-04-22 Computer Sciences Corporation Processing business transactions using dynamic database packageset switching
US20030093613A1 (en) * 2000-01-14 2003-05-15 David Sherman Compressed ternary mask system and method
US6490578B1 (en) 2000-04-05 2002-12-03 Sybase, Inc. Database system with methodology for high-performance date
DE10048478C2 (de) * 2000-09-29 2003-05-28 Siemens Ag Verfahren zum Zugriff auf eine Speichereinheit bei der Suche nach Teilzeichenfolgen
US6959303B2 (en) * 2001-01-17 2005-10-25 Arcot Systems, Inc. Efficient searching techniques
US6804677B2 (en) * 2001-02-26 2004-10-12 Ori Software Development Ltd. Encoding semi-structured data for efficient search and browsing
WO2003001720A2 (en) * 2001-06-21 2003-01-03 Isc, Inc. Database indexing method and apparatus
US7243108B1 (en) * 2001-10-14 2007-07-10 Frank Jas Database component packet manager
US7287033B2 (en) * 2002-03-06 2007-10-23 Ori Software Development, Ltd. Efficient traversals over hierarchical data and indexing semistructured data
US6823329B2 (en) * 2002-04-02 2004-11-23 Sybase, Inc. Database system providing methodology for acceleration of queries involving functional expressions against columns having enumerated storage
US20050120037A1 (en) * 2002-07-16 2005-06-02 Fujitsu Limited Apparatus and method for managing network storage, and computer product
US7447786B2 (en) * 2003-05-09 2008-11-04 Oracle International Corporation Efficient locking of shared data that is accessed for reads in a cluster database
US7533245B2 (en) 2003-08-01 2009-05-12 Illinois Institute Of Technology Hardware assisted pruned inverted index component
US20050108063A1 (en) * 2003-11-05 2005-05-19 Madill Robert P.Jr. Systems and methods for assessing the potential for fraud in business transactions
US7633886B2 (en) * 2003-12-31 2009-12-15 University Of Florida Research Foundation, Inc. System and methods for packet filtering
US7653619B1 (en) 2004-07-23 2010-01-26 Netlogic Microsystems, Inc. Integrated search engine devices having pipelined search and tree maintenance sub-engines therein that support variable tree height
US8886677B1 (en) 2004-07-23 2014-11-11 Netlogic Microsystems, Inc. Integrated search engine devices that support LPM search operations using span prefix masks that encode key prefix length
US7725450B1 (en) 2004-07-23 2010-05-25 Netlogic Microsystems, Inc. Integrated search engine devices having pipelined search and tree maintenance sub-engines therein that maintain search coherence during multi-cycle update operations
US7747599B1 (en) 2004-07-23 2010-06-29 Netlogic Microsystems, Inc. Integrated search engine devices that utilize hierarchical memories containing b-trees and span prefix masks to support longest prefix match search operations
US7603346B1 (en) 2004-07-23 2009-10-13 Netlogic Microsystems, Inc. Integrated search engine devices having pipelined search and b-tree maintenance sub-engines therein
US20060059021A1 (en) * 2004-09-15 2006-03-16 Jim Yulman Independent adjuster advisor
US8600997B2 (en) * 2005-09-30 2013-12-03 International Business Machines Corporation Method and framework to support indexing and searching taxonomies in large scale full text indexes
EP1821571A1 (en) * 2006-02-15 2007-08-22 Oticon A/S Loop antenna for in the ear audio device
US7792812B1 (en) 2006-03-31 2010-09-07 Netlogic Microsystems, Inc. Search engine devices that support high speed parallel decoding of digital search tries
US7739255B2 (en) * 2006-09-01 2010-06-15 Ma Capital Lllp System for and method of visual representation and review of media files
US7697518B1 (en) 2006-09-15 2010-04-13 Netlogic Microsystems, Inc. Integrated search engine devices and methods of updating same using node splitting and merging operations
US9311227B2 (en) * 2006-10-31 2016-04-12 Hewlett Packard Enterprise Development Lp Memory management
US20080109409A1 (en) * 2006-11-08 2008-05-08 Ma Capital Lllp Brokering keywords in radio broadcasts
US20080109845A1 (en) * 2006-11-08 2008-05-08 Ma Capital Lllp System and method for generating advertisements for use in broadcast media
US20080109305A1 (en) * 2006-11-08 2008-05-08 Ma Capital Lllp Using internet advertising as a test bed for radio advertisements
US7831626B1 (en) 2006-11-27 2010-11-09 Netlogic Microsystems, Inc. Integrated search engine devices having a plurality of multi-way trees of search keys therein that share a common root node
US7953721B1 (en) 2006-11-27 2011-05-31 Netlogic Microsystems, Inc. Integrated search engine devices that support database key dumping and methods of operating same
US8086641B1 (en) 2006-11-27 2011-12-27 Netlogic Microsystems, Inc. Integrated search engine devices that utilize SPM-linked bit maps to reduce handle memory duplication and methods of operating same
US7987205B1 (en) 2006-11-27 2011-07-26 Netlogic Microsystems, Inc. Integrated search engine devices having pipelined node maintenance sub-engines therein that support database flush operations
US8250075B2 (en) * 2006-12-22 2012-08-21 Palo Alto Research Center Incorporated System and method for generation of computer index files
US8819089B2 (en) * 2007-09-05 2014-08-26 Antenna Vaultus Inc. Memory efficient representation of relational data with constant time random access to the data itself
US7886176B1 (en) 2007-09-24 2011-02-08 Integrated Device Technology, Inc. DDR memory system for measuring a clock signal by identifying a delay value corresponding to a changed logic state during clock signal transitions
US7716204B1 (en) 2007-12-21 2010-05-11 Netlogic Microsystems, Inc. Handle allocation managers and methods for integated circuit search engine devices
GB2457303A (en) 2008-02-11 2009-08-12 Linear Algebra Technologies Randomly accessing elements of compressed matrix data by calculating offsets from non-zero values of a bitmap
US7801877B1 (en) 2008-04-14 2010-09-21 Netlogic Microsystems, Inc. Handle memory access managers and methods for integrated circuit search engine devices
US9412079B2 (en) * 2008-11-07 2016-08-09 Jda Software Group, Inc. System and method of scenario versioning
US9171044B2 (en) * 2010-02-16 2015-10-27 Oracle International Corporation Method and system for parallelizing database requests
US8438330B2 (en) 2010-05-17 2013-05-07 Netlogic Microsystems, Inc. Updating cam arrays using prefix length distribution prediction
US8996531B1 (en) * 2010-09-12 2015-03-31 Giovanni M Sacco Inverted index and inverted list process for storing and retrieving information
US8566324B1 (en) 2010-09-12 2013-10-22 Giovanni M Sacco Inverted index and inverted list process for storing and retrieving information
US20120316895A1 (en) * 2011-06-13 2012-12-13 Universal Research Solutions LLC Generating Cross-Channel Medical Data
US9747363B1 (en) * 2012-03-01 2017-08-29 Attivio, Inc. Efficient storage and retrieval of sparse arrays of identifier-value pairs
US9406072B2 (en) 2012-03-29 2016-08-02 Spotify Ab Demographic and media preference prediction using media content data analysis
US9547679B2 (en) 2012-03-29 2017-01-17 Spotify Ab Demographic and media preference prediction using media content data analysis
US10459904B2 (en) * 2012-03-29 2019-10-29 Spotify Ab Real time mapping of user models to an inverted data index for retrieval, filtering and recommendation
US8762387B1 (en) * 2013-07-31 2014-06-24 Linkedin Corporation Inverted indexes for accelerating analytics queries
KR101545714B1 (ko) 2015-01-19 2015-08-21 연세대학교 산학협력단 메모리 수리 장치 및 방법
US9798823B2 (en) 2015-11-17 2017-10-24 Spotify Ab System, methods and computer products for determining affinity to a content creator
US10459810B2 (en) 2017-07-06 2019-10-29 Oracle International Corporation Technique for higher availability in a multi-node system using replicated lock information to determine a set of data blocks for recovery

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3593309A (en) * 1969-01-03 1971-07-13 Ibm Method and means for generating compressed keys
US3603937A (en) * 1969-06-26 1971-09-07 Ibm Multilevel compressed index generation method and means
US3643226A (en) * 1969-06-26 1972-02-15 Ibm Multilevel compressed index search method and means
US3602895A (en) * 1969-06-30 1971-08-31 Ibm One key byte per key indexing method and means
US3646524A (en) * 1969-12-31 1972-02-29 Ibm High-level index-factoring system
US3670310A (en) * 1970-09-16 1972-06-13 Infodata Systems Inc Method for information storage and retrieval
US3651843A (en) * 1970-10-08 1972-03-28 Goodspeed Machine Co Tenon fluting machine
US3916387A (en) * 1971-04-23 1975-10-28 Ibm Directory searching method and means
DE2459476B2 (de) * 1974-12-16 1977-01-20 Gesellschaft für Mathematik und Datenverarbeitung mbH, 5300 Bonn Schaltungsanordnung fuer nichtzyklische datenpermutationen
US4283771A (en) * 1978-07-31 1981-08-11 International Business Machines Corporation On-chip bubble domain relational data base system
JPS5525883U (ja) * 1978-08-10 1980-02-19
US4318184A (en) * 1978-09-05 1982-03-02 Millett Ronald P Information storage and retrieval system and method
JPS583032A (ja) * 1981-06-30 1983-01-08 Fujitsu Ltd 木構造アクセス処理方式
US4553206A (en) * 1983-10-03 1985-11-12 Wang Laboratories, Inc. Image storage and retrieval

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62118435A (ja) * 1985-11-19 1987-05-29 Nec Corp 複数インデツクス生成方式
JPH0518148B2 (ja) * 1985-11-19 1993-03-11 Nippon Electric Co
JPS62159222A (ja) * 1986-01-07 1987-07-15 Nec Corp デ−タ検索方式
JPH06243009A (ja) * 1992-12-08 1994-09-02 Microsoft Corp 全テキストインデックスを圧縮する方法

Also Published As

Publication number Publication date
US4606002A (en) 1986-08-12
EP0124097A3 (en) 1988-08-31
EP0124097B1 (en) 1991-08-14
CA1214284A (en) 1986-11-18
EP0124097A2 (en) 1984-11-07
JPH0766347B2 (ja) 1995-07-19
DE3484910D1 (de) 1991-09-19

Similar Documents

Publication Publication Date Title
JPS6037048A (ja) データ・ベースにデータを記憶する方法およびデータ・ベース・システム
US5295261A (en) Hybrid database structure linking navigational fields having a hierarchial database structure to informational fields having a relational database structure
AU2005233925B2 (en) A database management system with persistent, user- accessible bitmap values
JP4034331B2 (ja) ディスク記憶装置への流れデータの記憶方法
US5813000A (en) B tree structure and method
JP3318834B2 (ja) データファイルシステム及びデータ検索方法
US20120197900A1 (en) Systems and methods for search time tree indexes
JP2001028009A (ja) データ値の集合の形成、記憶及び使用のための方法とシステム
JPWO2005086003A1 (ja) データベース・システム
US7174341B2 (en) Dynamic database management system and method
EP0398884A1 (en) A relational database representation with relational database operation capability
JPS63116232A (ja) 階層構造のファイルシステムおよびそれを構成する方法
JP2001527240A (ja) データ構造内の管理
US6275822B1 (en) Maintaining very large indexes supporting efficient relational querying
WO2007032068A1 (ja) データベース管理プログラム
JP2675958B2 (ja) 情報検索用計算機システム及びその記憶装置の動作方法
RU2389066C2 (ru) Многомерная база данных и способ управления многомерной базой данных
JPS62287350A (ja) インデツクス一括更新方式
JP2003030040A (ja) オブジェクトデータベースシステムの複数ハッシュインデックスおよび非ユニークインデックス管理方式
JPH0193843A (ja) テーブル結合方式
Hatzopoulos et al. On the optimal selection of multilist database structures
US7003524B1 (en) Polymorphic database
JPH02176838A (ja) レコード管理方式
JPS61278932A (ja) デ−タ追加処理方法
EP0494364A2 (en) Method and apparatus for information storage and retrieval