JP2005149348A - データベース管理方法、管理プログラム及び管理装置 - Google Patents

データベース管理方法、管理プログラム及び管理装置 Download PDF

Info

Publication number
JP2005149348A
JP2005149348A JP2003388870A JP2003388870A JP2005149348A JP 2005149348 A JP2005149348 A JP 2005149348A JP 2003388870 A JP2003388870 A JP 2003388870A JP 2003388870 A JP2003388870 A JP 2003388870A JP 2005149348 A JP2005149348 A JP 2005149348A
Authority
JP
Japan
Prior art keywords
data
database
expiration date
expired
arithmetic processing
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
JP2003388870A
Other languages
English (en)
Inventor
Kuniaki Sugano
邦明 菅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003388870A priority Critical patent/JP2005149348A/ja
Publication of JP2005149348A publication Critical patent/JP2005149348A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 データに有効期限を設定可能なデータベースに有効期限切れのデータが含まれていても、そのデータの使用を回避し、また、データベース使用時のコンピュータの処理負荷を大きく増大させることなく、有効期限切れのデータを自動的に削除していくデータベースの管理方法を提供する。
【解決手段】 データベースの検索選択処理304a又は更新処理305では、有効期限切れのデータについての検索選択処理304a又は更新処理305を無効化するようにした。また、データの挿入処理703では、有効期限切れのデータの位置に挿入すべき新たなデータを上書きするようにした。さらに、更新処理305では、有効期限切れのデータを削除し、アンロード処理902/リロード処理904では、有効期限が切れのデータのアンロード/リロードをしないようにした。
【選択図】 図3

Description

