JP2001517338A - データベース内の情報をコンピュータにより動的に作成、変更、削除、保持する方法 - Google Patents

データベース内の情報をコンピュータにより動的に作成、変更、削除、保持する方法

Info

Publication number
JP2001517338A
JP2001517338A JP53898198A JP53898198A JP2001517338A JP 2001517338 A JP2001517338 A JP 2001517338A JP 53898198 A JP53898198 A JP 53898198A JP 53898198 A JP53898198 A JP 53898198A JP 2001517338 A JP2001517338 A JP 2001517338A
Authority
JP
Japan
Prior art keywords
column
information
database
cell
row
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.)
Pending
Application number
JP53898198A
Other languages
English (en)
Inventor
オリバー,ブライアン・キース
Original Assignee
マインドトレイル・プロプライエタリー・リミテッド
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
Priority claimed from AUPO5601A external-priority patent/AUPO560197A0/en
Priority claimed from AUPO5638A external-priority patent/AUPO563897A0/en
Priority claimed from AUPO8636A external-priority patent/AUPO863697A0/en
Application filed by マインドトレイル・プロプライエタリー・リミテッド filed Critical マインドトレイル・プロプライエタリー・リミテッド
Publication of JP2001517338A publication Critical patent/JP2001517338A/ja
Pending 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

