JP2008071004A - トランザクション処理方法、及びそれを用いたオンラインシステム - Google Patents

トランザクション処理方法、及びそれを用いたオンラインシステム Download PDF

Info

Publication number
JP2008071004A
JP2008071004A JP2006247541A JP2006247541A JP2008071004A JP 2008071004 A JP2008071004 A JP 2008071004A JP 2006247541 A JP2006247541 A JP 2006247541A JP 2006247541 A JP2006247541 A JP 2006247541A JP 2008071004 A JP2008071004 A JP 2008071004A
Authority
JP
Japan
Prior art keywords
processing
transaction data
data
transaction
priority
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
JP2006247541A
Other languages
English (en)
Inventor
Kazutaka Yoshimine
和高 吉嶺
Tsutomu Izawa
力 井澤
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.)
Fujitsu General Ltd
Original Assignee
Fujitsu General 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 Fujitsu General Ltd filed Critical Fujitsu General Ltd
Priority to JP2006247541A priority Critical patent/JP2008071004A/ja
Publication of JP2008071004A publication Critical patent/JP2008071004A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】オンラインシステムにおいて、大量のトランザクションデータを処理することができるトランザクション処理方法、及びその方法を搭載したオンラインシステムと、このシステムに搭載されるトレーニングモードとを安価に実現する。
【解決手段】本部サーバシステム内に、トランザクションデータの順番を管理して格納する複数のキュー処理手段と、キュー処理手段の管理データにより、トランザクションデータのデータベースに対する更新の処理順位を制御する優先処理手段とを設け、優先処理手段は、キュー管理手段から管理データを入手するステップと、入手した管理データを統合した優先処理テーブルを形成するステップと、優先処理テーブルの処理情報を検索し、所定の条件により決定されたトランザクションデータの取出順番を決定するステップと、キュー格納手段からトランザクションデータを取り出すステップとを備える構成にする。
【選択図】図3

Description