本発明は、データベースの管理方法、管理プログラム及び管理装置に関する。
多くのデータベースにおいて、格納するデータに有効期限を設定することができるが、有効期限が切れたデータをそのまま残しておくと、データ量が必要以上に増加し、記憶装置等のコンピュータのリソースを無駄に消費することになる。また、有効期限の切れたデータを誤って使用することもある。そのため、データベースの管理者は、有効期限が切れたデータを定期的に削除する必要があった。
このような場合に、有効期限が切れたデータを人手により削除すると、多大の手数がかかり、削除ミスも多く発生する。そこで、特許文献1及び特許文献2には、コンピュータにより有効期限が切れたデータを削除する方法が開示されている。
特開平05−061738号公報(段落0006〜0017、図2) 特開平05−061737号公報(段落0017〜0025、図4)
特許文献1に開示されているデータベース管理システムの例によれば、データベースのデータをキーボード又は磁気テープなどの外部記憶媒体から入力するときに、その入力されるデータについて有効期限の判定を行い、有効期限が切れたデータについては、データベースに入力しないようにしている。このようにすれば、データベースのデータを毎日1回、磁気テープなどの外部記憶装置に保管し、また、データベースを使用する日には、その保管されたデータベースを毎日1回、コンピュータのメモリ又はハードディスクに読み出して使用するような場合には、適切かつ有効な方法である。
しかしながら、ハードディスクの大容量化と低価格化が進行したために、データベースのデータは、ハードディスクに格納されたまま使用されることが多くなった。従って、磁気テープ等にデータベースのデータをバックアップのために保管することはあっても、それを毎日入力し直すようなことは通常行われなくなった。そのため、この例に開示されている削除方法では、有効期限切れのデータを十分には削除することができなくなった。すなわち、データベースのデータを一旦バックアップして、そのバックアップされたデータを毎日再入力しない限りは、有効期限切れのデータが混在することになる。これでは、有効期限切れのデータを誤用する可能性が残ることになる。
また、特許文献2に開示されているデータベースの管理方式によれば、データベースのオブジェクトに有効期限が設定されている場合には、そのオブジェクトをアクセスしたときにオブジェクトの有効期限チェックを行い、有効期限が切れたオブジェクトであれば、そのオブジェクトを削除するとしている。このようなデータベースのオブジェクトの削除方法は、有効期限が切れたオブジェクトを確実に削除することができる。
しかしながら、この例に示されているデータの削除方法は、データベースを管理するコンピュータの処理負荷を大きく増大させる不利益を含んでいる。なぜなら、この例によれば、コンピュータは、そのデータをアクセスするたびに毎回必ずそのデータの有効期限をチェックするからである。データベースはそもそもデータの検索を目的として使用され、その検索におけるコンピュータの処理のほとんどはデータの参照で占められる。従って、コンピュータがデータを参照するたびに毎回必ずそのデータの有効期限のチェックを行うのでは、コンピュータの処理負荷はどうしても増大してしまう。
以上の従来技術の問題を鑑み、本発明では、有効期限を設定可能なデータベースにおいて、第1に、有効期限の切れたデータの使用を回避し、第2に、コンピュータの処理負荷を大きく増大させることなく、有効期限の切れたデータを削除し、第3に、その削除をユーザの手を煩わせることなく自動的に行うことを、可能にするようなデータベースの管理方法、管理プログラム及び管理装置を実現することを課題とする。
前記課題を解決するために、本発明では、データベースのデータの検索選択処理又は更新処理において、その対象データの有効期限を判定し、その有効期限が切れている場合には、その対象データについての検索選択処理又は更新処理を無効化するようにした。なお、この無効化の処理において、対象のデータを削除するとしてもよい。
このように検索選択処理又は更新処理の処理を無効化することによって、データベースに有効期限切れのデータが混在していても、その使用を回避することができる。また、これらの処理においては、アクセスした全てのデータについて有効期限の判定を行うのではなく、検索選択処理又は更新処理の対象データについてのみ有効期限の判定を行うようにしたので、コンピュータの処理負荷の増加分は少なくて済む。
また、本発明では、データベースへの新たなデータの挿入処理において、そのデータベースのデータに有効期限が切れたデータがあるか否かを判定し、有効期限が切れたデータがある場合には、その有効期限が切れたデータの位置に、挿入する新たなデータを上書きするようにした。
このように有効期限の切れたデータの位置に挿入すべき新たなデータを上書きすることは、その有効期限の切れたデータを削除することになる。しかも、その削除は、データベースのユーザに意識されることなく、自動的に行われる。また、このような上書きは、不要となるデータの格納領域を再利用することになるので、データベースのデータ格納領域の増大を抑制することにもなる。
さらに、本発明では、データベースのデータのアンロード処理又はリロード処理において、前記処理の対象データの有効期限を判定し、その対象データの有効期限が切れている場合には、その対象データについてのアンロード処理又はリロード処理を無効化するようにした。
このように有効期限切れデータについてはアンロード又はリロードを行わないのは、そのデータを削除することに等しい。従って、アンロード処理又はリロード処理により有効期限切れのデータは、ユーザが意識することなく自動的にデータベースから一挙に削除されることになる。
以上、本発明によれば、データに有効期限を設定することができるデータベースにおいて、そのデータベースに有効期限の切れたデータが含まれていても、そのデータの使用を回避することができる。
以下、本発明の実施形態について、適宜図面を参照しながら詳細に説明する。
図1は、本発明に係るデータベース管理装置の構成を示したブロック図である。図1において、データベース管理装置は、データベースを保管し、制御するコンピュータ10と、データベースを再編成又はバックアップするための磁気テープ等を記憶媒体とする外部記憶装置20と、データベースを使用するための指示情報を入力したり、データベースの内容を表示したりするための端末装置30とにより構成される。
コンピュータ10は、演算処理装置(CPU:Central Processing Unit )100と、メモリ110と、ハードディスク等の補助記憶装置150とにより構成される。ここで、メモリ110には、演算処理装置100を動作させるためのプログラムとして、ユーザアプリケーションプログラム(UAP:User Application Program、以下、UAPと略称する。)120、データベース管理システム(DBMS:Data Base Management System、以下、DBMSと略称する。)130、及び、オペレーティングシステム(OS:Operating System)140が格納されるとともに、それらのプログラムが実行されるときの作業領域として使用される。また、補助記憶装置150には、データベース170およびその構造を定義するディクショナリ160が格納される。
図2は、本実施形態におけるデータベースの表定義文、及び、期限管理定義表の例を示した図である。“SQL1”201及び“SQL2”202は、データベース操作言語SQL(Structured Query Language)による表定義文(CREATE TABLE文)の例である。図2において、“SQL1”201の表定義文は、“表1を作成し、表1に、ID、終了日、・・・の列を設け、表1の属性は、パラメータP1〜P3の値に従う”ことを表している。
ここで、パラメータP1〜P3の意味は、図2の表205に示されている。すなわち、パラメータP1の値がYであれば、期限管理属性ありの表であることを、Nであれば、期限管理属性なしの表であることを意味する。また、パラメータP2は、データの有効期間を示す日付又は期間(日数)を、パラメータP3は、有効期間保持列名つまり有効期限日を格納する表の列名を意味する。従って、“SQL1”201における表定義文の後半のパラメータ部分は、“表1は期限管理属性ありで、そのデータの有効期間は7日間で、その有効期間をデータとして表1の列名が終了日の列に保持する”ことを意味する。つまり、表1の終了日の列へは、データが挿入される際に、データ挿入日の7日後の日付が格納されることになる。
同様に“SQL2”202の表定義文は、“表2を作成し、表2にID、終了日、・・・の列を設け、表2は期限管理属性ありで、有効期間をデータとしてその列名が終了日の列に保持する”ことを意味する。ただし、ここではパラメータP2つまり有効期間が定義されていないので、この場合には、表2にデータを挿入するときにその都度、有効期間を指定する必要がある。
なお、図2には、“表1”206及び“表2”207が示されているが、その“表1”206及び“表2”207には、IDと終了日以外の列の図示は省略されている。
“SQL1”201及び“SQL2”202のような表定義文は、UAP120においてユーザによるデータベースの定義に際して用いられ、それらは、DBMS130においてDB(Data Base)定義処理203として実行される。そして、これらの表定義文が実行されると、データベース170に“表1”206及び“表2”207の領域が割り当てられるとともに、ディクショナリ160に期限管理定義表204が作成される。
以下、図2において定義された“表1”206及び“表2”207を例にしつつ、本発
明に係るデータベース管理のための基本処理について説明する。
図3は、データベース170に対する検索処理、更新処理及び削除処理のSQLの文例、並びに、それらの処理に係る表の例を示した図である。また、図4は、検索処理における検索選択処理の処理の流れを示した図、図5は、更新処理の処理の流れを示した図、図6は、削除処理の処理の流れを示した図である。ここで、検索選択処理とは、検索処理304のうち、検索条件に適合して選択されたデータについて実行される処理をいう。
まず、図3及び図4に従い、検索処理について説明する。
データベースにおける検索処理は、SQLのSELECT文を用いて行われる。例えば、図3に示すように、UAP120において“SQL3”301のようなSELECT文があれば、DBMS130は、その文に記載された条件(図示せず)に従い、検索処理304を実行する。そして、検索処理304において、検索条件に適合したデータについては、さらに、以下に説明する検索選択処理304aを実行する。
図4において、検索選択処理304aが開始されると、DBMS130は、まず、SELECT文が指定した表(例えば、表1)について検索条件に適合して選択された行を1件取り出す(S41)。このとき、選択された行が存在しないときは(S42でNo)、そのまま検索選択処理を終了する。一方、選択された行が存在するときには(S42でYes)、期限管理定義表204を参照して、指定された表の期限管理属性を判定する(S43)。その結果、その表が期限管理属性なしの場合には(S43でNo)、この検索選択処理の上位処理へ検索結果を返却して(S45)、検索選択処理を終了する。また、その表が期限管理属性ありの場合には(S43でYes)、その表の選択された行の終了日の列を参照し、その行のデータの有効期限が切れているか否かを判定する(S44)。その結果、その行のデータの有効期限が切れていない場合には(S44でNo)、この検索選択処理の上位処理へ検索結果を返却して(S45)、検索選択処理を終了する。一方、有効期限が切れている場合には(S44でYes)、ステップS41へ戻って、次に存在する検索して選択された行を取り出し、ステップ42以下の処理を行う。
以上のように、図4の処理の流れにおいて、検索して選択された行の有効期限が切れている場合には(S44でYes)、結局、何の処理も行われない。つまり、その行は、読み飛ばされることになる。
図3に戻って、さらに具体的に説明する。ここでは“SQL3”301のSELECT文が表307に示すように2003年8月5日に実行され、そのとき“表1”206aにおいてIDが001及び002の行が検索条件に適合して選択されたものとする。
まず、選択されたIDが001の行を取り出す。そして、ディクショナリ160の期限管理定義表204を参照して、“表1”206aが期限管理属性ありの表と判定する。さらに、IDが001の行の有効期限を判定する。すると、IDが001の行は、有効期限が2003年8月1日なので、有効期限が切れており、この行は読み飛ばされる。そこで、次に選択された行であるIDが002の行が取り出される。IDが002の行の有効期限は8月8日であるので、有効期限内である。その結果、IDが002の行のデータが検索選択処理の出力として、検索選択処理の上位処理へ返却されることになる。
以上のように、本実施形態における検索選択処理においては、期限管理属性ありの表に期限切れのデータが存在していても、そのデータは読み飛ばされる。従って、期限切れのデータが誤って利用されることはない。
また、SELECT文による検索条件に対する適合性のチェックは、データベースの指定された表全体の行について行われるものの、検索選択処理により行うデータの有効期限の判定は、検索して選択された、つまり、検索条件に適合したデータについてだけしか行われない。よって、データの有効期限の判定に伴うコンピュータの処理量の増加を抑制することができる。
次に、図3及び図5に従い、更新処理について説明する。
データベースにおける更新処理は、SQLのUPDATE文を用いて行われる。例えば、図3に示すように、UAP120において“SQL4”302のようなUPDATE文があれば、DBMS130は、その文の指示に従い、更新処理305を実行する。
図5において、更新処理305が開始されると、UPDATE文で指定された表(例えば、表1)から更新する行を1行取り出す(S51)。このとき、更新する行が存在しないときは(S52でNo)、そのまま更新処理を終了する。一方、更新する行が存在するときには(S52でYes)、期限管理定義表204を参照して、指定された表の期限管理属性を判定する(S53)。そして、その表が期限管理属性なしの場合には(S53でNo)、更新する行のデータを更新し(S55)、更新処理を終了する。また、その表が期限管理属性ありの場合には(S53でYes)、その行の終了日の列を参照し、その行のデータの有効期限が切れているか否かを判定する(S54)。その結果、その行のデータの有効期限が切れていない場合には(S54でNo)、更新する行のデータを更新し(S55)、更新処理を終了する。一方、有効期限が切れている場合には(S54でYes)、その行のデータを削除して(S56)、更新処理を終了する。
図5の処理の流れにおいて、更新する行の有効期限が切れている場合には(S54でYes)、結局、その行のデータの更新は行われず、代わりにその行のデータの削除が行われる。
図3に戻って、さらに具体的に説明する。ここでは“SQL4”302のUPDATE文が、“表1”206aにおいてIDが002及び003の行を更新するという文(図示せず)であるものとし、その文が表307に示されている2003年8月10日に実行されたとする。
その場合には、まず、ディクショナリ160の期限管理定義表204が参照され、“表1”206aが期限管理属性ありの表と判定されて、さらにその行のデータの有効期限が判定される。すると、IDが002の行は、有効期限が2003年8月8日なので、有効期限切れとなり、削除される。また、IDが003の行は有効期限が2003年8月15日なので、有効期限内であり、この行のデータは、削除されず更新される。
以上のように、本実施形態においては、期限管理属性ありの表に期限切れのデータが存在している場合に、そのデータが更新されるときには、更新される代わりに削除される。よって、期限切れのデータが誤って利用されることはない。また、この更新処理には、期限切れのデータを自動的に削除する作用が備わっている。すなわち、この更新処理により、DBMS130のユーザは意識することも処置することもなく、期限切れのデータは、その都度、削除される。
次に、図3及び図6に従い、削除処理について説明する。
データベースにおける削除処理は、SQLのDELETE文を用いて行われる。例えば、図3に示すように、UAP120において、SQL5”303のようなDELETE文があれば、DBMS130は、その文の指示に従い、削除処理306を実行する。
図6において、削除処理306が開始されると、DELETE文で指定された例えば表1から削除する行を1行取り出す(S61)。このとき、更新する行が存在しないときは(S62でNo)、そのまま削除処理を終了する。一方、削除する行が存在するときには(S62でYes)、期限管理属性を判定することもなく、また、その行のデータの有効期限を判定することもなく、その行のデータを削除し(S63)、削除処理を終了する。
次に、図7及び図8に従い、挿入処理について説明する。ここで、図7は、データベース170に対する挿入処理のSQLの文例、及び、その処理に係る表の例を示した図である。また、図8は、挿入処理の処理の流れを示した図である。
データベースにおける挿入処理は、SQLのINSERT文を用いて行われる。例えば、図7に示すように、UAP120に“SQL6”701や“SQL7”702のようなINSERT文があれば、DBMS130は、その文の指示に従い、挿入処理703を実行することになる。
図8において、挿入処理703が開始されると、期限管理定義表204を参照して、INSERT文が指定する表(例えば、表1)について期限管理属性を判定する(S81)。その結果、その表が期限管理属性なしの場合には(S81でNo)、新しい行にINSERT文が指定するデータを挿入し(S83)、挿入処理を終了する。また、その表が期限管理属性ありの場合には(S81でYes)、その表について有効期限切れの行があるか否かを判定する(S82)。その結果、その表に有効期限切れの行がない場合には(S82でNo)、INSERT文が指定するデータを新しい行に挿入し(S83)、挿入処理を終了する。一方、その表に有効期限切れの行があった場合には(S82でYes)、その有効期限切れの行にINSERT文が指定するデータを上書きする(S84)。
すなわち、図8の処理の流れにおいて、挿入しようとしている表に有効期限が切れている行が存在する場合には、その行に挿入しようとしているデータを上書きする。
図7に戻って、図8の処理の流れを具体的に説明する。“SQL6”701のINSERT文は、“表1においてIDの列のデータが004である行を挿入する”を意味する文である。この文が図7中の表704にあるように2003年8月5日に実行された場合には、まず、ディクショナリ160の期限管理定義表204を参照すると、“表1”206aが期限管理属性ありとされているので、さらに、“表1”206aに有効期限切れの行があるか否か判定する。このとき、IDが001の行は、有効期限が2003年8月1日なので、有効期限切れとなっている。従って、IDが001の行の位置に、IDが004の行のデータが上書きされる。ここで、この行の終了日の列には、この文の実行日に7日が加算された2003年8月12日の日付が格納される。従って、“表1”206aは、“SQL6”701のINSERT文がされると、“表1”206bとなる。
また、“SQL7”702のINSERT文は、“表2において、ID及び終了日それぞれの列のデータが005及び2003年9月1日である行を、挿入する”を意味する文である。この文が図7中の表704にあるように2003年8月20日に実行された場合には、まず、ディクショナリ160の期限管理定義表204を参照すると、“表2”207aが期限管理属性有りとされているので、さらに、“表2”207aに有効期限切れの行があるか否か判定する。すると、有効期限切れの行はないので、“表2”207aの新しい行に、IDが005の行が作成され、その行の終了日の列には2003年9月1日という日付が格納される。従って、“表2”207aは、“SQL7”702のINSERT文がされると、“表2”207bとなる。
以上のように、本実施形態においては、期限管理属性ありの表に新たなデータが挿入されるとき、その表に有効期限切れのデータが存在している場合には、その有効期限切れのデータの位置に新たなデータが上書きされる。従って、この上書きには、有効期限切れのデータを自動的に削除する作用が備わっており、DBMS130のユーザは、意識することも処置することもなく、新しいデータを挿入すると、期限切れのデータが削除される。
次に、図9、図10及び図11に従い、本実施形態におけるデータベースのアンロード/リロード処理について説明する。ここで、図9は、本実施形態におけるデータベースのアンロード/リロード処理による表の変遷の状況の例を示した図である。また、図10は、アンロード処理の処理の流れを示す図、図11は、リロード処理の処理の流れを示す図である。ここで、アンロード処理とは、データベースの内容を磁気テープ等の外部記憶装置の記憶媒体に格納する処理をいい、リロード処理とは、磁気テープ等にアンロードされたデータベースの内容を、通常、ハードディスクで構成されるデータベース170へ書き戻す処理をいう。このようなアンロード/リロード処理は、主としてデータベースのバックアップや再編成に際して用いられる。
図10において、アンロード処理902が開始されると、まず、アンロードするデータベースの表から1行のデータを取り出す(S101)。そのとき、アンロードする行が存在しないときは(S102でNo)、データのアンロードが完了したものとして、アンロード処理を終了する。一方、アンロードする行が存在するときには(S102でYes)、期限管理定義表204(図2参照)を参照して、アンロードする表の期限管理属性を判定する(S103)。その結果、その表が期限管理属性なしの場合には(S103でNo)、その行のデータを磁気テープ等の外部記憶装置20に記録する(アンロードする:S105)。また、その表が期限管理属性ありの場合には(S103でYes)、アンロードする行のデータの有効期限を判定する(S104)。その結果、そのデータの有効期限が切れていない場合には(S104でNo)、その行のデータを磁気テープ等の外部記憶装置20に記録する(アンロードする:S105)。一方、アンロードするデータの有効期限が切れていた場合には(S104でYes)、データのアンロードを行わないで、アンロードするデータベースの表から次の行のデータを取り出す処理(S101)に戻る。また、ステップS105でデータをアンロードすると、アンロードするデータベースの表から次の行のデータを取り出す処理(S101)に戻る。
次に、図11において、リロード処理903が開始されると、まず、リロードする外部記憶装置20から1行のデータを取り出す(S111)。そのとき、リロードする行が存在しないときは(S112でNo)、データはすべてリロードし終えたものとして、リロード処理を終了する。一方、リロードする行が存在するときには(S112でYes)、期限管理定義表204(図2参照)を参照して、リロードする表の期限管理属性を判定する(S113)。そして、その表が期限管理属性なしの場合には(S113でNo)、その行のデータをデータベース117へ格納する(リロードする:S115)。また、その表が期限管理属性ありの場合には(S113でYes)、リロードする行のデータの有効期限を判定する(S114)。その結果、そのデータの有効期限が切れていない場合には(S114でNo)、その行のデータをデータベース117へ格納する(リロードする:S115)。一方、リロードするデータの有効期限が切れていた場合には(S114でYes)、データのリロードを行わないで、リロードする外部記憶装置20から次の1行のデータを取り出す処理(S111)に戻る。また、ステップS115でデータをリロードすると、リロードする外部記憶装置20から次の1行のデータを取り出す処理(S111)に戻る。
図9に戻って、アンロード/リロード処理によって表の内容がどのように変遷するかを具体的に説明する。データベース170の“表1”901aについて、アンロード処理902が2003年8月5日に行われると、IDが001のデータは、終了日が2003年8月1日なので、データの有効期限が切れていることになり、外部記憶装置20にアンロードされない。その結果、外部記憶装置20には、“表1”903のように格納される。
また、アンロードされて、外部記憶装置20に格納された“表1”903について、2003年8月10日にリロード処理904が行われると、IDが002のデータは、終了日が2003年8月8日なので、データの有効期限が切れていることになり、リロードされない。その結果、データベース170には“表1”901bのように書き戻される。
以上のように、本実施形態において、期限管理属性ありの表をアンロード/リロードするとき、期限切れのデータは、読み飛ばされ、アンロード/リロードされない。従って、期限切れのデータは、アンロード/リロード処理に際し、削除されることになる。すなわち、アンロード/リロード処理を実行すると、期限切れのデータは、ユーザが意識することも処置することもなく、自動的に削除される。
以上、本発明を最良の実施形態によって説明したが、実施形態の一部がこの最良の実施の形態と異なる場合であっても、本発明の課題を解決することができる。
例えば、挿入処理においては、期限切れのデータが存在している場合には、その期限切れのデータの位置に挿入するデータを上書きする(図8、S84)としたが、期限切れのデータを探す処理(図8、S82)を行ってまで、挿入するデータを上書きする必要はない。挿入するデータは、単に空白行に挿入する(図8、S83)としても構わない。
この場合には、コンピュータの処理負荷は軽減されるが、有効期限切れのデータが自動的に削除される効果は、減退することになる。しかし、検索選択処理及び更新処理において、有効期限切れのデータを使用しないようにしている限りは、有効期限切れのデータを誤用する問題は生じない。
また、本実施形態では、更新処理において、更新する行のデータが期限切れであった場合、その更新する行のデータを削除する(図5、S56)としているが、必ずしも、削除する必要はなく、単にデータの更新をしないとするだけでも構わない。この場合には、有効期限切れのデータが自動的に削除される効果は、減退することになるが、有効期限切れのデータを更新する誤りは回避することができる。
また、本実施形態では、検索選択処理において、その対象のデータが有効期限切れのデータであった場合(図4、S44でYes)に、そのデータを削除していないが、そのデータを削除するように変更しても構わない。この場合には、有効期限切れのデータが自動的に削除される効果は向上するが、検索時のコンピュータの処理負荷はやや大きくなる。
本発明に係るデータベース管理装置の構成を示したブロック図である。 本発明の実施形態におけるデータベースの表定義文、及び、期限管理定義表の例を示した図である。 本発明の実施形態におけるデータベースに対する検索処理、更新処理及び削除処理のSQLの文例、並びに、それらの処理に係る表の例を示した図である。 本発明の実施形態における検索選択処理の処理の流れを示した図である。 本発明の実施形態における更新処理の処理の流れを示した図である。 本発明の実施形態における削除処理の処理の流れを示した図である。 本発明の実施形態におけるデータベースに対する挿入処理のSQLの文例、並びに、その処理に係る表の例を示した図である。 本発明の実施形態における挿入処理の処理の流れを示した図である。 本発明の実施形態におけるデータベースのアンロード処理/リロード処理による表の変遷の状況の例を示した図である。 本発明の実施形態におけるアンロード処理の処理の流れを示した図である。 本発明の実施形態におけるリロード処理の処理の流れを示した図である。
符号の説明
10 コンピュータ
100 演算処理装置
110 メモリ
130 データベース管理システム
170 データベース
304 検索処理
304a 検索選択処理
305 更新処理
306 削除処理
703 挿入処理
902 アンロード処理
904 リロード処理

