説明

データ処理装置および方法

【課題】記憶容量を圧迫することなく、非同期でデータベース間の反映ができるようにする。
【解決手段】追加および変更を含む更新処理がなされた時刻情報とともにデータが管理されている第1データベース101と、第1データベース101が反映される第2データベース102と、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える第1データベース101が管理するデータを、第2データベースに反映する反映部103とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、非同期でデータベース間の反映を行うデータ処理装置および方法に関するものである。
【背景技術】
【0002】
データベースの信頼性を向上させる技術の1つに、同じデータベースを複数備える冗長システムがある。このようなシステムでは、各々のデータベースの内容を一致させることが重要となる。各データベースの内容を一致させる方法として、データの追加・変更・削除などの更新が行われるときに、複数のデータベースに対して同時に更新処理を行う同期処理がある。
【0003】
また、利用者からの更新処理は主となるデータベースに対して行い、設定されている時間後(時間毎)に、主となるデータベースの内容を、他のデータベースに反映させることで各々のデータベースを一致させる非同期処理もある(特許文献1参照)。この非同期処理では、受け付けた更新処理の情報(更新情報)を保持しておき、設定されている時間が経過した後に、保持してある更新情報を用い、主データベースになされた更新を他のデータベースに反映させている。
【0004】
ここで、同期処理では、データベースに対する更新を、複数のデータベースに対して同時に反映させるため、更新に時間がかかるという問題がある。例えば、同期処理では、主データベースに対する更新がなされる毎に、同時に副データベースに対しても同じ更新がなされる(反映される)ことになる。このため、多数の更新が短時間に発生すると、更新処理が追いつかなくなる場合がある。
【0005】
上述した同期処理に対し、非同期処理では、例えば副データベースへの更新の反映を遅延させて処理しているので、主データベースへの更新のときの処理時間を短縮できるようになる。非同期処理では、例えば、一定期間に発生した主データベースへの多数の更新処理を、一括して副データベースに反映させることができるため、副データベースの更新処理の効率を向上させることができる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−355297号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した非同期処理では、更新情報を保持しておく必要があり、記憶容量を圧迫するという問題がある。更新の数に対応して更新情報も増加するため、短時間に非常に多くの更新が発生すると、上述した問題はより顕著となる。
【0008】
本発明は、以上のような問題点を解消するためになされたものであり、記憶容量を圧迫することなく、非同期でデータベース間の反映ができるようにすることを目的とする。
【課題を解決するための手段】
【0009】
本発明に係るデータ処理装置は、追加および変更を含む更新処理がなされた時刻情報とともにデータが管理されているマスタとしての第1データベースと、第1データベースが反映されるスレーブとしての第2データベースと、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える第1データベースが管理するデータを、第2データベースに反映する反映手段とを備える。
【0010】
上記データ処理装置において、第1データベースの異常検出により、第2データベースをマスタとし、第1データベースの異常検出の後の第1データベースの正常化検出により、第1データベースをマスタとする機器管理手段と、この機器管理手段による第1データベースの正常検出により、異常検出の時点より正常化検出の時点までの期間の時刻情報を備える第2データベースが管理するデータを第1データベースに反映する復旧処理手段とを備える。
【0011】
本発明に係るデータ処理方法は、反映時刻を判断する第1ステップと、反映時刻になると、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える第1データベースが管理するデータを、第2データベースに反映する第2ステップとを備える。
【発明の効果】
【0012】
以上説明したように、本発明によれば、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える第1データベースが管理するデータを、第2データベースに反映するようにしたので、記憶容量を圧迫することなく、非同期でデータベース間の反映ができるという優れた効果が得られる。
【図面の簡単な説明】
【0013】
【図1】図1は、本発明の実施の形態1におけるデータ処理装置の構成を示す構成図である。
【図2】図2は、本発明の実施の形態1におけるデータ処理装置の動作(データ処理方法)について説明するフローチャートである。
【図3】図3は、本発明の実施の形態2におけるデータ処理装置の構成を示す構成図である。
【図4】図4は、マスタデータベース301の構成例を示す構成図である。
【図5】図5は、機器管理部306が有する機器管理情報の構成例を示す構成図である。
【図6】図6は、本発明の実施の形態2におけるデータ処理装置の動作(データ処理方法)について説明するフローチャートである。
【発明を実施するための形態】
【0014】
以下、本発明の実施の形態について図を参照して説明する。
【0015】
[実施の形態1]
はじめに、本発明の実施の形態1について説明する。図1は、本発明の実施の形態1におけるデータ処理装置の構成を示す構成図である。この装置は、追加および変更を含む更新処理がなされた時刻情報とともにデータが管理されている第1データベース101と、第1データベース101が反映される第2データベース102と、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える第1データベース101が管理するデータを、第2データベースに反映する反映部103とを備える。
【0016】
以下、本実施の形態におけるデータ処理装置の動作(データ処理方法)について、図2のフローチャートを用いて説明する。まず、ステップS201で、反映部103が、設定されている反映時刻になったことを判断する。設定されている反映時刻になると、反映部103は、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える第1データベース101が管理するデータを確認する(ステップS202)。この確認により対象となるデータがあると、反映部103は、対象のデータを第2データベース102に反映する(ステップS203)。
【0017】
上述した本実施の形態によれば、第1データベース101に格納(管理)されているデータの中で、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を持つものを第2データベース102に反映させているので、第1データベース101が受け付けた更新処理の情報(更新情報)を保持しておく必要がない。このため、更新情報の保持による記憶容量の圧迫が抑制できるようになる。
【0018】
[実施の形態2]
次に、本発明の実施の形態2について説明する。図3は、本発明の実施の形態2におけるデータ処理装置の構成を示す構成図である。この装置は、まず、追加および変更を含む更新処理がなされた時刻情報とともにデータが管理されているマスタデータベース(第1データベース)301と、マスタデータベース301が反映される複数のスレーブデータベース(第2データベース)302とを備える。なお、図3では、1つのスレーブデータベース302を示している。
【0019】
また、このデータ処理装置は、データベースの反映処理の時期(時間間隔)が設定されている時期管理部303と、マスタの切り替えが行われた時刻(日時)が記憶される履歴管理部304と、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備えるマスタデータベース301が管理するデータを、第2データベースに反映する反映部305とを備える。また、送出された確認信号に対する返信や生存信号の受信により各データベースの状態を確認し、また、マスタの切り替えを行う機器管理部306と、機器管理部306により正常化が確認されたマスタデータベース301の復旧を行う復旧処理部307を備える。
【0020】
機器管理部306は、マスタデータベース301に異常が検出されると、いずれかのスレーブデータベース302を、暫定的にマスタとするマスタ切り替えを行う。また、機器管理部306は、上述したマスタ切り替えを行うと、この切り替えを行った時刻を,履歴管理部304に記憶する。また、機器管理部306により異常が検出されたマスタデータベース301の正常化が検出されると、復旧処理部307が、マスタ切り替え中に発生した更新処理結果を、マスタデータベース301に反映させて復旧させる。また、機器管理部306は、暫定的に切り替えていた状態を復元させ、マスタデータベース301をマスタとすることもできる。
【0021】
ここで、マスタデータベース301には、例えば、図4に示すような、データ名称,データ,収集日時(更新処理がなされた時刻情報)を項目とした複数のレコード(データ)が記憶されている。このレコードは、データ名称で識別できる建築物内の場所で測定された温度をデータとし、また、温度が測定されて記憶された日付および時刻を収集日時としている。本例では、マスタデータベース301には、時系列データからなるデータベースが格納されている。このように構成されているデータが、スレーブデータベース302に反映されて記憶されている。
【0022】
また、機器管理部306は、例えば、図5に示すような、機器管理情報を有している。この機器管理情報は、管理対象となるデータベースを識別するための「ID」、データベースがマスタかスレーブかを識別する「種別」、各データベースが正常か異常かを識別する「状態」の各項目から構成されている。「種別」では、「1」がマスタであることを示している。また、「状態」では、「0」が正常であることを示し、「1」が異常であることを示している。
【0023】
以下、本実施の形態2におけるデータ処理装置の動作(データ処理方法)について、図6のフローチャートを用いて説明する。
【0024】
まず、機器管理部306が、各データベースの状態を確認する時刻になると(ステップS601)、送出された確認信号に対する各データベースからの返信を確認する(ステップS602)。この時刻は、時期管理部303に設定されている。例えば、機器管理部306には、各データベースが構築されているコンピュータ機器のネットワーク上のアドレスが設定されており、機器管理部306は、このアドレスに対して確認信号を送出する。この確認信号に対する返信がない場合、データベースに異常が発生しているものと判断できる。
【0025】
確認信号に対する返信を受け付けることでマスタデータベース301に異常が発生していないことを確認すると(ステップS603のy)、反映部305が、時期管理部303に設定されている反映時刻になったことを判断する(ステップS604)。設定されている反映時刻になると、反映部305は、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備えるマスタデータベース301が管理するデータを確認する(ステップS605)。この確認により対象となるデータがあると、反映部305は、対象のデータをスレーブデータベース302に反映する(ステップS606)。
【0026】
次に、反映部305は、上述したスレーブデータベース302への反映が正常に行われたことを確認すると(ステップS607のy)、履歴管理部304に記憶されている反映処理時刻を更新する(ステップS608)。
【0027】
一方、確認信号に対する返信が受け付けられない場合(ステップS603のn)、機器管理部306は、スレーブデータベース302を暫定的にマスタとするマスタ切り替えを行う(ステップS611)。次に、機器管理部306は、上述したマスタ切り替えを行うと、この切り替えを行った時刻を,履歴管理部304に記憶して更新する(ステップS612)。
【0028】
次に、反映部305が、時期管理部303に設定されている反映時刻になったことを判断する(ステップS613)。設定されている反映時刻になると、反映部305は、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備えるスレーブデータベース302が管理するデータを確認する(ステップS614)。このスレーブデータベース302は、機器管理部306により暫定的にマスタとされているデータベースである。この確認により対象となるデータがあると、反映部305は、対象のデータを、他のスレーブデータベース302に反映する(ステップS615)。
【0029】
次に、反映部305は、上述した他のスレーブデータベース302への反映が正常に行われたことを確認すると(ステップS616のy)、履歴管理部304に記憶されている反映処理時刻を更新する(ステップS617)。次に、機器管理部306が、マスタデータベース301の正常化を確認する(ステップS618)。例えば、機器管理部306は、送出された確認信号に対するマスタデータベース301からの返信確認により、マスタデータベース301が正常化したことを確認する。ここで、正常化が確認できない場合(ステップS618のn)、ステップS613に戻る。
【0030】
一方、マスタデータベース301の正常化が確認されると(ステップS618のy)、復旧処理部307は、履歴管理部304に記憶されているマスタ切り替えの時点から現時点までの期間の時刻情報を備えるスレーブデータベース302が管理するデータを、マスタデータベース301に反映する(ステップS619)。このスレーブデータベース302は、例えば、暫定的にマスタとされていたデータベースである。このようにマスタデータベース301のリカバリを行った後、機器管理部306は、マスタデータベース301をマスタに戻すマスタ切り替えを行う(ステップS620)。この後、ステップS601に戻り、前述した各ステップを繰り返す。マスタ切り替えを行わず、暫定的にマスタとしていたデータベースをマスタ、復旧したデータベースを副データベースとしてステップS601に戻り、前述した各ステップを繰り返してもよい。
【0031】
上述した実施の形態によれば、マスタデータベース301に格納(管理)されているデータの中で、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を持つものをスレーブデータベース302に反映させているので、マスタデータベース301が受け付けた更新処理の情報(更新情報)を保持しておく必要がない。このため、更新情報の保持による記憶容量の圧迫が抑制できるようになる。
【0032】
また、上述した実施の形態によれば、マスタデータベース301が復旧した後のリカバリにおいて、例えば、リカバリ対象のデータの整合性を検証するなどの複雑な処理をすることがなく、多くの処理時間を必要としない。
【0033】
ここで、データ処理装置は、CPUと主記憶装置と外部記憶装置とネットワーク接続装置などを備えたコンピュータ機器であり、主記憶装置に展開されたプログラムによりCPUが動作することで、上述した各機能が実現される。また、各機能は、複数のコンピュータ機器に分散させるようにしてもよい。
【0034】
なお、本発明は以上に説明した実施の形態に限定されるものではなく、本発明の技術的思想内で、当分野において通常の知識を有する者により、多くの変形および組み合わせが実施可能であることは明白である。
【符号の説明】
【0035】
101…第1データベース、102…第2データベース、103…反映部。