本発明は、オンラインシステムのトランザクション処理方法に関し、より詳細には、データ入力端末から入力されたデータをトランザクションデータに変換し、このトランザクションデータによりデータベースを更新するまでのトランザクション処理を複数のサーバで分散処理にした場合、複数のサーバ間でトランザクションデータ処理の同期方法に関する。
従来、トランザクションを処理するオンラインシステムは、例えば図7に示す構成となっている。このシステムは、入力されたデータを内蔵された業務プログラムにより処理してトランザクションデータに変換し、通信回線によりトランザクションデータを送信する業務端末と、トランザクションデータを受信すると共に、対応するデータベースを更新するサーバプログラムを備えたサーバとで構成された複数のサーバシステムがネットワークで接続されている。
具体的には、店舗サーバシステム61と本部サーバシステム62とが、インターネットや専用回線からなるネットワーク63を介して接続されており、店舗サーバシステム61は、パソコンに専用の業務プログラムをインストールした2台の店舗業務端末64と、商品の会計を管理する2台のPOS端末65と、これらを通信回線で接続すると共に、コンソールを接続した店舗サーバ67と、店舗サーバ67に接続された店舗データベース68(ハードディスク)とで構成されている。
また、本部サーバシステム62は、パソコンに専用の業務プログラムをインストールした1台の本部業務端末70と、これを通信回線で接続すると共に、コンソールを接続した本部サーバ72と、本部サーバ72に接続された本部データベース73(ハードディスク)とで構成されている。
次に図8のシステム構成図を用いて、このシステムを各機能(手段)の連携として説明する。なお、各手段は各手段が配置されるサーバのプログラムで実現されている。
店舗業務端末64には業務アプリ(プログラム)からなる業務処理手段80が備えられており、発注や、返品、在庫、売上管理などの業務をこの端末から行なうことができる。さらに、店舗業務端末64には、業務処理手段80の他にFTPマネージャからなるトランザクションデータ送信手段81が備えられており、業務処理手段80が作成したトランザクションデータを1つのファイルとして、店舗サーバ67のトランザクション振り分けプログラムからなる振分手段83へ送信する機能を備えている。
また、POS端末65には、POSアプリ(プログラム)からなる業務処理手段82が備えられており、商品単価のプライスルックアップと会計処理、売上集計業務をこのPOS端末65から行なうことができる。さらに、POS端末65には業務処理手段82の他にFTPマネージャからなるトランザクションデータ送信手段81が備えられており、業務処理手段82が作成したトランザクションデータを1つのファイルとして、店舗サーバ67の振分手段83へ送信する機能を備えている。
一方、店舗サーバ67には、コンソール(図示せず)からの入力を受け付け、結果をコンソールへ表示する店舗サーバ業務アプリからなる業務処理手段84が備えられており、店舗業務端末64の業務処理手段80と同じ処理を行なうことができる。
また、店舗サーバ67には各トランザクションデータ送信手段81から送信されるトランザクションデータを受信し、その中に記載されている宛先へ振り分けるトランザクション振り分けプログラムからなる振分手段83と、店舗データベース68を管理するデータベース管理手段85と、ネットワーク63へ振り分けられたトランザクションデータを転送するFTPマネージャからなる転送手段86と、ネットワーク63を介して転送されたトランザクションデータを受信し、振分手段83へ転送するFTPサーバからなる受信手段94とが備えられている。
振分手段83が受信した各トランザクションデータは、宛先により同じ店舗サーバ内の店舗データベース68を更新するものと、ネットワーク63を介して他のサーバシステム、例えば本部サーバシステム62の本部データベース73を更新するものとに振り分けられる。この時、複数の宛先があるものは、振分手段83内に備えられた複製手段83aにより、その数だけトランザクションデータが複製されて振り分けられる。
そして、店舗サーバ67の店舗データベース68を更新するトランザクションデータは、データベース管理手段85で処理され、この処理結果によって店舗データベース68が更新される。一方、ネットワーク63を介して他のサーバシステムのデータベースを更新するためのトランザクションデータは、転送手段86を介してネットワーク63を経由し、例えば本部サーバの受信手段90で受信され、振分手段91で振り分けられた後、データベース管理手段92で処理され、この結果、本部データベース73が更新される。
このように、各業務処理手段は、トランザクションデータ送信手段を介して店舗サーバの店舗データベースだけでなく、ネットワークを介して本部側のサーバシステムの本部データベースへアクセスすることができる。本部側のサーバシステムの動作は、店舗側のサーバシステムと同じ動作を行なうため、詳細な説明を省略する。主な違いは本部側で必要な業務アプリケーションに基づくトランザクションデータの処理であり、具体的には各店舗売上の合計集計処理や発注データの集計、総合在庫管理など、各店舗に関するデータの集計処理である。
次にトランザクション振分手段83の処理について図9を用いて説明する。
この振分手段83を実現するトランザクション振り分けプログラムは、トランザクションデータをデータのフォルダに格納して管理している。このため、受信したトランザクションデータを格納する入力ホルダと、トランザクションデータを振り分けた後、他のサーバへ送信されるトランザクションデータを格納する出力ホルダ(FTP用)と、トランザクションデータを振り分けた後、同一サーバ内のデータベースを更新するためのトランザクションデータを格納する出力ホルダ(データベース用)とが店舗サーバ67の記憶装置(図示せず)に設けられている。
トランザクション振り分けプログラムの動作によって入力ホルダには、ネットワーク63を介して受信手段(FTPサーバ)94より、また、店舗端末のトランザクションデータ送信手段(FTPマネージャ)81、店舗サーバの業務処理手段84、POS端末65のトランザクションデータ送信手段(FTPマネージャ)81よりそれぞれ送信されたトランザクションデータが順に格納される。
同時にこのトランザクション振り分けプログラムは、入力ホルダよりトランザクションデータを1つづつ取り出して、このデータの宛先を確認する。そして、宛先が複数の場合はその数だけトランザクションデータを複製し、宛先が同じ店舗内のデータベースであれば、トランザクションデータを出力ホルダ(データベース用)に格納し、宛先が他のサーバであればトランザクションデータを出力ホルダ(FTP用)に格納する。
また同時に、出力ホルダ(FTP用)と出力ホルダ(データベース用)とをそれぞれ調べ、トランザクションデータが存在すれば1つずつ取り出す。
そして、出力ホルダ(FTP用)から取り出されたトランザクションデータは、店舗サーバの転送手段86(FTPマネージャ)の動作によりネットワーク63を介して該当するサーバへ送信される。
また、出力ホルダ(データベース用)から取り出されたトランザクションデータは、店舗サーバ内のデータベース管理手段85の動作により、店舗データベース68を更新する。
図9の例では入力ホルダに仕入データ(宛先:本部)、在庫データ(宛先:本部)、POS端末日計売上データ(宛先:自店舗)、返品データ(宛先:本部)、他店舗振替データ(宛先:自店舗、他店舗)の各トランザクションデータが入っている。
この中で仕入データ、在庫データ、返品データは本部で処理されるため、各データの宛先に従って出力ホルダ(FTP用)へ移動される。また、POS端末日計売上データは店舗データベースのみ更新すればよいため、データの宛先に従って出力ホルダ(データベース用)へ移動される。
さらに、他店舗振替データは他店舗のデータベースと自店舗のデータベースを更新するため、宛先が2カ所記載されている。従ってこのデータをもう1つ複製し、このデータの宛先に従って出力ホルダ(FTP用)と出力ホルダ(データベース用)とへ移動される。
なお、図9は説明のための図であり、実際には入力ホルダのデータが処理されれば該当データは存在しなくなる。従ってこのデータは点線で囲って表現されている。また、入力ホルダや出力ホルダは、各トランザクションデータの時系列を保持するため、キュー構造として管理されており、各トランザクションデータの発生時刻順に、データが先入れ先出しで処理されるようになっている(例えば、特許文献1参照。)。
このシステムでは本部サーバ72の1台のみでトランザクションの振分処理とデータベースへのアクセスとを管理しており、店舗の数が増えてトランザクションデータ処理のピークが発生した場合に、処理するトランザクションの数に限界が発生し、処理されないトランザクションが発生する可能性があり、小規模、または中規模程度のチェーン店にしか対応できない。このため、大規模なチェーン店で取り扱う大量のトランザクションを処理するため、本部サーバに高性能なサーバ、もしくは、メインフレームなどの大型汎用計算機を用いる必要があった。
ところで、このようなシステムを運用する場合に問題となるのが、従業員における各端末操作での不慣れである。各端末を操作する従業員は、初心者やベテランなどさまざまな人達が入り乱れて使用する。従って、このようなシステムには必ずトレーニングモードが備えられており、初心者の場合は、業務の合間を縫ってトレーニングモードで端末を操作することにより、端末の操作に慣れるようになっている。
なお、ここで言うトレーニングモードとは、操作自体は本番の処理と同じであるが、操作により入力したデータは本番の処理に影響を与えないように、自動的に破棄、または、トレーニング専用の記憶エリアに格納される仕組みを示す。
このようなトレーニングモードを実現したものとして、POS端末にトレーニングモードを設けた例がある。例えばPOS端末に備えられたモード切替ボタンの押下により、本番のモードからトレーニングモードへ移行し、それ以降に行なった売上操作のデータに関しては、POS端末内のトレーニング専用のメモリへ格納させるようになっている。再度、モード切替ボタンが押下されるとトレーニングモードから本番のモードへ移行することにより、本番のモードでの売上金額が影響されない仕組みになっている(例えば、特許文献2参照。)。
一方、このようなPOS端末に備えられたトレーニングモードでは、POS端末自体の訓練としては有効であるが、システム全体の訓練ができるものではない。つまり、図7の店舗業務端末や本部業務端末は実際にデータベースへのアクセスが主な業務であるが、実際にアクセスすると本番データを書き換えてしまう危険がある。
そこで、ネットワークを介して接続された訓練用サーバを設け、店舗業務端末や本部業務端末はトレーニングモード時にこの訓練用サーバに実際にアクセスする構成が開示されている。訓練用サーバには本番と同じプログラム群が用意されており、訓練用のデータベースやファイルに本番と同じ手順でアクセスするようになっている(例えば、特許文献3参照。)。
しかしながら、前述のように大規模なチェーン店で取り扱う大量のトランザクションを処理するため、本部サーバに高性能なサーバ、もしくは、メインフレームなどの大型汎用計算機を用いる方法では機器が高価になり、また、大型汎用計算機では、市販のパッケージソフトなどが使用できず、専用のプログラムを独自に開発する必要があり、システム全体の価格が非常に高価になるという問題があった。
また、高性能なサーバ、もしくは、大型汎用計算機をシステムに採用した場合、前述したように、システム全体のトレーニングモードを実現するするために訓練用の専用サーバも同時に高性能化する必要があり、更にシステムの価格が上昇してしまうという問題もあった。
特開2005−115675号公報(第9−10頁、図4) 特開平3−011496号公報(第4頁、図2) 特開2000−347997号公報(第4−5頁、図1)
本発明は以上述べた問題点を解決し、チェーン店などで使用される本部と複数の店舗とをオンラインで結んでトランザクションデータを処理するオンラインシステムにおいて、大量のトランザクションデータを処理することができるトランザクション処理方法、及びその方法を搭載したオンラインシステムと、このシステムに搭載されるトレーニングモードとを安価に実現することを目的とする。
本発明は上述の課題を解決するため、店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるトランザクション処理方法において、
前記本部サーバシステム内に、前記トランザクションデータを格納するキュー格納手段と同キュー格納手段に格納されている前記トランザクションデータの順番を管理するキュー管理手段とを備えた複数のキュー処理手段と、前記キュー管理手段の管理データにより、前記トランザクションデータの前記データベースに対する更新の処理順位を制御する優先処理手段とを設け、
前記優先処理手段は、複数の前記キュー管理手段から前記管理データを入手するステップと、入手した前記管理データを統合して前記トランザクションデータの前記処理情報を記載した優先処理テーブルを形成するステップと、前記優先処理テーブルの前記処理情報を検索し、所定の条件により決定された前記トランザクションデータの前記キュー格納手段からの取出順番を決定するステップと、決定された前記取出順番に従って前記キュー格納手段から前記トランザクションデータを取り出すステップとを備えてなる構成にする。
また、前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順とする。
もしくは、前記処理情報に付加される情報は、前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの処理優先順位とする。
もしくは、前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻、及び前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順と、これよりも優先処理される前記トランザクションデータの処理優先順位とする。
また、前記処理情報に付加される情報は、前記トランザクションデータによる更新が実施される前記データベースの本番処理、又はトレーニング処理を選択する種別情報とし、前記優先処理手段は、同種別情報に対応して前記データベースを更新してなる構成にする。
また、店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるオンラインシステムにおいて、
前記本部サーバシステム内に、前記キュー処理手段を備えた複数の振分サーバと、請求項1乃至請求項4のいずれかに記載の前記トランザクション処理方法を用いて前記トランザクションデータを前記振分サーバから取り出す前記優先処理手段を備え、前記振分サーバから取り出した前記トランザクションデータで前記データベースを更新する処理サーバとを設ける。
以上の手段を用いることにより、本発明によるトランザクション処理方法によれば、
請求項1に係わる発明は、キュー処理手段を複数設けることにより、トランザクションデータの処理能力を向上させることができる。また、キュー処理手段自体は簡単な構成(安価なサーバなど)で実現できるため、システム全体の価格を低減させることができる。
また、優先処理テーブルを用いて、優先処理手段で複数のキュー処理手段からのトランザクションデータの取り出しを総合的に制御できるため、複数のキュー処理手段を1つのキュー処理手段と同様に容易に制御できる。
請求項2に係わる発明は、処理情報に、トランザクションデータの発生日と発生時刻とが含まれているため、優先処理テーブル内のトランザクションデータの順番を、発生日と発生時刻によって時系列順に管理することが容易にできる。このため、商品の購入と返品、発注と仕入など、時系列処理が必須な業務を確実に実施できる。
請求項3に係わる発明は、処理情報に、トランザクションデータの処理優先順位が含まれているため、必要なトランザクションデータに関しては、時間的に優先して処理することができる。このため、急ぎの発注や仕入などを迅速に行なうことができる。
請求項4に係わる発明は、処理情報に、トランザクションデータの発生日と発生時刻、及びトランザクションデータの処理優先順位とが含まれているため、優先処理テーブル内のトランザクションデータの順番を、処理優先順で、かつ、発生日と発生時刻での時系列順に管理することが容易にできる。このため、急ぎの発注や仕入などを迅速に行ない、かつ、時系列処理が必須な業務を確実に実施できる。
請求項5に係わる発明は、処理情報に、前記トランザクションデータによる更新データベースの本番処理、又はトレーニング処理を選択する種別情報が含まれているため、データベース更新直前でトランザクションデータを本番処理、又はトレーニング処理に区別できるので、データベース更新直前まで本番データとトレーニングデータとを同じプログラムで処理することが可能になり、プログラム作成やデバックを容易に行なう事ができ、システム作成とテストの工数を削減することができる。
また、本発明によるトランザクション処理方法を備えたオンラインシステムによれば、
請求項6に係わる発明は、請求項1〜請求項4に記載のトランザクション処理方法を用いてオンラインシステムを構成することにより、高価なメインフレームを用いないで安価なサーバを複数台使用し、また、メインフレーム専用プログラムなどを用いることなく、サーバ用の市販パッケージソフトを用いてシステムを安価に構成することができる。
以下、本発明の実施の形態を、添付図面に基づいた実施例として詳細に説明する。なお、背景技術で説明した構成については同じ番号を付与し、詳細な説明を省略する。
本発明の特徴は本部サーバシステムの負荷を低減させるため、複数の振分サーバを設けたことにある。
しかしながら、処理の分散化を図るために複数のサーバを用いる方法は一般的に行なわれており、本実施例でも分散化については詳細な説明を省略する。本発明での真の特徴は複数のサーバを用いた場合に発生するトランザクションデータ処理の時系列の乱れを無くすために、各振分サーバ内にキユーとして格納されているトランザクションデータのファイルを1個所で集中管理することにある。
また、トレーニングの対象となるトランザクションデータも本番と同じ処理経路で処理し、最後のデータベース更新時のみトレーニング用のファイルをアクセスする構成にし、本番用のプログラムをトレーニングの処理でも流用して用いていることも特徴である。
図1は本発明によるオンラインシステムの構成図である。このシステムは、A,B,Cの3つの店舗サーバシステム61と、本部サーバシステム2とが、インターネットや専用回線からなるネットワーク63を介して接続されている。店舗側のサーバシステム61は背景技術の図8で説明しているため、ここでの詳細な説明を省略する。このシステム内部は図示しないが、パソコンに専用の業務プログラムをインストールした2台の店舗業務端末と、商品の会計を管理する2台のPOS端末と、これらを通信回線で接続すると共に、コンソールを接続した店舗サーバと、店舗サーバに接続された店舗データベース(ハードディスク)とで構成されている。
また、本部サーバシステム2は、パソコンに専用の業務プログラムをインストールした1台の本部業務端末70と、これを通信回線で接続すると共に、コンソールを接続した処理サーバ4と、処理サーバ4に接続されたハードディスクからなる、トレーニング用データベース6と本番用のデータベース73とファイルとして格納された優先処理テーブルデータ5と、ネットワーク63と処理サーバ4との間に通信回線で並列に接続された4台の振分サーバ3とで構成されている。
なお、本部サーバシステム2内の各サーバや端末を結ぶ通信回線は例えばLANを用いており、図示しないルータを介してネットワーク63と接続されている。また、図1において、ネットワーク63と振分サーバ3、及び振分サーバ3と処理サーバ4とは別の通信回線として記載しているが、これは通信回線内のデータ量を分散させるためであり、トラフィック量が十分に確保できれば各サーバと1カ所で接続されるように構成してもよい。
次にトランザクションデータの流れについて簡単に説明する。A〜B店舗で発生したトランザクションデータは、ネットワーク63を介して本部サーバシステム2へ配信される。各トランザクションデータには、宛先がIPアドレスとして付加されており、A店舗サーバシステムからのトランザクションデータは、A店舗用の振分サーバ3を指定するIPアドレスが、また、B店舗サーバシステム、C店舗サーバシステムも、それぞれ対応する店舗用の振分サーバ3を指定するIPアドレスが付加されている。なお、トランザクションデータは1つのファイルで構成され、そのファイル名は、そのデータの処理情報で構成されている。
従って、ネットワーク63を介して本部サーバシステム2へ配信されるトランザクションデータは、それぞれの店舗用の振分サーバ3へキューとして格納され、さらに、振分サーバ3内部で業務毎、例えば売掛や仕入、発注毎のキューとして振り分けられる。この各振分サーバ3内部の業務毎のキューの状態、すなわち、格納されているデータのファイル名(トランザクションデータの種類や発生日、発生時刻、処理内容などの処理情報)は処理サーバ4を介して優先処理テーブルデータ5にリアルタイムで記憶されている。
そして、処理サーバ4はこの優先処理テーブルデータ5を参照して各振分サーバ3の状態(格納されているトランザクションデータの処理情報)を把握しており、各振分サーバ3内のトランザクションデータの時系列を守って順に各振分サーバ3内からトランザクションデータを取り出し、各業務に対応した処理を行なって本番用データベース73へアクセスを行なう。なお、取り出したトランザクションデータがトレーニングでのデータであれば、各業務に対応した処理を行なってトレーニング用データベース6へアクセスを行なう。
次に図3と図2とを用いて本部サーバシステム内の処理について詳細な説明を行なう。図3は本部サーバシステムにおける各機器の機能を実現する手段を表すブロック図である。また、図2は振分サーバ3内のキュー処理手段をさらに詳細に説明するブロック図である。
図3に示すように振分サーバ3は、ネットワーク63からトランザクションデータを受信する受信手段90と、ネットワーク63へトランザクションデータを送信する転送手段93と、これらと接続されるキュー処理手段8と、LAN回線で処理サーバ4と通信するための通信手段9とで構成されている。
図2に示すように、このキュー処理手段8は、受信手段90から受け取った特定の店舗から送られたトランザクションデータをキューとして格納するキュー格納手段8aと、このキュー格納手段8aから順に取り出したトランザクションデータを本部用のデータと店舗サーバ用のデータとに振り分けると共に、本部用のデータを業務毎のトランザクションデータに振り分ける振分手段8bと、振り分けた業務毎のトランザクションデータをキューとして格納するキュー格納手段8cと、業務毎のキュー格納手段8cの内部のトランザクションデータを管理するキュー管理手段8dとで構成されている。
キュー格納手段8aは例えば単純なリングバッファであり、特定の店舗、例えば振分サーバ3がA店舗用であれば、A店舗から順次送信される売掛、仕入、発注などのトランザクションデータが順に格納されている。振分手段8bでは、このキュー格納手段8aから店舗サーバ用のデータ、例えば他店への振替データなどを取り出し、このデータのコピーを該当する店舗へ転送手段93を介して送信する。なお、転送前のオリジナルのデータは後述するように、本部データベースで他店への振替記録として記録するため、キュー格納手段8cへ送られる。
振分手段8bでは、前述したオリジナルのデータも含め、キュー格納手段8aから取り出したトランザクションデータを売掛、仕入、発注などの業務毎のデータに分類し、時系列を守りながら売掛用、仕入用、発注用の各キュー格納手段8cへ振り分けて転送する。
なお、キュー格納手段8aとキュー格納手段8cとは、振分サーバ3内でフォルダとして管理されており、1つのトランザクションデータは1つのファイルとして格納されている。また、前述のように各トランザクションデータの振り分けには、該当するデータのファイル名、つまり、処理情報内の『業務名』が参照される。
ここでトランザクションデータのファイル名について説明する。1つのトランザクションは1つのデータの塊、例えば1件の発注伝票や仕入伝票、1枚の売上レシートに記載されている品名や金額、数量、伝票番号などである。そしてこのトランザクションデータのファイル名には、このトランザクションデータが発行された時の処理情報が、英数記号の文字として盛り込まれている。
例えば、以下のようにファイル名(処理情報)が構成されている。
データ発生日(数字6桁)−データ発生時刻(数字6桁)−データ発生元店舗名−データ発生元端末名−業務名−伝票No.−最終転送先店舗名−優先順位−種別.拡張子
従って各手段(サーバや端末でのプログラムで実現される機能)は、このトランザクションデータのファイル名を参照することで、データ内部を見なくても転送や振り分けを実施することができる。なお、実際にはこれ以外の情報も盛り込まれているが、実施例の説明には不要のため、記載と説明を省略する。
このようにトランザクションデータのファイル名が構成されているので、キュー管理手段8dは、業務毎のフォルダ内のファイル名を確認し、データの種別や発生時刻、宛先や業務名からなる格納ファイル一覧表を作成すると共に、フォルダ内のデータを常に更新している。そして、キュー管理手段8dは、この格納ファイル一覧表を処理サーバ4へ送信している。処理サーバ4では、各振分サーバ3の格納ファイル一覧表が集まってくるため、これらの一覧表を統合して優先処理テーブルデータを作成し、これに基づいて各振分サーバ3から出力されるデータを指示することで、各振分サーバ3全体の統合的なデータ管理を行なうことができる。
このため、キュー管理手段8dは、処理サーバ4からの指示を通信手段9を経由して受信し、指示されたトランザクションデータを各キュー格納手段8cから処理サーバ4へ転送させる構成になっている。
次に図3を用いて処理サーバ4の機能について説明する。
処理サーバ4は、各振分サーバ3とLANを介して通信可能な通信手段9と、優先処理テーブルデータ5に基づいて、各振分サーバ3から処理サーバ4へ転送させるトランザクションデータを指定する優先処理手段7と、転送されたトランザクションデータに従って本部データベースを更新するデータベース管理手段92と、処理サーバ4全体の制御を統括する業務処理手段95とで構成されている。
データベース管理手段92は、本番用のデータベース73と、トレーニング用データベース6に対してデータの読み書きの制御を行なう。つまり、優先処理手段7や図示しない他の手段からの複数の要求に対し、排他的な処理を行なうようになっている。また、業務処理手段95は、処理サーバの電源投入や切断、バックアップ処理など、総合的な業務を行なっており、優先処理手段7もこの業務処理手段95の指示によって起動/停止される。
優先処理手段7は3つの機能を有している。第一の機能は各振分サーバ3の格納ファイル一覧表を受信し、統合して優先処理テーブルデータ5を作成することであり、第二の機能はこの優先処理テーブルデータ5の内容を確認し、各振分サーバ3間のトランザクションデータの処理に関する時系列を守るように、かつ、各振分サーバ3から出力されるトランザクションデータの処理タイミングに関する優先順位を指示することである。第三の機能はトランザクションがトレーニング用のデータであった場合、トレーニング専用のデータベースへアクセスするようにデータベース管理手段92に対して指示することである。
これらの処理について図4を用いて詳細に説明する。図4はキュー格納手段8cに格納されたファイルの順番を示す表であり、横方向が1つのトランザクションのファイル名を示している。なお、前述のようにファイル名は多数の状態を表す記号で構成されているが、説明を簡略化するため、データ発生日やデータ発生元端末名、伝票No.、最終転送先店舗名、拡張子などの記載を省略している。
図4の項目名において、『順』は時系列の順番を、『時刻』はデータの発生時刻(時分秒)を、『店』はデータの発生店舗を、『業務No.』はデータの業務名と同一店舗における連番を、『優』はデータの優先順位を、『種』はデータの種別をそれぞれ表している。そして、図4(A)は優先処理テーブルデータを、図4(B)は店舗Aにおける売掛、発注、仕入と対応するキュー格納手段の内容を示している。同様に図4(C)、図4(D)は店舗B、店舗Cのキュー格納手段の内容をそれぞれ示している。
なお、優先順位は0〜9の値であり、0が最も優先度が高くなっている。また、データの種別はHが本番用のデータを、Tがトレーニング用のデータであることをそれぞれ示している。また、図4において、本部用のキューについては説明の都合上記載しないが、構造とデータの動きは店舗用と同じである。
図4(A)は、図4(B)〜図4(D)に示す各店舗用の振分サーバから処理サーバが受信したキュー格納手段でのトランザクションデータの格納状況を総合的に1つのテーブルにまとめたものである。これは、優先処理テーブルデータ5として記憶装置、例えばハードディスクに格納されている。
優先処理手段7は、第一の機能を実現するため、各振分サーバ3のキュー管理手段8dから、各振分サーバ3のキュー格納手段8c内のデータが変化、例えばトランザクションデータが追加されてデータ数が増えたり、処理されてデータ数が減少したりした場合に、この情報を受信し、受信した情報に基づいて優先処理テーブルデータ5を最新の状態に更新する。このとき、トランザクションデータのファイル名に記載された日付(図示せず)や時刻を基にしてデータの順番を並べ変える。(時系列の確保)
この結果、製品を売上た後の返品や、店舗間の製品振替など、時系列に従った処理を行なわねばならない業務でも、また、複数の振分サーバ3間で分かれて存在する複数の関連トランザクションデータであっても正しい処理を行なうことができる。
また、優先処理手段7は、第二の機能を実現するため、優先処理テーブルデータ5を検索し、処理の優先度が高いトランザクションのファイル名を抽出し、抽出されたデータが実際に存在するキュー格納手段8cを管轄するキュー管理手段8dに対して、該当するキュー格納手段8cから優先的に優先処理手段7へ出力するように指示する。(優先処理)
この結果、製品の返品や納入された製品の在庫への繰入など、急いで処理すべきデータを他のトランザクションデータよりも優先して迅速に処理することができる。
例えば図4(A)において、順6と順11が優先度0となっており、最初に処理されるべきデータである。なお、同じ優先順位の場合は時刻が若いものから優先される。この結果、1)番目が順6、2)番目が順11の順に処理される。同様に優の数字の若い順に3)〜5)の順番となる。この優先順位の数値は、該当するトランザクションデータが発生する端末機器における操作員の指示や、端末機器のプログラムにより、自動的にトランザクションデータへ付加される。
さらに、優先処理手段7は、第三の機能を実現するため、実際にデータベース管理手段92を介して本部データベースを更新する場合、データベース管理手段92に対して、トランザクションのファイル名の種別を判別して、本番用データベース73の更新か、トレーニング用データベース6の更新かを指示する。(トレーニング機能)
この種別は、該当するトランザクションデータが発生する端末機器における操作員の指示により、自動的にトランザクションデータへ付加される。
この結果、トレーニング用のトランザクションデータは、トランザクションの発生からデータベース管理手段92が本部データベースを更新する直前まで、本番と同じルートで、かつ、同じ処理を受けることになり、トレーニング用データベース6のデータ以外は本番と同じとなり、本番と同じ機能、レスポンス、操作手順を経験することができる。さらに、本番の運用中に、任意にトレーニングを行なうことができ、また、これらのデータが混在して本番用のデータに影響を与えることがない。
これはトレーニングと本番とで同じプログラムを使用できることを意味しており、トレーニングモードを備えたシステムの構築を容易にし、結果的にシステムの作成費用を低減させることができる。さらに、システムに新しい機能が追加された時に行なうデバックやテストを本番の運用中にトレーニングとしてテストできるので、テスト期間中であっても本番業務に支障を与えることがない。
次に図5を用いてキュー管理手段を、また、図6を用いて優先処理手段の処理手順をそれぞれのフローチャートで説明する。なお、振分手段については、振り分けプログラムの処理として図9で説明しており、また、キュー格納手段については一般的なリングバッファであるため、説明を省略する。また、各手段はそれそれのサーバに備えられた制御部で動作するプログラムで実現されている。
図5と図6とにおいて、STはステップを表し、これに続く数字はステップ番号を示す。また、YはYesを、NはNoをそれぞれ表している。
図5においてキュー管理手段は、優先処理手段からのデータ取り出し要求が有るか確認する(ST1)。データ取り出し要求が有る場合は(ST1−Y)、要求された、つまり、優先処理手段から送信されたファイル名のデータを調べ、該当する業務のキュー格納手段から該当するデータを取り出し、このデータを優先処理手段へ送信する(ST5)。そして、ST1へジャンプする。
通常、キュー格納手段から出たデータを取り出す場合は、先入れ先出しとなるが、キュー管理手段はキューの内容を把握しているため、任意のデータを任意の位置から取り出すことができる。なお、取り出したデータが格納されていたキューの格納エリアは、既存のデータが順次繰り上げて格納される。
一方、データ取り出し要求がない場合は(ST1−N)、振分手段からのデータが有るか確認する(ST2)。振分手段からのデータがない場合は(ST2−N)。ST1へジャンプする。振分手段からのデータが有る場合は(ST2−Y)、このデータを受け取って対応する業務毎のキューへ格納する(ST3)。そして、格納したデータのファイル名を優先処理手段へ送信し(ST4)、ST1へジャンプする。
次に、図6において優先処理手段は、キュー管理手段を介して送信されたキュー格納手段からのトランザクションデータを受信したか確認する(ST10)。トランザクションデータを受信した場合(ST10−Y)、該当データのファイル名を調べ、種別の本番/トレーニングに対応して本部データベースを選択して更新するようにデータベース管理手段に指示すると共に、このトランザクションデータをデータベース管理手段に引き渡す(ST16)。
このように、優先処理手段がデータベース管理手段にトランザクションデータのファイルを引き渡すまでは、本番/トレーニングの両方のデータは同等に扱われ、本部データベースを更新する直前に分離されて処理される。
そしてST16を実施した後に、優先処理テーブルにおいて、データベース管理手段に引き渡したデータのファイル名を削除する(ST17)。そして、ST10へジャンプする。
一方、キュー格納手段からのトランザクションデータの受信がない場合(ST10−N)、キュー管理手段から追加データ(トランザクションデータ)のファイル名を受信したか確認する(ST11)。追加データのファイル名を受信した場合(ST11−Y)、優先処理テーブルへ、該当データの処理情報(ファイル名)に記載された時刻の順に従ってファイル名を追加する(ST18)。そして、ST10へジャンプする。
一方、追加データのファイル名を受信していない場合(ST11−N)、優先処理テーブル内にファイル名のデータが存在するか確認する(ST12)。ファイル名のデータが存在しない場合(ST12−N)、処理するデータが無いのでST10へジャンプする。
優先処理テーブル内にファイル名のデータが存在する場合(ST12−Y)、優先処理テーブル内に存在するデータの優先番号を検索し(ST13)、最も優先度が高いファイル名を抽出する(ST13)。そして、抽出したファイル名を時刻順に、対応するキュー管理手段へ送信し、該当するトランザクションデータのキュー格納手段からの送出を要求する(ST15)。そして、ST10へジャンプする。
以上の処理を繰り返すことにより、各キュー処理手段が複数存在していても、トランザクションデータを一元的に管理し、優先度の高いデータから順に処理することができる。この結果、キュー処理手段を安価なサーバで実現でき、システム全体のコストを低減できる。
なお、図6には記載していないが、優先処理手段に各振分サーバの負荷を平均化させる機能を追加してもよい。例えば、優先処理手段7が優先処理テーブルデータを検索し、店舗毎のトランザクションの数を算出する。そして、各振分サーバのトランザクションの数を比較して数の多い、つまり、処理すべきトランザクションが溜まっている振分けサーバに対して、この振分サーバからトランザクションを取り出して本部データベースを更新する割り当て時間を多くする。(負荷の均等化)
この結果、どの振分サーバでもキューに格納されて処理待ちとなっているトランザクションの数がほぼ等しくなり、特定の振分サーバ3に負荷が偏ることがない。
例えば図4(A)において、A店舗データ件数は9件、B店舗データ件数は3件、C店舗データ件数は3件であるため、この件数比率で処理時間を割り当てる。例えば処理サーバ4でトランザクションデータ処理時間に対して割り当てることができる全体時間を100%とした場合、A店舗用振分サーバ3には60%、B店舗用振分サーバ3には20%、C店舗用振分サーバ3には20%の時間を割り当てるように制御する。
以上の本実施例では本部サーバシステム内に振分サーバや処理サーバを配置しているが、これに限るものでなく、全体のシステム内に配置され、ネットワークで接続されていればどこに配置されていてもよい。なお、各手段についても特定のサーバに含まれていなくとも相互に通信可能であれば、システム内のどこに配置されていてもよい。
また、この実施例では説明を簡単にするため、優先処理手段やキュー管理手段をシーケンシャルな手順として説明しているが、これに限るものでなく、マルチタスクを用いて実現してもよい。例えば、優先処理手段を、優先処理テーブルを常に最新の状態に保つタスクと、優先処理テーブルを常に監視し、テーブル内の各優先番号毎のデータをピックアップして処理を行なうタスクと、優先処理テーブルを常に監視し、テーブル内の種別がトレーニングであるデータだけをピックアップして処理を行なうタスクなどに分割して、それぞれのタスクに優先度を持たせて並列処理するような方法にしてもよい。
本発明によるトランザクション処理方法を用いたオンラインシステムの実施例を示すシステム図である。 キュー処理手段の概要を示すブロック図である。 本発明によるトランザクション処理方法を用いた、本部サーバシステムにおける各機器内に備えられた手段を説明するブロック図である。 図4はキュー格納手段に格納されたファイルの順番を示す表であり、(A)は優先処理テーブルデータの内容を、(B)は店舗Aのキューの状態を、(C)は店舗Bのキューの状態を、(D)は店舗Cのキューの状態をそれぞれ表している。 キュー管理手段の処理手順を説明するフローチャートである。 優先処理手段の処理手順を説明するフローチャートである。 従来のトランザクション処理方法を用いたオンラインシステムを示すブロック図である。 従来のトランザクション処理方法を用いたオンラインシステムにおける各手段を説明するブロック図である。 従来のトランザクション処理方法における振り分けプログラムの処理内容を説明する説明図である。
符号の説明
2 本部サーバシステム
3 振分サーバ
4 処理サーバ
5 優先処理テーブルデータ
6 トレーニング用データベース
7 優先処理手段
8 キュー処理手段
8a キュー格納手段
8b 振分手段
8c キュー格納手段
8d キュー管理手段
9 通信手段
61 店舗サーバシステム
62 本部サーバシステム
63 ネットワーク
70 本部業務端末
73 データベース
73 本番用データベース
90 受信手段
92 データベース管理手段
93 転送手段
95 業務処理手段

