(57)【特許請求の範囲】
【請求項１】
データベースを構成する方法であって、前記データベースがデータ・オブジェクトを含み、前記データ・オブジェクトがデジタル・データにより表され、プロセスが前記データ・オブジェクトをアクセスするものにおいて、
前記データ・オブジェクトに対する前記プロセスのアクセスを収集するステップと、
前記収集されたアクセスを第１の情報ブロックに記憶するステップと、
前記第１の情報ブロック内の情報にもとづき、前記データベースを構成するステップと、
前記データベースが分散・リレーショナル・データベースであって、前記分散データベースのデータ・オブジェクトが異なる記憶手段上に配置され、前記データ・オブジェクトを全体として、前記データベースの記憶手段に割当てるか、または前記データ・オブジェクトの部分を前記データベースの様々な記憶手段に割当てるステップと、
前記プロセスが実行される位置を決定するステップと、
前記位置情報を第２の情報ブロックに記憶するステップと、
前記データ・オブジェクトの分割に関する決定、並びに前記データ・オブジェクトの部分の割当てに関する決定のために、前記第１の情報ブロックの情報を、前記第２の情報ブロックの情報にリンクするステップと、
前記第１の情報ブロックが第１のマトリックス形式により、どの前記プロセスが読出し動作及び書込み動作において、前記関係のどの属性を、どの程度の頻度でアクセスするかに関する情報を含み、
前記第２の情報ブロックが第２のマトリックス形式により、どの前記プロセスがどの位置において、どの程度の頻度で実行されているかに関する情報を含み、
前記第１及び第２のマトリックスが一緒に乗算され、結果のマトリックスが計算され、
前記結果のマトリックスが、前記関係のどの属性が読出し動作及び書込み動作において、どの位置からどの程度の頻度でアクセスされるかに関する情報を含む、
方法。
【請求項２】
少なくとも１つの加重関数が前記結果のマトリックスに適用され、加重された結果のマトリックスが計算される、請求項１記載の方法。
【請求項３】
分布関数が前記結果のマトリックスまたは前記加重された結果のマトリックスに適用され、前記データ・オブジェクトの分割を決定し、前記分散データベースの様々な記憶手段にわたる前記データ・オブジェクトの部分の配分を決定する、請求項１または請求項２記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、特にデータ・オブジェクトを分割することにより、データベースを構成する方法及びシステムに関する。この分割プロセスは、しばしばデータベース技術において、"フラグメンテーション"と呼ばれる。本発明は更に、データベース内のデータ・オブジェクトを配分する方法及びシステムに関する。このプロセスは、しばしばデータベース技術において、"アロケーション"と呼ばれる。
【０００２】
【従来の技術】
データベース内のデータ・レコードを形式的に記述するために、データベース内の全てのデータ及びそれらの相互関係をマップするデータ・モデルが開発された。こうした意味的（semantic）または概念的データ・モデルの例が、"実体関連モデル（ＥＲＭ：Entity Relationship Model）"であり、論理データ・モデルが意味的データ・モデルから導出される。論理データ・モデルは階層データ・モデルであり、しばしば"ツリー・モデル"、オブジェクト指向データ・モデル、またはリレーショナル・データ・モデルと呼ばれる。更に、集中データベースと分散データベースとが区別される。
【０００３】
H．F．Korth及びA．Silberschatzによる"Database System Concepts"（McGraw-Hill、New York、1986）では、様々なデータベース概念が提示され、それらについて述べられている。分散データベースでは、データは異なる記憶媒体上に記憶される。一般に、データは異なる位置にある異なるコンピュータ上にも記憶される。様々なコンピュータ・システムが通信ネットワークにより相互に接続され、互いに様々な通信手段により連絡し合う。
【０００４】
S．Ceriによる"Distributed Databases: Principles and Systems"（McGraw-Hill、New York、1984）、並びにH．Kudlichによる"Verteilte Datenbanken: Systemkonzepte und Produkte"（Siemens AG、Berlin、1992）では、分散データベースの原理が提示され、様々な分散データベース・システムについて述べられている。
【０００５】
S．Ceri、S．Navathe及びG．Wiederholdによる"Distribution Design of Logical Database Schemas"（IEEE Transactions on Software Engineering、Vol．SE-9、No．4（July 1983）、Page 487-504）、並びにS．Ceri、B．Pernici及びG．Wiederholdによる"Distributed Database Design Methodologies"（Proceedings of the IEEE、Vol．75、No．5（May 1987）、Page 533-545）では、論理データベース・システムの設計の提案が述べられており、分散データベースの設計技法が提示されている。
【０００６】
R．Nussdorferによる"DRDA: Verteilte Datenbanken fur heterogene Umgebungen"（Datenbank Extra発行）、並びにU．Parthierによる"DB2: Seine Tools、Neuerungen und Moglichkeiten"（IT Verlag fur innovative Technologien、Sauerlach、1993、Page 23-27）では、分散データベースの業界標準ＤＲＤＡについて述べられている。アーキテクチャが、異なる製造業者のデータベースのリンクを可能にするプロトコル及び規定を指定する。
【０００７】
論理データベース・スキーマから物理データベース・スキーマへの遷移は、データベースの構成として理解することができ、例えばデータベース管理者により実行される。
【０００８】
I．Fogg及びM．Orlowskaによる"Valid Unbiased Fragmentation for Distributed Database Design"（Computers Math．Applic．（UK）、Vol．25、No．9、1993、Page 97-106）では、分散データベースにおけるフラグメンテーションの様々な可能性が提示されている。水平及び垂直フラグメンテーションだけでなく、それらのフラグメンテーション・モードの組み合わせ形態についても提示されている。
【０００９】
J．A．Bakkerによる"A Semantic Approach to Enforce Correctness of Data Distribution Schemes"（The Computer Journal（UK）、Vol．37、No．7、1994、Page 561-575）では、構造化照会言語（ＳＱＬ：Structured Query Language）及び２つの実体関連モデルが、データ分散の有用性に関して調査されている。フラグメンテーション及びアロケーションのための意味論的メタモデルにもとづく新たなアプローチが述べられ、そこでは水平フラグメンテーションの２つのモードだけが許可される。
【００１０】
リレーショナル・データベースでは、データが関係形式で記憶される。関係はテーブルとしても表され、そこでは、関係の属性がしばしばテーブルの列として表される。
【００１１】
"Distributed Relational Database Architecture: Evaluation and Planning Guide"（2nd edition、Doc．No．SC26-4650-01、IBM、San Jose（CA）、USA、1993）、並びに"Distributed Relational Database Planning and Design Guide for DB2 Users"（Doc．No．GG24-3577、IBM、San Jose（CA）、USA、1991）（これらの両方の刊行物はＩＢＭから入手可能）では、分散リレーショナル・データベースのアーキテクチャ、並びに分散リレーショナル・データベースの設計ガイドラインが述べられている。
【００１２】
Y．Zhang、M．E．Orlowska及びR．Colombによる"An Efficient Test for the Validity of Unbiased Hybrid Knowledge Fragmentation in Distributed Databases"（International Journal of Software Engineering and Knowledge Engineering（Singapore）、Vol．2、No．4、1992、Page 589-609）では、リレーショナル・データベースのフラグメンテーションの３つのモードが述べられている。
【００１３】
企業の進行しつつあるグローバル化は、生産プロセスの合理化の必要性と共に、事業プロセスの再編成及び情報システムの強化をもたらしつつある。
【００１４】
H．Heilmannによる"Workflow Management: Integration von Organisation und Informationsverarbeitung"（HMD、176、1994、Page 8-21）では、事業プロセスが範囲指定可能な、しばしば部分的なプロセスとして述べられ、これが事業結果の創造または利用につながる。この中では、初期化から完了までのプロセスの動的なフローが強調される。用語"作業フロー（workflow）"が、しばしば用語"事業プロセス（business process）"の代わりに使用される。
【００１５】
F．Leymann及びD．Rollerによる"Business Process Management with FlowMark"（Digest of Papers、Cat．No．94CG3414-0、Spring COMPCON 94、1994、Page 230-234）では、IBM FlowMark作業フロー管理システムが述べられる。事業プロセスをモデル化する可能性が提示され、作業フロー管理の実行が述べられる。IBM FlowMark製品は、ＩＢＭから通常のチャネルを通じて獲得することができる。
【００１６】
用語"簡潔管理（Lean Management）"の名で普及するような、より一様な組織構造は、意志決定単位が思い通りに全ての情報を適時有するならば、成功裡に導入され得る。これはすなわち情報技術において、無効な管理作業、並びに処理の複雑で冗長なチャネル及び期間が、アイランド・ソルーション（island solutions）などにより、排除されなければならないことを意味する。
【００１７】
結果的に、多くの企業は事業プロセスを最適化するために、それらを再構築しつつあり、また事業プロセスの実行を改良するために、標準的な事業プロセスを自動化しつつあり、更に情報配分に関する理想的な状態を生成するために、一様で企業全体に行きわたるデータ・モデルにもとづき、彼らの情報システムを統一しようとしている。
【００１８】
論理データベースのデータを異なる物理位置にわたって配分するための、ＩＢＭ  ＤＢ２などの最新のデータベースの可能性は、前記２つの企業行動並びに多くの企業のグローバル構造により、ここに大きく集中している。ＩＢＭ  ＤＢ２は、ＩＢＭから通常のチャネルを通じて獲得することができる。
【００１９】
既存のデータベース・システムはデータの配分をサポートするが、これらは意味論的に見た場合、いかにデータがノードにわたって配分されるかを決定するための支援を有さない。より詳細には、顧客要求にもとづき、"実体関連モデル（ＥＲＭ）"により物理データベース・スキーマを生成するモデルが、データの配分を扱わなかったり、単にデータの配分を扱うがそれをいかに実行するかに関する命令を有さなかったりする。
【００２０】
【発明が解決しようとする課題】
従って、本発明の目的は、データベースの構成を最適化することである。最適化はシステム制御されるべきであり、特に性能面に関係するはずである。構成はまたコストに関しても最適化される。
【００２１】
本発明の別の目的は、データベースを、例えばデータベースの初期始動時などに静的に構成するだけでなく、動的にも構成することである。すなわち、動作中におけるデータベースのシステム制御再構成が可能である。
【００２２】
【課題を解決するための手段】
前記目的が、本発明により開示される方法及びシステムにより満足される。本発明の有利な実施例が、関連する請求項で開示される。
【００２３】
従来の経験から、データベースの構成が、どのプロセスがデータベースのデータ・オブジェクトを、どのようにまたどの範囲までアクセスするかに関する情報により制御されることが理解される。特に分散データベースの構成は、どのプロセスが関係のどの属性から（属性に）、どの程度の頻度で読出す（書込む）かに関する情報により制御される。
【００２４】
データベースは、例えばユーザの振る舞いの変化に応答するために、初期始動時及びデータベースの動作中に動的に構成され得る。
【００２５】
請求項１に記載される方法は、データベース・アクセスを収集及び記憶し、データ・オブジェクトを分割することにより、本発明の目的を満足する。
【００２６】
例えばデータをアクセスするプロセスが、データベースへのユーザ照会、またはデータベース内のデータをそれらの実行シーケンスの一部としてアクセスするコンピュータ・プログラムであったりする。プロセスは特に、作業フロー管理システムにより制御されるコンピュータ・プログラムであったりする。
【００２７】
データベースは階層的であったり、オブジェクト指向またはリレーショナルであったりし、また集中型または分散型であったりする。データはデジタル形式により、任意の技術的に可能な方法により記憶される。データは特に、半導体メモリなどに電子的に記憶されたり、磁気的または光学的に、或いはそれらの方法の組み合わせにより記憶され得る。
【００２８】
データ・オブジェクトはデータベース・スキーマに従い決定される。すなわち、データ・オブジェクトは、階層データベース・スキーマのツリー構造、またはオブジェクト指向データベース・スキーマ内のデータ・オブジェクト、またはリレーショナル・データベース・スキーマ内の関係を表し得る。
【００２９】
データベース上へのアクセスの収集には、プロセスがデータベース内のデータを読出し動作または書込み動作のいずれでアクセスするかの判断が含まれる。データベースへの作業フロー管理システムのアクセスが観察される場合、作業フロー管理自体がしばしば、アクセス情報をタイプまたは有効範囲（scope）により伝達する機構を提供する。アクセス情報は、既知の方法または技術により記憶され、特に電子式、磁気式または光学式記憶装置が想定される。
【００３０】
データベースは特に、内部のデータ・オブジェクトを分割することにより構成され得る。データ・オブジェクトは冗長性を有して分割されたり、有さないで分割され得る。特に、データ・オブジェクトの異なる部分の各々がキー要素を有し、元のデータ・オブジェクトを正確に復元可能であることが考えられる。
【００３１】
請求項１で開示される方法は、論理データベース・スキーマ、並びにデータベースへのアクセスに関する情報にもとづき、データベースの有利な構成を提供する。適切な基準に従う構成が、プロセッサまたは記憶システムなどの必要なデータベース資源の低減を可能にする。このことは空間要求の低減、低エネルギー消費、高信頼性、及び低コストの利点を提供する。適切な基準に従う構成はまた、データベース・システムのコストを維持または低減しながらデータベースの性能の向上を可能にする。
【００３２】
請求項２で開示される方法に従う本発明の実施例によれば、データベースの動的再構成が提供される。このようにして、データベース構成がデータベース照会の変化に動的に適応化され得る利点がある。結果的に、例えば性能、信頼性及びコストの点で、一貫して高度で有利なデータベース標準が保証される。
【００３３】
請求項３に従う本発明の別の実施例では、２つのプロセスが同時にアクセスしたいデータ・オブジェクトが分割される。これによれば、データベースの性能が向上される利点がある。すなわち、請求項３の特徴により、データ・オブジェクトの一部分をアクセスしているだけのプロセスにより、他の全てのデータベース・プロセスからのそのデータ・オブジェクトに対するアクセスが阻止されることが回避される。
【００３４】
請求項４に従う本発明の更に別の実施例では、リレーショナル・データベースにおいて、データベース内のデータのリレーショナル・マッピングが、多くの他の論理データベース・モデルよりも、より実際的であるという利点がある。これはデータベース・アクセスにおける高速の処理速度を可能にする。データ・オブジェクトは、属性を有する関係により表される。データ・オブジェクトの分割は関係の分割により表され、各部分は全体の関係を正確かつ完全に復元可能にするキー属性を割当てられる。関係は特に、プロセスが同時に属性をアクセスしようとするとき、分割され得る。このようにして、両方のプロセスが将来的に、関係の別々の部分を同時にアクセスすることができる。
【００３５】
請求項５に従う本発明の更に別の実施例では、データベースが分散データベースである。これによれば、多くのデータベース・アプリケーションが異なる位置にわたって配分され、従って、分散データベースが短い伝送パスによりデータベースの性能を改良するだけでなく、データ伝送コストを低減する利点がある。このために、本発明による方法は、データ・オブジェクト及びデータ・オブジェクトの部分を配分し、それらを関連位置に割当てる。分散データベースの使用はまた、より小規模なプロセッサ及び記憶システムの配備を可能にする利点を有し、高信頼性及び高可用性を提供し、安価な獲得及び稼動コストをもたらす。
【００３６】
請求項６に従う本発明の更に別の実施例では、データベース・アクセスの位置に関する情報が収集され、記憶され、そしてデータベースの構成のために使用される。これは分散データベースでは、分散データベースの構成の重要な基準を考慮するために適用され得る。この位置情報は、既にこの情報を少なくとも部分的に記憶している作業フロー管理システムにより、有利に提供され得る。
【００３７】
請求項７及び請求項８に従う本発明の更に別の実施例では、データベースが分散リレーショナル・データベースである。マトリックス形式の情報の処理では、複雑な計算がアドレス指定をほとんど伴わず、従って時間消費をほとんど要せずに実行され得る利点がある。更に別の利点は、結果のマトリックスがデータベースの構成に関する全てのデータを、明快で簡潔で容易に加工可能な様式で含むことである。
【００３８】
請求項９に従う本発明の更に別の実施例では、加重関数が結果のマトリックスに適用される。これによれば、データベースの構成が、それぞれの加重関数に従い制御及び最適化され得る利点がある。例えば、適切な第１の加重関数が、短い処理時間を達成するために、データベース構成を特定的に最適化できる。同様に、例えば適切な第２の加重関数が、低データ伝送コストまたは低管理コストに関連して、構成を最適化できる。他の加重関数は、安全性に関する面、企業特有の面、局所的な面、優先順位などを考慮し得る。これらの組み合わせも考えられる。
【００３９】
請求項１０に従う本発明の更に別の実施例では、データ・オブジェクトの配分を指定するために、分布関数が使用される。この分布関数は、様々な側面に従い配分を指定でき、また変更され得る。
【００４０】
加重関数及び分布関数は、数学において既知のマトリックス計算の規則に従い、結果のマトリックスに適用される。それにより、低レベルの要求計算能力により、短時間内に複雑な状況を考慮することを可能にする利点がある。更に別の利点は、加重関数及び分布関数が、変化するバックグラウンド状態に容易に適応化され、データベース・システムの動的な再構成が、ほとんど労力を要せずに保証され得ることである。
【００４１】
請求項１１乃至請求項１６記載のシステムは、特に、請求項１乃至請求項１０記載の方法を実行可能なコンピュータ・システムを開示する。結果的に、これらのシステムは、関連付けられる方法において前述したのと同一の利点を有する。
【００４２】
同様に、請求項１７記載のデータ・キャリアは、関連付けられる方法において前述したのと同一の利点を有する。
【００４３】
【発明の実施の形態】
図１は、プロセス１０１、１０２及び１０３がアクセスするデータベース１１０を示す。ここでプロセスはデータベース１１０のユーザ・インタフェース１１１と通信する。データベース管理１１２はデータベース１１０内のデータを管理し、これらのデータは記憶手段１１３、１１４に記憶される。データベース管理１１２はまた構成を含み、それにはデータを記憶するために、どの記憶手段１１３、１１４がどのように、そしてどのような構造で使用されるかに関する定義が含まれる。プロセス１０１、１０２及び１０３は、データベース１１０またはデータベース１１０をアクセスするコンピュータ・プログラムに対するユーザ照会である。特に、これらのプロセス１０１、１０２及び１０３は、作業フロー管理システムにより制御され、データベース１１０をユーザ対話またはアプリケーション・プログラムとしてアクセスする企業の事業プロセスであったりする。
【００４４】
図２は分散データベース２１０を示し、そこではデータベース２１０内のデータが、記憶手段２２１、２２２及び２２３にわたって配分される。記憶手段２２１、２２２及び２２３はデータベース・コンピュータ内で、またはある位置の異なるコンピュータにわたって、または異なる位置の異なるコンピュータにわたって配分されるか、全地球的に配分される。データ及び記憶手段の分散は、データベースのアプリケーション、並びに分散データベース２１０をアクセスするプロセス２０１、２０２及び２０３の分散を反映する。記憶手段２２１、２２２及び２２３は、互いに適切なデータ回線２３０を介して通信する。これらのデータ回線２３０はデータベース・コンピュータのケース内に存在したり、通常の電話回線などの国際的なデータ回線であったりする。データ交換はワイヤーまたはワイヤレスにより、また電子的または光学的であったりする。
【００４５】
図３は、本発明に従いデータベースを構成する方法を示す。データベースのデータ・オブジェクトへのアクセスが、最初に収集される（３０１）。次にこれらのアクセスが記憶手段３０３上に記憶される（３０２）。次にデータベースが、データベースのデータ・オブジェクトのアクセスに関する情報を用いて構成される（３０４）。この構成は、データベース１１０のデータベース管理１１２（図１参照）により、またはデータベースの外部の制御装置により実行され得る。
【００４６】
図４は本発明による方法を示し、そこではデータベースが事業プロセスがアクセスする分散リレーショナル・データベースである。この場合、第１のマトリックス４０１形式の第１の情報ブロックには、どの事業プロセスが分散リレーショナル・データベース内の関係のどの属性を、どの程度の頻度で、どのようにアクセスするかに関する情報４１１が記憶される。例えばアクセスのモードに関して読出しアクセスと書込みアクセスとが区別される。第２のマトリックス４０２形式の第２の情報ブロックには、どの事業プロセスがどの位置に、どの程度の頻度で発生するかに関する情報４１２が記憶される。
【００４７】
第１のマトリックス４０１は、マトリックス計算の数学的規則に従い、第２のマトリックス４０２と乗算され、情報４１３を含む結果のマトリックス４０３が生成される。これはどの位置から、分散リレーショナル・データベース内の関係のどの属性が、どの程度の頻度で、どのようにアクセスされたかを示す。
【００４８】
次のステップでは、加重関数４０４がこの情報４１３に適用され、加重された結果のマトリックスが生成される。この加重関数４０４は、例えば関係の特定の属性が特定の位置からアクセスされ得る速度を考慮する。この加重関数４０４はまた、属性の記憶位置から、その属性を走査する事業プロセスの位置への、属性の伝送のための伝送コストを考慮することができる。この加重関数はまた、ある位置における特定の属性の記憶のための記憶コストを考慮することができる。
【００４９】
次に分布関数４０５が加重された結果のマトリックスに適用され、分散リレーショナル・データベースの様々な記憶手段または様々な記憶位置にわたる関係の分散を定義する。この分布関数４０５は、例えば特定のデータベース構造、既存のコンピュータ・ネットワーク、既存のリンクの可用性、または企業特有の構造、優先順位、状況または要求を考慮する。データベースの構成４０６の間、データは様々な記憶手段にわたって配分される。要求に応じて可能であれば、分布関数４０５は結果のマトリックス４０３に対して、直接適用され得る。加重関数４０４の適用は、本発明による方法に対する任意選択と見なされるべきである。
【００５０】
図５は、データベース１１０内のデータ・オブジェクトを分割するシステム５１０を示す。データベース１１０に関しては、図１で示された要点が当てはまる。システム５１０により、プロセス１０１、１０２及び１０３のデータ・オブジェクトへのアクセスが、データ・リンク５４０により決定される。システム５１０は好適にはコンピュータ・システムにより実現され、プロセッサ・ユニット５３０及び記憶手段５２０を有する。システム５１０は制御ライン５５０を介してデータベース１１０のデータベース管理１１２を制御し、それによりデータベース１１０内のデータ・オブジェクトの分割または配分を制御する。
【００５１】
以降の図は、分散リレーショナル・データベースの構成のための本発明の実施例を示し、例えば多国籍企業の製品データベースに関連する。この例では、７つの事業サブプロセスのセグメント１乃至セグメント７が、関係"注文"の８つの属性、すなわち注文番号、顧客番号、製品番号、日付、品目、品目値、総合値、及び状態をアクセスする。データベースは位置として、ベルリン、ロンドン、及び東京からアクセスされる。
【００５２】
事業サブプロセスは、１つ以上の事業プロセス内の単位であり、データをアクセスする最小の単位と見なされる。事業プロセスまたはサブプロセスがまだ定義されていない場合、これらがアプリケーションから導出される。以下では、関係の個々の属性への事業サブプロセスのアクセスが記録される。このステップが要求される理由は、使用される最適化方法に依存して、事業サブプロセスにより一緒に処理される関係内の単位を分割しないように、関係の属性のクラスタを観察することが必要なためである。
【００５３】
期間の選択は調査対象の事業プロセスに依存し、従って、全ての場合に対して一般的に定義することはできない。例えば、企業の年間財務諸表が分析に組み込まれる場合、会計年度が期間として適用され得る。こうした長い期間が観察される必要がない場合には、期間は日またはより短い時間に切り替えられ得る。単に重要なファクタは、期間が、標準化されたものと見なされなければならない分析における測定単位であるということである。
【００５４】
属性への異なる読出しアクセス動作が区別される。以下では、Ｒ１はデータ更新またはデータ消去のために必要とされる読出し動作を指定する。図６では、どの事業サブプロセスがＲ１読出し動作において、関係"注文"のどの属性をどの程度の頻度でアクセスするかに関する情報が、マトリックス形式で示される。
【００５５】
この読出し動作と、読出し動作だけを記録するために使用されるＲ２読出し動作とが区別される。この区別はデータベース内の技術的な理由から必要とされる。図７には、どの事業サブプロセスがＲ２読出し動作において、関係"注文"のどの属性をどの程度の頻度でアクセスするかに関する情報が、マトリックス形式で示される。
【００５６】
書込み動作Ｗにおいても、更に区別が成される。図８では、どの事業サブプロセスが書込み動作において、関係"注文"のどの属性をどの程度の頻度でアクセスするかに関する情報が、マトリックス形式で示される。
【００５７】
次のステップでは、様々な位置における事業サブプロセスのアクセス頻度が分析される。図９では、事業サブプロセスがＲ１読出し動作においてアクセスする位置並びに頻度がマトリックス形式で示される。
【００５８】
従って、図１０では、事業サブプロセスがＲ２読出し動作においてアクセスする位置、並びに頻度が示される。
【００５９】
図１１では、事業サブプロセスが書込み動作においてアクセスする位置、並びに頻度に関する情報が示される。
【００６０】
前記の第１のステップにより事業サブプロセス対関係の属性の比率を決定し、前記の第２のステップにより事業サブプロセスと位置との関係を決定し、データの分布にとって基本的な位置対属性の比率が導出される。なぜなら、それは要求される情報位置、すなわち属性／関係を正確に含むからである。
【００６１】
図１２に示されるマトリックスは、図８のマトリックスと図１１のマトリックスとの乗算により計算される。図１２に示されるこのマトリックスは、書込み動作において、関係"注文"の個々の属性が、どの位置からどの程度の頻度でアクセスされるかに関する情報を含む。
【００６２】
読出し動作に関するプロシジャは、書込み動作の場合と類似である。唯一の例外は、第１に、事業プロセスと属性とのリンクのためのＲ１読出し及びＲ２読出しに対するマトリックスが一緒に追加される、すなわち図６及び図７からのマトリックスが、一緒に追加されることである。結果の第１の総マトリックスが図１３に示される。
【００６３】
事業プロセスと位置とのリンクのためのマトリックスＲ１読出し及びＲ２読出しが一緒に追加される。すなわち、図９及び図１０からのマトリックスが一緒に追加される。結果の第２の総マトリックスが図１４に示される。
【００６４】
次に、図１３及び図１４にそれぞれ示される第１及び第２の総マトリックスの乗算により、図１５に示されるマトリックスが計算される。図１５に示されるこのマトリックスは、読出し動作において、関係"注文"の個々の属性が、どの位置からどの程度の頻度でアクセスされるかに関する情報を含む。
【００６５】
次にデータを異なる位置にわたって配分する方法の例について述べる。書込み動作に関する図１２のマトリックス、及び読出し動作に関する図１５のマトリックスにもとづき、総アクセス動作のマトリックスが確認される。読出しアクセスと書込みアクセスとの区別は、この時点において関連するようになる。パラメータα及びδが次に導入され、読出しアクセスと書込みアクセスとの間に加重を生成する。このパラメータ化は、例えば読出しまたは書込み動作だけを考慮するデータの分布が考えられるという事実に応えるものであり、大きくかけ離れた重みを有する２つの動作を考慮する分布などがあてはまる。２つのパラメータはまた、読出し及び書込み動作の異なる伝送コストを考慮するためにも使用され得る。
【００６６】
ここでの例では、パラメータα及びδは、書込み動作が読出し動作の重みの２倍に割当てられるように選択される。読出し動作はこのようにして、パラメータα＝０．３３により加重され、一方、書込み動作はパラメータδ＝０．６７により加重される。これは図１６に示されるように、関係"注文"における総アクセスのマトリックスを生成する。このマトリックスは更に分析の基礎を成す。
【００６７】
総アクセスのマトリックスでは、様々なアクセス・モードが上述のように決定されて一緒にもたらされ、本発明による方法の観察が単純化され、従って明快になる。そして、様々なアクセス・モードにもとづき、加重関数に組み込まれるコスト分析を確実に実行できる（後述のコスト関数を参照）。しかしながら、結果の複雑性は本発明に関する新たな性質を表すものではなく、単に改良に過ぎない。
【００６８】
提示される方法における最適な分布を決定するために、そして究極的には、これらの方法を越えて地球的な最適条件に至るために、コスト関数の定義が必要とされる。これは次の項目を考慮する。
・特定の位置に記憶されるときの、関係の特定の属性の総コスト。
・前記位置における関係の属性の記憶コストであって、記憶コストは位置に依存して変化し得る。
・前記位置における関係の属性のアクセス・コストであって、アクセス・コストは伝送コストを含み、従って、位置に従い別々に処理されなければならない。
・別の位置からの前記位置における関係の属性へのアクセス頻度。
・前記位置において、関係の属性が別の位置からアクセスされるときの平均データ転送ボリューム。
・前記位置における関係の属性の記憶コスト。
【００６９】
ここでの例では、明快化及び単純化のために次の仮定を想定する。
・記憶コストが考慮されない。
・様々な位置におけるアクセス・コストが異ならない。
・データ・ボリュームが考慮されない。
【００７０】
図１６に示されるマトリックスにもとづき、これは図１７に示される加重された結果のマトリックスとなる。
【００７１】
データを配分する次のプロシジャが調査される。
・行最適化法：関係の属性が、最低コストを招く位置に割当てられる。
・列最適化法：位置における関係へのアクセス全体が分析され、関係が全体として、最低コストを招く位置に配置される。
・完全属性クラスタリング：関係の属性の全ての可能なクラスタが形成され、様々な位置に配分される。分布変量（distribution variants）の結果の量は指数的に増加し、従って集中的な計算を含む。行最適化法及び列最適化法は、この最大クラスタリングの特殊な場合に当たる。
・事業プロセスにもとづく属性クラスタリング：前記プロシジャにおいて、クラスタ数が指数的に増加する問題を回避するために、ここでは事業プロセス自体から導出されるフィルタが挿入される。実際に事業プロセスにより使用されるクラスタ及び位置の分布だけが分析される。
【００７２】
各垂直フラグメントは、キー属性を追加の属性として割当てられねばならない。コピー及び水平分割の可能性は調査されない。
【００７３】
配分方法に関する次の提示は異なる結果を生む。最適な配分はコスト関数により決定される。コスト関数は、個々の属性及びそれらの可能な分布位置に適用される。これは、他の位置がその位置をアクセスする必要がある場合に、他の位置により招かれる属性及び位置当たりのそれぞれのコスト、更に前記位置における記憶コストを含む新たなマトリックスを生成する。
【００７４】
行最適化法は、関係の属性が前記属性のコストが最小である位置に配置されるべきという概念にもとづく。加重関数は単純なクラスタ、すなわち個々の属性に適用される。これは関連する行最適指標が、関係の属性につき定義され、コスト関数により加重されなければならないことを意味する。指標は、どの位置において、どの属性が記憶されるかを示す。情報が曖昧な場合、例えば最小列ランキングにもとづき、様々な等価の最小値の中から選択が行われる。本質的なファクタは、選択結果が曖昧でないということだけである。行最適化法は、第１の配分の提案を表す。
【００７５】
ここでの例では、図１７のマトリックスにもとづく行最大法が、関係"注文"の属性の物理分布を次のように生成する。
ベルリン：製品番号、日付、及び品目値
東京：注文番号、顧客番号、品目、総合値、及び状態
総コストは１７２９６．９コスト単位になる。
【００７６】
列最適化法は、各場合において、全体の関係が最低の全体コストを招く位置に配置されるといった概念にもとづく。これは位置当たりの合計総コストが形成され、最小が選択されなければならないことを意味する。この方法の開始ポイントは、総コスト関数により生成された図１７に示される加重された結果のマトリックスである。最小が明快に１つの位置を指定しない場合、他の基準が見い出されねばならない。ここでの例では、図１８に示されるマトリックスが生成される。列最適化法に従い、全体の関係"注文"がベルリンに配置されるべきである。この場合の総コストは２０３１８．４コスト単位になる。
【００７７】
固有の垂直分割を生成する属性クラスタリング法は、２つのプロシジャにより実行される。第１のプロシジャでは、関係の属性の全ての可能な組み合わせの量が分析され、関数が定義される。これらが次に可能な位置にわたって、全ての組み合わせにより体系的に配分される。このプロシジャは以下では、"完全属性クラスタリング（full attribute clustering）"と呼ばれる。加重関数が適用されて、最低コストを含む分布変量が選択される。
【００７８】
第２のプロシジャでは、どのクラスタが事業サブプロセスにより使用されるか、また各場合において、どの位置で使用されるかが分析される。単純化のために、ここではクラスタの読出し動作と書込み動作の間に区別がないものとする。
【００７９】
特定数の属性を有する関係が、ユニカム（unicum）として分割される。プロシジャは関係の複数の属性を含むキーに対して変化しないが、関係のキーは１つの属性だけを含む。なぜなら、キーはそれ全体が各フラグメントの一部であるからである。完全属性クラスタリング内の可能なクラスタの数は、繰り返しを伴わない、そして編成を考慮しない要素の組み合わせの量のカーディナル数（cardinal number）として生じる。
【００８０】
可能なクラスタが、関係を完全に網羅するように選択されなければならない。これらの可能な完全な網羅は、最終ステップにおいて、位置にわたって並べ替えられねばならない。加重関数が次に、位置にわたるクラスタの結果の分布に適用され、このクラスタ分布において招かれるコストが計算される。最適なクラスタは最小コスト原理に従い選択され、そこではクラスタが同一のコストを含み、他の意志決定基準が見い出されねばならない。
【００８１】
これまでに提示された方法は、クラスタの全ての可能な組み合わせ、並びに位置にわたるそれらの分布により、最適化を図ろうとする。１つの関係だけに対応して様々な位置にわたるクラスタの組み合わせを除く可能なクラスタの数だけが、指数的に増加する。この理由から、最初から実際に事業プロセスにより使用されるクラスタだけを考慮するフィルタが提案される。
【００８２】
完全属性クラスタリング法に関連する可能性の指数的増加に比較して、事業プロセスにもとづく属性クラスタリングでは、潜在的クラスタの範囲が事業プロセスにより制限される。関係の属性のクラスタがある位置においてのみ要求される場合、そのクラスタ自体を他の位置に配置することは無意味である。このことは、クラスタ間の部分量関係にもとづき、クラスタの全体量が、サブセット量から成る照会の存在しない位置に配置され得る可能性に影響しない。これにおいて、実際に事業プロセスにより使用されるクラスタに対する制限が、オプションのかなりの低減を表す。
【００８３】
事業プロセスのクラスタに属さない属性は、残りの位置にわたって全ての可能な組み合わせにより配分されるか、センス可能な特殊な場合として、ブロックとして他の位置にわたって配分される。この特殊な場合は、最も可能性の大きい属性ブロックを生成するという点で意味を成す。位置にわたる可能な分布モードの定義に続き、完全属性クラスタリングの場合同様、加重関数が最適な分布を決定するために適用される。
【００８４】
ここでの例では、図１９のマトリックスで示されるクラスタが、図６乃至図１１のマトリックスから生じる。明快化のために、関係"注文"の属性の指標だけが使用される。
【００８５】
従って、キー属性"１"が常にフラグメントの一部でなければならないという事実を考慮し、残りの属性が全部、残りの位置に例として配置される。これは上述の特殊な場合、すなわち図２０に示されるマトリックスに相当する。
【００８６】
加重関数が図２０のマトリックスに適用されると、図２１に示される加重された結果のマトリックスが生成される。このマトリックスから生じる属性の最適な分布は、
ベルリン：注文番号、製品番号、日付、及び品目値
東京：注文番号、顧客番号、品目、総合値、及び状態
であり、総コストは、１８１００．９コスト単位となる。
【００８７】
まとめとして、本発明の構成に関して以下の事項を開示する。
【００８８】
（１）データベースを構成する方法であって、前記データベースがデータ・オブジェクトを含み、前記データ・オブジェクトがデジタル・データにより表され、プロセスが前記データ・オブジェクトをアクセスするものにおいて、
前記データ・オブジェクトに対する前記プロセスのアクセスを収集するステップと、
前記収集されたアクセスを第１の情報ブロックに記憶するステップと、
前記第１の情報ブロック内の情報にもとづき、前記データベースを構成するステップと、
を含む、方法。
（２）前記データベースの構成が、該データベースの動作中に動的に実行され、
前記データベースの構成が、前記データ・オブジェクトを分割することにより発生する、
前記（１）記載の方法。
（３）前記データ・オブジェクトが、少なくとも２つのプロセスが該データ・オブジェクトを同時にアクセスしようとするときに分割される、前記（１）または（２）記載の方法。
（４）前記データベースがリレーショナル・データベースであり、
前記データ・オブジェクトが前記リレーショナル・データベースの「関係」であり、
前記関係が属性を有し、
前記プロセスが前記関係の属性をアクセスし、
前記関係の属性への前記プロセスのアクセスが収集される、
前記（１）乃至（３）のいずれかに記載の方法。
（５）前記データベースが分散データベースであり、
前記分散データベースのデータ・オブジェクトが異なる記憶手段上に配置され、
前記データ・オブジェクトを全体として、前記データベースの記憶手段に割当てるか、または前記データ・オブジェクトの部分を前記データベースの様々な記憶手段に割当てるステップを含む、前記（１）乃至（４）のいずれかに記載の方法。
（６）前記プロセスが実行される位置を決定するステップと、
前記位置情報を第２の情報ブロックに記憶するステップと、
前記データ・オブジェクトの分割に関する決定、並びに前記データ・オブジェクトの部分の割当てに関する決定のために、前記第１の情報ブロックの情報を、前記第２の情報ブロックの情報にリンクするステップと、
を含む、前記（５）記載の方法。
（７）前記分散データベースが分散リレーショナル・データベースである、前記（６）記載の方法。
（８）前記第１の情報ブロックが第１のマトリックス形式により、どの前記プロセスが読出し動作及び書込み動作において、前記関係のどの属性を、どの程度の頻度でアクセスするかに関する情報を含み、
前記第２の情報ブロックが第２のマトリックス形式により、どの前記プロセスがどの位置において、どの程度の頻度で実行されているかに関する情報を含み、前記第１及び第２のマトリックスが一緒に乗算され、結果のマトリックスが計算され、
前記結果のマトリックスが、前記関係のどの属性が読出し動作及び書込み動作において、どの位置からどの程度の頻度でアクセスされるかに関する情報を含む、
前記（７）記載の方法。
（９）少なくとも１つの加重関数が前記結果のマトリックスに適用され、加重された結果のマトリックスが計算される、前記（８）記載の方法。
（１０）分布関数が前記結果のマトリックスまたは前記加重された結果のマトリックスに適用され、前記データ・オブジェクトの分割を決定し、前記分散データベースの様々な記憶手段にわたる前記データ・オブジェクトの部分の配分を決定する、前記（８）または（９）記載の方法。
（１１）データベースを構成するシステムであって、データ・オブジェクトがデジタル・データにより表され、プロセスが前記データ・オブジェクトをアクセスするものにおいて、
前記データ・オブジェクトに対する前記プロセスのアクセスを収集する第１の手段と、
前記データ・オブジェクトに対する前記プロセスのアクセスを第１の情報ブロックに記憶する第１の記憶手段と、
前記第１の情報ブロック内の情報を用いて、前記データベースを構成する手段と、
を含む、システム。
（１２）前記データベースがリレーショナル・データベースであり、
前記データ・オブジェクトが前記リレーショナル・データベースの「関係」であり、
前記関係が属性を有し、
前記プロセスが前記関係の属性をアクセスし、
前記関係の前記属性への前記プロセスのアクセスが収集される、
前記（１１）記載のシステム。
（１３）前記データベースが分散データベースであり、
前記システムが、
前記データ・オブジェクトを全体として、前記データベースの記憶手段に割当てる手段、または前記データ・オブジェクトの部分を前記データベースの様々な記憶手段に割当てる手段を含む、
前記（１１）または（１２）記載のシステム。
（１４）前記プロセスが実行される位置を第２の情報項目として決定する第２の手段と、
前記第２の情報を記憶する第２の記憶手段と、
前記第１の情報及び前記第２の情報をリンクし、結果のマトリックスを形成する第１の計算手段と、
を含む、前記（１３）記載のシステム。
（１５）少なくとも１つの加重関数を前記結果のマトリックスに適用する第２の計算手段を含む、前記（１４）記載のシステム。
（１６）前記システムが前記データベース上で制御関数を実行可能なコンピュータ・システムである、前記（１１）乃至（１５）のいずれかに記載のシステム。
（１７）コンピュータ・プログラムを記憶するデータ・キャリアであって、
前記コンピュータ・プログラムが前記（１１）乃至（１６）のいずれかによるコンピュータ・システムを制御し、
前記コンピュータ・システムが前記（１）乃至（１０）のいずれかによる方法を実行することを特徴とする、
データ・キャリア。
【図面の簡単な説明】
【図１】様々なプロセスがアクセスするデータベースを示す図である。
【図２】データが記憶手段にわたって配分される分散データベースを示す図である。
【図３】本発明に従いデータベースを構成する方法を示す図である。
【図４】データベースが分散リレーショナル・データベースである、本発明による方法を示す図である。
【図５】データベース内のデータ・オブジェクトを分割するためのシステム５１０を示す図である。
【図６】どの事業サブプロセスがどの程度の頻度で属性をアクセスするかを示す図である。
【図７】どの事業サブプロセスがどの程度の頻度で属性をアクセスするかを示す図である。
【図８】どの事業サブプロセスがどの程度の頻度で属性をアクセスするかを示す図である。
【図９】事業サブプロセスが位置をアクセスする頻度を示す図である。
【図１０】事業サブプロセスが位置をアクセスする頻度を示す図である。
【図１１】事業サブプロセスが位置をアクセスする頻度を示す図である。
【図１２】書込み動作における位置と属性との関係を示す図である。
【図１３】読出し動作における位置と属性との関係を示す図である。
【図１４】読出し動作における位置と属性との関係を示す図である。
【図１５】読出し動作における位置と属性との関係を示す図である。
【図１６】総合的アクセスにおける位置と属性との関係を示す図である。
【図１７】行最適化法に従う総コストを示す図である。
【図１８】列最適化法に従う総コストを示す図である。
【図１９】事業プロセスにもとづいた、位置における属性のクラスタを示す図である。
【図２０】事業プロセスにもとづいた、位置における属性の選択されたクラスタを示す図である。
【図２１】事業プロセスにもとづいた、位置における属性の選択されたクラスタのコスト評価を示す図である。
【符号の説明】
１１０  データベース
２１０  分散データベース
２２１、２２２、２２３、３０３、５２０  記憶手段
２３０  データ回線
４０１  第１のマトリックス
４０２  第２のマトリックス
４０３  結果のマトリックス
４１１、４１２、４１３  情報
５１０  システム
５３０  プロセッサ・ユニット
５４０  データ・リンク
５５０  制御ライン
【図１】
0003670770.tif 000002
【図２】
0003670770.tif 000003
【図３】
0003670770.tif 000004
【図４】
0003670770.tif 000005
【図５】
0003670770.tif 000006
【図６】
0003670770.tif 000007
【図７】
0003670770.tif 000008
【図８】
0003670770.tif 000009
【図９】
0003670770.tif 000010
【図１０】
0003670770.tif 000011
【図１１】
0003670770.tif 000012
【図１２】
0003670770.tif 000013
【図１３】
0003670770.tif 000014
【図１４】
0003670770.tif 000015
【図１５】
0003670770.tif 000016
【図１６】
0003670770.tif 000017
【図１７】
0003670770.tif 000018
【図１８】
0003670770.tif 000019
【図１９】
0003670770.tif 000020
【図２０】
0003670770.tif 000021
【図２１】
0003670770.tif 000022