JP3527834B2 - Distributed database system - Google Patents

Distributed database system

Info

Publication number
JP3527834B2
JP3527834B2 JP22967597A JP22967597A JP3527834B2 JP 3527834 B2 JP3527834 B2 JP 3527834B2 JP 22967597 A JP22967597 A JP 22967597A JP 22967597 A JP22967597 A JP 22967597A JP 3527834 B2 JP3527834 B2 JP 3527834B2
Authority
JP
Japan
Prior art keywords
client
database
machine
server
client machine
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.)
Expired - Fee Related
Application number
JP22967597A
Other languages
Japanese (ja)
Other versions
JPH1165913A (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
Application filed by 株式会社日立情報システムズ filed Critical 株式会社日立情報システムズ
Priority to JP22967597A priority Critical patent/JP3527834B2/en
Publication of JPH1165913A publication Critical patent/JPH1165913A/en
Application granted granted Critical
Publication of JP3527834B2 publication Critical patent/JP3527834B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 【0001】 【発明の属する技術分野】本発明は、分散データベース
システムに係り、特に、CSS(Client ServerSyste
m)で業務処理を実行するシステムを構築する際の、分
散データベースシステムにおける使用データベースの切
換え制御手法に関する。 【0002】 【従来の技術】近年、分散データベースシステムを用い
たCSSで、業務処理を実行するシステムを構築するこ
とが、よく行われている。 【0003】図2は、従来のシステム構築例を模式的に
示す説明図である。業務処理を、クライアント側業務処
理201と、サーバ側業務処理202とに分けて、それ
ぞれをクライアントマシンと、サーバマシンで動作させ
る。サーバマシンには、データベースマネイジメントシ
ステム(以下、DBMSと称する)203と、サーバデ
ータベース(以下、サーバDBと称する)とが存在す
る。 【0004】例えば、サーバDB204内には、システ
ム全体で共通に使用される表A,表B,表Cがあり、そ
の表A,表B,表Cから一部のデータを抽出して作成し
た表Tで、表T上のデータを編集・加工する業務を行う
場合、表TがサーバDB204に生成されるので、表T
へのアクセスを行う度に、クライアント−サーバ間の通
信が発生する。特に、表Tへのアクセスが頻繁に発生す
ると、クライアント−サーバ間の通信オーバヘッドが大
きくなる。 【0005】また、複数のクライアントから表Tへのア
クセスが発生すると、サーバマシンに負荷が集中する。 【0006】一方、データベースを用いたシステムを構
築するときに、複数の表から特定の行及び列を抽出して
作成し、編集・加工を行った後、トランザクションの終
了時にデータを消去する、一時的な表(以下、一時表と
称する)を設けることはよく行われている。このとき、
一時表がサーバマシンにあると、クライアント数の増加
に伴いサーバマシンに負荷が集中する。 【0007】以上記述したように、CSSで業務処理を
実行するシステムを構築する上で、クライアント数の増
加に伴い、サーバマシンに負荷が集中することが問題と
なってきている。そこで、サーバマシンの負荷を分散す
ることが工夫されつつある。このような技術について
は、例えば、特開平6−259308号公報や特開平8
−339323号公報に記載されている。 【0008】一方、運用時に空いているクライアントマ
シンで、目的とする業務処理を行う形態を取ることがあ
る。この場合、クライアントマシンで動作する業務処理
は動的に変化する。 【0009】 【発明が解決しようとする課題】上記した従来技術のう
ち、特開平8−339323号公報に開示された技術で
は、複数のサーバマシンで、アクセス回数が一定数を超
えた場合、アクセス先にデータ(分散データ)を移動さ
せることで、分散データの配置の最適化を図るようにし
ている。 【0010】しかしながら、この先願に開示された技術
は、全ての表をサーバマシンに生成するので、例えば、
一時表についてのクライアント−サーバ間の通信オーバ
ヘッドを抑止できない。 【0011】また、特開平6−259308号公報に開
示された技術では、サーバマシンの負荷及び記憶媒体の
空き状況を監視し、負荷や記憶媒体の空き状況の均衡を
図るようにしている。 【0012】しかしながら、この先願に開示された技術
では、負荷や記憶媒体の空き状況によっては、必要なデ
ータが、離れたマシンに存在することになり、データへ
のアクセスについて、通信オーバヘッドが大きくなる事
態が発生する。特に一時表のように、1つのトランザク
ションの間だけ存在すれば十分である表が、離れたマシ
ンに存在すると、不要な通信オーバヘッドが発生する。 【0013】本発明は上記の点に鑑みなされたもので、
その目的とするところは、サーバマシンの複数の表から
抽出したデータを格納するための表を、各クライアント
マシンに生成しておき、クライアントマシンで業務処理
が実行されると、上記表にサーバマシンの複数の表から
抽出したデータを格納し、以後クライアントマシン内で
処理を完了させることで、上記表のデータをクライアン
トマシン内で編集・加工することを可能し、以って、サ
ーバマシンとクライアントマシン間の通信オーバヘッド
の削減を図ると共に、サーバマシンのDBMSの負荷を
分散させることにある。特に、本発明では、各クライア
ントマシンで実行する業務処理が動的に変化する運用形
態における一時表のように、業務処理を行うクライアン
トマシン内に存在するときに、最も効率が良いと定義者
が認識できる表について、これを常に業務処理を行うク
ライアントマシンに置くことで、不要な通信オーバヘッ
ドを抑止することを、その目的とする。 【0014】さらに、本発明の他の目的とするところ
は、上記の目的を実現するにあたり、データベースの表
をクライアントマシンに生成するか否かの識別情報を、
定義者が変更した場合、システムで各クライアントマシ
ンにおける表の生成・削除を自動的に行うことにより、
定義者の操作の手間を軽減させることにある。 【0015】 【課題を解決するための手段】上記した目的を達成する
ために、本発明による分散データベースシステムでは、
サーバマシン下のデータベースの他に、各クライアント
マシン下にもデータベースを設けると共に、処理対象表
が、各クライアントマシンに生成する表か否かの識別情
報を識別する手段を設ける。そして、定義時に、表毎に
定義者が、処理対象表がクライアントマシンに生成する
表か否かの識別情報(種別)を指定することにより、各
クライアントマシンに生成する表を、自動的に各クライ
アントマシン下のデータベースに生成して、運用時に、
各クライアントマシンに生成した表へ格納するデータ
を、サーバマシン下のデータベースの表から抽出して格
納後、クライアントマシン下で業務処理中のデータベー
スへアクセスを行うようにされる。 【0016】また、各クライアントマシンに生成する表
について、この表を生成するのに必要な情報を管理する
表を設けると共に、各クライアントマシンのDBMSに
表を生成する要求を行う手段を設けて、定義者が各クラ
イアントマシンに生成する表か否かの識別情報を変更し
た場合には、システムで自動的に、各クライアントマシ
ンにおける表の生成・削除を行うようにされる。 【0017】斯様にすることにより、処理対象表が、各
クライアントマシンに生成する表か否かの識別情報を識
別することによって、アクセスを行うデータベースを決
定することができるので、処理対象表が各クライアント
マシンに生成する表である場合には、サーバマシンへの
アクセスを抑止できる。 【0018】また、各クライアントマシンに生成する表
について、この表を生成するのに必要な情報を管理する
表により、表を生成する要求を効率よく発生することが
できる。 【0019】また、各クライアントマシンに生成する表
か否かの識別情報を定義者が変更した場合、各クライア
ントマシンのDBMSに表を生成する要求を行う手段
が、表を生成するのに必要な情報を管理する表から、表
を生成する要求を各クライアントマシンに送信できるの
で、定義者の手操作が不要になる。 【0020】 【発明の実施の形態】以下、本発明の実施の形態を、図
面を参照して説明する。図3は、本発明の1実施形態に
係る分散データベースシステムの構成を模式的に示す図
である。 【0021】図3に示すように、業務処理は、クライア
ント側業務処理301と、サーバ側業務処理302とに
分けて、それぞれをクライアントマシンと、サーバマシ
ンで動作させる。 【0022】サーバマシンには、サーバDBMS303
と、サーバDB304とが存在し、クライアントマシン
にも、クライアントDBMS305と、クライアントデ
ータベース(以下、クライアントDBと称する)306
とが存在する。ここで、クライアントDB306は、各
クライアントマシンに生成する表を格納するデータベー
スであり、クライアントDBMS305は、クライアン
トDB306内の表を管理するデータベースマネイジメ
ントシステムである。 【0023】各クライアントマシンに生成する表を、ク
ライアントDB306に格納するので、この表へのアク
セスを行う際、クライアント−サーバ間の通信が不要と
なると共に、従来サーバDBMS303に集中していた
負荷を、クライアントDBMS305に分散できる。 【0024】例えば、サーバDB304内に、システム
全体で共通に使用される表A,表B,表Cがあり、その
表A,表B,表Cから一部のデータを抽出して作成した
表Tで、頻繁に表T上のデータを編集・加工する業務を
行う場合、表TをクライアントDB306に生成し、サ
ーバDB304の表A,表B,表Cから必要なデータを
取寄せて表Tに格納して、表Tのデータの編集・加工を
行うことにより、クライアント−サーバ間の通信が不要
となり、表Tのデータの編集・加工を行う処理に要して
いたサーバDBMS303負荷を、クライアントDBM
S305に分散できる。 【0025】図1は、本実施形態の分散データベースシ
ステムの構成図である。同図において、10はクライア
ントマシン、11はクライアントDBMS、108はク
ライアントDBであり、20はサーバマシン、21はサ
ーバDBMS、104はサーバDBであり、120は共
有ディスクである。 【0026】まず、定義時の動作を説明する。クライア
ントマシン10の表定義部101は、定義者の指示に従
って、表やインデクス等のデータベースの構成要素の定
義を行う部分である。定義者がクライアントマシン10
で、新たに表やインデクス等の定義を行うと、その要求
をLAN102を介してサーバマシン20の表定義部1
03に送る。サーバマシン20の表定義部103は、サ
ーバDBMS21のDBMSカーネル部を介して、サー
バDB104の定義情報105を更新し、定義者が定義
した表やインデクスを生成した後に、表配布管理部10
6に制御を渡す。 【0027】図4に、定義情報105の一部である表管
理表を示す。表管理表には、識別子と表名の他に、種別
情報401と生成日時402とがある。種別情報401
には、表毎に定義者が、各クライアントマシン10に生
成する表か否かの識別情報を格納し、生成日時402に
は、表を生成した日時を格納する。 【0028】種別情報401の値が「クライアント」の
ときには、その表は、各クライアントマシンに生成する
表であることを示し、種別情報401の値が「サーバ」
のときには、サーバマシンのみに生成する表であること
を示している。 【0029】表配布管理部106は、新たに追加/更新
した表管理表のレコードの種別情報401の値が「サー
バ」のときには、直ちに、サーバDB104への変更結
果を、クライアントマシン10の表定義部101に送信
する。 【0030】また、表配布管理部106は、種別情報4
01の値が「クライアント」のときには、定義情報10
5の一部である定義生成管理表を更新し、共有ディスク
120内の要求先リスト107のファイルを更新し、さ
らに、各クライアントマシン10へ、定義者が定義した
表やインデクス等を生成するスクリプト文を送信する。
なお、表配布管理部106の詳細な動作説明は、後述す
る。 【0031】図5に、定義情報105の一部である定義
生成管理表を示す。定義生成管理表には、表名501、
表生成文502、インデクス生成文503等がある。表
名501には、定義者が定義した表の表名を格納し、表
生成文502には、表を生成するスクリプト文を格納
し、インデクス生成文503には、表のインデクスを生
成するスクリプト文を格納する。 【0032】各クライアントマシン10では、サーバマ
シン20の表配布管理部106から送られてきた、定義
者が定義した表やインデクス等を生成するスクリプト文
を実行する。これによって、クライアントDB108
に、定義者が定義した表を生成できる。 【0033】図6に、共有ディスク120の要求先リス
ト107の内容を示す。要求先リスト107には、表名
601と生成日時602の項があり、それぞれに表管理
表の表名、生成日時の情報を、表配布管理部106が格
納する。 【0034】次に、運用時の動作を説明する。クライア
ント側業務処理109がデータベースへのアクセスを発
生すると、要求先判定部110が、共有ディスク120
内の要求先リスト107を参照して、要求先の表が、ク
ライアントDB108に存在するか、サーバDB104
に存在するかを判断する。なお、要求先判定部110の
詳細な動作説明は、後述する。 【0035】要求先の表がクライアントDB108に存
在する場合には、クライアントマシン10のクライアン
トDBMS11内の問合処理部、DBMSカーネル部を
介して、クライアントDB108にアクセスし、また、
要求先の表がサーバDB104に存在する場合には、サ
ーバマシン20のサーバDBMS21内の問合処理部、
DBMSカーネル部を介して、サーバDB104にアク
セスする。 【0036】ここで、要求先の表が、現在運用している
クライアントマシン以外で生成され、そのとき、本クラ
イアントマシン10が停止していた等の理由で、要求先
の表が本クライアントDB108に存在すると判断して
も、本クライアントマシン10のクライアントDB10
8に存在しない、または、存在していても定義内容が異
なる場合がある。 【0037】要求先の表がクライアントDB108に存
在すると判断したにもかかわらず、存在しない場合に
は、サーバDB104の定義情報105の定義生成管理
表から、該当レコードを取出してきて、実行することに
より、クライアントDB108に要求先の表を生成す
る。 【0038】また、クライアントDB108に存在して
いても、定義内容が最新であるか否かの判断は、クライ
アントDB108内の表管理表内の生成日時402と、
要求先リスト107のファイル内の生成日時との比較で
行う。 【0039】次に、表配布管理部106の動作を説明す
る。処理対象表の生成、処理対象表のインデクスの生
成、及び表管理表の更新が完了後、表配布管理部106
は処理を実行する。 【0040】図7は、表配布管理部106の動作の流れ
を示す処理フロー図である。まず、表配布管理部106
に、処理対象表の表名と、要求元のクライアントマシン
を識別する情報と、処理対象表の表生成文と、処理対象
表のインデクス生成文等の、定義生成管理表のレコード
を作成するのに必要な情報を与えて、実行を開始させ
る。 【0041】ここで、処理対象表の生成、処理対象表の
インデクスの生成、及び表管理表の更新は、表配布管理
部106による処理を実行する前に行っているので、処
理対象表の表生成文、処理対象表のインデクス生成文等
は、既に求まっており、表配布管理部106に与えるこ
とができる。 【0042】表配布管理部106は、サーバDB104
の表管理表を与えられた処理対象表の表名で検索する
(ステップ701)。先にも述べたように、表管理表の
更新が完了しているので、該当レコードは必ず見つか
る。そこで、見つかった表管理表のレコード内の種別情
報401の値を評価する(ステップ702)。 【0043】種別情報401の値が「サーバ」ならば、
共有ディスク120内の要求先リスト107のファイル
のレコードを、与えられた表名で検索し(ステップ71
3)、該当レコードの存在を評価する(ステップ71
4)。共有ディスク102内の要求先リスト107のフ
ァイル内に該当レコードが存在する場合、要求先リスト
107のファイルの該当レコードを削除する(ステップ
715)。その後、要求元のクライアントマシン10に
実行結果を送信して(712)、表配布管理部106は
処理を終える。 【0044】種別401の値が「クライアント」なら
ば、サーバDB104の定義生成管理表を与えられた処
理対象表の表名で検索する(ステップ703)。その
後、定義生成管理表に該当レコードが存在するか否かを
評価する(ステップ704)。定義生成管理表に該当レ
コードが存在する場合、与えられた処理対象表の表生成
文、処理対象表のインデクス生成文等の、定義生成管理
表のレコードを作成するのに必要な情報を用いて、定義
生成管理表の該当レコードを更新する(ステップ70
5)。 【0045】逆に、定義生成管理表に該当レコードが存
在しない場合、与えられた処理対象表の表生成文、処理
対象表のインデクス生成文等の、定義生成管理表のレコ
ードを作成するのに必要な情報を用いて、定義生成管理
表の該当レコードを新規に追加する(ステップ70
6)。 【0046】次に、共有ディスク120内の要求先リス
ト107のファイルのレコードを、与えられた表名で検
索し(ステップ707)、該当レコードの存在を評価す
る(ステップ708)。 【0047】共有ディスク120内の要求先リスト10
7のファイル内に該当レコードが存在する場合、ステッ
プ701で見つけた表管理表の該当レコード内の生成日
時を用いて、要求先リスト107のファイルの、該当レ
コードの生成日時602の項の値を変更する(ステップ
709)。 【0048】逆に、共有ディスク120内の要求先リス
ト107のファイル内に該当レコードが存在しない場
合、ステップ701で見つけた表管理表の該当レコード
内の生成日時を用いて、要求先リスト107のファイル
にレコードを新たに追加する(ステップ710)。 【0049】これで、共有ディスク120内の要求先リ
スト107のファイル内には、最新の表管理表のレコー
ド内の種別情報401の値が「クライアント」である表
についてのレコードが収まることになる。 【0050】この後、現在接続中の全てのクライアント
マシン10について、サーバマシンでの生成日時と共
に、表の生成文やインデクス生成文を送信する(ステッ
プ711)。そして、要求元のクライアントマシン10
に実行結果を送信して(712)、表配布管理部106
は処理を終える。 【0051】クライアントマシン10は、上記した送信
メッセージを受取ると、送れてきたサーバマシン20で
の生成日時より未来の時刻(その時のクライアントマシ
ン10での現在時刻が、送られてきたサーバマシンでの
生成時間よりも未来の場合は、時刻変更を行わないが、
送られてきたサーバマシンでの生成時間よりも過去の場
合は、送られてきたサーバマシンでの生成日時に、現在
時刻を変更する)にした後に、表の生成文、インデクス
生成文を実行する。 【0052】これによって、クライアントDB108内
の表管理表の生成日時と、共有ディスク120内の要求
先リスト107内の生成日時とを比較すれば、クライア
ントDB108内の表が最新の表であるか否かが判断で
きることになる。 【0053】続いて、要求先表名を与えて、要求先判定
部110を動作させたときの動作を説明する。 【0054】図8は、要求先判定部110の動作の流れ
を示す処理フロー図である。まず、要求先判定部110
は、共有ディスク102内の要求先リスト107のファ
イルを与えられた表名で検索し(ステップ801)、該
当レコードの有無を評価する(ステップ802)。 【0055】ここで、該当レコードが存在しない場合に
は、要求先表は、サーバDB104内の表管理表で、種
別情報401が「サーバ」となっているレコードとして
格納されているので、要求先表はクライアントDB10
8には、存在しないことが知れる。よって、要求先表は
サーバDB104にアクセスすべき表となる(ステップ
813)。 【0056】逆に、該当レコードが存在する場合、要求
先表は、サーバDB104内の表管理表で、種別情報4
01が「クライアント」となっているレコードとして格
納されているので、要求先表はクライアントDB108
に、存在すべき表となる。ただし、このとき、実際にク
ライアントDB108に、要求先表が最新の定義で存在
するとは限らないので、チェックを行う必要が生じる。 【0057】そこで、変数FDateに、ステップ801で
見つけた共有ディスク120内の要求先リスト107の
ファイル内のレコードの生成日時をセットする(ステッ
プ803)。次に、クライアントDB108内の表管理
表を与えられた表名で検索し(ステップ804)、該当
レコードの有無を評価する(ステップ805)。 【0058】該当レコードが存在する場合、変数Ddate
に、該当レコード内の生成日時の値を格納する(ステッ
プ806)。そして、ステップ803でセットした変数
Fdateの値と、ステップ806でセットした変数Ddate
の値とを比較する(ステップ807)。 【0059】ここで、変数Fdateの値の方が新しい場合
は、ステップ805において該当レコードが存在しない
場合と同様に、要求先表は、クライアントDB108に
おいて、最新の定義で生成されていないと判断できる。 【0060】逆に、変数Fdateの値の方が新しくない場
合は、要求先表は、クライアントDB108において、
最新の定義で生成されていることになるので、要求先表
はクライアントDB108にアクセスすべき表となる
(ステップ814)。 【0061】要求先表が、クライアントDB108であ
り、かつ、最新の定義で生成されていないと判断した場
合には、サーバDB104に、表・インデクスの生成
文、及びその生成日時情報を要求する(ステップ80
8)。 【0062】次に、サーバDB104から戻ってきた生
成日時と本クライアントマシンの現在時刻とを比較し
(ステップ809)、送られてきたサーバマシンでの生
成時間よりも過去の場合は、送られてきたサーバマシン
での生成日時で現在時刻を変更する(ステップ81
0)。 【0063】その後、サーバDB104から戻ってきた
表の生成文、インデクス生成文を実行する(ステップ8
11)。これで、要求先表は、クライアントDB108
において、最新の定義で生成されたことになり、要求先
表はクライアントDB108にアクセスすべき表となる
(ステップ812)。 【0064】図8の説明から明らかなように、クライア
ントマシン10に生成する表は、システムで自動的に定
義内容を統一することができる。 【0065】以上述べたように本実施形態によれば、従
来は図2のように、表TがサーバDB204に生成され
てものに対し、図3のように表TをクライアントDB3
06に生成するので、表Tへのアクセスを行うのに、ク
ライアント−サーバ間の通信が不要となる。また、それ
によって、サーバDBMS303の負荷がクライアント
DBMS305に分散できる。 【0066】さらに、表管理表の種別情報401の値を
変更するだけで、システムで各クライアントマシンへの
表の生成・削除を自動的に行うことができる。 【0067】 【発明の効果】叙上のように本発明によれば、サーバマ
シンとそれに接続した複数のクライアントマシンで、業
務処理を実行する分散データベースシステムにおいて、
各クライアントマシンが業務を処理するにあたり、クラ
イアントマシンが固有に扱うデータを操作する場合に、
クライアントマシン内だけで処理を完了させることで、
サーバマシンとクライアントマシン間の通信オーバヘッ
ドの削減と、サーバマシンのDBMSの負荷の分散とが
実現できる。特に、一時表のように、恒久的に記憶媒体
を占有しない表について、クライアントマシンで処理を
実行する場合に有効である。 【0068】また、データベースの表が、各クライアン
トマシンが固有に扱うデータを格納する表であるか、全
クライアントマシンで共通に扱う表であるかの識別情報
を、定義者が変更した場合、システム自体で、各クライ
アントマシンへの表の生成・削除を自動的に行うことに
より、特別な手操作を定義者が行う必要がなくなり、定
義者の手間が大幅に軽減できる。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a distributed database system, and more particularly, to a CSS (Client Server System).
The present invention relates to a method for controlling switching of a used database in a distributed database system when a system for executing business processing in m) is constructed. 2. Description of the Related Art In recent years, it has been common practice to construct a system for executing business processes by using a CSS using a distributed database system. FIG. 2 is an explanatory diagram schematically showing a conventional system construction example. The business process is divided into a client-side business process 201 and a server-side business process 202, each of which is operated by a client machine and a server machine. The server machine includes a database management system (hereinafter, referred to as DBMS) 203 and a server database (hereinafter, referred to as server DB). For example, in the server DB 204, there are tables A, B, and C that are commonly used in the entire system, and a part of the data is extracted from the tables A, B, and C and created. When performing a task of editing and processing data on the table T, the table T is generated in the server DB 204.
Each time access is made, communication between the client and the server occurs. In particular, if access to the table T occurs frequently, communication overhead between the client and the server increases. When a plurality of clients access the table T, the load is concentrated on the server machine. On the other hand, when a system using a database is constructed, specific rows and columns are extracted from a plurality of tables, created and edited, processed, and then deleted at the end of a transaction. It is common practice to provide a generic table (hereinafter referred to as a temporary table). At this time,
If the temporary table is on the server machine, the load is concentrated on the server machine as the number of clients increases. As described above, when constructing a system for executing business processing by CSS, there is a problem that the load is concentrated on the server machine as the number of clients increases. Therefore, it is being devised to distribute the load of the server machine. Such a technique is described in, for example, JP-A-6-259308 and JP-A-8-259308.
-339323. [0008] On the other hand, there is a case in which a target business process is performed on a client machine that is free at the time of operation. In this case, the business process operating on the client machine changes dynamically. [0009] Among the above-mentioned prior arts, in the technique disclosed in Japanese Patent Application Laid-Open No. 8-339323, if the number of accesses exceeds a certain number in a plurality of server machines, By moving data (distributed data) first, the arrangement of the distributed data is optimized. However, the technique disclosed in the prior application generates all tables on the server machine.
The communication overhead between the client and the server for the temporary table cannot be suppressed. In the technique disclosed in JP-A-6-259308, the load on the server machine and the availability of the storage medium are monitored, and the load and the availability of the storage medium are balanced. However, according to the technology disclosed in the prior application, necessary data exists in a remote machine depending on the load and the availability of a storage medium, and communication overhead for data access increases. Things happen. In particular, if a table, such as a temporary table, that needs to exist only for one transaction exists on a remote machine, unnecessary communication overhead occurs. The present invention has been made in view of the above points,
The purpose is to generate a table for storing data extracted from a plurality of tables of the server machine on each client machine, and when business processing is executed on the client machine, the table is added to the above table. By storing the data extracted from the plurality of tables in the above, and thereafter completing the processing in the client machine, it is possible to edit and process the data in the above table in the client machine. An object of the present invention is to reduce the communication overhead between machines and to distribute the load on the DBMS of the server machine. In particular, in the present invention, the definer considers that the efficiency is highest when the business process to be executed on each client machine is present in the client machine that performs the business process, such as a temporary table in an operation mode that dynamically changes. An object of the present invention is to suppress unnecessary communication overhead by always placing a recognizable table on a client machine that performs business processing. Further, another object of the present invention is to achieve the above object by identifying information for identifying whether or not to generate a database table on a client machine.
When the definer changes, the system automatically creates and deletes tables on each client machine,
An object of the present invention is to reduce the troublesome operation of the definer. [0015] To achieve the above object, a distributed database system according to the present invention comprises:
In addition to the database under the server machine, a database is provided under each client machine, and means for identifying identification information as to whether or not the processing target table is a table generated on each client machine is provided. Then, at the time of definition, the definer specifies, for each table, identification information (type) indicating whether or not the processing target table is a table to be generated on the client machine, thereby automatically generating a table to be generated for each client machine. Generated in the database under the client machine, at the time of operation,
Data to be stored in the table generated in each client machine is extracted from the database table under the server machine, stored, and then accessed to the database under business processing under the client machine. In addition, for a table generated in each client machine, a table for managing information necessary for generating this table is provided, and means for making a request to generate a table in the DBMS of each client machine is provided. When the definer changes the identification information indicating whether or not the table is generated on each client machine, the system automatically generates and deletes the table on each client machine. By doing so, the database to be accessed can be determined by identifying the identification information as to whether or not the processing target table is a table generated in each client machine. If the table is generated on each client machine, access to the server machine can be suppressed. Further, with respect to a table generated in each client machine, a table for managing information necessary for generating this table can efficiently generate a request for generating a table. Further, when the definer changes the identification information indicating whether or not the table is generated in each client machine, the means for making a request to generate a table in the DBMS of each client machine is necessary for generating the table. Since a request for generating a table can be transmitted to each client machine from the table for managing information, manual operation by the definer is not required. Embodiments of the present invention will be described below with reference to the drawings. FIG. 3 is a diagram schematically showing the configuration of the distributed database system according to one embodiment of the present invention. As shown in FIG. 3, the business process is divided into a client-side business process 301 and a server-side business process 302, each of which is operated by a client machine and a server machine. The server machine 303 has a server DBMS 303
And a server DB 304. The client machine also has a client DBMS 305 and a client database (hereinafter, referred to as a client DB) 306.
And exists. Here, the client DB 306 is a database that stores tables generated in each client machine, and the client DBMS 305 is a database management system that manages tables in the client DB 306. Since a table generated in each client machine is stored in the client DB 306, when accessing this table, communication between the client and the server is not required, and the load conventionally concentrated on the server DBMS 303 is reduced. , Can be distributed to the client DBMS 305. For example, in the server DB 304, there are tables A, B, and C that are commonly used in the entire system, and tables created by extracting some data from the tables A, B, and C are created. In the case of performing a task of frequently editing and processing data on the table T in the T, the table T is generated in the client DB 306, and necessary data is obtained from the tables A, B, and C of the server DB 304, and the table T is obtained. By storing and editing and processing the data of the table T, communication between the client and the server becomes unnecessary, and the load of the server DBMS 303 required for the processing of editing and processing the data of the table T is reduced by the client DBM.
It can be distributed to S305. FIG. 1 is a configuration diagram of the distributed database system of the present embodiment. In the figure, 10 is a client machine, 11 is a client DBMS, 108 is a client DB, 20 is a server machine, 21 is a server DBMS, 104 is a server DB, and 120 is a shared disk. First, the operation at the time of definition will be described. The table definition unit 101 of the client machine 10 is a part that defines components of the database such as tables and indexes according to the instructions of the definer. The definer is the client machine 10
When a table or an index is newly defined, the request is sent to the table definition unit 1 of the server machine 20 via the LAN 102.
Send to 03. The table definition unit 103 of the server machine 20 updates the definition information 105 of the server DB 104 via the DBMS kernel unit of the server DBMS 21, generates a table or index defined by the definer, and then generates a table distribution management unit 10
Pass control to 6. FIG. 4 shows a table management table which is a part of the definition information 105. The table management table includes type information 401 and generation date 402 in addition to the identifier and the table name. Type information 401
Stores the identification information of whether or not the table is generated in each client machine 10 for each table, and the generation date and time 402 stores the date and time when the table was generated. When the value of the type information 401 is "client", it indicates that the table is a table generated for each client machine, and the value of the type information 401 is "server".
Indicates that the table is generated only on the server machine. When the value of the record type information 401 of the newly added / updated table management table is “server”, the table distribution management unit 106 immediately transmits the result of the change to the server DB 104 to the table definition of the client machine 10. To the unit 101. The table distribution management unit 106 also stores the type information 4
When the value of “01” is “client”, the definition information 10
5 is a script that updates the definition generation management table, which is a part of the table 5, updates the file of the request destination list 107 in the shared disk 120, and generates a table, an index, and the like defined by the definer for each client machine 10. Send a sentence.
The detailed operation of the table distribution management unit 106 will be described later. FIG. 5 shows a definition generation management table which is a part of the definition information 105. The definition generation management table includes a table name 501,
There are a table generation statement 502, an index generation statement 503, and the like. The table name 501 stores the table name of the table defined by the definer, the table generation statement 502 stores a script statement for generating the table, and the index generation statement 503 stores the script for generating the index of the table. Stores a statement. Each client machine 10 executes a script sent from the table distribution management unit 106 of the server machine 20 to generate a table, an index, and the like defined by the definer. Thereby, the client DB 108
In addition, a table defined by the definer can be generated. FIG. 6 shows the contents of the request destination list 107 of the shared disk 120. The request destination list 107 includes a table name 601 and a generation date / time 602, and the table distribution management unit 106 stores information on the table name and generation date / time of the table management table. Next, the operation during operation will be described. When the client-side business process 109 generates an access to the database, the request destination determination unit 110
A request destination list exists in the client DB 108 by referring to the request destination list 107 in the server DB 104.
To determine if it exists. The detailed operation of the request destination determination unit 110 will be described later. When the request destination table exists in the client DB 108, the client DB 108 accesses the client DB 108 via an inquiry processing unit and a DBMS kernel unit in the client DBMS 11 of the client machine 10, and
When the table of the request destination exists in the server DB 104, an inquiry processing unit in the server DBMS 21 of the server machine 20;
The server DB 104 is accessed via the DBMS kernel. Here, the request destination table is generated by a client machine other than the currently operating client machine. At this time, the request destination table is stored in the client DB 108 because the client machine 10 is stopped. Even if it is determined that it exists, the client DB 10 of the client machine 10
8 does not exist, or even if it exists, the definition contents may be different. If it is determined that the requested table exists in the client DB 108 but does not exist, the corresponding record is taken out from the definition generation management table of the definition information 105 of the server DB 104 and executed. , Generates a request destination table in the client DB 108. Further, even if it exists in the client DB 108, it is determined whether or not the definition content is the latest, based on the generation date 402 in the table management table in the client DB 108,
The comparison is made with the generation date and time in the file of the request destination list 107. Next, the operation of the table distribution management unit 106 will be described. After the generation of the processing target table, the generation of the index of the processing target table, and the update of the table management table are completed, the table distribution management unit 106
Performs the processing. FIG. 7 is a processing flowchart showing the flow of the operation of the table distribution management unit 106. First, the table distribution management unit 106
First, create the definition generation management table records such as the table name of the processing target table, information identifying the client machine of the request source, the table generation statement of the processing target table, and the index generation statement of the processing target table. And give it the necessary information to start execution. Here, the generation of the processing target table, the generation of the index of the processing target table, and the updating of the table management table are performed before the processing by the table distribution management unit 106 is executed. The generation statement, the index generation statement of the processing target table, and the like have already been obtained and can be given to the table distribution management unit 106. The table distribution management unit 106 is a server DB 104
Is searched by the table name of the given processing target table (step 701). As described above, since the update of the table management table has been completed, the corresponding record is always found. Therefore, the value of the type information 401 in the record of the found table management table is evaluated (step 702). If the value of the type information 401 is "server",
The record of the file of the request destination list 107 in the shared disk 120 is searched by the given table name (step 71).
3) Evaluate the existence of the record (step 71)
4). If the corresponding record exists in the file of the request destination list 107 in the shared disk 102, the corresponding record of the file of the request destination list 107 is deleted (step 715). Thereafter, the execution result is transmitted to the requesting client machine 10 (712), and the table distribution management unit 106 ends the processing. If the value of the type 401 is "client", the definition generation management table of the server DB 104 is searched by the table name of the given processing target table (step 703). Thereafter, it is evaluated whether or not the corresponding record exists in the definition generation management table (step 704). If the relevant record exists in the definition generation management table, use the information required to create the record of the definition generation management table, such as the table generation statement of the given processing target table and the index generation statement of the processing target table. Update the corresponding record in the definition generation management table (step 70)
5). On the other hand, if the corresponding record does not exist in the definition generation management table, it is necessary to create a record of the definition generation management table such as a given table generation statement of the processing target table and an index generation statement of the processing target table. Using the necessary information, a corresponding record of the definition generation management table is newly added (step 70).
6). Next, the record of the file in the request destination list 107 in the shared disk 120 is searched by the given table name (step 707), and the existence of the record is evaluated (step 708). Request destination list 10 in shared disk 120
7, the corresponding record exists in the file of the request destination list 107, and the value of the item of the creation date and time 602 of the corresponding record in the file of the request destination list 107 is determined using the creation date and time in the corresponding record of the table management table found in step 701 It is changed (step 709). On the other hand, if the corresponding record does not exist in the file of the request destination list 107 in the shared disk 120, the generation date and time in the corresponding record of the table management table found in step 701 is used. A record is newly added to the file (step 710). Thus, in the file of the request destination list 107 in the shared disk 120, a record for a table whose type information 401 value in the record of the latest table management table is “client” is included. . After that, for all the currently connected client machines 10, the table generation statement and the index generation statement are transmitted together with the generation date and time on the server machine (step 711). Then, the requesting client machine 10
To the table distribution management unit 106 (712).
Ends the processing. When the client machine 10 receives the above-mentioned transmission message, a time later than the generation date and time at the server machine 20 (the current time at the client machine 10 at that time) is received. If the time is later than the generation time, the time is not changed,
If it is earlier than the generation time on the server machine that sent it, change the current time to the generation date and time on the server machine that sent it), and then execute the table generation statement and index generation statement . By comparing the generation date and time of the table management table in the client DB 108 with the generation date and time in the request destination list 107 in the shared disk 120, it is determined whether the table in the client DB 108 is the latest table. Can be determined. Next, the operation when the request destination determination unit 110 is operated by giving the request destination table name will be described. FIG. 8 is a processing flow chart showing the flow of the operation of the request destination determination unit 110. First, the request destination determination unit 110
Searches for the file of the request destination list 107 in the shared disk 102 with the given table name (step 801), and evaluates whether there is a corresponding record (step 802). If there is no corresponding record, the request destination table is stored as a record whose type information 401 is "server" in the table management table in the server DB 104. Table is Client DB10
8 is known not to exist. Therefore, the request destination table is a table to be accessed to the server DB 104 (step 813). Conversely, if the corresponding record exists, the request destination table is a table management table in the server DB 104, and the type information 4
01 is stored as a record indicating “client”, the request destination table is stored in the client DB 108.
Then, a table that should exist. However, at this time, the request destination table does not always exist with the latest definition in the client DB 108, so that a check needs to be performed. Therefore, the generation date and time of the record in the file of the request destination list 107 in the shared disk 120 found in step 801 is set to the variable FDate (step 803). Next, the table management table in the client DB 108 is searched with the given table name (step 804), and the presence or absence of the corresponding record is evaluated (step 805). If the corresponding record exists, the variable Ddate
The value of the generation date and time in the corresponding record is stored in (step 806). Then, the value of the variable Fdate set in step 803 and the variable Ddate set in step 806
(Step 807). Here, if the value of the variable Fdate is newer, it can be determined that the request destination table has not been generated with the latest definition in the client DB 108, as in the case where the corresponding record does not exist in step 805. . Conversely, if the value of the variable Fdate is not newer, the request destination table is
Since the request destination table has been generated with the latest definition, the request destination table is a table to be accessed by the client DB 108 (step 814). If it is determined that the request destination table is the client DB 108 and that it has not been generated with the latest definition, it requests the server DB 104 for a table / index generation statement and its generation date and time information ( Step 80
8). Next, the generation date and time returned from the server DB 104 is compared with the current time of the client machine (step 809). The current time with the date and time of generation on the server machine (step 81
0). Thereafter, the table generation statement and the index generation statement returned from the server DB 104 are executed (step 8).
11). The request destination table is now in the client DB 108
In, the request destination table is a table to be accessed by the client DB 108 (step 812). As is clear from the description of FIG. 8, the definition of the table generated in the client machine 10 can be automatically unified by the system. As described above, according to this embodiment, the table T is conventionally generated in the server DB 204 as shown in FIG. 2, whereas the table T is stored in the client DB 3 as shown in FIG.
06, communication between the client and the server is not required to access the table T. Further, thereby, the load of the server DBMS 303 can be distributed to the client DBMS 305. Further, the system can automatically generate and delete tables in each client machine only by changing the value of the type information 401 of the table management table. As described above, according to the present invention, in a distributed database system in which a server machine and a plurality of client machines connected to the server machine execute business processing,
When each client machine processes data that is handled uniquely by the client machine when processing business,
By completing the process only in the client machine,
It is possible to reduce the communication overhead between the server machine and the client machine and to distribute the DBMS load on the server machine. This is particularly effective when a client machine executes processing for a table such as a temporary table that does not permanently occupy a storage medium. Further, if the definer changes the identification information as to whether the database table is a table for storing data uniquely handled by each client machine or a table commonly handled by all client machines, the system By automatically generating / deleting a table on each client machine by itself, it becomes unnecessary for the definer to perform a special manual operation, and the trouble of the definer can be greatly reduced.