Claims (6)

  1. 店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
    前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるトランザクション処理方法において、
    前記本部サーバシステム内に、前記トランザクションデータを格納するキュー格納手段と同キュー格納手段に格納されている前記トランザクションデータの順番を管理するキュー管理手段とを備えた複数のキュー処理手段と、前記キュー管理手段の管理データにより、前記トランザクションデータの前記データベースに対する更新の処理順位を制御する優先処理手段とを設け、
    前記優先処理手段は、複数の前記キュー管理手段から前記管理データを入手するステップと、入手した前記管理データを統合して前記トランザクションデータの前記処理情報を記載した優先処理テーブルを形成するステップと、前記優先処理テーブルの前記処理情報を検索し、所定の条件により決定された前記トランザクションデータの前記キュー格納手段からの取出順番を決定するステップと、決定された前記取出順番に従って前記キュー格納手段から前記トランザクションデータを取り出すステップとを備えてなることを特徴とするトランザクション処理方法。
  2. 前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順としてなることを特徴とする請求項1記載のトランザクション処理方法。
  3. 前記処理情報に付加される情報は、前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの処理優先順位としてなることを特徴とする請求項1記載のトランザクション処理方法。
  4. 前記処理情報に付加される情報は、前記トランザクションデータの発生日と発生時刻、及び前記トランザクションデータの処理優先順位とし、前記所定の条件は、前記トランザクションデータの発生日と発生時刻との順と、これよりも優先処理される前記トランザクションデータの処理優先順位としてなることを特徴とする請求項1記載のトランザクション処理方法。
  5. 前記処理情報に付加される情報は、前記トランザクションデータによる更新が実施される前記データベースの本番処理、又はトレーニング処理を選択する種別情報とし、前記優先処理手段は、同種別情報に対応して前記データベースを更新してなることを特徴とする請求項1乃至請求項4のいずれかに記載のトランザクション処理方法。
  6. 店舗内で発生したデータをトランザクションデータに変換して送信する店舗サーバシステムと、前記トランザクションデータを受信すると共に、同受信したデータに対応するデータベースを更新する本部サーバシステムとをネットワークで接続してオンラインシステムを構成し、
    前記店舗サーバシステムは、前記トランザクションデータの処理を特定する処理情報を前記トランザクションデータに付加して送信し、前記本部サーバシステムは、前記処理情報に従って前記トランザクションデータを処理して前記データベースを更新してなるオンラインシステムにおいて、
    前記本部サーバシステム内に、前記キュー処理手段を備えた複数の振分サーバと、請求項1乃至請求項4のいずれかに記載の前記トランザクション処理方法を用いて前記トランザクションデータを前記振分サーバから取り出す前記優先処理手段を備え、前記振分サーバから取り出した前記トランザクションデータで前記データベースを更新する処理サーバとを設けてなることを特徴とするオンラインシステム。