【発明の詳細な説明】 データベース内の情報をコンピュータにより動的に作成、変更、削除、保持す る方法 本発明は、データベース内の情報をコンピュータにより動的に作成、変更、削 除、保持する方法に関する。 特に、本発明は、従来型データベース内に同一形式で構成された情報の、組織 、保存、表示、読み出し、索引作成および検索に関する。これ以外にも、本発明 は、同一ではない形式で構成された情報の保存および取り扱いにも利用できる。 発明の背景 人や組織が職場で行うことの多くは、報告書、評価書その他の書類に含まれる 情報や、専門知識、事実、戦略、その他の情報といった、既存の知識の利用、再 利用、拡張に密接に関わることが多い。コンピュータ技術はこれらの知識の捕捉 、管理、構成、保守および分配を可能にした。しかし、現在のシステムは、しば しば、費用がかかり、専門技師を必要とし、非効率的で、多大な労力を消費し、 時間のかかるものである。 以下に説明する従来の技術と本発明を容易に理解し、現実的な適用を可能にす るために、添付する各図面を参照されたい。図面の簡単な説明は以下の通りであ る。 図1はコンピュータの概要; 図2はデータベース内に表示された従業員情報; 図3は図2に示す従業員情報の、従来型データベース表における従来方式の構 築方法; 図4は情報集合体の概念図; 図5は図2に示す従業員情報の、従来型データベース表における、本発明を利 用した構築方法; 図6は従来型の情報処理において、図3に示すデータベース表の情報に列を1 つ追加する場合; 図7は本発明を利用して構成されたデータベースに列を1つ追加する場合のア ルゴリズム; 図8は図5に示すデータベースに列を1つ追加する場合; 図9は本発明を利用して構成されたデータベースから列を1つ削除する場合の アルゴリズム; 図10は図5から「給与」の列を削除した後の数値列定義表およびセル値保存 表; 図11は図5の列を改名する場合; 図12はデータベースに従来の方法で構築されている情報において、セル値が 不完全または定義されていない場合、そのセルに割り当てられた保存容量が無駄 になることを示す; 図13は本発明により構成されるデータベースにおいては、セル値が不完全ま たは定義されていなくても、保存容量が無駄にならないことを示す; 図14は本発明を利用して構成されたデータベースに行を1つ追加する場合の アルゴリズム; 図15は図5に示す、本発明により構築されているデータベースに行を1つ追 加した結果; 図16は本発明を利用して構成されたデータベースの行を1つ読み出す場合の アルゴリズム; 図17は本発明を利用して構成されたデータベースの行を1つアップデートす る場合のアルゴリズム; 図18は図5に示す、本発明により構築されているデータベースにおいて、図 16に示すアルゴリズムを用いて第3行をアップデートした結果; 図19は本発明を利用して構成されたデータベースから行を1つ削除する場合 のアルゴリズム; 図20は図5に示す、本発明により構築されているデータベースにおいて、図 19に示すアルゴリズムを用いて第2行を削除した結果; 図21は従来型および本発明を利用したデータベースのそれぞれにおける、S QLクエリーの例; 図22は本発明の「リンク付リスト」方式を利用して従来型データベース内の 図2の従業員情報をリンク付けする例; 図23は西暦2000年対応作業で、セル値保存表中「年」のセルのみを更新 することにより、作業の単純化が得られる例; 図24はセル値保存表と列定義表に新規の列を加えることにより、列を追加す る例; 図25は列ごとに独立した索引を作成するために、図2の情報のそれぞれの列 について、別々の索引を作成する例。 コンピューターの説明 本明細書において、コンピュータとは、図1に一般的に示すような機械を指す 。標準的なコンピュータは、キーボード入力装置、ポインタ装置、複数の表示装 置、大容量記憶手段、印刷手段、ネットワーク通信手段、入出力管理機能、メイ ンメモリ、キャッシュメモリを装着していることもある複数の中央演算素子等が 、通信機構あるいは何らかのバスなどで接続された形をとることが多い。 従来型データベースシステム 従来型データベースシステムは、情報を組織し、保存し、処理し、索引を作成 し、検索し報告書を作成することを目的としている。通常、情報をデータベース に保存する前に、保存する情報の値と種類に関して、「ノーマリゼーション」と いう、形式的な機械処理手続を経ることが一般的である。 (データベースシステム関連の文献引用) もっとも、最初から標準化されている情報であれば、このノーマリゼーション 手続が不要な場合もある。 一般的に、ノーマリゼーション手続を行う大きな理由の1つは、データベース 内の情報を保管と読み出しが効率的に行えるような構造にしておくことにある。 より厳密にいえば、ノーマリゼーション手続の過程で、情報(一般的にセル値の 形で表わされている)は、図2に示すように、データベース表の上に行列として 構成されている。これにより、従来型データベースシステムにおいて、情報の効 率的な保存、読み出し、検索、報告書作成が可能になる。 一般的に言って、ノーマリゼーションの度合は非常に重要である。なぜなら、 ノーマリゼーションの度合いはデータベース内に保管されている情報の処理速度 に影響するばかりでなく、どれほど効率的に情報を保存できるかにも影響してく るからである。 また、情報をデータベース内に保存する前にノーマリゼーションを行うことの 重要性は、次からも明らかである。すなわち、大学や類似の機関で開講されてい るデータベースの基礎コースで強調されていること、データベースの教科書やデ ータベースシステム付属書類の中でノーマリゼーションに多くの頁数が割かれて いること、また、SQL(Structured Query Language)など、データベースの クエリー言語を利用した処理を実行する際、それをいかに効率的に行えるかはデ ータベースのノーマリゼーションの度合に大きく依存すると考えられていること 。 ノーマリゼーションに先立って、情報はしばしば行列で構成され、行は同種の セル値を含み、列は互いに関連する、もしくは関係のあるセル値を含む。たとえ ば、図2において、それぞれのセル値は、種類(名前、年齢、住所など)ごとに 行に構成されている。それぞれの列には、特定の客体(抽象概念、対象物、物) に関する情報が並べられている。図2では、それぞれの列は、ある組織の一従業 員に関する情報(セル値)を表わしている。 ノーマリゼーション後の情報は、セル値、行、列はデータベースレコード値、 レコード、フィールド、表の形で表わされることが多い。もっとも、上記と同様 、データベースに格納しようとする情報がすでにそのままで効率的な情報である 場合は、ノーマリゼーション手続が不要な場合があることにも留意する必要があ る。 たいていの場合、いったんノーマリゼーション手続が完了すれば、セル、行、 列などの形で認識される情報と、それらが従来型データベースシステムにおいて それぞれフィールド値、フィールド、レコードとして格納されていた在り方との 間には、一対一の対応が成り立つ。例えば、図3には、図2の形で表された情報 が、従来型データベース表ではどのように表わされるかの例が示されている。 従来型データベースの説明 従来のコンピュータデータベースの用語では、データベースとは、表、フィー ルド、レコードで成り立っており、 データベースは1つ以上の表を有し、 表は零以上のレコードを有し、 表中のレコードの構成は一以上のフィールドによって定義され、 フィールドは、一単位のデータ(例えば、50文字の文字を有する「名前」フ ィールドとか、数字を有する「年齢」フィールド等)を表わすために必要な定義 としての名、種類、その他の保存要件を示す。多くのデータベースでは、フィー ルドは列の定義を保存するのに使われる。 レコードは、フィールド数値の集合であって、その構成はフィールドによって 定義され、値はデータベースの実際の情報セル内容となる。多くの場合、レコー ドは情報行を表わすのに使われる。 フィールド値は、データベースに保存される情報の最小単位である。多くの場 合、フィールド値は単一のセル情報を表わす。 データベースに保存されるべき情報の在り方と、コンピュータデータベース内 の情報の在り方との間には、しばしば一対一の対応が成り立つので、情報の構成 を表現する用語(たとえば、セル、行、列)が、そのままコンピュータデータベ ースの定義用語(たとえば、上記括弧内のそれぞれに対応して、フィールド値、 レコード、フィールド等)と同義に使われることが多い。例として、図2に示す データベース内に記載されている情報の定義と、図3に示すデータベース内に実 際に表わされている情報との対応関係を考察せよ。 従来型データベースの問題点 従来型データベース表においては、データベース表の構成を決定づけるフィー ルドの数と種類は、表を作成したときに決まってしまうことが多かった。つまり 、新規にデータベース表のフィールドを追加したり、既存のデータベース表のフ ィールドを並べ替えたり削除しようとする場合、既存のレコードを再構築するか 、そのために特別のソフトウェアを作る以外に方法が無かった。 例えば、図3に示した、従来型のデータベースとして表わされる従業員表に、 ある情報列(仮に「身長」とする)を追加しようとすると、既存のデータベース 表に記載されていた情報の全部と、新規フィールド(上の例では「身長」フィー ルド)を含む、まったく新しいデータベース表を作成する必要があった。 さらに、こうして作成された新しい従業員表に、元の従業員表の各レコードを コピーする必要があった。これは普通でも非常に手間と時間を要する作業である が、コピーすべき既存のレコード数が多い場合には特に膨大になる。この作業手 続を図6に例示した。 このほかにも、従来型データベース表においては、フィールドの削除、名称変 更、移動などの際にも同様の新規作成作業が必要になることが多い。もっとも、 多くの場合、従来型データベースにおいて、情報表を作成、名称変更、削除する に当たっては、その適時性には制限が無いことが多い。 データベース内に行として記載された情報に、列を追加することで新たに情報 を加える必要が出てきた場合に備えて、新規にレコードを再作成する手間を省く ためにとられる手段の一つは、新規作成時点で、様々な種類の空の(情報を持た ない)列をあらかじめ備えておくことである。これが、将来の情報に備えてスペ ースを空けておく方式である。 この方式の問題点は、将来のためにとってあるセルは、行の中で使われないま ま無駄になることである。また、その分の記憶容量は、必要ないにもかかわらず 無駄に管理されることになる。このため、データベースの容量が、非常に大きく なることもなりかねない。そのうえ、もし予備の列が全部使われてしまえば、予 備の列を追加するためにはまたデータベース表全体の新規作成が必要になってく る。 このように、簡単かつ効率的にフィールドを追加、構成、削除することができ ないにもかかわらず、これまで、従来型データベースの限界は(主に予備フィー ルド手法のおかげで)それほど強く認識されてこなかった。しかし、今日のよう に、情報をとりまく環境が流動的で、収集、処理、報告すべき情報の内容と構成 が常に変化する状況では、すぐこの限界に達してしまうことになる。 この結果、データベースシステムの維持に要するコストは、個人にとっても、 データベースを利用する組織にとっても、増加してきている。特に、すでに膨大 な既存のレコードが存在している場合や、当該維持作業を実行するためにソフト ウェアを維持したり、開発したりする場合にそれが顕著である。 本発明の目的 本発明は、上記に挙げた問題点の少なくとも1つを緩和し、データベース内に おいて情報列を作成、構成、改名、移動する際に効率的かつ信頼性の高い方法を 提供することにより、これら作業を効率的に遂行できるようにすることを目的と する。 本出願人等は、1997年3月12日及び13日付でオーストラリア国に提出 している仮明細書(番号PO5601及びPO5638)のなかで、「従来型」 データベースと「アルファ」データベースに言及している。アルファデータベー スとは、従来型のデータベース内にアルファフィールド定義とアルファフィール ドデータが保存されたものを言う。しかし、本発明においては、「アルファ」は 、単なる名称ではなく、特別の意味を持つと解されなければならない。したがっ て、本明細書では、「アルファ」という呼称を使用しない。本明細書においては 、「集合体」を「アルファ・レコード」、「関連表題情報」を「アルファ・レコー ド」の構成要素たる「アルファ・フィールド」に代わる呼称として用いることと する。「アルファ・データベース」は、本明細書では「関連表題情報の集合体」 と呼ばれる。 発明の要点 上記の目的を念頭において、本発明は、大まかに言えば、コンピュータ内に互 いに関連する表題を持つ情報を含むコンピュータデータベースの集合体を読み出 し可能な形で保管する方法に関するものである。この方法には以下が含まれる。 それぞれの表題を従来型データベースに従来型レコードとして保管することに より、表題を効率的に追加、移動、削除できるようにする。 さらに、これら表題を、独自の表題を付された集合体として、別の従来型デー タベースに従来型レコードとして保存しうる新たなデータベース手法を提供する 。 独自の表題を付された情報を、その表題及び集合体に関連づけ、それぞれの集 合体の保存、削除、アップデート、検索を可能にする。 それぞれが関連表題情報を含む集合体は、例えば図4に示すようになる。本発 明においては、情報はいつでも、データベース内の既存の情報を再構築すること なく追加、移動、削除することができる。 本発明は、マイクロソフト社のAccessやFoxPro、ポーランド社のParadoxやDba se、オラクル社のDatabase Systems等のシステムを利用することができる。他 にも、本発明の実施適用に当たっては、リレーショナル、階層構造、フェデラル 構造、オブジェクト指向データベースなどさまざまなデータベースを利用するこ とができる。必要に応じて、上記必要情報を保存するために、特別仕様のデータ ベースを新規開発してもよい。 また、更なる態様としては、本発明は、大まかに言って、従来型データベース に情報を保存する方法に関するものである。この方法には以下が含まれる。 各々の列定義を、従来型のデータベース内に従来型レコードとして保存し、列 定義の追加、移動、削除が従来型レコードとして効率的に行えるようにする。 1つのレコード内のセル値を別個のレコードとして保存することを可能にする 新たなデータベース手法を提供する。 各々のセル値をその列と関連づける。 好ましくは、各々のセル値と列との関連づけは、各々のセル値の他に列定義へ の言及を追加して保存することで行う。あるいは、各々のセル値と列との関連づ けは、従来型データベースの外字キーで行う。 この方法を利用することにより、既存のセル値の一貫性を損なうことなく、列 定義の追加、削除、構成変更ができるようになる。また、そのような操作に伴う データベースの既存のレコードの再構築も不要になる。 本発明の更なる態様を好ましく実施するために、情報の構築には以下が含まれ ることもある。 従来型データベース表を作成する(以下、「セル値保存表」とする)。この表 は、セル値の列を1つ持ち、関連するセル値の数は比較的少なく、同一種類のセ ル値の列を1つ以上持つこともある。 さらにもう1つの従来型データベース表を作成する(以下、「数値列定義表」 とする)。ここに、列を特定する諸情報(たとえば、列の名称など)を保存する 。 セル値保存表内のそれぞれのセルと、それらが属する列に関する数値列定義表 内の情報を関連づける手段を構築する。 上記により明らかである通り、本発明は、従来型データベースのように、意味 的に関連するセル(たとえば、図3に示すような表において行を構成する、図2 の従業員情報)を従来の表における1つのレコードとして扱うのではなく、列を 構成するセル値は図5に示すようなセル値保存表に保存する。これにより、列を 新たに追加/削除したり、既存の列を並べ替えたりすることが簡単にできるよう になる。 それぞれの列の定義および関連情報は、列定義表に、列の種類ごとに別々のレ コードとして保存される(図5.3および5.4に示す列定義表参照)。 たとえば、図3のように、従業員表を従来型レコード内にセル値として保存す るかわりに、数値情報を持つセルの情報は全て単一のセル値保存表に保存される (図5.1参照)。同様に、図3の従業員表における行を構成していた文字情報 を持つセルの情報は、図5.2に示すように、別の文字情報セル値保存表に保存 される。 さらに、従業員表のそれぞれの列の定義情報は、図5.3および5.4に示す ように、それぞれの列定義表に保存される。 同じ種類のセル値は全て同一のセル値保存表に保存されるので、同一のセル値 保存表の内部で違う種類の列に属するセル値同士を区別する手段が必要になる。 それにより、特定の列に属するセル値に関して、特定の行について作成、検出、 維持、削除が可能になる。 セル値保存表の個々のセル値が属する列を特定するためには、第二の従来型デ ータベース表(すなわち、「列定義表」)に保存する列定義に、追加情報を保存 することが望ましい。具体的には、上記は列定義表保存の個々の列定義に、その 列に固有の番号を付し、セル値保存表に保存する個々のセル値に、この列番号を 併記することで実現できる。 列定義表に保存される列定義は、これに加えて、列の名称とその他の情報、す なわち、容量、範囲、検索能力などを含む(図5.3、5.4参照)。さらに、 セル値保存表に保存する個々のセル値には、その属する行番号と列番号を併記す る。 その結果、従来の方式で構成されたレコードについて、フィールドとレコード が検出、アップデート、検索、索引作成、維持できたのと同様に、特定の列に属 するセル値に関して、特定の行について検出、アップデート、検索、構築、維持 が可能になる。 従来型データベースの用語で言えば、セル値保存表に記載される行番号と固有 の列番号は、特定の行、特定の列に属する特定のセル値の検出を可能にする「外 字キー」に相当する。したがって、どのセル値保存表にも少なくとも1つの列定 義表が割り当てられなければならず、また、どの列定義表にも少なくとも1つの セル値保存表が割り当てられる。 列定義表の例として、図5.3には数値情報の列定義表を、また、図5.4に は文字情報の列定義表を揚げた。この2つの表は、図2に示す従業員情報の1つ 1つの列のうちから、それぞれの種類の列を、列の名称ならびに適当なその他の パラメータを併せて示している。ここでのそれぞれの列に固有の列番号が、セル 値保存表(図5.1および5.2を参照)において、外字キーとして用いられ、 特定のセル値がどの列に属するかを示す働きをする。 たとえば、図5.1において、<2,1,6471>と記載されてあるレコー ドは、図2に示す従業員情報の、行2、数値列1(この列は、数値列定義表を参 照すれば、「従業員番号」の列であることが明らかである)のセルの内容を示し ている。同様に、図5.2において、<4,2,ケアンズ>と記載されてあるレ コードは、図2に示す従業員情報の、行4、文字列2(この列は、文字列定義表 を参照すれば、「都市」の列であることが明らかである)のセルの内容を示して いる。 本発明の上記以外の特長としては、以下に示すデータベース構成が揚げられる 。 「列定義表」と称する従来型のデータベース表を作成し、そこに列を定義する 情報、すなわち列の名称およびその他の情報を保存する。 上記に加えて、「セル値保存表」と称する従来型のデータベース表を作成し、 その一列はセル値を保存し、他の一列は対応する行値を保存する。 セル値保存表に保存されている個々のセル値を、列定義表に保存されているそ れぞれに対応する行および列値と関連づける、関連手段を有する。 典型的な実施の形態 この発明の典型的な実施の形態は、「クレバーX」と称するデータベース内の 情報の構築に見られる。クレバーXに関する詳細な説明は、添付のユーザーマニ ュアルに譲る。 クレバーXは、この発明の一態様を応用し、柔軟かつ高度な情報収集処理を従 来型データベースによって実現するものである。クレバーX用語を以下に揚げる 。 クレバーXワークシートとは、本発明にしたがって構成した情報を含むデータ ベースを指す。 クレバーXパレット部品は、クレバーXワークシート、クレバーXセクション ズ、クレバーXレスポンス、クレバーXテキストボックスなどの、本発明にした がって構成する様々な種類の「空欄」列の総称である。 本発明は、データベースにおいて情報列の効率的な追加、変更および削除を可 能にするものであるが、同様に、クレバーXも、クレバーXワークシート、クレ バーXセクションズ、クレバーXレスポンス、クレバーXテキストボックスの追 加、変更、削除を効率的に行うことができるようになっている。これら部品は、 それぞれがクレバーXのユーザーが決定した情報をクレバーX内に記載する役割 を担っている。 さらに、本発明にしたがって記載された情報においては、ある情報が不完全あ るいは未定義でも構わないが、クレバーXも同様に、ユーザーがクレバーX部品 の値を部分的に未定義もしくは空欄のままにしておいても構わないようになって いる。さらに、クレバーXは、ユーザーが条件定義の際、ユーザー情報がデータ ベースに記載されない条件を設定することも許容している。この場合、クレバー Xのユーザーが入力した情報のうち、条件に合致する情報は、データベース内の 定形外の行に保存される。 新たな情報列を追加する場合 すでに説明したように、従来型データベースシステムの問題点は、既存の表に 新たにフィールドを追加したいと思えば、新たなフィールドを含む表を新規に作 成し、既存の表から全レコードを新たな表にコピーし、場合によっては索引を作 成しなおさなければならないことにあった(図6参照)。 この問題点は、既存のレコード数の少ない小規模の従来型データベース表もし くはめったに変更されない情報を記載するデータベース表については顕著ではな いが、レコード数の多いデータベース表や、頻繁に変更を要する表においては大 きな問題となる。既存の表を再構築するのは、開発コストや、プロセッサ稼動時 間(一般的にデータベース内のレコード数に比例する)の面でコストがかかる。 最近のデータベースの中には、このような原始的な新規作成もしくは既存レコ ードのコピーといった作業に依らずともデータベース表に情報列を追加すること ができるものも出ているが、それらは既存レコード数の割に非常な時間を要する ものであったり、既存のデータベースフィールドの改名、移動、削除ができなか ったりする問題点がある。 情報を、本発明を応用した構成にして保存することにより、データベース表へ の新たな情報列の追加は、既存のレコード数に関わりなく比較的短時間でできる ようになる。また、レコードの再構築や索引の再作成は不要になる。何故なら、 新たな列の追加は、列定義表にレコードを追加するだけで行えるからである。レ コードを追加する際のアルゴリズムは図7に示してある。 たとえば、従業員の身長の列を追加するために、従来のデータベースシステム であれば、図6に示すような手段をとるのが普通である。他方、本発明に従えば 、身長フィールドを追加するためには図8に示す手段がとられる。セル値はレコ ードごとに行として並べられていないため、新たに列を加えるためにあらかじめ レコードごとに予備の保存用量を確保しておく必要はない。新たに加えられた列 に入れるセル値は、既存のレコードとは別個に既存の表や新規の表に保存される 。 既存の情報列を削除する場合 従来のデータベースシステムにおいては、上記のほか、既存の情報列を削除す る場合にも、新たな情報列の追加と全く同様に、既存のレコードの再構築が必要 になる問題があった。しかし、本発明の方式を利用して情報の構成を行えば、情 報列の削除は、以下の手続のみで行うことができる: 特定の列を列定義表から解除する、および 当該列に関連するセルを関連のセル値保存表から削除する。 上記のために使用するアルゴリズムを、図9に示す。 レコードの再構築が不要である理由は、列の削除が列定義表からの列の削除と 、関連するセルの関連のセル値保存表からの削除のみで行うことができるためで ある。個々のセル値は別個のデータベース表に保存されている。 たとえば、図3に示す、従来型で構築された従業員表から給与の列を削除する ためには、給与列を持たない従業員表を新たに作成し、その上で、既存の従業員 表から、給与列の値のみを除く全てのレコード値をこの新表にコピーする必要が あった。 本発明によれば、データベースからの給与の列の削除は、以下の手続きで行う ことができる。 図5.3の数値列定義表から、給与の列定義を削除する。その結果、図10. 1に示す表が得られる。さらに、 図5.1の数値セル値保存表から、従来型の構造クエリー言語で記述する下記 のような命令を使って給与のセル値を削除する。その結果、図10.2に示す表 が得られる。 「数値セル値保存表より、数値列番号が3であるレコードを削除せよ。」 既存の列定義を改名もしくは移動する場合 従来の方式で構築したデータベースにおいては、既存の列を改名したり移動し たりすることはあまり行われないが、それは、通常そのような作業のためには、 列定義の追加や削除と同様に、既存の表のレコードを再構築する必要があるため である。 本発明により構成されたデータベースにおいては、このような作業は列定義表 の列定義を変更するだけで簡単に行える。セル値保存表に保存されたセル値にア クセスする必要はなく、したがって、既存のレコードの再構築も不要である。 たとえば、図2の従業員表の「年齢」の列を、「誕生からの年数」と改名した いとすれば、本発明により構成されたデータベースにおいては、数値列定義表中 の対応する列定義に変更を加えるだけで済む(図11参照)。 構造的変更の融通性 本発明により構築された情報のもう1つの特長は、上記の各作業、すなわち、 データベース内の情報列の作成、変更、定義変更などが任意に行えることである 。しかも、これら作業はデータベースに新規のセル値を追加したり、既存のセル 値をアップデートしたりするのと同時に行うことができる。これは、セル値をセ ル値保存表に保存する作業は列定義を列定義表に保存する作業とは別個だからで ある。さらに、列の名称その他の列定義情報は、セル値とは別個に保存されるの で、データベース内の情報処理作業と同時に変更可能である。 このことは従来のデータベースの情報構築方法に比べて大きな利点である。な ぜなら、通常の場合、データベースの列の構造、定義、構成を改変しようとする 場合には、他のデータベース処理は中止されなければならないのに引き換え、本 発明では、データベースの構造的なアップデートを行う際に、ネットワークを通 じて利用しているユーザーを切断しなくても良くなるからである。 レコードの完全性および定形外の行情報 本発明により構築された情報のもう1つの特長は、セル値が定義されていなか ったり、不完全だったり、不明だったりする場合でも、従来方式で構築されたデ ータベースシステムのように、その分の記憶容量が無駄になってしまわないこと である。 たとえば、図12に示すように、従業員表にパートナーの欄が設けられている 場合、従来型のデータベースでは、全レコードについて、フィールドが実際に使 用されているか否かに関わらず全フィールド値のための容量を確保をするため、 パートナーのいない従業員についてはパートナーを保存するための容量が無駄に なってしまう。 一方、本発明により情報を構築すると、未定義、不完全あるいは不明な値を持 つセルは、保存されない。たとえば、図13おいて、メアリーとデイブに関して は、パートナーのセルは保存されない。このように、本発明によって情報を保存 するデータベースにおいては、使用されていないセル値のための容量が無駄にな ることはない。 この特長のため、従来方式で保存される行とは違い、不定形の情報行も許容さ れる[OUT(米国特許番号5682524参照)]本発明の方式で情報を構成 すれば、新たにデータベースソフトウェアのクエリー手段を開発する必要もない し、従来型のデータベースクエリー言語(例えばSQL)が稼動できるように単 一のフィールドを利用したハイブリッド型もしくは異形のバイナリーフォーマッ ト(たとえばBLOB=バイナリー・ラージ・オブジェクト)を使用して行を構 築する必要もないし、使用するデータベースツールを限定して情報へのアクセス 方途を狭めることもないのであるが、他の多くの標準的データベース開発ツール は新たにソフトウェアを開発せずにはBLOBフィールドを直接参照できないの で、上記のような制約が起こるのである。 データベースに新たな情報行を追加する場合 個々の情報行が1つのレコードとしてデータベース表に保存されているわけで はないので、従来の方式で構成されたデータベースのように、新たな行を完全な 形で追加する方式はとることができない。そのかわり、適当なセル値保存表に一 つ一つのセル値を別個のレコードとして追加することになる(図14のアルゴリ ズム参照)。図15は図14のアルゴリズムを実行した例である。{(従業員番 号1234)、(氏名ケビン)、(年齢31)、(都市メルボルン)、(給与5 2000)}という内容を持つ第5行を図14のアルゴリズムにしたがって追加 した結果を示す。 データベースから既存の情報行を検出する場合 同様に、個々の情報行が1つのレコードとしてデータベース表に保存されてい るわけではないので、従来の方式で構成されたデータベースのように、1つの行 を完全な形で検出する方式はとることができない。そのかわり、適当なセル値保 存表から別個のセル値として検出することになる(図16のアルゴリズム参照) 。図16のアルゴリズムを実施すると、たとえば、図5の情報に対して第2行を 要求することにより、{(氏名メアリー)、(年齢26)、(都市ブリスベーン )、(給与42000)}という結果が得られる。 データベースの既存の情報行をアップデートする場合 同様に、個々の情報行が1つのレコードとしてデータベース表に保存されてい るわけではないので、従来の方式で構成されたデータベースのように、1つの行 を完全な形でアップデートする方式はとることができない。そのかわり、適当な セル値保存表から別個のセル値としてアップデートすることになる(図17のア ルゴリズム参照)。図18は、図5の情報の第3行を、{(給与41000)} と改めた結果を示す。 従来型のデータベースで行をアップデートする場合と異なり、本発明によるデ ータベースで行をアップデートする場合には、当該行に属するセルが全て新しく なるわけではない。 データベースから既存の情報行を削除する場合 削除の場合は、適当なセル値保存表から、それぞれのセル値を削除することに なる。図19にそのアルゴリズムを示す。図20は、図19のアルゴリズムに従 い、図5のデータベースから第2行を削除する例である。 データベースに保存された情報についてクエリーを実行する場合 本発明の特長は、情報の保存に際して従来のデータベース技術を踏襲している ことである。このため、従来型データベースで可能な処理は本発明により保存さ れている情報についても適用できる。 したがって、構造的クエリー言語(たとえばSQL)、索引作成システム、レ ポート作成ツールなどは本発明にしたがって情報を保存しているデータベースに ついても使用可能である。図21に、従来型のSQLクエリーを従来型および本 発明により保存されている情報の双方について行う例を示してある。 データベース内の情報の索引作成 従来の方式に従って保存されている情報について索引を作成し、維持する作業 は、本発明により保存されている情報についても適用できる。たとえば、図3の 従業員情報の氏名フィールドについて索引を作成するのと同様の処理を、図5の 文字情報セル値保存表についても行うことができる。もっとも、図5の文字情報 セル値保存表には、その他の文字情報も保存されているので、この表について索 引作成処理を行えば、その他の文字情報も標識付けられてしまうという副作用に は留意が必要である。すなわち、図5の文字情報セル値保存表に索引作成処理を 行えば、氏名のみならず、「都市」列のセル値も同時に標識付けされるのである 。この副作用は、場合によっては不必要であるかもしれないが、そのときは新た な氏名セル値保存表を作成し、そこには氏名文字情報のみを保存することにすれ ば解決する。図25にその例を示す。 好ましい情報構成方法 本発明は、情報列の効率的な管理を目的とするものであるが、その結果として 、従来型データベースのように1つのレコードをセル値の1行として保存する方 式に比べ、セル値の1行全体を検出する場合の処理効率が劣る問題が生じる。し かしこの問題は、従来からセル値を保存するのに用いられてきた、リンク付リス ト方式を採用することで回避できる。この方式は、それぞれのセル値に、行にお いてそのセルの次に来るセルが何であるかを示す情報を追加する。図22に図5 の情報にこの方式を適用した場合の例を示す。もっとも、リンク付リストの特長 として、セル情報列が削除された場合は既存のリンクの再構築が必要になる場合 がある。 そのためのアルゴリズムは、すでに説明した列アップデートのためのアルゴリ ズムと同じである。情報行全体の追加、アップデート、検出、削除のためのアル ゴリズムは、標準的なリンク付リスト用のアルゴリズムと同じである。 レコードの保護 この発明のもう1つの特長は、多数のユーザーのいるデータベース環境におい て、アップデートの際特定のセル値を保護することができるようになることであ る。そのため、複数のユーザーが同じレコードに属する別々のセルの値を同時に アップデートすることができるようになる。 たとえば、ある会社に属するユーザーが図3の従業員表の第1行氏名列のセル 値を変更しようとするとき、もう一人のユーザー(同じ会社の別の部署に属する 人など)が、同じ従業員表の第1行給与列のセル値を変更しようとしていたとす れば、この2つの処理は同時に実行可能である。 上記を、従来型データベースシステムのほとんどにおいて、特定のレコードに ついて一時に変更処理を行えるのは1ユーザーに限られるのと比較せよ。 データベース内のセル値の再構築 本発明のもう1つの特長は、列情報と、それに対応するセル値保存表内のセル 値を、その他の行のセル値に影響を与えずに変更することができることである。 これにより、セル情報列保存の必要状況の変化にともない、列定義の変更と、そ れに対応するセル値の再構築が、他のセル値に影響を与えずに可能になる。 この特長の好例が、西暦2000年対応手続である。この危機に対応するため に、年を示す値を保存するセルが二桁になっている従来型データベースを全体と して再構築する代りに、本発明によって構成された情報においては、セル値保存 表の年号セルの値のみを変更すればよい。 新たな種類の列を追加する場合 本発明のもう1つの特長は、情報列を追加するのと全く同様に、新たな種類の 列を追加することもできる点である。 たとえば、本発明では、図7に示したように既存のデータベースに、すでにあ った列と同じ種類の列を新たに追加できるほかに、新たな種類の列定義およびセ ル値保存表を追加することで、情報行に新たな種類の列を付け加えることができ る。 図24はその例として、日付列定義と、日付セル値保存表を追加することで、 従業員情報の各行に、新たに日付セルを付け加える場合を示している。 本発明の効果 本発明は、データベース作成時点で収集、保存、構築、処理、報告すべき情報 の内容と構造が完全に知られていない業種で特に有効である。例えば、評価や測 量を行う業種、メモを多用する業種、判断を要したり、見積りや予測が必要にな る業種がそれである。また、情報の内容や構造が変動しやすい業種も本発明を利 用するシステムを導入することで効果を得られる。 たとえば、教員、医師、弁護士、銀行、保険、マーケティングなどを営む個人 や会社にあっては、収集した情報の構造や組み立てが変動しやすい。特に、時間 の経過に伴いそれが顕著になる。データベースシステムへの影響を最小限にしつ つ、これらの情報を組み替えることで効率化を図れる。 上記は本発明の一例を挙げたに過ぎないことは当然認識されなければならない 。上記についてこの分野に精通した人なら当然加えうるような改訂や変更は、添 付書類に定義される本発明の範囲内であり、広くその中に含まれるものと解さな ければならない。
───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 PO8636 (32)優先日 平成9年8月15日(1997.8.15) (33)優先権主張国 オーストラリア(AU) (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(GH,GM,KE,LS,M W,SD,SZ,UG,ZW),EA(AM,AZ,BY ,KG,KZ,MD,RU,TJ,TM),AL,AM ,AT,AU,AZ,BA,BB,BG,BR,BY, CA,CH,CN,CU,CZ,DE,DK,EE,E S,FI,GB,GE,GH,GM,GW,HU,ID ,IL,IS,JP,KE,KG,KP,KR,KZ, LC,LK,LR,LS,LT,LU,LV,MD,M G,MK,MN,MW,MX,NO,NZ,PL,PT ,RO,RU,SD,SE,SG,SI,SK,SL, TJ,TM,TR,TT,UA,UG,US,UZ,V N,YU,ZW

Claims (1)

  1. 【特許請求の範囲】 1.コンピュータ内に互いに関連する表題を持つ情報を含むコンピュータデー タベースの集合体を読み出し可能な形で保管する方法において、 各表題を効率的に追加、移動、削除できるように、それぞれの表題を従来型デ ータベースに従来型レコードとして保管し、 これら表題を、独自の表題を付された集合体として、別の従来型データベース に従来型レコードとして保存しうる新たなデータベース手法を提供し、 それぞれの集合体の保存、削除、アップデート、検索を可能にするように、独 自の表題を付された情報を、その表題及び集合体に関連づけるようにした方法。 2.請求項1に記載の方法であって、集合体は概念的に集合体の行を構成し、 従来型のデータベース(その中で上記従来型のレコードは行に構成され、それぞ れの列は同種のセル値の列をなす)と同様、題名付き同種の情報列をなすように した方法。 3.請求項2に記載の方法であって、その各列に関する情報は、列の名称およ びその他の列の性格を定義する情報を含むようにした方法。 4.請求項1から請求項3のいずれかに記載の方法であって、当該列定義情報 が少なくとも2つ以上別個のデータベースに保存されているようにした方法。 5.請求項4に記載の方法であって、当該フィールド定義の関連づけはリンク によって行われるようにした方法。 6.請求項4に記載の方法であって、セル値の処理上の関連づけは、セル値に 、そのセル値の行情報に加えて、該当する列番号への言及を保存することにより 行われるようにした方法。 7.請求項4に記載の方法であって、それぞれのセル値とその列との処理上の 関連づけは、従来型データベースの外字キーを利用することで得られるようにし た方法。 8.請求項1から請求項7のいずれかに記載の方法であって、 上記従来型データベース表は、列定義表として作成され、1つの列には列の名 称を、またその他の列にはそれ以外の性格付けに関わる情報を含む列定義情報が 保存され、 上記別個の従来型データベース表は、セル値保存表として作成され、セル値を 保存する1つの列と、関連する行番号を保存する1つの列を有し、 個々の情報集合体における名称と含有される情報相互間の関連づけは、セル値 保存表に保存されるセル値と、列定義表内のそのセルに固有の行および列情報を 関連づけることによって得られるようにした方法。 9.請求項8に記載の方法であって、上記セル値保存表は、比較的少数の相互 に関連するセル値、もしくは同一の種類の列に属するセルの値のみを保存するよ うにした方法。 10.従来型データベースに情報を保存する方法であって、 列定義を効率的に追加、移動または削除することができるように、列定義情報 を従来型レコードとして従来型データベースに保存し、 行を構成するセル値を別のレコードとして保存できるようなデータベース手段 を用意し、 それぞれのセル値をその属する行と列に関連づけるようにした方法。 11.情報を行列の形で従来型データベースに保存する方法であって、 列定義を効率的に追加、移動または削除することができるように、列定義情報 を従来型レコードとして従来型データベースに保存し、 行を構成するセル値を別のレコードとして保存できるようなデータベース手段 を用意し、 それぞれのセル値をその属する行に関連づけるようにした方法。 12.データベース構造であって、 列定義表として作成され、1つの列には列の名称を、またその他の列には、そ れ以外の列の性格付けに関わる情報を含む列定義情報を保存する従来型データベ ース表と、 セル値保存表として作成され、セル値を保存する1つの列と、関連する行番号 を保存する1つの列を有する他の従来型データベース表と、 セル値保存表に保存されるセル値と、列定義表内のそのセルに固有の行および 列情報を関連づけるための手段とを備えるようにしたデータベース構造。
JP53898198A 1997-03-12 1998-03-12 データベース内の情報をコンピュータにより動的に作成、変更、削除、保持する方法 Pending JP2001517338A (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
AU5601 1989-08-03
AUPO5601A AUPO560197A0 (en) 1997-03-12 1997-03-12 A computerised method of storing processing and accessing information
AUPO5638A AUPO563897A0 (en) 1997-03-13 1997-03-13 A computerised method of storing processing and accessing information
AUPO8636A AUPO863697A0 (en) 1997-08-15 1997-08-15 A computerised method of compiling reports
AU5638 1997-08-15
AU8636 1997-08-15
PCT/AU1998/000162 WO1998040829A1 (en) 1997-03-12 1998-03-12 A computerised method for dynamically creating, modifying, removing and maintaining information in a database

Publications (1)

Publication Number Publication Date
JP2001517338A true JP2001517338A (ja) 2001-10-02

Family

ID=27157981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53898198A Pending JP2001517338A (ja) 1997-03-12 1998-03-12 データベース内の情報をコンピュータにより動的に作成、変更、削除、保持する方法

Country Status (4)

Country Link
EP (1) EP0966714A1 (ja)
JP (1) JP2001517338A (ja)
CN (1) CN1253643A (ja)
WO (1) WO1998040829A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006031382A (ja) * 2004-07-15 2006-02-02 Daiwa Securities Group Inc データベース管理システム、プログラムおよび記録媒体

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020029207A1 (en) 2000-02-28 2002-03-07 Hyperroll, Inc. Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein
US7702666B2 (en) * 2002-06-06 2010-04-20 Ricoh Company, Ltd. Full-text search device performing merge processing by using full-text index-for-registration/deletion storage part with performing registration/deletion processing by using other full-text index-for-registration/deletion storage part
US7979453B2 (en) * 2006-08-23 2011-07-12 Innovative Solutions, Inc. Efficient search result update mechanism
CN106407230A (zh) * 2015-08-03 2017-02-15 天脉聚源(北京)科技有限公司 一种数据分类方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566330A (en) * 1991-08-20 1996-10-15 Powersoft Corporation Method for forming a reusable and modifiable database interface object
US5423033A (en) * 1992-09-30 1995-06-06 Intuit, Inc. Report generation system and method
US5504890A (en) * 1994-03-17 1996-04-02 Sanford; Michael D. System for data sharing among independently-operating information-gathering entities with individualized conflict resolution rules

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006031382A (ja) * 2004-07-15 2006-02-02 Daiwa Securities Group Inc データベース管理システム、プログラムおよび記録媒体

Also Published As

Publication number Publication date
EP0966714A1 (en) 1999-12-29
CN1253643A (zh) 2000-05-17
WO1998040829A1 (en) 1998-09-17

Similar Documents

Publication Publication Date Title
US5991776A (en) Database system with improved methods for storing free-form data objects of data records
US8886617B2 (en) Query-based searching using a virtual table
US5713014A (en) Multi-model database management system engine for database having complex data models
US9542424B2 (en) Lifecycle-based horizontal partitioning
US5499359A (en) Methods for improved referential integrity in a relational database management system
US8356029B2 (en) Method and system for reconstruction of object model data in a relational database
USRE40520E1 (en) Easily expandable data processing system and method
US6374252B1 (en) Modeling of object-oriented database structures, translation to relational database structures, and dynamic searches thereon
US5809497A (en) Databank system with methods for efficiently storing non uniforms data records
US8442982B2 (en) Extended database search
US20030195889A1 (en) Unified relational database model for data mining
US8706779B2 (en) System and method for data storage
US7499944B2 (en) Method and apparatus for processing a dimension table and deriving a hierarchy therefrom
US20060161545A1 (en) Method and apparatus for ordering items within datasets
KR20010083096A (ko) 가치-사례-연결을 통한 컴퓨터에 의해 구현되는데이터베이스
US7617206B1 (en) Method for analyzing status of specialized tank files which store and handle large objects
JP2004030221A (ja) 変更対象テーブル自動検出方法
JPH04124774A (ja) 関係データベースにおける階層構造のデータ蓄積方法
KR101829198B1 (ko) 보고서의 중요도를 분석하는 메타 데이터 기반 온라인 분석 프로세싱 시스템
JP2001517338A (ja) データベース内の情報をコンピュータにより動的に作成、変更、削除、保持する方法
EP1116137B1 (en) Database, and methods of data storage and retrieval
US8554722B2 (en) Method for transferring data into database systems
US7433882B2 (en) Data management system and computer program
US20040210564A1 (en) Indexing method and system for relational databases
JP2004192657A (ja) 情報検索システム、情報検索方法および情報検索用プログラムを記録した記録媒体