【図面の簡単な説明】 【図1】本発明の1実施形態に係る分散データベースシ
ステムの構成図である。 【図2】従来のシステムを模式的に示す説明図である。 【図3】本発明の1実施形態に係る分散データベースシ
ステムを模式的に示す説明図である。 【図4】本発明の1実施形態における、定義情報の一部
である表管理表を示す説明図である。 【図5】本発明の1実施形態における、定義情報の一部
である定義生成管理表を示す説明図である。 【図6】本発明の1実施形態における、要求先リストの
ファイル内容を示す説明図である。 【図7】本発明の1実施形態における、表配布管理部の
動作の流れを示す処理フロー図である。 【図8】本発明の1実施形態における、要求先判定部の
動作の流れを示す処理フロー図である。 【符号の説明】 10 クライアントマシン 11、305 クライアントDBMS 20 サーバマシン 21、303 サーバDBMS 101 クライアントマシンの表定義部 102 LAN 103 サーバマシンの表定義部 104、304 サーバDB 105 サーバDBの定義情報 106 表配布管理部 107 要求先リスト 108、306 クライアントDB 109 クライアント側業務処理 110 要求先判定部 111 サーバ側業務処理 120 共有ディスク
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a configuration diagram of a distributed database system according to an embodiment of the present invention. FIG. 2 is an explanatory diagram schematically showing a conventional system. FIG. 3 is an explanatory diagram schematically showing a distributed database system according to one embodiment of the present invention. FIG. 4 is an explanatory diagram showing a table management table which is a part of definition information in one embodiment of the present invention. FIG. 5 is an explanatory diagram showing a definition generation management table which is a part of the definition information according to the embodiment of the present invention. FIG. 6 is an explanatory diagram showing file contents of a request destination list in one embodiment of the present invention. FIG. 7 is a processing flowchart showing a flow of operation of a table distribution management unit according to the embodiment of the present invention. FIG. 8 is a process flowchart showing an operation flow of a request destination determination unit in one embodiment of the present invention. [Description of Signs] 10 Client machine 11, 305 Client DBMS 20 Server machine 21, 303 Server DBMS 101 Client machine table definition unit 102 LAN 103 Server machine table definition unit 104, 304 Server DB 105 Server DB definition information 106 Table Distribution management unit 107 Request destination list 108, 306 Client DB 109 Client side business process 110 Request destination determination unit 111 Server side business process 120 Shared disk