JP2006247541A 2006-09-13 2006-09-13 トランザクション処理方法、及びそれを用いたオンラインシステム Pending JP2008071004A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006247541A JP2008071004A (ja) 2006-09-13 2006-09-13 トランザクション処理方法、及びそれを用いたオンラインシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006247541A JP2008071004A (ja) 2006-09-13 2006-09-13 トランザクション処理方法、及びそれを用いたオンラインシステム

Publications (1)

Publication Number Publication Date
JP2008071004A true JP2008071004A (ja) 2008-03-27

Family

ID=39292549

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006247541A Pending JP2008071004A (ja) 2006-09-13 2006-09-13 トランザクション処理方法、及びそれを用いたオンラインシステム

Country Status (1)

Country Link
JP (1) JP2008071004A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011070355A (ja) * 2009-09-25 2011-04-07 Obic Business Consultants Ltd 情報処理装置、情報処理方法、およびプログラム
JP2015118431A (ja) * 2013-12-17 2015-06-25 日本電気株式会社 トランザクション処理システム
JP2017510886A (ja) * 2014-03-24 2017-04-13 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 定期注文の処理方法及びシステム
JP2019212109A (ja) * 2018-06-06 2019-12-12 株式会社インテック データ処理装置、データ処理方法及びプログラム
CN111562995A (zh) * 2020-04-30 2020-08-21 成都库珀区块链科技有限公司 一种交易消息处理的方法、系统以及相关装置
KR20210074148A (ko) * 2019-12-11 2021-06-21 두나무 주식회사 비동기적 트랜잭션 처리 아키텍처에서의 트랜잭션 처리 지원 장치 및 방법
CN114650301A (zh) * 2022-03-17 2022-06-21 郑州郑大信息技术有限公司 一种基于交易系统的消息排队方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011070355A (ja) * 2009-09-25 2011-04-07 Obic Business Consultants Ltd 情報処理装置、情報処理方法、およびプログラム
JP2015118431A (ja) * 2013-12-17 2015-06-25 日本電気株式会社 トランザクション処理システム
JP2017510886A (ja) * 2014-03-24 2017-04-13 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 定期注文の処理方法及びシステム
JP2019212109A (ja) * 2018-06-06 2019-12-12 株式会社インテック データ処理装置、データ処理方法及びプログラム
KR20210074148A (ko) * 2019-12-11 2021-06-21 두나무 주식회사 비동기적 트랜잭션 처리 아키텍처에서의 트랜잭션 처리 지원 장치 및 방법
KR20210074146A (ko) * 2019-12-11 2021-06-21 두나무 주식회사 비동기적 트랜잭션 처리 아키텍처에서의 트랜잭션 처리 지원 장치 및 방법
KR102319158B1 (ko) * 2019-12-11 2021-10-29 두나무 주식회사 비동기적 트랜잭션 처리 아키텍처에서의 트랜잭션 처리 지원 장치 및 방법
KR102396599B1 (ko) * 2019-12-11 2022-05-12 두나무 주식회사 비동기적 트랜잭션 처리 아키텍처에서의 트랜잭션 처리 지원 장치 및 방법
CN111562995A (zh) * 2020-04-30 2020-08-21 成都库珀区块链科技有限公司 一种交易消息处理的方法、系统以及相关装置
CN114650301A (zh) * 2022-03-17 2022-06-21 郑州郑大信息技术有限公司 一种基于交易系统的消息排队方法
CN114650301B (zh) * 2022-03-17 2024-05-24 郑州郑大信息技术有限公司 一种基于交易系统的消息排队方法