Claims (5)

  1. アクセス属性情報が期限管理属性であるデータベースを、演算処理を行う際の作業領域となるメモリと、前記演算処理を行う演算処理装置とを少なくとも有したコンピュータにより管理するデータベース管理方法であって、
    前記データベースのデータの検索選択処理又は更新処理においては、
    前記演算処理装置が、前記データベースから前記検索選択処理又は前記更新処理の対象データの有効期限に関する情報を前記メモリに読み出し、この読み出した有効期限に関する情報に基づき、前記対象データの有効期限を判定し、その判定の結果、前記対象データの有効期限が切れていた場合には、前記対象データについての前記演算処理としての前記検索選択処理又は前記更新処理を無効化すること
    を特徴とするデータベース管理方法。
  2. 前記データベースへの新たなデータの挿入処理においては、
    前記演算処理装置が、前記データベースに格納されているデータの有効期限に関する情報を前記メモリに読み出し、この読み出した有効期限に関する情報に基づき、前記データの有効期限を判定し、その判定の結果、前記データの有効期限が切れていた場合には、前記データベースにおいて前記データが格納されている位置に、前記挿入する新たなデータを上書きすること
    を特徴とする請求項1に記載のデータベース管理方法。
  3. 前記コンピュータに接続された外部記憶装置に対する前記データベースのデータのアンロード処理又はリロード処理においては、
    前記演算処理装置が、前記データベースのデータ又は外部記憶装置に格納されているデータを前記メモリに読み出し、この読み出したデータの有効期限に関する情報に基づき、前記読み出したデータの有効期限を判定し、その判定の結果、前記読み出したデータの有効期限が切れていた場合には、前記読み出したデータの前記外部記憶装置又は前記データベースへの書き込み処理を無効化すること
    を特徴とする請求項1又は請求項2に記載のデータベース管理方法。
  4. アクセス属性情報が期限管理属性であるデータベースを管理するデータベース管理プログラムであって、
    演算処理を行う際の作業領域となるメモリと、前記演算処理を行う演算処理装置とを少なくとも有したコンピュータの前記演算処理装置に、
    前記データベースのデータの検索選択処理又は更新処理においては、前記データベースから前記検索選択処理又は前記更新処理の対象データの有効期限に関する情報を前記メモリに読み出し、この読み出した有効期限に関する情報に基づき、前記対象データの有効期限を判定し、その判定の結果、前記対象データの有効期限が切れていた場合には、前記対象データについての前記演算処理としての前記検索選択処理又は前記更新処理を無効化する手順
    を実行させるためのデータベース管理プログラム。
  5. アクセス属性情報が期限管理属性であるデータベースを管理するデータベース管理装置であって、
    演算処理を行う際の作業領域となるメモリと、前記演算処理を行う演算処理装置とを少なくとも有したコンピュータを備え、
    前記データベースのデータの検索選択処理において、前記演算処理装置が、前記データベースから前記検索選択処理の対象データの有効期限に関する情報を前記メモリに読み出し、この読み出した有効期限に関する情報に基づき、前記対象データの有効期限を判定し、その判定の結果、前記対象データの有効期限が切れていた場合には、前記対象データについての前記演算処理としての前記検索選択処理を無効化する手段と、
    前記データベースへの新たなデータの更新処理において、前記演算処理装置が、前記データベースから前記更新処理の対象データの有効期限に関する情報を前記メモリに読み出し、この読み出した有効期限に関する情報に基づき、前記対象データの有効期限を判定し、その判定の結果、前記対象データの有効期限が切れている場合には、前記対象データを前記データベースから削除する手段と、
    前記コンピュータによる前記データベースへの新たなデータの挿入処理において、前記演算処理装置が、前記データベースに格納されているデータの有効期限に関する情報を前記メモリに読み出し、この読み出した有効期限に関する情報に基づき、前記データの有効期限を判定し、その判定の結果、前記データの有効期限が切れていた場合には、前記データベースにおいて前記データが格納されている位置に、前記挿入する新たなデータを上書きする手段と、
    前記コンピュータに接続された外部記憶装置に対する前記データベースのデータのアンロード処理又はリロード処理において、前記演算処理装置が、前記データベースのデータ又は外部記憶装置に格納されているデータを前記メモリに読み出し、この読み出したデータの有効期限に関する情報に基づき、前記読み出したデータの有効期限を判定し、その判定の結果、前記読み出したデータの有効期限が切れていた場合には、前記読み出したデータの外部記憶装置又はデータベースへの書き込み処理を無効化する手段と
    を備えることを特徴とするデータベース管理装置。
