(57)【要約】  【課題】オンラインシステムにおいて、大量のトランザクションデータを処理することができるトランザクション処理方法、及びその方法を搭載したオンラインシステムと、このシステムに搭載されるトレーニングモードとを安価に実現する。  【解決手段】本部サーバシステム内に、トランザクションデータの順番を管理して格納する複数のキュー処理手段と、キュー処理手段の管理データにより、トランザクションデータのデータベースに対する更新の処理順位を制御する優先処理手段とを設け、優先処理手段は、キュー管理手段から管理データを入手するステップと、入手した管理データを統合した優先処理テーブルを形成するステップと、優先処理テーブルの処理情報を検索し、所定の条件により決定されたトランザクションデータの取出順番を決定するステップと、キュー格納手段からトランザクションデータを取り出すステップとを備える構成にする。【選択図】図３
2008071004.tif 000002
【特許請求の範囲】
【請求項１】
店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるトランザクション処理方法において、
前記本部サーバシステム内に、前記トランザクションデータを格納するキュー格納手段と同キュー格納手段に格納されている前記トランザクションデータの順番を管理するキュー管理手段とを備えた複数のキュー処理手段と、前記キュー管理手段の管理データにより、前記トランザクションデータの前記データベースに対する更新の処理順位を制御する優先処理手段とを設け、
前記優先処理手段は、複数の前記キュー管理手段から前記管理データを入手するステップと、入手した前記管理データを統合して前記トランザクションデータの前記処理情報を記載した優先処理テーブルを形成するステップと、前記優先処理テーブルの前記処理情報を検索し、所定の条件により決定された前記トランザクションデータの前記キュー格納手段からの取出順番を決定するステップと、決定された前記取出順番に従って前記キュー格納手段から前記トランザクションデータを取り出すステップとを備えてなることを特徴とするトランザクション処理方法。
【請求項２】
前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順としてなることを特徴とする請求項１記載のトランザクション処理方法。
【請求項３】
前記処理情報に付加される情報は、前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの処理優先順位としてなることを特徴とする請求項１記載のトランザクション処理方法。
【請求項４】
前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻、及び前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順と、これよりも優先処理される前記トランザクションデータの処理優先順位としてなることを特徴とする請求項１記載のトランザクション処理方法。
【請求項５】
前記処理情報に付加される情報は、前記トランザクションデータによる更新が実施される前記データベースの本番処理、又はトレーニング処理を選択する種別情報とし、前記優先処理手段は、同種別情報に対応して前記データベースを更新してなることを特徴とする請求項１乃至請求項４のいずれかに記載のトランザクション処理方法。
【請求項６】
店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるオンラインシステムにおいて、
前記本部サーバシステム内に、前記キュー処理手段を備えた複数の振分サーバと、請求項１乃至請求項４のいずれかに記載の前記トランザクション処理方法を用いて前記トランザクションデータを前記振分サーバから取り出す前記優先処理手段を備え、前記振分サーバから取り出した前記トランザクションデータで前記データベースを更新する処理サーバとを設けてなることを特徴とするオンラインシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンラインシステムのトランザクション処理方法に関し、より詳細には、データ入力端末から入力されたデータをトランザクションデータに変換し、このトランザクションデータによりデータベースを更新するまでのトランザクション処理を複数のサーバで分散処理にした場合、複数のサーバ間でトランザクションデータ処理の同期方法に関する。
【背景技術】
【０００２】
従来、トランザクションを処理するオンラインシステムは、例えば図７に示す構成となっている。このシステムは、入力されたデータを内蔵された業務プログラムにより処理してトランザクションデータに変換し、通信回線によりトランザクションデータを送信する業務端末と、トランザクションデータを受信すると共に、対応するデータベースを更新するサーバプログラムを備えたサーバとで構成された複数のサーバシステムがネットワークで接続されている。
【０００３】
具体的には、店舗サーバシステム６１と本部サーバシステム６２とが、インターネットや専用回線からなるネットワーク６３を介して接続されており、店舗サーバシステム６１は、パソコンに専用の業務プログラムをインストールした２台の店舗業務端末６４と、商品の会計を管理する２台のＰＯＳ端末６５と、これらを通信回線で接続すると共に、コンソールを接続した店舗サーバ６７と、店舗サーバ６７に接続された店舗データベース６８（ハードディスク）とで構成されている。
【０００４】
また、本部サーバシステム６２は、パソコンに専用の業務プログラムをインストールした１台の本部業務端末７０と、これを通信回線で接続すると共に、コンソールを接続した本部サーバ７２と、本部サーバ７２に接続された本部データベース７３（ハードディスク）とで構成されている。
【０００５】
次に図８のシステム構成図を用いて、このシステムを各機能（手段）の連携として説明する。なお、各手段は各手段が配置されるサーバのプログラムで実現されている。
【０００６】
店舗業務端末６４には業務アプリ（プログラム）からなる業務処理手段８０が備えられており、発注や、返品、在庫、売上管理などの業務をこの端末から行なうことができる。さらに、店舗業務端末６４には、業務処理手段８０の他にＦＴＰマネージャからなるトランザクションデータ送信手段８１が備えられており、業務処理手段８０が作成したトランザクションデータを１つのファイルとして、店舗サーバ６７のトランザクション振り分けプログラムからなる振分手段８３へ送信する機能を備えている。
【０００７】
また、ＰＯＳ端末６５には、ＰＯＳアプリ（プログラム）からなる業務処理手段８２が備えられており、商品単価のプライスルックアップと会計処理、売上集計業務をこのＰＯＳ端末６５から行なうことができる。さらに、ＰＯＳ端末６５には業務処理手段８２の他にＦＴＰマネージャからなるトランザクションデータ送信手段８１が備えられており、業務処理手段８２が作成したトランザクションデータを１つのファイルとして、店舗サーバ６７の振分手段８３へ送信する機能を備えている。
【０００８】
一方、店舗サーバ６７には、コンソール（図示せず）からの入力を受け付け、結果をコンソールへ表示する店舗サーバ業務アプリからなる業務処理手段８４が備えられており、店舗業務端末６４の業務処理手段８０と同じ処理を行なうことができる。
【０００９】
また、店舗サーバ６７には各トランザクションデータ送信手段８１から送信されるトランザクションデータを受信し、その中に記載されている宛先へ振り分けるトランザクション振り分けプログラムからなる振分手段８３と、店舗データベース６８を管理するデータベース管理手段８５と、ネットワーク６３へ振り分けられたトランザクションデータを転送するＦＴＰマネージャからなる転送手段８６と、ネットワーク６３を介して転送されたトランザクションデータを受信し、振分手段８３へ転送するＦＴＰサーバからなる受信手段９４とが備えられている。
【００１０】
振分手段８３が受信した各トランザクションデータは、宛先により同じ店舗サーバ内の店舗データベース６８を更新するものと、ネットワーク６３を介して他のサーバシステム、例えば本部サーバシステム６２の本部データベース７３を更新するものとに振り分けられる。この時、複数の宛先があるものは、振分手段８３内に備えられた複製手段８３ａにより、その数だけトランザクションデータが複製されて振り分けられる。
【００１１】
そして、店舗サーバ６７の店舗データベース６８を更新するトランザクションデータは、データベース管理手段８５で処理され、この処理結果によって店舗データベース６８が更新される。一方、ネットワーク６３を介して他のサーバシステムのデータベースを更新するためのトランザクションデータは、転送手段８６を介してネットワーク６３を経由し、例えば本部サーバの受信手段９０で受信され、振分手段９１で振り分けられた後、データベース管理手段９２で処理され、この結果、本部データベース７３が更新される。
【００１２】
このように、各業務処理手段は、トランザクションデータ送信手段を介して店舗サーバの店舗データベースだけでなく、ネットワークを介して本部側のサーバシステムの本部データベースへアクセスすることができる。本部側のサーバシステムの動作は、店舗側のサーバシステムと同じ動作を行なうため、詳細な説明を省略する。主な違いは本部側で必要な業務アプリケーションに基づくトランザクションデータの処理であり、具体的には各店舗売上の合計集計処理や発注データの集計、総合在庫管理など、各店舗に関するデータの集計処理である。
【００１３】
次にトランザクション振分手段８３の処理について図９を用いて説明する。
【００１４】
この振分手段８３を実現するトランザクション振り分けプログラムは、トランザクションデータをデータのフォルダに格納して管理している。このため、受信したトランザクションデータを格納する入力ホルダと、トランザクションデータを振り分けた後、他のサーバへ送信されるトランザクションデータを格納する出力ホルダ（ＦＴＰ用）と、トランザクションデータを振り分けた後、同一サーバ内のデータベースを更新するためのトランザクションデータを格納する出力ホルダ（データベース用）とが店舗サーバ６７の記憶装置（図示せず）に設けられている。
【００１５】
トランザクション振り分けプログラムの動作によって入力ホルダには、ネットワーク６３を介して受信手段（ＦＴＰサーバ）９４より、また、店舗端末のトランザクションデータ送信手段（ＦＴＰマネージャ）８１、店舗サーバの業務処理手段８４、ＰＯＳ端末６５のトランザクションデータ送信手段（ＦＴＰマネージャ）８１よりそれぞれ送信されたトランザクションデータが順に格納される。
【００１６】
同時にこのトランザクション振り分けプログラムは、入力ホルダよりトランザクションデータを１つづつ取り出して、このデータの宛先を確認する。そして、宛先が複数の場合はその数だけトランザクションデータを複製し、宛先が同じ店舗内のデータベースであれば、トランザクションデータを出力ホルダ（データベース用）に格納し、宛先が他のサーバであればトランザクションデータを出力ホルダ（ＦＴＰ用）に格納する。
【００１７】
また同時に、出力ホルダ（ＦＴＰ用）と出力ホルダ（データベース用）とをそれぞれ調べ、トランザクションデータが存在すれば１つずつ取り出す。
【００１８】
そして、出力ホルダ（ＦＴＰ用）から取り出されたトランザクションデータは、店舗サーバの転送手段８６（ＦＴＰマネージャ）の動作によりネットワーク６３を介して該当するサーバへ送信される。
【００１９】
また、出力ホルダ（データベース用）から取り出されたトランザクションデータは、店舗サーバ内のデータベース管理手段８５の動作により、店舗データベース６８を更新する。
【００２０】
図９の例では入力ホルダに仕入データ（宛先：本部）、在庫データ（宛先：本部）、ＰＯＳ端末日計売上データ（宛先：自店舗）、返品データ（宛先：本部）、他店舗振替データ（宛先：自店舗、他店舗）の各トランザクションデータが入っている。
【００２１】
この中で仕入データ、在庫データ、返品データは本部で処理されるため、各データの宛先に従って出力ホルダ（ＦＴＰ用）へ移動される。また、ＰＯＳ端末日計売上データは店舗データベースのみ更新すればよいため、データの宛先に従って出力ホルダ（データベース用）へ移動される。
【００２２】
さらに、他店舗振替データは他店舗のデータベースと自店舗のデータベースを更新するため、宛先が２カ所記載されている。従ってこのデータをもう１つ複製し、このデータの宛先に従って出力ホルダ（ＦＴＰ用）と出力ホルダ（データベース用）とへ移動される。
【００２３】
なお、図９は説明のための図であり、実際には入力ホルダのデータが処理されれば該当データは存在しなくなる。従ってこのデータは点線で囲って表現されている。また、入力ホルダや出力ホルダは、各トランザクションデータの時系列を保持するため、キュー構造として管理されており、各トランザクションデータの発生時刻順に、データが先入れ先出しで処理されるようになっている（例えば、特許文献１参照。）。
【００２４】
このシステムでは本部サーバ７２の１台のみでトランザクションの振分処理とデータベースへのアクセスとを管理しており、店舗の数が増えてトランザクションデータ処理のピークが発生した場合に、処理するトランザクションの数に限界が発生し、処理されないトランザクションが発生する可能性があり、小規模、または中規模程度のチェーン店にしか対応できない。このため、大規模なチェーン店で取り扱う大量のトランザクションを処理するため、本部サーバに高性能なサーバ、もしくは、メインフレームなどの大型汎用計算機を用いる必要があった。
【００２５】
ところで、このようなシステムを運用する場合に問題となるのが、従業員における各端末操作での不慣れである。各端末を操作する従業員は、初心者やベテランなどさまざまな人達が入り乱れて使用する。従って、このようなシステムには必ずトレーニングモードが備えられており、初心者の場合は、業務の合間を縫ってトレーニングモードで端末を操作することにより、端末の操作に慣れるようになっている。
【００２６】
なお、ここで言うトレーニングモードとは、操作自体は本番の処理と同じであるが、操作により入力したデータは本番の処理に影響を与えないように、自動的に破棄、または、トレーニング専用の記憶エリアに格納される仕組みを示す。
【００２７】
このようなトレーニングモードを実現したものとして、ＰＯＳ端末にトレーニングモードを設けた例がある。例えばＰＯＳ端末に備えられたモード切替ボタンの押下により、本番のモードからトレーニングモードへ移行し、それ以降に行なった売上操作のデータに関しては、ＰＯＳ端末内のトレーニング専用のメモリへ格納させるようになっている。再度、モード切替ボタンが押下されるとトレーニングモードから本番のモードへ移行することにより、本番のモードでの売上金額が影響されない仕組みになっている（例えば、特許文献２参照。）。
【００２８】
一方、このようなＰＯＳ端末に備えられたトレーニングモードでは、ＰＯＳ端末自体の訓練としては有効であるが、システム全体の訓練ができるものではない。つまり、図７の店舗業務端末や本部業務端末は実際にデータベースへのアクセスが主な業務であるが、実際にアクセスすると本番データを書き換えてしまう危険がある。
【００２９】
そこで、ネットワークを介して接続された訓練用サーバを設け、店舗業務端末や本部業務端末はトレーニングモード時にこの訓練用サーバに実際にアクセスする構成が開示されている。訓練用サーバには本番と同じプログラム群が用意されており、訓練用のデータベースやファイルに本番と同じ手順でアクセスするようになっている（例えば、特許文献３参照。）。
【００３０】
しかしながら、前述のように大規模なチェーン店で取り扱う大量のトランザクションを処理するため、本部サーバに高性能なサーバ、もしくは、メインフレームなどの大型汎用計算機を用いる方法では機器が高価になり、また、大型汎用計算機では、市販のパッケージソフトなどが使用できず、専用のプログラムを独自に開発する必要があり、システム全体の価格が非常に高価になるという問題があった。
【００３１】
また、高性能なサーバ、もしくは、大型汎用計算機をシステムに採用した場合、前述したように、システム全体のトレーニングモードを実現するするために訓練用の専用サーバも同時に高性能化する必要があり、更にシステムの価格が上昇してしまうという問題もあった。
【特許文献１】特開２００５−１１５６７５号公報（第９−１０頁、図４）
【特許文献２】特開平３−０１１４９６号公報（第４頁、図２）
【特許文献３】特開２０００−３４７９９７号公報（第４−５頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【００３２】
本発明は以上述べた問題点を解決し、チェーン店などで使用される本部と複数の店舗とをオンラインで結んでトランザクションデータを処理するオンラインシステムにおいて、大量のトランザクションデータを処理することができるトランザクション処理方法、及びその方法を搭載したオンラインシステムと、このシステムに搭載されるトレーニングモードとを安価に実現することを目的とする。
【課題を解決するための手段】
【００３３】
本発明は上述の課題を解決するため、店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるトランザクション処理方法において、
前記本部サーバシステム内に、前記トランザクションデータを格納するキュー格納手段と同キュー格納手段に格納されている前記トランザクションデータの順番を管理するキュー管理手段とを備えた複数のキュー処理手段と、前記キュー管理手段の管理データにより、前記トランザクションデータの前記データベースに対する更新の処理順位を制御する優先処理手段とを設け、
前記優先処理手段は、複数の前記キュー管理手段から前記管理データを入手するステップと、入手した前記管理データを統合して前記トランザクションデータの前記処理情報を記載した優先処理テーブルを形成するステップと、前記優先処理テーブルの前記処理情報を検索し、所定の条件により決定された前記トランザクションデータの前記キュー格納手段からの取出順番を決定するステップと、決定された前記取出順番に従って前記キュー格納手段から前記トランザクションデータを取り出すステップとを備えてなる構成にする。
【００３４】
また、前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順とする。
【００３５】
もしくは、前記処理情報に付加される情報は、前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの処理優先順位とする。
【００３６】
もしくは、前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻、及び前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順と、これよりも優先処理される前記トランザクションデータの処理優先順位とする。
【００３７】
また、前記処理情報に付加される情報は、前記トランザクションデータによる更新が実施される前記データベースの本番処理、又はトレーニング処理を選択する種別情報とし、前記優先処理手段は、同種別情報に対応して前記データベースを更新してなる構成にする。
【００３８】
また、店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるオンラインシステムにおいて、
前記本部サーバシステム内に、前記キュー処理手段を備えた複数の振分サーバと、請求項１乃至請求項４のいずれかに記載の前記トランザクション処理方法を用いて前記トランザクションデータを前記振分サーバから取り出す前記優先処理手段を備え、前記振分サーバから取り出した前記トランザクションデータで前記データベースを更新する処理サーバとを設ける。
【発明の効果】
【００３９】
以上の手段を用いることにより、本発明によるトランザクション処理方法によれば、
請求項１に係わる発明は、キュー処理手段を複数設けることにより、トランザクションデータの処理能力を向上させることができる。また、キュー処理手段自体は簡単な構成（安価なサーバなど）で実現できるため、システム全体の価格を低減させることができる。
【００４０】
また、優先処理テーブルを用いて、優先処理手段で複数のキュー処理手段からのトランザクションデータの取り出しを総合的に制御できるため、複数のキュー処理手段を１つのキュー処理手段と同様に容易に制御できる。
【００４１】
請求項２に係わる発明は、処理情報に、トランザクションデータの発生日と発生時刻とが含まれているため、優先処理テーブル内のトランザクションデータの順番を、発生日と発生時刻によって時系列順に管理することが容易にできる。このため、商品の購入と返品、発注と仕入など、時系列処理が必須な業務を確実に実施できる。
【００４２】
請求項３に係わる発明は、処理情報に、トランザクションデータの処理優先順位が含まれているため、必要なトランザクションデータに関しては、時間的に優先して処理することができる。このため、急ぎの発注や仕入などを迅速に行なうことができる。
【００４３】
請求項４に係わる発明は、処理情報に、トランザクションデータの発生日と発生時刻、及びトランザクションデータの処理優先順位とが含まれているため、優先処理テーブル内のトランザクションデータの順番を、処理優先順で、かつ、発生日と発生時刻での時系列順に管理することが容易にできる。このため、急ぎの発注や仕入などを迅速に行ない、かつ、時系列処理が必須な業務を確実に実施できる。
【００４４】
請求項５に係わる発明は、処理情報に、前記トランザクションデータによる更新データベースの本番処理、又はトレーニング処理を選択する種別情報が含まれているため、データベース更新直前でトランザクションデータを本番処理、又はトレーニング処理に区別できるので、データベース更新直前まで本番データとトレーニングデータとを同じプログラムで処理することが可能になり、プログラム作成やデバックを容易に行なう事ができ、システム作成とテストの工数を削減することができる。
【００４５】
また、本発明によるトランザクション処理方法を備えたオンラインシステムによれば、
請求項６に係わる発明は、請求項１〜請求項４に記載のトランザクション処理方法を用いてオンラインシステムを構成することにより、高価なメインフレームを用いないで安価なサーバを複数台使用し、また、メインフレーム専用プログラムなどを用いることなく、サーバ用の市販パッケージソフトを用いてシステムを安価に構成することができる。
【発明を実施するための最良の形態】
【００４６】
以下、本発明の実施の形態を、添付図面に基づいた実施例として詳細に説明する。なお、背景技術で説明した構成については同じ番号を付与し、詳細な説明を省略する。
【００４７】
本発明の特徴は本部サーバシステムの負荷を低減させるため、複数の振分サーバを設けたことにある。
【００４８】
しかしながら、処理の分散化を図るために複数のサーバを用いる方法は一般的に行なわれており、本実施例でも分散化については詳細な説明を省略する。本発明での真の特徴は複数のサーバを用いた場合に発生するトランザクションデータ処理の時系列の乱れを無くすために、各振分サーバ内にキユーとして格納されているトランザクションデータのファイルを１個所で集中管理することにある。
【００４９】
また、トレーニングの対象となるトランザクションデータも本番と同じ処理経路で処理し、最後のデータベース更新時のみトレーニング用のファイルをアクセスする構成にし、本番用のプログラムをトレーニングの処理でも流用して用いていることも特徴である。
【実施例１】
【００５０】
図１は本発明によるオンラインシステムの構成図である。このシステムは、Ａ，Ｂ，Ｃの３つの店舗サーバシステム６１と、本部サーバシステム２とが、インターネットや専用回線からなるネットワーク６３を介して接続されている。店舗側のサーバシステム６１は背景技術の図８で説明しているため、ここでの詳細な説明を省略する。このシステム内部は図示しないが、パソコンに専用の業務プログラムをインストールした２台の店舗業務端末と、商品の会計を管理する２台のＰＯＳ端末と、これらを通信回線で接続すると共に、コンソールを接続した店舗サーバと、店舗サーバに接続された店舗データベース（ハードディスク）とで構成されている。
【００５１】
また、本部サーバシステム２は、パソコンに専用の業務プログラムをインストールした１台の本部業務端末７０と、これを通信回線で接続すると共に、コンソールを接続した処理サーバ４と、処理サーバ４に接続されたハードディスクからなる、トレーニング用データベース６と本番用のデータベース７３とファイルとして格納された優先処理テーブルデータ５と、ネットワーク６３と処理サーバ４との間に通信回線で並列に接続された４台の振分サーバ３とで構成されている。
【００５２】
なお、本部サーバシステム２内の各サーバや端末を結ぶ通信回線は例えばＬＡＮを用いており、図示しないルータを介してネットワーク６３と接続されている。また、図１において、ネットワーク６３と振分サーバ３、及び振分サーバ３と処理サーバ４とは別の通信回線として記載しているが、これは通信回線内のデータ量を分散させるためであり、トラフィック量が十分に確保できれば各サーバと１カ所で接続されるように構成してもよい。
【００５３】
次にトランザクションデータの流れについて簡単に説明する。Ａ〜Ｂ店舗で発生したトランザクションデータは、ネットワーク６３を介して本部サーバシステム２へ配信される。各トランザクションデータには、宛先がＩＰアドレスとして付加されており、Ａ店舗サーバシステムからのトランザクションデータは、Ａ店舗用の振分サーバ３を指定するＩＰアドレスが、また、Ｂ店舗サーバシステム、Ｃ店舗サーバシステムも、それぞれ対応する店舗用の振分サーバ３を指定するＩＰアドレスが付加されている。なお、トランザクションデータは１つのファイルで構成され、そのファイル名は、そのデータの処理情報で構成されている。
【００５４】
従って、ネットワーク６３を介して本部サーバシステム２へ配信されるトランザクションデータは、それぞれの店舗用の振分サーバ３へキューとして格納され、さらに、振分サーバ３内部で業務毎、例えば売掛や仕入、発注毎のキューとして振り分けられる。この各振分サーバ３内部の業務毎のキューの状態、すなわち、格納されているデータのファイル名（トランザクションデータの種類や発生日、発生時刻、処理内容などの処理情報）は処理サーバ４を介して優先処理テーブルデータ５にリアルタイムで記憶されている。
【００５５】
そして、処理サーバ４はこの優先処理テーブルデータ５を参照して各振分サーバ３の状態（格納されているトランザクションデータの処理情報）を把握しており、各振分サーバ３内のトランザクションデータの時系列を守って順に各振分サーバ３内からトランザクションデータを取り出し、各業務に対応した処理を行なって本番用データベース７３へアクセスを行なう。なお、取り出したトランザクションデータがトレーニングでのデータであれば、各業務に対応した処理を行なってトレーニング用データベース６へアクセスを行なう。
【００５６】
次に図３と図２とを用いて本部サーバシステム内の処理について詳細な説明を行なう。図３は本部サーバシステムにおける各機器の機能を実現する手段を表すブロック図である。また、図２は振分サーバ３内のキュー処理手段をさらに詳細に説明するブロック図である。
【００５７】
図３に示すように振分サーバ３は、ネットワーク６３からトランザクションデータを受信する受信手段９０と、ネットワーク６３へトランザクションデータを送信する転送手段９３と、これらと接続されるキュー処理手段８と、ＬＡＮ回線で処理サーバ４と通信するための通信手段９とで構成されている。
【００５８】
図２に示すように、このキュー処理手段８は、受信手段９０から受け取った特定の店舗から送られたトランザクションデータをキューとして格納するキュー格納手段８ａと、このキュー格納手段８ａから順に取り出したトランザクションデータを本部用のデータと店舗サーバ用のデータとに振り分けると共に、本部用のデータを業務毎のトランザクションデータに振り分ける振分手段８ｂと、振り分けた業務毎のトランザクションデータをキューとして格納するキュー格納手段８ｃと、業務毎のキュー格納手段８ｃの内部のトランザクションデータを管理するキュー管理手段８ｄとで構成されている。
【００５９】
キュー格納手段８ａは例えば単純なリングバッファであり、特定の店舗、例えば振分サーバ３がＡ店舗用であれば、Ａ店舗から順次送信される売掛、仕入、発注などのトランザクションデータが順に格納されている。振分手段８ｂでは、このキュー格納手段８ａから店舗サーバ用のデータ、例えば他店への振替データなどを取り出し、このデータのコピーを該当する店舗へ転送手段９３を介して送信する。なお、転送前のオリジナルのデータは後述するように、本部データベースで他店への振替記録として記録するため、キュー格納手段８ｃへ送られる。
【００６０】
振分手段８ｂでは、前述したオリジナルのデータも含め、キュー格納手段８ａから取り出したトランザクションデータを売掛、仕入、発注などの業務毎のデータに分類し、時系列を守りながら売掛用、仕入用、発注用の各キュー格納手段８ｃへ振り分けて転送する。
【００６１】
なお、キュー格納手段８ａとキュー格納手段８ｃとは、振分サーバ３内でフォルダとして管理されており、１つのトランザクションデータは１つのファイルとして格納されている。また、前述のように各トランザクションデータの振り分けには、該当するデータのファイル名、つまり、処理情報内の『業務名』が参照される。
【００６２】
ここでトランザクションデータのファイル名について説明する。１つのトランザクションは１つのデータの塊、例えば１件の発注伝票や仕入伝票、１枚の売上レシートに記載されている品名や金額、数量、伝票番号などである。そしてこのトランザクションデータのファイル名には、このトランザクションデータが発行された時の処理情報が、英数記号の文字として盛り込まれている。
【００６３】
例えば、以下のようにファイル名（処理情報）が構成されている。
データ発生日（数字６桁）−データ発生時刻（数字６桁）−データ発生元店舗名−データ発生元端末名−業務名−伝票Ｎｏ．−最終転送先店舗名−優先順位−種別．拡張子
従って各手段（サーバや端末でのプログラムで実現される機能）は、このトランザクションデータのファイル名を参照することで、データ内部を見なくても転送や振り分けを実施することができる。なお、実際にはこれ以外の情報も盛り込まれているが、実施例の説明には不要のため、記載と説明を省略する。
【００６４】
このようにトランザクションデータのファイル名が構成されているので、キュー管理手段８ｄは、業務毎のフォルダ内のファイル名を確認し、データの種別や発生時刻、宛先や業務名からなる格納ファイル一覧表を作成すると共に、フォルダ内のデータを常に更新している。そして、キュー管理手段８ｄは、この格納ファイル一覧表を処理サーバ４へ送信している。処理サーバ４では、各振分サーバ３の格納ファイル一覧表が集まってくるため、これらの一覧表を統合して優先処理テーブルデータを作成し、これに基づいて各振分サーバ３から出力されるデータを指示することで、各振分サーバ３全体の統合的なデータ管理を行なうことができる。
【００６５】
このため、キュー管理手段８ｄは、処理サーバ４からの指示を通信手段９を経由して受信し、指示されたトランザクションデータを各キュー格納手段８ｃから処理サーバ４へ転送させる構成になっている。
【００６６】
次に図３を用いて処理サーバ４の機能について説明する。
【００６７】
処理サーバ４は、各振分サーバ３とＬＡＮを介して通信可能な通信手段９と、優先処理テーブルデータ５に基づいて、各振分サーバ３から処理サーバ４へ転送させるトランザクションデータを指定する優先処理手段７と、転送されたトランザクションデータに従って本部データベースを更新するデータベース管理手段９２と、処理サーバ４全体の制御を統括する業務処理手段９５とで構成されている。
【００６８】
データベース管理手段９２は、本番用のデータベース７３と、トレーニング用データベース６に対してデータの読み書きの制御を行なう。つまり、優先処理手段７や図示しない他の手段からの複数の要求に対し、排他的な処理を行なうようになっている。また、業務処理手段９５は、処理サーバの電源投入や切断、バックアップ処理など、総合的な業務を行なっており、優先処理手段７もこの業務処理手段９５の指示によって起動／停止される。
【００６９】
優先処理手段７は３つの機能を有している。第一の機能は各振分サーバ３の格納ファイル一覧表を受信し、統合して優先処理テーブルデータ５を作成することであり、第二の機能はこの優先処理テーブルデータ５の内容を確認し、各振分サーバ３間のトランザクションデータの処理に関する時系列を守るように、かつ、各振分サーバ３から出力されるトランザクションデータの処理タイミングに関する優先順位を指示することである。第三の機能はトランザクションがトレーニング用のデータであった場合、トレーニング専用のデータベースへアクセスするようにデータベース管理手段９２に対して指示することである。
【００７０】
これらの処理について図４を用いて詳細に説明する。図４はキュー格納手段８ｃに格納されたファイルの順番を示す表であり、横方向が１つのトランザクションのファイル名を示している。なお、前述のようにファイル名は多数の状態を表す記号で構成されているが、説明を簡略化するため、データ発生日やデータ発生元端末名、伝票Ｎｏ．、最終転送先店舗名、拡張子などの記載を省略している。
【００７１】
図４の項目名において、『順』は時系列の順番を、『時刻』はデータの発生時刻（時分秒）を、『店』はデータの発生店舗を、『業務Ｎｏ．』はデータの業務名と同一店舗における連番を、『優』はデータの優先順位を、『種』はデータの種別をそれぞれ表している。そして、図４（Ａ）は優先処理テーブルデータを、図４（Ｂ）は店舗Ａにおける売掛、発注、仕入と対応するキュー格納手段の内容を示している。同様に図４（Ｃ）、図４（Ｄ）は店舗Ｂ、店舗Ｃのキュー格納手段の内容をそれぞれ示している。
【００７２】
なお、優先順位は０〜９の値であり、０が最も優先度が高くなっている。また、データの種別はＨが本番用のデータを、Ｔがトレーニング用のデータであることをそれぞれ示している。また、図４において、本部用のキューについては説明の都合上記載しないが、構造とデータの動きは店舗用と同じである。
【００７３】
図４（Ａ）は、図４（Ｂ）〜図４（Ｄ）に示す各店舗用の振分サーバから処理サーバが受信したキュー格納手段でのトランザクションデータの格納状況を総合的に１つのテーブルにまとめたものである。これは、優先処理テーブルデータ５として記憶装置、例えばハードディスクに格納されている。
【００７４】
優先処理手段７は、第一の機能を実現するため、各振分サーバ３のキュー管理手段８ｄから、各振分サーバ３のキュー格納手段８ｃ内のデータが変化、例えばトランザクションデータが追加されてデータ数が増えたり、処理されてデータ数が減少したりした場合に、この情報を受信し、受信した情報に基づいて優先処理テーブルデータ５を最新の状態に更新する。このとき、トランザクションデータのファイル名に記載された日付（図示せず）や時刻を基にしてデータの順番を並べ変える。（時系列の確保）
この結果、製品を売上た後の返品や、店舗間の製品振替など、時系列に従った処理を行なわねばならない業務でも、また、複数の振分サーバ３間で分かれて存在する複数の関連トランザクションデータであっても正しい処理を行なうことができる。
【００７５】
また、優先処理手段７は、第二の機能を実現するため、優先処理テーブルデータ５を検索し、処理の優先度が高いトランザクションのファイル名を抽出し、抽出されたデータが実際に存在するキュー格納手段８ｃを管轄するキュー管理手段８ｄに対して、該当するキュー格納手段８ｃから優先的に優先処理手段７へ出力するように指示する。（優先処理）
この結果、製品の返品や納入された製品の在庫への繰入など、急いで処理すべきデータを他のトランザクションデータよりも優先して迅速に処理することができる。
【００７６】
例えば図４（Ａ）において、順６と順１１が優先度０となっており、最初に処理されるべきデータである。なお、同じ優先順位の場合は時刻が若いものから優先される。この結果、1)番目が順６、2)番目が順１１の順に処理される。同様に優の数字の若い順に3)〜5)の順番となる。この優先順位の数値は、該当するトランザクションデータが発生する端末機器における操作員の指示や、端末機器のプログラムにより、自動的にトランザクションデータへ付加される。
【００７７】
さらに、優先処理手段７は、第三の機能を実現するため、実際にデータベース管理手段９２を介して本部データベースを更新する場合、データベース管理手段９２に対して、トランザクションのファイル名の種別を判別して、本番用データベース７３の更新か、トレーニング用データベース６の更新かを指示する。（トレーニング機能）
この種別は、該当するトランザクションデータが発生する端末機器における操作員の指示により、自動的にトランザクションデータへ付加される。
【００７８】
この結果、トレーニング用のトランザクションデータは、トランザクションの発生からデータベース管理手段９２が本部データベースを更新する直前まで、本番と同じルートで、かつ、同じ処理を受けることになり、トレーニング用データベース６のデータ以外は本番と同じとなり、本番と同じ機能、レスポンス、操作手順を経験することができる。さらに、本番の運用中に、任意にトレーニングを行なうことができ、また、これらのデータが混在して本番用のデータに影響を与えることがない。
【００７９】
これはトレーニングと本番とで同じプログラムを使用できることを意味しており、トレーニングモードを備えたシステムの構築を容易にし、結果的にシステムの作成費用を低減させることができる。さらに、システムに新しい機能が追加された時に行なうデバックやテストを本番の運用中にトレーニングとしてテストできるので、テスト期間中であっても本番業務に支障を与えることがない。
【００８０】
次に図５を用いてキュー管理手段を、また、図６を用いて優先処理手段の処理手順をそれぞれのフローチャートで説明する。なお、振分手段については、振り分けプログラムの処理として図９で説明しており、また、キュー格納手段については一般的なリングバッファであるため、説明を省略する。また、各手段はそれそれのサーバに備えられた制御部で動作するプログラムで実現されている。
【００８１】
図５と図６とにおいて、ＳＴはステップを表し、これに続く数字はステップ番号を示す。また、ＹはＹｅｓを、ＮはＮｏをそれぞれ表している。
【００８２】
図５においてキュー管理手段は、優先処理手段からのデータ取り出し要求が有るか確認する（ＳＴ１）。データ取り出し要求が有る場合は（ＳＴ１−Ｙ）、要求された、つまり、優先処理手段から送信されたファイル名のデータを調べ、該当する業務のキュー格納手段から該当するデータを取り出し、このデータを優先処理手段へ送信する（ＳＴ５）。そして、ＳＴ１へジャンプする。
【００８３】
通常、キュー格納手段から出たデータを取り出す場合は、先入れ先出しとなるが、キュー管理手段はキューの内容を把握しているため、任意のデータを任意の位置から取り出すことができる。なお、取り出したデータが格納されていたキューの格納エリアは、既存のデータが順次繰り上げて格納される。
【００８４】
一方、データ取り出し要求がない場合は（ＳＴ１−Ｎ）、振分手段からのデータが有るか確認する（ＳＴ２）。振分手段からのデータがない場合は（ＳＴ２−Ｎ）。ＳＴ１へジャンプする。振分手段からのデータが有る場合は（ＳＴ２−Ｙ）、このデータを受け取って対応する業務毎のキューへ格納する（ＳＴ３）。そして、格納したデータのファイル名を優先処理手段へ送信し（ＳＴ４）、ＳＴ１へジャンプする。
【００８５】
次に、図６において優先処理手段は、キュー管理手段を介して送信されたキュー格納手段からのトランザクションデータを受信したか確認する（ＳＴ１０）。トランザクションデータを受信した場合（ＳＴ１０−Ｙ）、該当データのファイル名を調べ、種別の本番／トレーニングに対応して本部データベースを選択して更新するようにデータベース管理手段に指示すると共に、このトランザクションデータをデータベース管理手段に引き渡す（ＳＴ１６）。
【００８６】
このように、優先処理手段がデータベース管理手段にトランザクションデータのファイルを引き渡すまでは、本番／トレーニングの両方のデータは同等に扱われ、本部データベースを更新する直前に分離されて処理される。
【００８７】
そしてＳＴ１６を実施した後に、優先処理テーブルにおいて、データベース管理手段に引き渡したデータのファイル名を削除する（ＳＴ１７）。そして、ＳＴ１０へジャンプする。
【００８８】
一方、キュー格納手段からのトランザクションデータの受信がない場合（ＳＴ１０−Ｎ）、キュー管理手段から追加データ（トランザクションデータ）のファイル名を受信したか確認する（ＳＴ１１）。追加データのファイル名を受信した場合（ＳＴ１１−Ｙ）、優先処理テーブルへ、該当データの処理情報（ファイル名）に記載された時刻の順に従ってファイル名を追加する（ＳＴ１８）。そして、ＳＴ１０へジャンプする。
【００８９】
一方、追加データのファイル名を受信していない場合（ＳＴ１１−Ｎ）、優先処理テーブル内にファイル名のデータが存在するか確認する（ＳＴ１２）。ファイル名のデータが存在しない場合（ＳＴ１２−Ｎ）、処理するデータが無いのでＳＴ１０へジャンプする。
【００９０】
優先処理テーブル内にファイル名のデータが存在する場合（ＳＴ１２−Ｙ）、優先処理テーブル内に存在するデータの優先番号を検索し（ＳＴ１３）、最も優先度が高いファイル名を抽出する（ＳＴ１３）。そして、抽出したファイル名を時刻順に、対応するキュー管理手段へ送信し、該当するトランザクションデータのキュー格納手段からの送出を要求する（ＳＴ１５）。そして、ＳＴ１０へジャンプする。
【００９１】
以上の処理を繰り返すことにより、各キュー処理手段が複数存在していても、トランザクションデータを一元的に管理し、優先度の高いデータから順に処理することができる。この結果、キュー処理手段を安価なサーバで実現でき、システム全体のコストを低減できる。
【００９２】
なお、図６には記載していないが、優先処理手段に各振分サーバの負荷を平均化させる機能を追加してもよい。例えば、優先処理手段７が優先処理テーブルデータを検索し、店舗毎のトランザクションの数を算出する。そして、各振分サーバのトランザクションの数を比較して数の多い、つまり、処理すべきトランザクションが溜まっている振分けサーバに対して、この振分サーバからトランザクションを取り出して本部データベースを更新する割り当て時間を多くする。（負荷の均等化）
この結果、どの振分サーバでもキューに格納されて処理待ちとなっているトランザクションの数がほぼ等しくなり、特定の振分サーバ３に負荷が偏ることがない。
【００９３】
例えば図４（Ａ）において、Ａ店舗データ件数は９件、Ｂ店舗データ件数は３件、Ｃ店舗データ件数は３件であるため、この件数比率で処理時間を割り当てる。例えば処理サーバ４でトランザクションデータ処理時間に対して割り当てることができる全体時間を１００％とした場合、Ａ店舗用振分サーバ３には６０％、Ｂ店舗用振分サーバ３には２０％、Ｃ店舗用振分サーバ３には２０％の時間を割り当てるように制御する。
【００９４】
以上の本実施例では本部サーバシステム内に振分サーバや処理サーバを配置しているが、これに限るものでなく、全体のシステム内に配置され、ネットワークで接続されていればどこに配置されていてもよい。なお、各手段についても特定のサーバに含まれていなくとも相互に通信可能であれば、システム内のどこに配置されていてもよい。
【００９５】
また、この実施例では説明を簡単にするため、優先処理手段やキュー管理手段をシーケンシャルな手順として説明しているが、これに限るものでなく、マルチタスクを用いて実現してもよい。例えば、優先処理手段を、優先処理テーブルを常に最新の状態に保つタスクと、優先処理テーブルを常に監視し、テーブル内の各優先番号毎のデータをピックアップして処理を行なうタスクと、優先処理テーブルを常に監視し、テーブル内の種別がトレーニングであるデータだけをピックアップして処理を行なうタスクなどに分割して、それぞれのタスクに優先度を持たせて並列処理するような方法にしてもよい。
【図面の簡単な説明】
【００９６】
【図１】本発明によるトランザクション処理方法を用いたオンラインシステムの実施例を示すシステム図である。
【図２】キュー処理手段の概要を示すブロック図である。
【図３】本発明によるトランザクション処理方法を用いた、本部サーバシステムにおける各機器内に備えられた手段を説明するブロック図である。
【図４】図４はキュー格納手段に格納されたファイルの順番を示す表であり、（Ａ）は優先処理テーブルデータの内容を、（Ｂ）は店舗Ａのキューの状態を、（Ｃ）は店舗Ｂのキューの状態を、（Ｄ）は店舗Ｃのキューの状態をそれぞれ表している。
【図５】キュー管理手段の処理手順を説明するフローチャートである。
【図６】優先処理手段の処理手順を説明するフローチャートである。
【図７】従来のトランザクション処理方法を用いたオンラインシステムを示すブロック図である。
【図８】従来のトランザクション処理方法を用いたオンラインシステムにおける各手段を説明するブロック図である。
【図９】従来のトランザクション処理方法における振り分けプログラムの処理内容を説明する説明図である。
【符号の説明】
【００９７】
２  本部サーバシステム
３  振分サーバ
４  処理サーバ
５  優先処理テーブルデータ
６  トレーニング用データベース
７  優先処理手段
８  キュー処理手段
８ａ  キュー格納手段
８ｂ  振分手段
８ｃ  キュー格納手段
８ｄ  キュー管理手段
９  通信手段
６１  店舗サーバシステム
６２  本部サーバシステム
６３  ネットワーク
７０  本部業務端末
７３  データベース
７３  本番用データベース
９０  受信手段
９２  データベース管理手段
９３  転送手段
９５  業務処理手段
【図１】
2008071004.tif 000003
【図２】
2008071004.tif 000004
【図３】
2008071004.tif 000005
【図４】
2008071004.tif 000006
【図５】
2008071004.tif 000007
【図６】
2008071004.tif 000008
【図７】
2008071004.tif 000009
【図８】
2008071004.tif 000010
【図９】
2008071004.tif 000011