フロントページの続き (56)参考文献 特開 平7−334402(JP,A) Keller A. M. et a l.,A Predicate−bas ed Caching Scheme for Client−Server Database Architect ures,VLDB Journal, ドイツ,Springer,1996年,V ol.5,No.1,p.35−47,UR L,http://www.infor matik.uni−trier.de /〜ley/db/journals /vldb/KellerB96.htm l Dar S. et al.,Sem antic Data Caching and Replacement,P roceedings of 22th International Conf erence on Very Lar ge Data Bases,米国,M organ Kaufmann,1996年 p.330−341,URL,http: //www.infomatik.un i−trier.De/〜ley/db /conf/vldb/DarFJST 96.html (58)調査した分野(Int.Cl.7,DB名) G06F 12/00 G06F 17/30 Continuation of the front page (56) References JP-A-7-334402 (JP, A) Keller A. M. et al. , A Predicate-based Caching Scheme for Client-Server Database Architectures, VLDB Journal, Germany, Springer, 1996, Vol. 5, No. 1, p. 35-47, URL, http: // www. info matik. uni-trier. de / ~ ley / db / journals / vldb / KellerB96. html Dar S.H. et al. , Semantique Data Caching and Replacement, Proceedings of 22th International Conference on Very Large Data Bases, Morgan Kaufmann, 1996, p. 330-341, URL, http: // www. infomatik. un i-trier. De / ~ ley / db / conf / vldb / DarFJST 96. html (58) Field surveyed (Int. Cl. 7 , DB name) G06F 12/00 G06F 17/30