JP2003388870A 2003-11-19 2003-11-19 データベース管理方法、管理プログラム及び管理装置 Pending JP2005149348A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003388870A JP2005149348A (ja) 2003-11-19 2003-11-19 データベース管理方法、管理プログラム及び管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003388870A JP2005149348A (ja) 2003-11-19 2003-11-19 データベース管理方法、管理プログラム及び管理装置

Publications (1)

Publication Number Publication Date
JP2005149348A true JP2005149348A (ja) 2005-06-09

Family

ID=34695781

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003388870A Pending JP2005149348A (ja) 2003-11-19 2003-11-19 データベース管理方法、管理プログラム及び管理装置

Country Status (1)

Country Link
JP (1) JP2005149348A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009516883A (ja) * 2005-11-21 2009-04-23 ズィー コーポレイション オブ カナダ インコーポレイテッド モバイル機器への情報提供システムおよび情報提供方法
WO2020049746A1 (ja) 2018-09-07 2020-03-12 株式会社東芝 データベース装置、プログラム、およびデータ処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009516883A (ja) * 2005-11-21 2009-04-23 ズィー コーポレイション オブ カナダ インコーポレイテッド モバイル機器への情報提供システムおよび情報提供方法
WO2020049746A1 (ja) 2018-09-07 2020-03-12 株式会社東芝 データベース装置、プログラム、およびデータ処理方法