【特許請求の範囲】
【請求項1】
追加および変更を含む更新処理がなされた時刻情報とともにデータが管理されているマスタとしての第1データベースと、
前記第1データベースが反映されるスレーブとしての第2データベースと、
直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える前記第1データベースが管理するデータを、前記第2データベースに反映する反映手段と
を備えることを特徴とするデータ処理装置。
【請求項2】
請求項1記載のデータ処理装置において、
前記第1データベースの異常検出により、前記第2データベースをマスタとし、前記第1データベースの異常検出の後の前記第1データベースの正常化検出により、前記第1データベースをマスタとする機器管理手段と、
この機器管理手段による前記第1データベースの正常検出により、前記異常検出の時点より前記正常化検出の時点までの期間の時刻情報を備える前記第2データベースが管理するデータを前記第1データベースに反映する復旧処理手段と
を備えることを特徴とするデータ処理装置。
【請求項3】
反映時刻を判断する第1ステップと、
反映時刻になると、直前に反映処理が行われた時点から今回の反映処理までの期間の時刻情報を備える前記第1データベースが管理するデータを、前記第2データベースに反映する第2ステップと
を少なくとも備えることを特徴とするデータ処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−93817(P2012−93817A)
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願番号】特願2010−238194(P2010−238194)
【出願日】平成22年10月25日(2010.10.25)
【出願人】(000006666)株式会社山武 (1,808)
【Fターム(参考)】