(57)【要約】【課題】新しく開発される新システムが更新を続けるデータ提供装置のデータを汎用の問い合わせ言語で取得できるようにして、新システムあるいは改造システムなどの開発効率を向上することができるデータベース装置を得る。【解決手段】フラットデータファイル１１にてデータを管理し、データの更新を外部に通知することができるデータ提供装置１からデータ提供装置１独自の形式であるデータ問合せ言語Ａのデータを取得し、取得したデータをデータ問合せ言語ＳＱＬで提供できる形式に変換するデータ取得部３１と、データ取得部３１で変換されたデータを格納するリレーショナルデータベース部３２と、データ提供装置１が通知するデータ更新の通知を受信し、データ取得部３１がデータを取得するタイミングを制御することができる更新通知受信部３３とを備える。【選択図】図１
2010123017.tif 000002
【特許請求の範囲】
【請求項１】
独自の形式であるデータ問合せ言語のデータを提供するデータ提供装置と接続されたデータベース装置であって、
上記データ提供装置から上記独自の形式であるデータ問合せ言語によりデータを取得し、該取得したデータを汎用データ問合せ言語での形式に変換するデータ取得部と、
上記データ取得部で変換されたデータを格納し、上記汎用データ問い合わせ言語によりデータを取得できるデータベース部と、
上記データ取得部がデータを取得するタイミングを制御するデータ取得制御部とを備えたことを特徴とするデータベース装置。
【請求項２】
上記データ提供装置がデータの更新を外部に通知することができ、
上記データ取得制御部が、上記データ提供装置が通知するデータ更新の通知を受信した際に、上記データ取得制御部が上記データ取得部を起動してデータを取得することを特徴とする請求項１に記載のデータベース装置。
【請求項３】
上記データ取得部がデータを取得した後に、上記データ取制御得部が、上記データ提供装置が通知するデータ更新の通知を受信した際に、上記データ取得部が取得したデータと、その時点で上記データ提供装置が有するデータとの差分を上記独自の形式であるデータ問合せ言語により取得し、該取得した差分データを汎用データ問合せ言語での形式に変換する差分データ取得部を備え、
上記データベース部が上記差分データ取得部で変換されたデータを格納することを特徴とする請求項２に記載のデータベース装置。
【請求項４】
上記差分データ取得部は、上記データ提供装置の更新データのうちで追加データと変更データのみを取得することを特徴とする請求項３に記載のデータベース装置。
【請求項５】
上記データベース装置の起動処理を検知した場合に、上記差分データ取得部の動作要求を行う復旧処理部を備えたことを特徴とする請求項３または請求項４に記載のデータベース装置。
【請求項６】
上記データ提供装置が所定周期でデータを更新するものであり、
上記データ取制御得部が、上記データ提供装置でのデータ更新のタイミングを把握しており、上記データ提供装置のデータ更新の周期と同期させて、上記データ取得部を起動してデータを取得することを特徴とする請求項１に記載のデータベース装置。
【請求項７】
上記データベース装置の起動処理を検知した場合に、上記データ取得部の動作要求を行う復旧処理部を備えたことを特徴とする請求項２または請求項６に記載のデータベース装置。
【請求項８】
上記データ提供装置が外部からのデータ変更要求を処理するデータ変更処理部を備えており、
外部からの上記データベース部の更新を可能とし、上記データベース部の外部からの更新を検知し、上記検知した更新内容を上記データ提供装置に送信するデータ変更検知部を備えたことを特徴とする請求項１ないし請求項７のいずれか１項に記載のデータベース装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンピュータネットワーク上に設置されている独自のデータ問合せ言語でデータを提供するデータ提供装置を利用した新システムの開発において、開発効率を高めるためのデータベース装置に関するものである。
【背景技術】
【０００２】
コンピュータネットワーク上のシステムにおいては、一度システムを設置した後でも機能の追加、他システムとの連携などという改造が必要となることが多い。
【０００３】
しかし、そのようなネットワーク上に存在するシステム、特に古いシステムおいては、データをフラットデータファイルに蓄積し、独自のデータ問合せ言語にてデータを提供するデータ提供装置がある。そして、そのような古いシステムと連携する新システムを開発する場合、独自のデータ問合せ言語に合わせて新システムを開発したり、古いシステムを改造することが必要となる。
【０００４】
例えば、リレーショナルデータベース管理システム（ＲＤＢＭＳ：Ｒｅｌａｔｉｏｎａｌ  ＤａｔａＢａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）へのアクセスに広く用いられている問合せ言語ＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）にてデータ取得を行うようにした新システムにおいて、ＳＱＬを古いシステムが備える独自のデータ問合せ言語に変換するデータ処理システムを設置する方法が開示されている。（例えば、特許文献１参照）
【０００５】
また、古くなったデータベースサーバ交換時にデータを効率的にＲＤＢＭＳに移行するようにするデータ変換方法とデータファイル変換装置が開示されている。（例えば、特許文献２参照）
【０００６】
【特許文献１】特開２００１−３５０６５６号公報（第６頁〜第１１頁、図１〜図６）
【特許文献２】特開２０００−３４７９０７号公報（第３頁〜第７頁、図１〜図５）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記特許文献１の新システムでは、ＳＱＬが備えるような機能全てに対応するようにＳＱＬから古いシステムの独自の問い合わせ言語に変換することは、データ処理システムの開発規模が大きくなってしまうために開発効率が悪くなるという問題があった。
【０００８】
また、特許文献２のデータ変換方法とデータファイル変換装置では、変換能力は有するが、ＲＤＢＭＳを備えておらず、外部からのＳＱＬによる問い合わせに対応できない。また、データベースサーバ交換時に利用者が実行指示を行う必要があるため、一定周期あるいはデータベースサーバの更新ごとにデータ変換を実行し続けることは困難であるという問題がある。
【０００９】
この発明は上記のような課題を解決するためになされたものであり、新しく開発される新システムあるいは改造システムが、更新を続けるデータ提供装置のデータを問い合わせ言語ＳＱＬで取得できるようにして、新システムあるいは改造システムなどの開発効率を向上させることができるデータベース装置を得ることを目的とする。
【課題を解決するための手段】
【００１０】
この発明に係るデータベース装置は、独自の形式であるデータ問合せ言語のデータを提供するデータ提供装置と接続されたデータベース装置であって、
上記データ提供装置から上記独自の形式であるデータ問合せ言語によりデータを取得し、該取得したデータを汎用データ問合せ言語での形式に変換するデータ取得部と、
上記データ取得部で変換されたデータを格納し、上記汎用データ問い合わせ言語によりデータを取得できるデータベース部と、
上記データ取得部がデータを取得するタイミングを制御するデータ取得制御部とを備えたものである。
【発明の効果】
【００１１】
この発明に係るデータベース装置によれば、独自の形式であるデータ問合せ言語のデータを提供するデータ提供装置と接続されたデータベース装置であって、
上記データ提供装置から上記独自の形式であるデータ問合せ言語によりデータを取得し、該取得したデータを汎用データ問合せ言語での形式に変換するデータ取得部と、
上記データ取得部で変換されたデータを格納し、上記汎用データ問い合わせ言語によりデータを取得できるデータベース部と、
上記データ取得部がデータを取得するタイミングを制御するデータ取得制御部とを備えたものであることにより、新システムあるいは改造システムが独自の形式であるデータ問合せ言語のデータを提供するデータ提供装置のデータを汎用データ問い合わせ言語により取得することができるので、新システムあるいは改造システムの開発効率を向上させることができる。
【発明を実施するための最良の形態】
【００１２】
以下、この発明の実施の形態を図に基づいて説明する。
【００１３】
実施の形態１．
図１は、この発明の実施の形態１を示すデータベース装置を含むシステムのブロック図である。
図１において、データ提供装置１は、データを蓄積するためのデータファイルであるフラットデータファイル１１と、その内容を外部に提供するためのデータ提供部１２と、フラットデータファイル１１を更新するデータ収集部１３を持つ。データ提供部１２は、独自の形式であるデータ問合せ言語Ａによりデータを装置外部に提供する。データ収集部１３は、外部システム２に接続されており、外部システム２の処理終了タイミングや一定時間おきに外部システム２からデータを収集し、フラットデータファイル１１を更新する。また、データ収集部１３はフラットデータファイル１１を更新したタイミングで、装置外部にデータ更新処理を通知する機能を持つ。
【００１４】
この発明に係る部分であるデータベース装置３は、データ問合せ言語Ａによりデータ提供装置１からデータを取得し、取得したデータをデータ問合せ言語ＳＱＬで提供する形式に変換するするデータ取得部３１と、データ取得部３１で変換したデータを蓄積するデータベース部であるリレーショナルデータベース部３２と、データ提供装置１のデータ更新通知を取得しデータ取得部３１を動作させるタイミングを制御するタイミング制御部である更新通知受信部３３を備える。
【００１５】
データ取得部３１は、更新通知受信部３３から動作要求があったときにデータ提供部１２に対してデータ問合せを行い、取得したデータをＲＤＢＭＳ部３２のテーブル構造に合わせるように変換してＲＤＢＭＳ部３２に蓄積する。ＲＤＢＭＳ部３２は、アクセスした新システム４に対してデータ問合せ言語ＳＱＬにより蓄積されているデータを提供する。この実施の形態１において、主キーやカラムの内容などのテーブル構造はあらかじめ決定しておき、データ取得部３１を設計する。
【００１６】
次に動作について説明する。
図２は、この発明の実施の形態１によるデータベース装置の処理の流れを示すフローチャートである。
まず、データ収集部１３が外部システム２のデータを収集し、フラットデータファイル１１を更新する。フラットデータファイル１１を更新したら、データ提供装置１外部に対してデータ更新を通知する。データベース装置３は、ステップＳＴ１１において、データ提供装置１からデータの更新を通知された更新通知受信部３３が、データ取得部３１に対して動作要求を行う。
【００１７】
次に、ステップＳＴ１２において、要求を受けたデータ取得部３１は、データ問合せ言語Ａを使用してデータ提供部１２にデータ問合せを行い、フラットデータファイル１１の内容を一括して取得する。そして、ステップＳＴ１３において、取得したデータはデータ問合せ言語ＳＱＬで提供する形式に変換してＲＤＢＭＳ部３２に蓄積する。これにより、ＲＤＢＭＳ部３２の内容は、フラットデータファイル１１と同等になる。
そして、新システム４は、データ問合せ言語ＳＱＬを使用してデータベース装置３のＲＤＢＭＳ部３２にアクセスして、フラットデータファイル１１に記録されている内容と同等のデータをデータベース装置３から取得することができる。
【００１８】
以上のように、この実施の形態１によれば、データベース装置３にＲＤＢＭＳ部３２を設け、データ取得部３１において古いシステムのデータをデータ問合せ言語ＳＱＬで提供できる形式に変換してＲＤＢＭＳ部３２に格納するようにしたので、広く使用されているデータ問合せ言語ＳＱＬで古いシステムのデータと同等のデータをデータベース装置３を介して提供できるようになり、古いシステムのデータ提供装置１のデータを利用する新システム４の開発効率を向上させることができる。
データベース装置３にアクセスする新システム４は、新規に開発するシステムでなくでもよく、既にあるシステムを改造するなどしてデータ提供装置１が管理するデータを利用するシステムにも適用できる。データ提供装置１は、データをフラットデータファイル以外の形式で格納してもよい。また、ＳＱＬ以外の汎用データ問い合わせ言語を使用してもよい。なお、汎用データ問い合わせ言語とは、使用するデータベースを限定しないで、よく使用される標準的なデータ問い合わせ言語である。
【００１９】
また、データ更新を続けるデータ提供装置１の更新通知を受け取る更新通知受信部３３を設け、データの更新を通知された際に更新通知受信部３３が、データ取得部３１に対して動作要求を行うようにしたので人手を介さずに古いシステムのデータをＳＱＬでアクセスできるようにデータ変換してＲＤＢＭＳ部３２に格納することができる。
【００２０】
また、古いシステムであるデータ提供装置１が想定していたデータアクセス頻度よりも、新システム４が必要とするデータアクセス頻度の方が大きい場合にも、データベース装置３が新システム４からのデータ問合せに対応するのでデータ提供装置１の処理性能が足りなくなるという問題を回避することができる。
【００２１】
実施の形態２．
図３は、この発明の実施の形態２を示すデータベース装置を含むシステムのブロック図である。
上記実施の形態１では、フラットデータファイル１１の内容を一括して取得する例について述べた。この実施の形態２では、データ更新時刻やデータＩＤなどによりフラットデータファイル１１の中の追加、変更、削除など更新データ部分１１１を特定できる場合である。この場合、特定した更新データ部分１１１のみを取得するようにする。例えば、図３に示したように、差分データ取得部３４を設ける。データ取得部３１がデータ提供装置１から取得し、取得したデータをＲＤＢＭＳ部３２に格納した後、差分データ取得部３４は、データ提供装置１のデータ更新時の際にデータ取得部３１が取得したデータと、その時点でデータ取得部３１が有するデータとの差分を独自の形式であるデータ問合せ言語により更新データ部分１１１を取得し、ＲＤＢＭＳ部３２に格納する。
【００２２】
この実施の形態２によれば、データ更新時刻やデータＩＤなどによりフラットデータファイル１１の中の更新データ部分１１１が特定できる場合に、特定した更新データ部分１１１のみを取得するようにしたので、取得するデータが限定され、データ取得にかかる処理負荷を低減することができる。
【００２３】
実施の形態３．
図４は、この発明の実施の形態３を示すデータベース装置を含むシステムのブロック図である。
上記実施の形態２では、差分データ取得部３４によりデータ提供装置１のデータ更新時の際にデータ取得部３１が取得したデータと、その時点でデータ取得部３１が有するデータとの差分をＲＤＢＭＳ部３２に格納する場合について延べたが、図４に示したように、更新データ部分の中でフラットデータファイル１１へ追加されたデータと変更されたデータのみをＲＤＢＭＳ部３２に格納する追加・変更データ取得部３９を設け、フラットファイルデータ１１から削除されたデータをＲＤＢＭＳ部３２からは削除しないようにすることができる。なお、追加・変更データ取得部３９は、差分データ取得部の一種である。
【００２４】
この実施の形態３によれば、記録できるデータ容量の制限からデータ提供装置１では削除されていたデータをデータベース装置３は保持していることになり、新システム４に対してより多くのデータを提供できるという効果がある。
【００２５】
実施の形態４．
この実施の形態４は、データ提供装置１が所定周期でデータを更新するものであり、データ取制御得部３１が、データ提供装置１でのデータ更新のタイミングを把握しており、データ提供装置１のデータ更新の周期と同期させて、データ取得部３１を起動してデータを取得するものである。
【００２６】
図５は、この発明の実施の形態４を示すデータベース装置を含むシステムのブロック図である。
上記実施の形態１ないし３では、データ提供装置１から外部に提供されているデータ更新通知によりデータ取得部３１を動作させる例について述べたが、図５において、データ収集部１３が定周期で動作する場合は、データベース装置３にタイマー部３５を設け、タイマー部３５はデータ収集部１３の動作に同期させてデータ取得部３１を動作させる。なお、タイマー部３５は、一種のデータ取得制御部である。
【００２７】
この実施の形態４によれば、データ収集部１３が定周期で動作する場合に、タイマー部３５により定周期でデータ取得部３１が動作するので、データベース装置３はデータ提供装置２のデータを遅延なく更新することができる。
【００２８】
実施の形態５．
図６は、この発明の実施の形態５を示すデータベース装置を含むシステムのブロック図である。
上記実施の形態１ないし４では、データ収集部１３によってのみフラットデータファイル１１が更新される場合について述べた。この実施の形態５では、図６に示したように、データ提供装置１が新システム４などの外部からのデータ変更要求を受信しフラットデータファイル１１を更新するデータ変更処理部１４を備える場合である。この場合、データベース装置３がデータ変更検知部３６を備えることにより、例えば外部システム２の故障によって正しいデータが得られていないことに気づいた新システム４などの外部からデータ変更要求があった場合に、外部からのデータ変更要求をデータベース装置３が受けてデータ変更検知部３６はデータベーストリガーなどにより検知しＲＤＢＭＳ部３２を更新しその更新した内容をデータ変更検知部３６からデータ変更処理部１４を通じてデータ提供装置１に送信して、ＲＤＢＭＳ部３２とフラットデータファイル１１の内容とを同期させることができる。
【００２９】
以上のように、この実施の形態４によれば、データベース装置３は、新システム４にＳＱＬによるデータ更新機能を提供し、ＲＤＢＭＳ部３２の変更をデータ提供装置１に送信することができる。なお、図６は、図１（上記実施の形態１）にデータ変更処理部１４を設けた例を示したが、図３ないし５（上記実施の形態２ないし４）において、データ変更処理部１４を設けることができる。
【００３０】
実施の形態６．
図７及び８は、この発明の実施の形態６を示すデータベース装置を含むシステムのブロック図である。
上記実施の形態１ないし３では、データ提供装置１から外部に提供されているデータ更新通知によりデータ取得部３１を動作させる場合、上記実施の形態４では、データ提供装置１の更新周期に同期させてデータ取得部３１を動作させる場合について述べたが、図７に示したように、この実施の形態６では、さらに、データベース装置３の再起動処理を検知しデータ取得部３１に動作要求を行う復旧処理部３７を設け、データ収集部１３からの更新通知を待たずにＲＤＢＭＳ部３２の更新を行うようにしたものである。
【００３１】
また、図８に示したように、データベース装置３が停止していた期間のＲＤＢＭＳ部３２とフラットデータファイル１１との差分データまたは更新データ部分１１１が判断できる場合には、復旧処理部３７に加えて復旧データ取得部３８を設け、更新データ部分のみをＲＤＢＭＳ部３２に反映することでさらにデータベース装置３の復旧までの時間を短くすることができる。
【００３２】
以上のように、この実施の形態６によれば、故障などによりデータベース装置３のデータ更新が一時的に停止していたデータベース装置３が再起動してデータ更新を再開した場合に、データ更新通知を待つことなくＲＤＢＭＳ部３２の更新処理を開始することができるので、データベース装置３の復旧までの時間を短くすることができる。
【００３３】
なお、この実施の形態６では、図１ないし４（実施の形態１ないし３）に復旧処理部３７を設けた例を示したが、図５および６（実施の形態４及び５）に復旧処理部３７を設けることもできる。
【図面の簡単な説明】
【００３４】
【図１】この発明の実施の形態１を示すデータベース装置を含むシステムのブロック図である。
【図２】この発明の実施の形態１によるデータベース装置の処理の流れを示すフローチャートである。
【図３】この発明の実施の形態２を示すデータベース装置を含むシステムのブロック図である。
【図４】この発明の実施の形態３を示すデータベース装置を含むシステムのブロック図である。
【図５】この発明の実施の形態４を示すデータベース装置を含むシステムのブロック図である。
【図６】この発明の実施の形態５を示すデータベース装置を含むシステムのブロック図である。
【図７】この発明の実施の形態６を示すデータベース装置を含むシステムのブロック図である。
【図８】この発明の実施の形態６を示すデータベース装置を含むシステムのブロック図である。
【符号の説明】
【００３５】
１  データ提供装置、２  外部システム、３  データベース装置、４  新システム、
１１  フラットデータファイル、１２  データ提供部、１３  データ収集部、
３１  データ取得部、３２  リレーショナルデータベース部、３３  更新通知受信部、
３４  差分データ取得部、３５  タイマー部、３６  データ変更検知部、
３７  復旧処理部、３８  復旧データ取得部、３９  追加・変更データ取得部。
【図１】
2010123017.tif 000003
【図２】
2010123017.tif 000004
【図３】
2010123017.tif 000005
【図４】
2010123017.tif 000006
【図５】
2010123017.tif 000007
【図６】
2010123017.tif 000008
【図７】
2010123017.tif 000009
【図８】
2010123017.tif 000010