(57)【要約】【課題】２４時間連続運転を行うオンラインシステムにおいて、オンライン業務やバッチ業務で常に更新処理が行われるデータベースを指定された時刻の状態で退避させる。【解決手段】本発明は、バックアップ取得時刻を指定時刻以前に指定し、指定時刻より以前にバックアップデータを取得していき、バックアップを取得したデータベースの所定箇所毎に、バックアップ取得時刻を示すデータを記憶しておき、データベースの所定箇所の更新要求については、該所定箇所毎に、更新後の値と更新時刻を記憶しておき、指定時刻と、記憶されているバックアップデータを取得した取得時刻を示すデータと、所定箇所毎の更新後の値と更新時刻を示すデータとに基づいて、指定時刻以前に取得したバックアップデータの補正を行う。【選択図】図１
2006155676.tif 000002
【特許請求の範囲】
【請求項１】
データベースを有するシステムにおける、指定された指定時刻のデータベースのバックアップを作成する方法において、前記データベースのバックアップデータを取得するバックアップ取得時刻を前記指定時刻以前に指定し、前記指定時刻より以前にバックアップデータを取得していき、バックアップを取得したデータベースの所定箇所毎に、バックアップ取得時刻を示すデータを記憶しておき、前記データベースの所定箇所の更新要求については、該所定箇所毎に、更新後の値と更新時刻を記憶しておき、前記指定時刻と、前記記憶されているバックアップデータを取得した取得時刻を示すデータと、所定箇所毎の更新後の値と更新時刻を示すデータとに基づいて、前記指定時刻以前に取得したバックアップデータの補正を行うことを特徴とする指定時刻のデータベースバックアップ方法。
【請求項２】
データベースシステムにおいて、データベースのバックアップの取得状態に対応する時刻である指定時刻を設定する時刻指定手段と、前記データベースのバックアップを取得するバックアップ時刻を該指定時刻以降に指定する退避時刻設定手段と、前記指定時刻以降に発生したデータベースの所定箇所の更新要求について所定箇所毎に更新以前を示すデータを記憶する一時退避手段と、前記一時退避手段により記憶されているデータと前記データベースに基づいて前記データベースのバックアップを作成するバックアップ生成手段とを有することを特徴とするデータベースバックアップ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指定時刻のデータベースバックアップ方法及びデータベースバックアップ装置に係り、特に、金融システム等のオンライン業務を運用するシステムにおいて、オンラインプログラムによる元帳データベースの更新処理を停止することなく、即ち、オンラインシステムで使用中の元帳データベースの更新動作を中断することなく、バッチ処理を行うための指定時刻のデータベースバックアップ方法及びデータベースバックアップ装置に関する。
【０００２】
金融機関のオンライン業務の運用時間は延長される傾向にあり、近い将来、２４時間連続運転が予想されることに対し、指定時刻の元帳データベースの退避処理をオンライン業務中に行う必要性が出てくるため、このような無中断で走行するシステムに適用するシステムが望まれている。
【背景技術】
【０００３】
図２２は、従来の金融機関におけるバンキングオンラインシステムの運用形態を示す。同図において、ａは暦日、ｂは暦日の時刻、ｃは時刻毎の業務状況、ｄはデータ処理を行った日付を示す。金融機関における従来のシステム運用形態の多くは、午前９時前からオンライン業務を開始し、午後７時過ぎにオンライン業務を終了する。暦日１日の午前８時４５分からオンライン業務が開始され、同日の１９時３０分に終了する。１日のオンライン終了時点において、元帳データベースの退避処理を行う。退避処理は、オンライン終了時点である午後７時３０分時点での元帳データベースの退避データベースを作成する。退避データベースの作成が終了すると、暦日１日の２３時に、翌日２日のデータ処理上の元帳データベースの日付を変更する。次に、上記の処理が終了した暦日１日の２３時以降に、オンライン業務に付帯するバッチ処理を行う。オンライン業務に付帯する処理として、例えば、暦日１日のオンライン終了時の全行（本支店）の預金保有高、現金引出し総額等の集計処理等がある。
【０００４】
所定時間内のオンライン業務、元帳データベースの退避処理、及びオンライン付帯バッチ処理等の一連を処理が終了すると、システムは所定の時刻まで休止状態となる。このように、従来のシステムのように、予め決められた処理時間帯で区切ってオンライン業務、バッチ処理業務等を行う。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、金融機関のオンラインシステムが２４時間連続運転を実施することが要求されるようになると、従来の運用形態であるオンライン業務とバッチ業務とを処理時間帯で区分することができなくなり、オンラインプログラムとバッチプログラムを並行して処理する必要がでてくる。
【０００６】
その結果、例えば、アプリケーション上で月末日のオンライン業務終了状態時における元帳データベースといった指定ができなくなり、月末日におけるバッチ処理による集計業務がオンラインシステム実行中は不可能となる。即ち、元帳データベースを退避する時間帯の確保ができなくなるという問題がある。
【０００７】
本発明は、上記の点に鑑みなされたもので、オンライン業務の停止を必要とせずに、指定された時刻の状態の退避データベースを作成することができる指定時刻のデータベースバックアップ方法及びデータベースバックアップ装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
図１は、本発明の原理を説明するためのフローチャートである。
【０００９】
本発明は、データベースバックアップ方法は、データベースを有するシステムにおける、指定された指定時刻のデータベースのバックアップを作成する方法において、データベースのバックアップデータを取得するバックアップ取得時刻を指定時刻以前に指定し（ステップ２−１）、指定時刻より以前にバックアップデータを取得しておき、バックアップを取得したデータベースの所定箇所毎に、バックアップ取得時刻を示すデータを記憶しておき（ステップ２−２）、データベースの所定箇所の更新要求については、該所定箇所毎に更新を行い、更新後の値と更新時刻を記憶しておき（ステップ２−３）、指定時刻と、記憶されているバックアップデータを取得した取得時刻を示すデータと、所定箇所毎の更新後の値と更新時刻を示すデータとに基づいて、指定時刻以前に取得したバックアップデータの補正を行う（ステップ２−４）。
【００１０】
本発明のデータベースバックアップ装置は、データベースシステムにおいて、データベースのバックアップの取得状態に対応する時刻である指定時刻を設定する時刻指定手段と、データベースのバックアップを取得するバックアップ時刻を指定時刻以降に指定する退避時刻設定手段と、指定時刻以降に発生したデータベースの所定箇所の更新要求について所定箇所毎に更新以前を示すデータを記憶する一時退避手段と、一時退避手段により記憶されているデータと前記データベースに基づいて前記データベースのバックアップを作成するバックアップ生成手段とを有する。
【００１１】
上記の方法は、指定された時刻以前にデータベースを一時退避し、その時の退避時刻を記憶しておき、さらに、更新要求に応じてデータベースのデータを更新すると共に更新後のデータ及び更新時刻を記憶しておく。指定時刻と更新時刻及び一時退避された時刻を比較し、更新時刻の方が指定時刻以前でかつ最も指定時刻に近ければ、更新されたデータを読み込み、一時退避された時刻の方が指定時刻に近ければ、一時退避されたデータを読み込んで、退避データベースを作成する。従って、一時退避データと更新済みデータを比較して、指定時刻以前でかつ最も指定時刻に近い時刻を有するデータを退避データベースに書き込むことにより、指定時刻以前かつ一時退避後に更新されたデータについても退避処理が可能となる。図２は、本発明の方法を説明するための図である。同図に示すように、指定時刻以前に更新要求が発行されている場合には元帳データを更新し（ａ）、その更新履歴データを取得し、記憶する（ｂ）。さらに、元帳データを一時退避し、一時退避時刻と退避データを保持しておく（ｃ）。また、指定時刻以前に再度更新要求が発行された場合には、元帳データを更新し（ｄ）、さらに更新履歴データを作成する（ｅ）。指定時刻後に退避データベースを作成する場合に、指定時刻以前で指定時刻に最も近いデータを更新履歴データ及び一時退避データの作成日時を参照して作成する（ｆ）。
【００１２】
このように、本発明は、オンラインシステムが２４時間運転になった場合でも更新する前または後の更新日時と、更新前のデータ又は更新後のデータを記録しておくことにより、無矛盾な処理が実現する。
【発明の効果】
【００１３】
上述のように、本発明によれば、バンキングオンラインシステムにおいて、２４時間稼働を行う場合に、オンラインプログラムやバッチプログラムにより元帳データを一時退避させておき、元帳データの更新には影響を与えずに、基準時刻以降に退避させておいたデータのバッチ処理が可能となる。これにより、日時処理等における元帳データは、日付が更新される２４時００分を意識せずに更新され、任意の時間帯に更新作業を無矛盾に行うことができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面と共に本発明の実施例を詳細に説明する。以下の実施例では、金融機関におけるオンライン処理されるバンキングオンラインを例に説明する。
【００１５】
《第１の実施例》
図３は、本発明の第１の実施例のシステム構成を示す。同図に示すシステムは、銀行窓口で使用される窓口端末６００、預金者等が使用する現金自動支払機７００、端末や各データベース（以下ＤＢ）を制御する制御プログラム５００、預金プログラム、融資プログラム、為替プログラム等種々のオンラインプログラム２００、退避ＤＢ作成プログラム等のバッチ処理を行うバッチプログラム３００、基準時刻テーブル１３０、オンラインプログラム２００により更新要求に基づいて刻々更新される元帳ＤＢ１００、基準時刻以前の元帳ＤＢ１００の内容を一時的に退避しておくための一時退避ＤＢ１１０、基準時刻時点での元帳ＤＢ１００の内容を退避しておくための退避ＤＢ１２０より構成される。
【００１６】
図４は、本発明の第１の実施例のデータの流れを示す。図３と同一構成部分には同一符号を付す。オンラインプログラム２００は、窓口端末６００または現金自動支払機７００から更新要求を受け付けると、基準時刻テーブル１３０を参照し、基準時刻を得る。本実施例において、基準時刻とは、その時刻における元帳ＤＢ１００の状態を取得するために予め指定される時刻であり、例えば、日時処理の場合には０時、月次処理の場合には月末日等が設定される。
【００１７】
オンラインプログラム２００は、窓口端末６００、現金自動支払機７００から入力される元帳ＤＢ１００の更新要求に基づいて元帳ＤＢ１００を更新すると共に、基準時刻テーブル１３０を参照して、基準時刻を経過した時点で各端末６００及び７００から更新要求が発行された場合には、更新前の元帳データを一時退避ＤＢ１１０に書き出す。このとき、退避日時（年月日、時分秒）も合わせて一時退避ＤＢ１１０に書き出す。
【００１８】
バッチプログラムである退避ＤＢ作成プログラム３００は、基準時刻経過後も基準時刻経過以前の状態のままであるデータ、即ち、基準時刻以降更新されていない元帳ＤＢ１００の元帳データをそのまま退避ＤＢ１２０に格納する。また、基準時刻経過後に更新され、一時退避ＤＢ１１０に格納されている元帳データを退避ＤＢ１２０に格納する。
【００１９】
図５は、本発明の第１の実施例の元帳データのレコードの構成を示す。元帳データは、本支店コード１０１１、口座番号１０１２、氏名１０１３、住所１０１４、預金種別１０１５から構成される顧客識別情報１０１０と更新要求により元帳データが更新された更新年月日時刻１０２０、一時退避ＤＢ１１０に退避させた一時退避年月日時刻１０３０、元帳データ１０４０等より構成される。
【００２０】
以下本実施例の詳細な動作を説明する。図６は、本発明の第１の実施例のオンラインプログラムの動作を示すフローチャートである。
【００２１】
ステップ１００１）  オンラインプログラム２００が窓口端末６００または、現金自動支払機７００からの処理要求電文（更新要求）を受信する。
【００２２】
ステップ１００２）  基準時刻テーブル１３０から基準時刻を読み込むと共に、システムクロックより現時刻を取得する。
【００２３】
ステップ１００３）  取得した基準時刻と現時刻により現在が基準時刻以後であるかを判定する。
【００２４】
ステップ１００４）  判定の結果、現時刻が基準時刻以前であればステップ１００６に移行する。現在時刻（処理要求電文受信時）が基準時刻以降である場合には、基準時刻以降に元帳データを一時退避データとして一時退避ＤＢ１１０に書き出したかを判定する。既に書き出している場合には、ステップ１００６に移行する。初めて一時退避ＤＢ１１０に書き出す場合には、ステップ１００５に移行する。
【００２５】
ステップ１００５）  元帳ＤＢ１００を読出し、更新前の元帳データを一時退避ＤＢ１１０に書き出すと共に、一時退避した一時退避年月日を元帳データの一時退避年月日時刻１０３０に記録する。
【００２６】
ステップ１００６）  次に、オンラインプログラム２００は、端末等６００または７００からの更新要求に基づいて元帳ＤＢ１００の元帳データを更新する。
【００２７】
ステップ１００７）  元帳ＤＢ１００の更新が終了したら、処理結果通知を更新要求を発行した端末６００または、７００に送信する。ここで、ステップ１００４において、既に一時退避ＤＢ１１０に書き出しているか否かの判断については、図５に示す一時退避年月日時刻１０３０が基準時刻より前であれば、その元帳データは、以前に一時退避されていないデータということになる。
【００２８】
図７は、本発明の第１の実施例の退避データベース作成プログラムの動作を示すフローチャートである。
【００２９】
ステップ１００９）  退避ＤＢ１２０を作成するための退避ＤＢ作成プログラム３００は、基準時刻テーブル１３０から基準時刻を読み込む。
【００３０】
ステップ１０１０）  さらに、元帳ＤＢ１００から元帳データを読み込む。
【００３１】
ステップ１０１１）  元帳ＤＢ１００を最後まで読んだ場合には、処理を終了する。
【００３２】
ステップ１０１２）  読み込んだ元帳データが既に一時退避されているかを判断する。ここで、元帳データが一時退避されているか否かの判断は、元帳ＤＢ１００の一時退避年月日時刻１０３０の欄に基準時刻以後の時刻が設定されている場合には、既に元帳データは一時退避ＤＢ１１０に退避済みであることを示す。
【００３３】
ステップ１０１３）  元帳データが退避済みである場合には、元帳ＤＢ１００の顧客識別情報１０１０の口座番号１０１２をキーにして、一時退避ＤＢ１１０を検索し、検索された一時退避ＤＢ１１０の一時退避データを退避ＤＢ１２０に書き込む。退避対象の元帳ＤＢ１００の全ての処理が終了するまで上記の処理を繰り返す。
【００３４】
読み込んだ元帳データの一時退避年月日時刻１０３０に時刻が設定されていない場合、もしくは、基準時刻より前の時刻が設定されている場合は、当該元帳データが一時退避ＤＢ１１０に退避されていないことを意味するので、退避ＤＢ作成プログラム３００は、元帳データを退避ＤＢ１２０に書き込む。
【００３５】
次に、具体的な例を示して本実施例を説明する。図８は、本発明の第１の実施例の具体例を示す。
（１）退避ＤＢ作成プログラム３００は、基準時刻テーブル１３０から基準時刻を取得するものとする。本例では、基準時刻として『１２時００分』を取得したものとする。
（２）元帳ＤＢ１００には、口座番号"００１"、"００２"の元帳データが存在している。口座番号"００１"、"００２"の当初の残高は共に１０，０００円である。
（３）口座番号"００１"の元帳データに対して、『１２時０１分』に端末６００から処理要求が発行されたため、オンラインプログラム２００は、３，０００円出金の更新処理を行った。
【００３６】
この場合には、この元帳データに対する更新処理は、基準時刻『１２時００分』以降であるため、オンラインプログラム２００は、更新以前（００時００分）の元帳データである残高１０，０００円の状態の元帳データを一時退避ＤＢ１１０に退避させる。このとき、更新以前の元帳データに一時退避時刻として『１２時０１分』を付加して、一時退避ＤＢ１１０に書き出す。また、同時に、元帳データの一時退避時刻設定欄１０３０に一時退避時刻として"１２時０１分"が設定される。この後、元帳ＤＢ１００の元帳データは、更新され、『１２時０１分』の更新後の残高は７，０００円となる。
【００３７】
（４）口座番号"００１"の元帳データに対して、『１２時１５分』にオンラインプログラムから２，０００円出金の更新処理が行われた。この場合に、元帳データを順に読んでいくと、「１２時０１分」に一時退避が行われているため、一時退避ＤＢ１１０への退避処理は行わず、元帳ＤＢ１００の更新処理のみを行う。従って、口座番号"００１"の残高は更新されて５，０００円となる。このとき、更新日時『１２時１５分』を元帳１００の更新日時欄１０２０に設定する。
【００３８】
（５）『１２時００分』時点の退避ＤＢ１２０を作成するバッチ処理を行う退避ＤＢ作成プログラム３００が『１２時３０分』に実行された。口座番号"００１"の元帳データは『１２時００分』の状態として元帳ＤＢ１００の元帳データの一時退避日時１０３０を参照すると、『１２時０１分』に更新処理を行ったために一時退避データが存在していることが分かる。この場合には、一時退避ＤＢ１１０から更新前の元帳データ"１０，０００円"を読み込み、退避ＤＢ１２０に書き出す。
【００３９】
また、口座番号"００２"の元帳データの一時退避日時欄１０３０には空欄、もしくは、基準時刻よりも前の時刻が設定されており、一時退避データが存在していない場合には、バッチ処理（退避ＤＢ作成プログラム３００）により退避ＤＢ１２０に格納されるデータとして、残高１０，０００円が書き込まれる。なお、一時退避データが退避ＤＢ１２０に退避された後、一時退避ＤＢ１１０はクリアされる。
【００４０】
図９は、本発明の第１の実施例の運用形態を示す。同図に示すように、本実施例において、基準日時が２４時（０時００分）である場合に、暦日日付１日の２４時時点の退避ＤＢ１２０の作成を翌日の２日に行うことが可能であり、また、暦日日付２日の２４時時点の退避ＤＢ１００の作成を３日に行うことが可能となる。従って、オンラインによる更新処理を行いながら、退避ＤＢ作成プログラム３００により、基準時刻以降に最初に更新された元帳データを一時退避データして書き出し、退避ＤＢ１２０に退避すると共に、基準時刻が経過しても更新されていない元帳データは、退避ＤＢ１２０にそのまま退避される。これにより、退避ＤＢ１２０を用いて任意の時間に集計等のバッチ処理を行うことが可能となる。なお、オンラインで使用している元帳ＤＢ１００の２４時時点における日時変更は、システムタイマに基づいて自動的に変更されるものとする。
【００４１】
このように、本実施例によれば、元帳ＤＢ１００の内容が基準時刻経過後も更新されていない場合には、当該元帳ＤＢ１００自体の内容を退避ＤＢ１２０に退避し、基準時刻経過後に更新されている場合には、一時退避ＤＢ１１０に格納されている内容を退避ＤＢ１２０に退避することができる。これにより、退避ＤＢ作成プログラム３００は、時間的に無矛盾な退避処理が任意の時間帯に可能となる。
【００４２】
《第２の実施例》
図１０は、本発明の第２の実施例のシステム構成を示す。同図に示すシステムは、銀行窓口で使用される窓口端末６００、預金者等が使用する現金自動支払機７００、端末や各データベース（以下ＤＢ）を制御する制御プログラム５００、預金プログラム、融資プログラム、為替プログラム等種々のオンラインプログラム２００、一時退避ＤＢ作成プログラム３１０、退避ＤＢ作成プログラム３２０等のバッチ処理を行うバッチプログラム３００、基準時刻テーブル１３０、オンラインプログラム２００により更新要求に基づいて刻々更新される元帳ＤＢ１００、元帳ＤＢ１００の内容を一時的に退避しておくための一時退避ＤＢ１１０、基準時刻時点での元帳ＤＢ１００の内容を退避しておくための退避ＤＢ１２０、バッチ処理において集計する日付に変更するための基準時刻が格納されている基準時刻テーブル１３０、元帳ＤＢ１００の更新時のデータ及び時刻を保持する更新履歴ファイル１４０より構成される。
【００４３】
実施例では、バッチプログラムである一時退避ＤＢ作成プログラム３１０と退避ＤＢ作成プログラム３２０を用いて、オンラインプログラム２００で元帳ＤＢ１００の更新を行う毎に、元帳データを更新履歴ファイル１４０に格納しておき、基準時刻以前で最も基準時刻に近い元帳ＤＢ１００の内容を退避ＤＢ１２０に格納するものである。
【００４４】
図１１は、本発明の第２の実施例のデータの流れを示す。図１０と同一構成部分には同一符号を付す。まず、オンラインプログラム２００が窓口端末６００または現金自動支払機７００から随時入力される更新処理要求を受信し、元帳ＤＢ１００の元帳データに更新日時を付与して元帳データを更新する。さらに、更新日時を履歴時刻として元帳データに付与して、更新履歴ファイル１４０に記録する。なお、元帳データは前述の第１の実施例で図５に示す構成と同様である。
【００４５】
バッチプログラムである一時退避ＤＢ作成プログラム３１０は、基準時刻以前の任意の時刻の元帳ＤＢ１００全体を一時退避ＤＢ１１０に退避しておく。次に、退避ＤＢ作成プログラム３２０は、上記の処理が基準時刻以降に一時退避ＤＢ１１０の一時退避データ及び更新履歴ファイル１４０のデータをシーケンシャルに先頭から読み込み、それぞれのデータの突き合わせ処理を行う。
【００４６】
退避ＤＢ作成プログラム３２０において、一時退避ＤＢ１１０と更新履歴ファイル１４０のデータが突き合わされた場合は、一時退避ＤＢ１１０の一時退避データに記録されている元帳データの最終の更新日時と更新履歴ファイル１４０の更新履歴データに記録されている履歴時刻を比較する。比較した結果、基準時刻以前で、基準時刻に最も近いデータを選択し、退避ＤＢ１２０に書き出す。
【００４７】
突き合わせ時に、一時退避ＤＢ１１０に一時退避データが存在し、更新履歴ファイル１４０に更新履歴データが存在しない場合には、一時退避データを退避ＤＢ１２０に書き出す。また、一時退避ＤＢ１１０に一時退避データが存在しないが、更新履歴ファイル１４０に更新履歴データが存在する場合には、更新履歴データに記録された履歴時刻が基準時刻以前で、かつ基準時刻に最も近いデータを選択し、退避ＤＢ１２０に書き出す。
【００４８】
図１２は、本発明の第２の実施例のオンラインプログラムの動作を示すフローチャートである。このオンラインプログラム２００は、元帳ＤＢ１００を更新すると共に更新履歴ファイル１４０の履歴データを生成する。
【００４９】
ステップ２００１）  オンラインプログラム２００は窓口端末６００または、現金自動支払機７００からの処理要求電文を受信する。
【００５０】
ステップ２００２）  オンラインプログラム２００は、処理要求電文に従い元帳ＤＢ１００を元帳ＤＢの元帳データに更新日時を付与して更新する。
【００５１】
ステップ２００３）  更新後の元帳データを更新履歴データとして、更新日時も同様に付与して更新履歴ファイル１４０に書き出す。
【００５２】
ステップ２００４）  次に、これらの処理が終了したことを窓口端末６００または現金自動支払機７００に通知する。図１３は、本発明の第２の実施例の一時退避ＤＢ作成プログラムの動作を示すフローチャートである。
【００５３】
ステップ２００５）  バッチプログラムである一時退避ＤＢ作成プログラム３１０は、まず、基準時刻以内の任意に時刻に元帳ＤＢ１００の１件ずつデータを読み込む。
【００５４】
ステップ２００６）  元帳ＤＢ１００の読み込みが終了したら、処理を終了する。
【００５５】
ステップ２００７）  各データを読み込む毎に、元帳データと退避時刻を一時退避ＤＢ１１０に書込む。全ての元帳データの読み込みが終了するまで処理を繰り返す。図１４，１５は、本発明の第２の実施例の退避ＤＢ作成プログラムの動作を示すフローチャートである。
【００５６】
ステップ２１００）  退避ＤＢ作成プログラム３２０は、まず、更新履歴ファイル１４０を口座番号・時刻により降順にソートする。
【００５７】
ステップ２１０１）  基準時刻テーブル１３０から基準時刻を読み込む。
【００５８】
ステップ２１０２）  一時退避ＤＢ１１０より一時退避データを降順に順次読み込む。
【００５９】
ステップ２１０３）  一時退避ＤＢ１１０を最後まで読んだ場合には、ステップ２１１６に移行する。
【００６０】
ステップ２１０４）  一時退避データを読む毎に、更新履歴ファイル１４０から更新履歴データを順次読み込む。
【００６１】
ステップ２１０５）  更新履歴ファイル１４０の読み込みが終了した場合にはステップ２１１７に移行する。
【００６２】
ステップ２１０６）  読み込まれた更新履歴データの同一キー（口座番号、時刻）の中での更新日時が基準時刻より以前であり、かつ最も基準時刻に近いデータを選択する。
【００６３】
ステップ２１０７）  次に、一時退避データと更新履歴データの突き合わせ処理を行う。
【００６４】
ステップ２１０８）  突き合わせ処理の結果、突き合わせが成功した場合には、ステップ２１０９に移行し、更新履歴データのみが存在する場合には、ステップ２１１２に移行し、一時退避データのみが存在する場合にはステップ２１１３に移行する。
【００６５】
ステップ２１０９）  基準時刻に近いデータが、一時退避データである場合にはステップ２１１０に移行し、更新履歴データである場合には、ステップ２１１１に移行する。
【００６６】
ステップ２１１０）  一時退避データを退避ＤＢ１２０に書き出し、ステップ２１０２に移行する。
【００６７】
ステップ２１１１）  一方、更新履歴データが基準時刻に近い場合には、更新履歴データを退避ＤＢ１２０に書き出す。
【００６８】
ステップ２１１２）  次に、突き合わせの結果、更新履歴データのみが存在している場合には更新履歴データを退避ＤＢ１２０に書き出し、ステップ２１０４に移行する。
【００６９】
ステップ２１１３）  また、突き合わせの結果、一時退避データのみが存在している場合には、一時退避データを退避ＤＢ１２０に書き出す。
【００７０】
ステップ２１１４）  その後、一時退避ＤＢ１１０から一時退避データの読み込みを行う。
【００７１】
ステップ２１１５）  一時退避データが終了したらステップ２１１６に移行する。
【００７２】
ステップ２１１６）  更新履歴ファイル１４０のデータを全て読み終えていれば処理を終了し、残りのデータがある場合には、ステップ２１０４に移行する。
【００７３】
ステップ２１１７）  また、一時退避ＤＢ１１０のデータを全て読み終えていれば処理を終了し、残りのデータがある場合には、一時退避データを退避ＤＢ１２０に書込み、ステップ２１０２に移行する。
【００７４】
次に、具体的な例を示して本実施例を説明する。図1６は、本発明の第２の実施例の具体例を示す。
【００７５】
（１）基準時刻を『１２時００分』と設定する。即ち、退避ＤＢ作成プログラム３２０は、基準時刻テーブル１３０より『１２時００分』を取得するものとする。
【００７６】
（２）元帳ＤＢ１００には、口座番号"００１"、"００２"の元帳データが存在する。口座番号"００１"、"００２"の『０時００分』の元帳データを１０，０００円とする。
【００７７】
（３）オンラインプログラム２００により、口座番号"００１"から『１０時０５分』に３，０００円の出金があったので、口座番号"００１"の『１０時０５分』現在の残高を７，０００円とし、更新した時刻『１０時０５分』を付与して元帳ＤＢ１００の内容を更新すると共に、更新履歴ファイル１４０に更新履歴データとして残高７，０００円という情報に更新日時『１０時０５分』を付与して記録する。
【００７８】
（４）『１１時１５分』にバッチプログラムの一時退避ＤＢ作成プログラム３１０は元帳ＤＢ１００の元帳データの口座番号"００１"と"００２"を読み込んで、口座番号"００１"の元帳データ（７，０００円）と、口座番号"００２"の元帳データ（１０，０００円）を一時退避ＤＢ１１０に書き出す。
【００７９】
（５）『１１時４０分』に口座番号"００１"から２，０００円の出金処理があったので、オンラインプログラム２００により口座番号"００１"の残高を７，０００円−２，０００円＝５，０００円として、元帳ＤＢ１００を更新すると共に、『１１時４０分』時点の残高が５，０００円である元帳データと、更新時刻『１１時４０分』を更新履歴ファイル１４０に書き出す。
【００８０】
（６）『１２時１５時』に口座番号"００１"から１，０００円の出金があったので、オンラインプログラム２００により口座番号"００１"の『１２時１５分』現在の残高を５，０００円−１，０００円＝４，０００円として、元帳ＤＢ１００を更新すると共に、更新時刻『１２時１５分』を付与する。さらに、更新後の元帳データ１，０００円と更新日時を更新履歴ファイル１４０に書き出す。
【００８１】
（７）『１２時２０分』に口座番号"００２"から３，０００円の出金があったので、オンラインプログラム２００は口座番号"００２"の『１２時２０分』現在の残高を１０，０００円−３，０００円＝７，０００円として、元帳ＤＢ１００を更新すると共に、更新時刻『１２時２０分』を付与する。『１２時２０分』の更新日時と残高が７，０００円である元帳データを更新履歴ファイル１４０に書き出す。
【００８２】
（８）基準時刻『１２時００分』時点の退避ＤＢ１２０を作成する退避ＤＢ作成プログラム３２０が『１２時３０分』より実行された。退避ＤＢ１２０の作成時は、既に基準時間『１２時００分』を経過しているので、まず、口座番号００１の元帳データは、一時退避データを書き出した時点以降から『１２時００分』までの間に更新が発生しているので、更新時に書き出した更新履歴データのうち、『１２時００分』以前で『１２時００分』に最も近い時刻の更新履歴データ（『１１時４０分』、残高５，０００円）を退避ＤＢ１２０に書き出す。
【００８３】
口座番号"００２"の元帳データは、一時退避データを書き出した時点（『１０時１５分』）以降から基準時刻『１２時００分』までの間に更新が発生していないので、『１１時１５分』時点の一時退避データを退避ＤＢ１２０に書き出す。
【００８４】
つまり、『００時００分』以降の一時退避ＤＢ１１０のデータと更新履歴ファイル１４０のデータを降順に読み込み、それらのデータのマッチングを行い、マッチングが成功したデータのうち、基準時刻に最も近いデータを選択する。口座番号"００１"の基準時刻以前かつ最も基準時刻に近い更新履歴データが『１１時４０分』現在のデータであり、一時退避データは『１０時１５分』現在のデータであるので、１１時４０分のデータが退避ＤＢ１２０に退避される。
【００８５】
更新履歴ファイル１４０と一時退避ＤＢ１１０を読み込み、マッチングせず、更新履歴ファイル１４０のデータのみが存在する場合には、更新履歴ファイル１４０のデータのうち基準時刻以前で最も基準時刻に近いデータを退避ＤＢ１２０に退避する。また、一時退避ＤＢ１１０のデータのみが存在する場合には、退避ＤＢ１２０に一時退避データを退避する。口座番号"００２"の場合には、基準時刻『１２時００分』以前のデータは、『１０時１５分』に一時退避された一時退避ＤＢ１１０の一時退避データ（残高１０，０００円）のみであるので、このデータが退避ＤＢ１２０に退避される。
【００８６】
この退避ＤＢ１２０に退避された後、一時退避ＤＢ１１０はクリアされる。図１７は、本発明の第２の実施例のバンキングシステムの運用形態を示す。同図に示すように、暦日の２４時００分にデータ処理上の日付の変更が行われる場合に、暦日日付１日の２１時から元帳ＤＢ１００の元帳データを読み込み、一時退避ＤＢ１１０の作成を開始し、当日の２４時００分までに終了している。さらに元帳ＤＢ１００がオンラインプログラム２００により更新される毎に、更新履歴ファイル１４０には、更新された元帳データと更新日時が格納されている。従って暦日日付１日に一時退避ＤＢ１１０に格納された後で、暦日日付１日に更新された元帳データは、更新履歴ファイル１４０に格納されているため、暦日日付２日に日付が変わっても、更新履歴ファイル１４０及び一時退避ＤＢ１１０を参照することにより、暦日日付１日の２４時時点の退避ＤＢ１２０を作成することができる。
【００８７】
上記のように、第２の実施例によれば、更新後の元帳データと更新時刻を一時退避ＤＢ１１０に記憶しておき、元帳データを更新した日時、及び更新後のデータを更新履歴ファイル１４０に記憶しておき、基準時刻以降に、一時退避ＤＢ１１０と更新履歴ファイル１４０のデータをシーケンスに読み、一時退避ＤＢ１１０または更新履歴ファイルの基準時刻以前で最も基準時刻に近いデータを選択して、退避ＤＢ１２０に退避させる。これにより、バッチ処理プログラムである退避ＤＢ作成プログラム３２０は、任意の時間帯に矛盾のない退避処理が可能である。
【００８８】
《第３の実施例》
以下、本発明の第３の実施例を説明する。図１８は、本発明の第３の実施例のオンラインプログラムの動作を示すフローチャートである。
【００８９】
ステップ３００１）  オンラインプログラム２００は、窓口端末６００または現金支払機７００から処理要求電文を受信する。
【００９０】
ステップ３００２）  更新前の元帳データの内容と更新日時を付与して更新履歴データとして、更新履歴ファイル１４０に書き出す。
【００９１】
ステップ３００３）  次に、処理要求電文に従い、元帳ＤＢ１００の元帳データを更新し、更新日時を付与する。
【００９２】
ステップ３００４）  端末に処理結果を通知する電文を送信する。ここで、バッチプログラムである一時退避ＤＢ作成用プログラム３１０の処理は、上記の第２の実施例と同様であるため、ここでは説明を省略する。
【００９３】
図１９、図２０は、本発明の第３の実施例の退避ＤＢ作成プログラムの動作を示すフローチャートである。
【００９４】
ステップ３１００）  まず、退避ＤＢ作成プログラム３２０は、予め一時退避ＤＢ１１０と更新履歴ファイル１４０を口座番号、時刻で昇順にソートする。
【００９５】
ステップ３１０１）  基準時刻テーブル１３０から基準時刻を読み込む。
【００９６】
ステップ３１０２）  一時退避ＤＢ１１０から一時退避データを読み込む。
【００９７】
ステップ３１０３）  一時退避ＤＢのデータの読み込みが終了したら、ステップ３１１６へ移行する。
【００９８】
ステップ３１０４）  更新履歴ファイル１４０から更新履歴データを読み込む。
【００９９】
ステップ３１０５）  更新履歴フィアル１４０のデータを全て読み終えたらステップ３１１７に移行する。
【０１００】
ステップ３１０６）  同一キーにおける（同一口座における）更新履歴データの更新日時は基準時刻以降であり、かつ最も基準時刻に近いものを取得する。
【０１０１】
ステップ３１０７）  一時退避データと更新履歴データとのマッチングを行う。
【０１０２】
ステップ３１０８）  マッチングの結果、マッチングが成功した場合には、ステップ３１０９に移行し、更新履歴データのみが存在する場合には、ステップ３１１２に移行し、一時退避データのみが存在する場合にはステップ３１１３に移行する。
【０１０３】
ステップ３１０９）  基準時刻に近いデータは、一時退避データまたは更新履歴データであるかを判定する。
【０１０４】
ステップ３１１０）  一時退避データの方が基準時刻に近い場合には、一時退避データを退避ＤＢ１２０に書き出し、ステップ３１０２に移行する。
【０１０５】
ステップ３１１１）  更新履歴データが基準時刻に近い場合には、更新履歴データを退避ＤＢ１２０に書き出し、ステップ３１０２に移行する。
【０１０６】
ステップ３１１２）  マッチングの結果、更新履歴データのみが存在する場合には、更新履歴データを退避ＤＢ１２０に書き出し、ステップ３１０４に移行する。
【０１０７】
ステップ３１１３）  マッチングの結果、一時退避データのみ存在する場合には、一時退避データを退避ＤＢ１２０に書き出す。
【０１０８】
ステップ３１１４）  続いて一時退避ＤＢ１１０から一時退避データを読み込む。
【０１０９】
ステップ３１１５）  一時退避ＤＢ１１０のデータ読み込みが終了するとステップ３１１６に移行し、終了しなければ、３１０７に移行する。
【０１１０】
ステップ３１１６）  更新履歴ファイル１４０のデータ読み込みが終了したら全体の処理を終了し、更新履歴ファイル１４０のデータがまだ存在する場合には、ステップ３１０４に移行する。
【０１１１】
ステップ３１１７）  一時退避ＤＢ１１０のデータが未だ残っている場合には、一時退避データを退避ＤＢ１２０へ書き出し、ステップ３１０２に移行し、一時退避ＤＢ１１０のデータがない場合には、全体の処理を終了する。図２１は、本発明の第３の実施例の具体例を示す。
【０１１２】
（１）基準時刻は『１２時００分』と設定されている。即ち、退避ＤＢ作成プログラム３２０は、基準時刻テーブル１３０より基準時刻『１２時００分』を取得するものとする。
【０１１３】
（２）元帳ＤＢ１００に口座番号"００１"、"００２"の元帳データが存在する。２つの口座番号の元帳データは、ともに、残高１０，０００円の情報を保有している。
【０１１４】
（３）口座番号００１の元帳データに対し、更新要求により『１１時１５分』にオンラインプログラム２００は、３，０００円の出金の更新処理を行った。オンラインプログラム２００は、更新前の元帳データ残高１０，０００円の状態の内容に更新時刻（『１１時１５分』）を付加した更新履歴データを更新履歴ファイル１４０に書き出す。この時の元帳データは残高が７，０００円であり、更新時刻として『１１時１５分』が記録される。
【０１１５】
（４）口座番号"００２"の元帳データに対し、更新要求により『１２時１０分』にオンラインプログラム２００は、３，０００円出金の更新処理を行った。オンラインプログラム２００は、残高１０，０００円の状態の更新前の元帳データの内容に更新時刻を付加した更新履歴データを更新履歴ファイル１４０に書き出す。このときの元帳データとして残高が７，０００円で、更新時刻が『１２時１０分』が記録される。
【０１１６】
（５）『１２時３０分』に一時退避ＤＢ１１０を作成するための一時退避プログラム３１０の処理が行われ、その時点の口座の元帳データを一時退避データとして一時退避ＤＢ１１０に書き出す。即ち、口座番号"００１"、"００２"の一時退避データは７，０００円となり、その退避時刻は『１２時３０分』となる。
【０１１７】
（６）口座番号"００１"の元帳データに対し、『１２時４５分』にオンラインプログラム２００により、２，０００円の出金の更新処理が行われた。オンラインプログラム２００は、残高７，０００円の状態の更新前の元帳データの内容に更新処理が行われた時刻を付加し、更新履歴データとして更新履歴ファイル１４０に書き出す。
【０１１８】
（７）口座番号"００２"の元帳データに対し、『１３時１５分』にオンラインプログラム２００が２，０００円の出金の更新処理を行った。オンラインプログラム２００は、残高７，０００円の状態の更新前の元帳データの内容に更新時の時刻を付加し、更新履歴データとして更新履歴ファイル１４０に格納する。
【０１１９】
（８）基準時刻『１２時００分』時点の退避ＤＢ１２０を作成する退避ＤＢ作成プログラム３２０によるバッチ処理が『１４時３０分』から開始された。口座番号"００１"の元帳データは、基準時刻『１２時００分』以降において、一時退避データを書き出した間に、オンラインプログラム２００による更新が発生していないので、『１２時４５分』に作成された一時退避データ（残高７，０００円、時刻１２：３０）を退避ＤＢ１２０に書き出す。口座番号"００２"の元帳データは、『１２時００分』以降から一時退避データを書き出した間に、オンラインプログラム２００による更新が発生しているので、更新時に書き出した更新履歴データのうち、『１２時００分』以降で『１２時００分』に最も近い更新履歴データ（残高（１０，０００円）更新時刻（１２：１０））を退避ＤＢ１２０に書き出す。
【０１２０】
上記のように、第３の実施例によれば、更新前の元帳データを更新履歴ファイル１４０に記憶しておき、さらに、基準時刻以降の任意の時刻に退避された一時退避ＤＢ１１０または、更新履歴ファイル１４０のうち、基準時刻以降で最も基準時刻に近い方のデータを退避ＤＢ１２０に退避させる。これにより、退避ＤＢ作成プログラム３００が任意の時間帯に矛盾のないバックアップ処理を行うことが可能である。
【０１２１】
なお、上記の実施例では、退避ＤＢ１２０は磁気ディスク装置を用いているが、書き込むデータの容量等により種々のファイリング可能な外部記憶装置であればよい。本発明は、上記の実施例に限定されることなく、特許請求の範囲内において種々変更、及び応用が可能である。
【産業上の利用可能性】
【０１２２】
本発明は、金融機関のオンライン業務の運用時間は延長される傾向にあり、近い将来、２４時間連続運転が予想されることに対し、指定時刻の元帳データベースの退避処理をオンライン業務中に行う必要性が出てくるため、このような無中断で走行するシステムに適用可能である。
【図面の簡単な説明】
【０１２３】
【図１】本発明の原理を説明するためのフローチャートである。
【図２】本発明の方法を説明するための図である。
【図３】本発明の第１の実施例のシステム構成図である。
【図４】本発明の第１の実施例のデータの流れを示す図である。
【図５】本発明の第１の実施例の元帳データの構成を示す図である。
【図６】本発明の第１の実施例のオンラインプログラムの動作を示すフローチャートである。
【図７】本発明の第１の実施例の退避データベース作成プログラムの動作を示すフローチャートである。
【図８】本発明の第１の実施例の具体例を示す図である。
【図９】本発明の第１の実施例の運用を示す図である。
【図１０】本発明の第２の実施例のシステム構成図である。
【図１１】本発明の第２の実施例のデータの流れを示す図である。
【図１２】本発明の第２の実施例のオンラインプログラムの動作を示すフローチャートである。
【図１３】本発明の第２の実施例の一時退避データベース作成処理プログラムの動作を示すフローチャートである。
【図１４】本発明の第２の実施例の退避データベース作成プログラムの動作を示すフローチャート（その１）である。
【図１５】本発明の第２の実施例の退避データベース作成プログラムの動作を示すフローチャート（その２）である。
【図１６】本発明の第２の実施例の具体例を示す図である。
【図１７】本発明の第２の実施例のバンキングシステムの運用形態を示す図である。
【図１８】本発明の第３の実施例のオンラインプログラムの動作を示すフローチャートである。
【図１９】本発明の第３の実施例の退避データベース作成プログラムの動作を示すフローチャート（その１）である。
【図２０】本発明の第３の実施例の退避データベース作成プログラムの動作を示すフローチャート（その２）である。
【図２１】本発明の第３の実施例の具体例を示す図である。
【図２２】従来のバンキングシステムの運用形態を示す図である。
【符号の説明】
【０１２４】
１００  元帳データベース
１０１  元帳データ
１１０  一時退避データベース
１２０  退避データベース
１４０  更新履歴ファイル
２００  オンラインプログラム
３００  バッチプログラム
３１０  一時退避データベース作成プログラム
３２０  退避データベース作成プログラム
５００  制御プログラム
６００  窓口端末
７００  現金自動支払機
１０１１  本・支店名コード
１０１２  口座番号
１０１３  氏名
１０１４  住所
１０１５  預金種別
１０２０  更新日時
１０３０  一時退避日時
１０４０  元帳データ
【図１】
2006155676.tif 000003
【図２】
2006155676.tif 000004
【図３】
2006155676.tif 000005
【図４】
2006155676.tif 000006
【図５】
2006155676.tif 000007
【図６】
2006155676.tif 000008
【図７】
2006155676.tif 000009
【図８】
2006155676.tif 000010
【図９】
2006155676.tif 000011
【図１０】
2006155676.tif 000012
【図１１】
2006155676.tif 000013
【図１２】
2006155676.tif 000014
【図１３】
2006155676.tif 000015
【図１４】
2006155676.tif 000016
【図１５】
2006155676.tif 000017
【図１６】
2006155676.tif 000018
【図１７】
2006155676.tif 000019
【図１８】
2006155676.tif 000020
【図１９】
2006155676.tif 000021
【図２０】
2006155676.tif 000022
【図２１】
2006155676.tif 000023
【図２２】
2006155676.tif 000024