Claims (1)

(57)【特許請求の範囲】 【請求項1】 データベースを有するサーバマシンと、
それに接続したそれぞれがデータベースを有する複数の
クライアントマシンで、業務処理を実行する分散データ
ベースシステムにおいて、 サーバマシンと各クライアントマシンとに接続した共有
ディスクを設けて、この共有ディスクには、サーバマシ
ンが作成した表管理表のうちで、各クライアントマシン
のデータベース内にそれぞれ存在する表に関する表名と
生成日時とを含む要求先リスト情報を格納しておき、 クライアントマシンは、共有ディスクの要求先リスト情
報を参照して、要求先表が、サーバマシンのデータベー
スに存在するのか、クライアントマシンのデータベース
に存在するのかを判断し、要求先表がサーバマシンのデ
ータベースに存在する場合には、サーバマシンのデータ
ベースにアクセスして必要データを取得してクライアン
トマシンのデータベースへ表を生成し、要求先表がクラ
イアントマシンのデータベースに存在しかつ要求先表が
最新の定義で生成されているものなら、クライアントマ
シンのデータベースに既に生成されている表をアクセス
すべき表とし、要求先表がクライアントマシンのデータ
ベースに存在していても要求先表が最新の定義で生成さ
れていないならば、サーバマシンのデータベースにアク
セスして必要データを取得してクライアントマシンのデ
ータベースへ表を生成し、 各クライアントマシンが業務を処理するにあたり、クラ
イアントマシンのデータベースに、クライアントマシン
が占有して使用するためのデータ格納用の表を最新の定
義でシステムが自動的に作成しておき、クライアントマ
シンにおいて専有して使用する表のデータを操作する
際、サーバマシンへのアクセスを抑止するようにしたこ
とを特徴とする分散データベースシステム。
(57) [Claims] [Claim 1] A server machine having a database,
Multiple connected to it, each with a database
Distributed data for executing business processes on client machines
In the base system, shares connected to the server machine and each client machine
A disk is provided, and this shared disk has a server machine
Each client machine in the table management table created by
Table names for tables that exist in each database
The request destination list information including the generation date and time is stored, and the client machine requests the shared disk for the request destination list information.
The request destination table is referenced from the
Database on the client machine
Is determined to exist in the server machine, and the request destination table is
Database, if it exists in the database
Access the base to get necessary data and client
Generates a table in the database of the remote machine, and
Exists in the client machine database and the request destination table is
If it is generated with the latest definition,
Access tables already generated in Thin's database
Table to be requested and the request destination table is the data of the client machine
The requested table is generated with the latest definition even if it exists in the base.
If not, access the database on the server machine.
And obtain the necessary data to
A table is created in the database, and each client machine processes
Client machine in client machine database
Table for data storage for exclusive use by
System automatically creates the
Manipulate table data for exclusive use in Thin
Access to the server machine
And a distributed database system.
JP22967597A 1997-08-26 1997-08-26 Distributed database system Expired - Fee Related JP3527834B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22967597A JP3527834B2 (en) 1997-08-26 1997-08-26 Distributed database system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22967597A JP3527834B2 (en) 1997-08-26 1997-08-26 Distributed database system