Similar Documents

Publication Publication Date Title
JP7220234B2 (ja) Lsmデータ構造内の効率的なレコードルックアップのためのキャッシュ
US8738845B2 (en) Transaction-safe fat file system improvements
US5806058A (en) Index managing method in database managing system
US5946700A (en) Method and apparatus for preserving non-current information that can be overwritten in a computer file
US8271452B2 (en) Method, system, and database archive for enhancing database archiving
KR100437199B1 (ko) 컴퓨터시스템및그에저장된데이터를액세싱하기위한방법
KR100390734B1 (ko) 고정적이고 확실한 저장 할당을 위한 시스템 및 방법
US6714935B1 (en) Management of non-persistent data in a persistent database
US6675257B1 (en) System and method for managing storage space on a sequential storage media
JP4806168B2 (ja) テーブルに対して行われる変更を識別する識別方法及びそのシステム
US9280572B2 (en) Managing product information versions
US6829616B2 (en) Method, system, and program for implementing a database trigger
US6658541B2 (en) Computer system and a database access method thereof
US20020147736A1 (en) System and method for reorganizing stored data
US5802512A (en) Storage, replay and error detection of user-defined queries
JP2005149348A (ja) データベース管理方法、管理プログラム及び管理装置
US7856457B1 (en) Uniquely identifying an object before it is stored in a database
US7693883B2 (en) Online data volume deletion
JPH01204163A (ja) ファイル管理装置
CN113051241B (zh) 数据库持久化的方法、装置及设备
JP2007193408A (ja) 文書管理システムにおけるディスク運用制御方法
JP3636773B2 (ja) データベースのチェックを行う情報処理装置
JPH05158777A (ja) データ管理システム
EP2284749B1 (en) Method, computer program and device for executing actions using data sets
JP2000148548A (ja) 不要レコード削除装置