Similar Documents

Publication Publication Date Title
US5325527A (en) Client/server communication system utilizing a self-generating nodal network
JP4405691B2 (ja) 印刷システム
US6516328B1 (en) Digitized document circulating system with circulation history
JP2008071004A (ja) トランザクション処理方法、及びそれを用いたオンラインシステム
US20060004934A1 (en) Flexible and error resistant data buffering and connectivity
JP4957642B2 (ja) 注文データに基づきラベルデータを印刷する方法、プリンタ、および注文処理システム
US20070050425A1 (en) Log management program of a computer, log management method thereof, and computer system
JP7009799B2 (ja) プログラム、情報処理装置及び配車制御方法
JPWO2011148565A1 (ja) データベース、管理サーバ、および管理プログラム
US9053467B2 (en) Calendaring system for managing follow-up appointments
JPH10222409A (ja) 分散データ管理システム
US20030177016A1 (en) Revenue recognition system and method for efficiently performing business-related processing and storing of event information related to a transaction
JP4323678B2 (ja) 部品明細書作成システム
JP4272653B2 (ja) 情報連携システム
JP5608528B2 (ja) メッセージ順序制御装置及びその方法
JP2002259448A (ja) 情報提供システム
JP3296570B2 (ja) ファイル転送方法
JP2002207958A (ja) 識別子解釈装置及びプログラムを記録したコンピュータ読み取り可能な記録媒体並びにコンピュータシステムによる処理実行方法
JPH09198347A (ja) オンライントランザクション処理サーバ計算機
JP2943661B2 (ja) 金融端末装置のファイル照会方式
JPH10149392A (ja) 商品検索システム
US20030182283A1 (en) Data extraction system and method
US20060168535A1 (en) Recording medium storing program to input and output data with two screens, and method and apparatus for inputting and outputting data with two screens
JP2002189622A (ja) 更新データの配信システム、配信方法、及び記録媒体
JP4007747B2 (ja) 帳票データ保存管理システム