Publications (2)

Publication Number Publication Date
JPH1165913A JPH1165913A (en) 1999-03-09
JP3527834B2 true JP3527834B2 (en) 2004-05-17

Family

ID=16895933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22967597A Expired - Fee Related JP3527834B2 (en) 1997-08-26 1997-08-26 Distributed database system

Country Status (1)

Country Link
JP (1) JP3527834B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10698899B2 (en) 2016-08-22 2020-06-30 Kabushiki Kaisha Toshiba Data processing method, data processing device, storage system, and method for controlling storage system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334402A (en) * 1994-06-13 1995-12-22 Hitachi Ltd Data base as main memory

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Dar S. et al.,Semantic Data Caching and Replacement,Proceedings of 22th International Conference on Very Large Data Bases,米国,Morgan Kaufmann,1996年p.330−341,URL,http://www.infomatik.uni−trier.De/〜ley/db/conf/vldb/DarFJST96.html
Keller A. M. et al.,A Predicate−based Caching Scheme for Client−Server Database Architectures,VLDB Journal,ドイツ,Springer,1996年,Vol.5,No.1,p.35−47,URL,http://www.informatik.uni−trier.de/〜ley/db/journals/vldb/KellerB96.html

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10698899B2 (en) 2016-08-22 2020-06-30 Kabushiki Kaisha Toshiba Data processing method, data processing device, storage system, and method for controlling storage system

Also Published As

Publication number Publication date
JPH1165913A (en) 1999-03-09

Similar Documents

Publication Publication Date Title
US11645210B2 (en) Cache aware searching based on one or more files in remote storage
US7707182B1 (en) Method and system for automatically updating the version of a set of files stored on content servers
US7809882B1 (en) Session independent backend data cache system
JPH1069423A (en) Hypermedia system and its directory data managing method
US20050262078A1 (en) Database processing method, apparatus for implementing same, and medium containing processing program therefor
JP3290801B2 (en) Resource location detection method
JP2002140224A (en) Content change managing method
US7536404B2 (en) Electronic files preparation for storage in a server
US7660876B2 (en) Electronic file management
JP3527834B2 (en) Distributed database system
JP2005190221A (en) Cache control unit, its method, and computer program
JP2006227671A (en) Web page providing device and method
JP2001184355A (en) Information collecting system, contents server, information collecting device and recording medium
WO2002061586A2 (en) Smart-caching system and method
US7596564B1 (en) Method and system for cache management of a cache including dynamically-generated content
JP3471203B2 (en) Network system
JP3623873B2 (en) Database management system
JP3298904B2 (en) Supplementary service execution program management method
JP4210164B2 (en) Service order information management control center station apparatus, service order information management control method for center station apparatus, program thereof, and storage medium storing the program
EP1205857A2 (en) Apparatus for retrieving data
JPH11212838A (en) System and method for change record history management by table split
JPH11232104A (en) Object update and management method and client/server system
JP2002366568A (en) Online system, device and program
JP2001256240A (en) Automatic electronic catalog collection system
JP2000347911A (en) Method and system for managing database

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040223

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100227

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100227

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110227

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110227

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 9

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20140227

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees