JP2000181754A - トランザクション処理システム及びトランザクション処理システムの制御プログラムを記録した媒体 - Google Patents
トランザクション処理システム及びトランザクション処理システムの制御プログラムを記録した媒体Info
- Publication number
- JP2000181754A JP2000181754A JP10353613A JP35361398A JP2000181754A JP 2000181754 A JP2000181754 A JP 2000181754A JP 10353613 A JP10353613 A JP 10353613A JP 35361398 A JP35361398 A JP 35361398A JP 2000181754 A JP2000181754 A JP 2000181754A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- processing
- processing system
- illegal
- processing status
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】システム管理者は、不正アプリケーションが発
生するごとに対処するが、即座には対応できなかった。 【解決手段】 一定の時間間隔をおいて不正となる可能
性のあるグローバルトランザクション識別子をAファイ
ルとBファイルとに記録し(ステップS100、ステッ
プS110)、各グローバルトランザクション識別子の
マッチングを行い(ステップS120)、Aファイルと
Bファイルとに同じグローバルトランザクション識別子
があるとき、不正トランザクションとしてシステムに通
知する(ステップS130)ため、不正なトランザクシ
ョンが発生したことを早期に発見して対処することによ
り、ユーザの認識する上での稼働率を上げ、ユーザの満
足度を高めることが可能となる。
生するごとに対処するが、即座には対応できなかった。 【解決手段】 一定の時間間隔をおいて不正となる可能
性のあるグローバルトランザクション識別子をAファイ
ルとBファイルとに記録し(ステップS100、ステッ
プS110)、各グローバルトランザクション識別子の
マッチングを行い(ステップS120)、Aファイルと
Bファイルとに同じグローバルトランザクション識別子
があるとき、不正トランザクションとしてシステムに通
知する(ステップS130)ため、不正なトランザクシ
ョンが発生したことを早期に発見して対処することによ
り、ユーザの認識する上での稼働率を上げ、ユーザの満
足度を高めることが可能となる。
Description
【0001】
【発明の属する技術分野】本発明は、トランザクション
処理システム及びトランザクション処理システムの制御
プログラムを記録した媒体に関する。
処理システム及びトランザクション処理システムの制御
プログラムを記録した媒体に関する。
【0002】
【従来の技術】従来、トランザクション処理システムと
しては特開平8−286964号,同8−137707
号等で開示されているが、これらのトランザクション処
理システムでは、不正アプリケーションが発生したと
き、資源のロールバック処理(回復処理)やクローズ処
理などを実行することなく、資源を占有したまま終了し
ていた。
しては特開平8−286964号,同8−137707
号等で開示されているが、これらのトランザクション処
理システムでは、不正アプリケーションが発生したと
き、資源のロールバック処理(回復処理)やクローズ処
理などを実行することなく、資源を占有したまま終了し
ていた。
【0003】
【発明が解決しようとする課題】上述した従来のトラン
ザクション処理システムにおいては、資源を監視するシ
ステム管理者は、不正アプリケーションが発生するごと
に対処するが、即座には対応できないため、ユーザの認
識する上での稼働率を悪化させ、ユーザの満足度を低下
させる原因となっていた。
ザクション処理システムにおいては、資源を監視するシ
ステム管理者は、不正アプリケーションが発生するごと
に対処するが、即座には対応できないため、ユーザの認
識する上での稼働率を悪化させ、ユーザの満足度を低下
させる原因となっていた。
【0004】本発明は、上記課題にかんがみてなされた
もので、不正なトランザクションが発生したことを早期
に発見して対処することにより、ユーザの認識する上で
の稼働率を上げ、ユーザの満足度を高めることが可能な
トランザクション処理システム及びトランザクション処
理システムの制御プログラムを記録した媒体の提供を目
的とする。
もので、不正なトランザクションが発生したことを早期
に発見して対処することにより、ユーザの認識する上で
の稼働率を上げ、ユーザの満足度を高めることが可能な
トランザクション処理システム及びトランザクション処
理システムの制御プログラムを記録した媒体の提供を目
的とする。
【0005】
【課題を解決するための手段】上記目的を達成するた
め、請求項1にかかる発明は、トランザクションを入力
する入力手段と、この入力されたトランザクションに基
づいて処理を実行する処理手段と、トランザクションに
基づく処理状況を所定の時間間隔をおいて複数回にわた
って記憶する記憶手段と、この記憶された各トランザク
ションに基づく処理状況を比較し、この処理状況に変化
がないときにトランザクションを不正なものとして検出
する検出手段とを具備する構成としてある。
め、請求項1にかかる発明は、トランザクションを入力
する入力手段と、この入力されたトランザクションに基
づいて処理を実行する処理手段と、トランザクションに
基づく処理状況を所定の時間間隔をおいて複数回にわた
って記憶する記憶手段と、この記憶された各トランザク
ションに基づく処理状況を比較し、この処理状況に変化
がないときにトランザクションを不正なものとして検出
する検出手段とを具備する構成としてある。
【0006】すなわち、入力手段がトランザクションを
入力すると、処理手段は、入力されたトランザクション
に基づいて処理を実行する。このとき、記憶手段は、ト
ランザクションに基づく処理状況を所定の時間間隔をお
いて複数回にわたって記憶し、検出手段は、記憶手段に
て記憶された各トランザクションに基づく処理状況を比
較し、この処理状況に変化がないときにトランザクショ
ンを不正なものとして検出する。
入力すると、処理手段は、入力されたトランザクション
に基づいて処理を実行する。このとき、記憶手段は、ト
ランザクションに基づく処理状況を所定の時間間隔をお
いて複数回にわたって記憶し、検出手段は、記憶手段に
て記憶された各トランザクションに基づく処理状況を比
較し、この処理状況に変化がないときにトランザクショ
ンを不正なものとして検出する。
【0007】入力手段は、トランザクションを入力する
ものであれば良く、例えば、トランザクションを発行す
るアプリケーションプログラムを備えるもの等であって
も良い。処理手段は、入力手段にて入力されたトランザ
クションに基づいて処理を実行するものであれば良く、
単数のハードウェアを利用するものであっても良いし、
複数個のハードウェアを利用するものであっても良い。
ものであれば良く、例えば、トランザクションを発行す
るアプリケーションプログラムを備えるもの等であって
も良い。処理手段は、入力手段にて入力されたトランザ
クションに基づいて処理を実行するものであれば良く、
単数のハードウェアを利用するものであっても良いし、
複数個のハードウェアを利用するものであっても良い。
【0008】後者の場合における処理手段の構成の一例
として、請求項2にかかる発明は、上記請求項1に記載
のトランザクション処理システムにおいて、処理手段
は、複数個の異なるハードウェアを利用し、上記トラン
ザクションに基づいて処理を実行する構成としてある。
として、請求項2にかかる発明は、上記請求項1に記載
のトランザクション処理システムにおいて、処理手段
は、複数個の異なるハードウェアを利用し、上記トラン
ザクションに基づいて処理を実行する構成としてある。
【0009】すなわち、処理手段は、入力手段にて入力
されたトランザクションに基づき、複数個の異なるハー
ドウェアを利用して処理を実行する。ここで、不正なト
ランザクションがあると、検出手段がトランザクション
を不正なものとして検出するため、例えば、アプリケー
ションが不正に終了したにも、拘わらず、各ハードウェ
アには、正常動作後の待機状態(他のハードウェアによ
る命令待ち状態)として、すなわち、システム的に正常
プロセスとして認識されることがなくなる。
されたトランザクションに基づき、複数個の異なるハー
ドウェアを利用して処理を実行する。ここで、不正なト
ランザクションがあると、検出手段がトランザクション
を不正なものとして検出するため、例えば、アプリケー
ションが不正に終了したにも、拘わらず、各ハードウェ
アには、正常動作後の待機状態(他のハードウェアによ
る命令待ち状態)として、すなわち、システム的に正常
プロセスとして認識されることがなくなる。
【0010】記憶手段は、トランザクションに基づく処
理状況を所定の時間間隔をおいて複数回にわたって記憶
するものであれば良く、処理状況を取得するごとに、フ
ァイルを逐次形成して保存していくものであっても良い
し、所定のファイルを上書きしていくもの等であっても
良い。検出手段は、この記憶された各トランザクション
に基づく処理状況を比較し、この処理状況に変化がない
ときにトランザクションを不正なものとして検出するも
のであれば良く、記憶手段に記憶された処理状況を読み
出して直接比較するものであっても良いし、記憶手段に
おける処理状況の記憶形式に応じて間接的に比較するも
のであっても良い。
理状況を所定の時間間隔をおいて複数回にわたって記憶
するものであれば良く、処理状況を取得するごとに、フ
ァイルを逐次形成して保存していくものであっても良い
し、所定のファイルを上書きしていくもの等であっても
良い。検出手段は、この記憶された各トランザクション
に基づく処理状況を比較し、この処理状況に変化がない
ときにトランザクションを不正なものとして検出するも
のであれば良く、記憶手段に記憶された処理状況を読み
出して直接比較するものであっても良いし、記憶手段に
おける処理状況の記憶形式に応じて間接的に比較するも
のであっても良い。
【0011】後者の場合における構成の一例として、請
求項3にかかる発明は、上記請求項1または請求項2の
いずれかに記載のトランザクション処理システムにおい
て、記憶手段は、トランザクションに基づく処理状況を
調査して不正となる可能性のあるトランザクションの識
別子を所定の時間間隔をおいて複数回にわたって記憶
し、検出手段は、この記憶された各識別子を比較して共
通する識別子があるとき、この識別子に関するトランザ
クションを不正なものとして検出する構成としてある。
求項3にかかる発明は、上記請求項1または請求項2の
いずれかに記載のトランザクション処理システムにおい
て、記憶手段は、トランザクションに基づく処理状況を
調査して不正となる可能性のあるトランザクションの識
別子を所定の時間間隔をおいて複数回にわたって記憶
し、検出手段は、この記憶された各識別子を比較して共
通する識別子があるとき、この識別子に関するトランザ
クションを不正なものとして検出する構成としてある。
【0012】すなわち、記憶手段がトランザクションに
基づく処理状況を調査し、不正となる可能性のあるトラ
ンザクションの識別子を所定の時間間隔をおいて複数回
にわたって記憶すると、検出手段は、この記憶された各
識別子を比較し、共通する識別子があるとき、この識別
子に関するトランザクションを不正なものとして検出す
る。
基づく処理状況を調査し、不正となる可能性のあるトラ
ンザクションの識別子を所定の時間間隔をおいて複数回
にわたって記憶すると、検出手段は、この記憶された各
識別子を比較し、共通する識別子があるとき、この識別
子に関するトランザクションを不正なものとして検出す
る。
【0013】また、検出手段には、不正なトランザクシ
ョンを検出したとき、検出したことをトランザクション
処理システムの全体に知らせるための付加機能を持たせ
ることも可能である。この場合における検出手段の構成
の一例として、請求項4にかかる発明は、上記請求項1
〜請求項3のいずれかに記載のトランザクション処理シ
ステムにおいて、検出手段は、不正なトランザクション
を検出したことを報知する報知手段を備える構成として
ある。すなわち、報知手段は、不正なトランザクション
を検出したとき、検出したことをシステム全体に報知す
る。
ョンを検出したとき、検出したことをトランザクション
処理システムの全体に知らせるための付加機能を持たせ
ることも可能である。この場合における検出手段の構成
の一例として、請求項4にかかる発明は、上記請求項1
〜請求項3のいずれかに記載のトランザクション処理シ
ステムにおいて、検出手段は、不正なトランザクション
を検出したことを報知する報知手段を備える構成として
ある。すなわち、報知手段は、不正なトランザクション
を検出したとき、検出したことをシステム全体に報知す
る。
【0014】さらに、検出手段は、記憶手段に記憶され
た特定の処理状況を基準に比較を行うものであっても良
いし、逐次記憶されていく処理状況のうちで最新のもの
を比較するもの等であっても良い。後者の場合にかかる
検出手段の構成の一例として、請求項5にかかる発明
は、上記請求項1〜請求項4のいずれかに記載のトラン
ザクション処理システムにおいて、検出手段は、記憶手
段に記憶された最新の処理状況どうしを比較する構成と
してある。すなわち、検出手段は、記憶手段に記憶され
た処理状況のうちで、最新の二個の処理状況を比較し
て、不正なトランザクションを検出する。
た特定の処理状況を基準に比較を行うものであっても良
いし、逐次記憶されていく処理状況のうちで最新のもの
を比較するもの等であっても良い。後者の場合にかかる
検出手段の構成の一例として、請求項5にかかる発明
は、上記請求項1〜請求項4のいずれかに記載のトラン
ザクション処理システムにおいて、検出手段は、記憶手
段に記憶された最新の処理状況どうしを比較する構成と
してある。すなわち、検出手段は、記憶手段に記憶され
た処理状況のうちで、最新の二個の処理状況を比較し
て、不正なトランザクションを検出する。
【0015】また、本発明の思想の具現化例として、ト
ランザクション処理のソフトウェアとなる場合には、こ
のようなソフトウェアを記録した記録媒体上においても
当然に存在し、利用される。
ランザクション処理のソフトウェアとなる場合には、こ
のようなソフトウェアを記録した記録媒体上においても
当然に存在し、利用される。
【0016】その一例として、請求項6にかかる発明
は、入力されたトランザクションに基づいて処理を実行
して上記トランザクションに基づく処理状況を所定の時
間間隔をおいて複数回にわたって記憶するとともに、こ
の記憶された各トランザクションに基づく処理状況を比
較し、この処理状況に変化がないときに上記トランザク
ションを不正なものとして検出する構成としてある。
は、入力されたトランザクションに基づいて処理を実行
して上記トランザクションに基づく処理状況を所定の時
間間隔をおいて複数回にわたって記憶するとともに、こ
の記憶された各トランザクションに基づく処理状況を比
較し、この処理状況に変化がないときに上記トランザク
ションを不正なものとして検出する構成としてある。
【0017】記録媒体としては、磁気記録媒体であって
も良いし、光記録媒体であっても良い。また、一部がソ
フトウェアであって、一部がハードウェアで実現される
場合においても本発明の思想において全く異なるものは
なく、一部を記録媒体上に記録しておいて必要に応じて
適宜読み込む形態のものも含まれる。
も良いし、光記録媒体であっても良い。また、一部がソ
フトウェアであって、一部がハードウェアで実現される
場合においても本発明の思想において全く異なるものは
なく、一部を記録媒体上に記録しておいて必要に応じて
適宜読み込む形態のものも含まれる。
【0018】
【発明の実施の形態】以下、図面にもとづいて本発明の
実施形態を説明する。図1は、本発明の一実施形態にか
かる分散トランザクション処理システム(DTPモデ
ル)をブロック図により示している。同図に示すよう
に、分散トランザクション処理システム10は、トラン
ザクションの境界を定義してトランザクションを構成す
るためのアクションを指定するアプリケーションプログ
ラム(AP)20と、共有資源へのアクセスを提供する
資源マネージャ(RM:Resorce Manage
r)30と、アプリケーションプログラム20からのサ
ービス要求を経路指定とトランザクション処理制御とを
管理するトランザクションマネージャ(TM:Tran
sactionManager)40とを備えており、
XAインタフェース仕様にしたがって構築されるアプリ
ケーションプログラム20において、共有資源(データ
ベース)へのロック(使用予約)を保持したままアボー
ト(不正終了)を起こしたプロセスを検出している。
実施形態を説明する。図1は、本発明の一実施形態にか
かる分散トランザクション処理システム(DTPモデ
ル)をブロック図により示している。同図に示すよう
に、分散トランザクション処理システム10は、トラン
ザクションの境界を定義してトランザクションを構成す
るためのアクションを指定するアプリケーションプログ
ラム(AP)20と、共有資源へのアクセスを提供する
資源マネージャ(RM:Resorce Manage
r)30と、アプリケーションプログラム20からのサ
ービス要求を経路指定とトランザクション処理制御とを
管理するトランザクションマネージャ(TM:Tran
sactionManager)40とを備えており、
XAインタフェース仕様にしたがって構築されるアプリ
ケーションプログラム20において、共有資源(データ
ベース)へのロック(使用予約)を保持したままアボー
ト(不正終了)を起こしたプロセスを検出している。
【0019】ここにいうトランザクションとは、アプリ
ケーション固有の一連の操作からなる作業の単位でアプ
リケーションを実行する上での最小単位のことであり、
以下の4つの条件を満たしているプロセス、または、プ
ロセス群を示している。
ケーション固有の一連の操作からなる作業の単位でアプ
リケーションを実行する上での最小単位のことであり、
以下の4つの条件を満たしているプロセス、または、プ
ロセス群を示している。
【0020】第1に、原子性を有しており、すべての操
作が「すべて」か「なし」かの原則に従っている。第2
に、一貫性を有しており、トランザクションを打ち切る
場合にデータを直前の有効な状態に戻すことが可能とな
っている。
作が「すべて」か「なし」かの原則に従っている。第2
に、一貫性を有しており、トランザクションを打ち切る
場合にデータを直前の有効な状態に戻すことが可能とな
っている。
【0021】第3に、排他性を有しており、トランザク
ションの結果は処理が確定するまで他のトランザクショ
ンに見られないようになっている。第4に、持続性を有
しており、システム障害が発生しても、トランザクショ
ン結果は保持されるようになっている。
ションの結果は処理が確定するまで他のトランザクショ
ンに見られないようになっている。第4に、持続性を有
しており、システム障害が発生しても、トランザクショ
ン結果は保持されるようになっている。
【0022】また、複数のハードウェアで構成される分
散処理環境下において、XAインターフェース仕様に従
って構築されるアプリケーションで定義されるトランザ
クションをグローバルトランザクションと定義し、XA
インターフェースを用いない単独ハードウェアでのトラ
ンザクションをローカルトランザクションと記述して両
者を区別している。アプリケーションプログラム20、
資源マネージャ30及びトランザクションマネージャ4
0は、それぞれに以下のような機能を保持している。
散処理環境下において、XAインターフェース仕様に従
って構築されるアプリケーションで定義されるトランザ
クションをグローバルトランザクションと定義し、XA
インターフェースを用いない単独ハードウェアでのトラ
ンザクションをローカルトランザクションと記述して両
者を区別している。アプリケーションプログラム20、
資源マネージャ30及びトランザクションマネージャ4
0は、それぞれに以下のような機能を保持している。
【0023】アプリケーションプログラム20は、ユー
ザ要求を受け取り、サービス要求(処理)に変換する。
そして、該当するサービス要求をトランザクション条件
を満たす単位で開始と終了をマークし、グローバルトラ
ンザクションの定義を行い、トランザクションを発行す
る。従って、トランザクションを発行するアプリケーシ
ョンプログラム20は、この意味で、本発明にいう入力
手段を構成し、アプリケーションプログラム20を実行
する際に利用する複数のハードウェアは、この意味で、
本発明にいう処理手段を構成している。
ザ要求を受け取り、サービス要求(処理)に変換する。
そして、該当するサービス要求をトランザクション条件
を満たす単位で開始と終了をマークし、グローバルトラ
ンザクションの定義を行い、トランザクションを発行す
る。従って、トランザクションを発行するアプリケーシ
ョンプログラム20は、この意味で、本発明にいう入力
手段を構成し、アプリケーションプログラム20を実行
する際に利用する複数のハードウェアは、この意味で、
本発明にいう処理手段を構成している。
【0024】資源マネージャ30は、一連の共有資源を
管理している。なお、データベースにおけるアプリケー
ションの場合にいう共有資源とは、データベースのこと
を示しており、資源マネージャ30は以下の動作を実行
する。トランザクションのコミット(確定)とロールバ
ック(復旧)とを認識し、トランザクションマネージャ
40からトランザクション識別子(XID)を受け取
り、資源マネージャ30に固有のトランザクション識別
子にマッピングして、グローバルトランザクションの認
識を行う。そして、コミット及びロールバックにおいて
関係先として機能し、トランザクションマネージャ40
から受け取るXA要求に基づき処理を行う。
管理している。なお、データベースにおけるアプリケー
ションの場合にいう共有資源とは、データベースのこと
を示しており、資源マネージャ30は以下の動作を実行
する。トランザクションのコミット(確定)とロールバ
ック(復旧)とを認識し、トランザクションマネージャ
40からトランザクション識別子(XID)を受け取
り、資源マネージャ30に固有のトランザクション識別
子にマッピングして、グローバルトランザクションの認
識を行う。そして、コミット及びロールバックにおいて
関係先として機能し、トランザクションマネージャ40
から受け取るXA要求に基づき処理を行う。
【0025】ここで、上述した機能を有する資源マネー
ジャ30をデータベース管理システム(DBMS:Da
taBase Management System)
と呼ぶこととする。データベース管理システムは、資源
のカレント状態を出力するサービスを有しており、ロー
カルトランザクションのXA命令の実行状態をファイル
に出力する機能を保持している。
ジャ30をデータベース管理システム(DBMS:Da
taBase Management System)
と呼ぶこととする。データベース管理システムは、資源
のカレント状態を出力するサービスを有しており、ロー
カルトランザクションのXA命令の実行状態をファイル
に出力する機能を保持している。
【0026】トランザクションマネージャ40は、トラ
ンザクション条件を満たすために、以下のトランザクシ
ョン管理タスクを実行する。ローカルトランザクション
及びグローバルトランザクションの実行管理を行い、ト
ランザクション識別子及びグローバルトランザクション
識別子(GTRID)を割り当て、アプリケーションプ
ログラム20から発行されるサービス要求の経路を指定
する。そして、コミット及びロールバックにおいての調
整元となる。すなわち、資源マネージャ30へXA要求
を発行する。
ンザクション条件を満たすために、以下のトランザクシ
ョン管理タスクを実行する。ローカルトランザクション
及びグローバルトランザクションの実行管理を行い、ト
ランザクション識別子及びグローバルトランザクション
識別子(GTRID)を割り当て、アプリケーションプ
ログラム20から発行されるサービス要求の経路を指定
する。そして、コミット及びロールバックにおいての調
整元となる。すなわち、資源マネージャ30へXA要求
を発行する。
【0027】図2は、不正トランザクションを検出する
際の手順をフローチャートにより示している。同図に示
すように、グローバルトランザクションの処理状態を調
査し、不正トランザクションとなる可能性のあるグロー
バルトランザクション識別子(GTRID:Groba
l Transaction ID)をAファイルに出
力して記録する(ステップS100)。一定時間後に再
度、グローバルトランザクションの処理状態を調査し、
不正トランザクションとなる可能性のある状態のグロー
バルトランザクション識別子をBファイルに出力して記
録する(ステップS110)。
際の手順をフローチャートにより示している。同図に示
すように、グローバルトランザクションの処理状態を調
査し、不正トランザクションとなる可能性のあるグロー
バルトランザクション識別子(GTRID:Groba
l Transaction ID)をAファイルに出
力して記録する(ステップS100)。一定時間後に再
度、グローバルトランザクションの処理状態を調査し、
不正トランザクションとなる可能性のある状態のグロー
バルトランザクション識別子をBファイルに出力して記
録する(ステップS110)。
【0028】ここで、Aファイル及びBファイルに記録
されたグローバルトランザクション識別子のマッチング
を行い(ステップS120)、Aファイル及びBファイ
ルともに存在するグローバルトランザクション識別子を
不正トランザクションとしてシステムに通知する(ステ
ップS130)。そして、Bファイルを新たなAファイ
ルとしてのA’ファイルに更新し(ステップS14
0)、以上の手順を繰り返す。
されたグローバルトランザクション識別子のマッチング
を行い(ステップS120)、Aファイル及びBファイ
ルともに存在するグローバルトランザクション識別子を
不正トランザクションとしてシステムに通知する(ステ
ップS130)。そして、Bファイルを新たなAファイ
ルとしてのA’ファイルに更新し(ステップS14
0)、以上の手順を繰り返す。
【0029】すると、カレント状態で不正と認識できる
トランザクション、すなわち、トランザクション処理状
態の調査で即座に不正トランザクションと認識できるト
ランザクションと、カレント状態では正常トランザクシ
ョンと認識できるトランザクション、すなわち、正常な
トランザクションと認識できるが、トランザクションの
処理状態が変わらないため、不正なトランザクション
(一定時間処理状態の変化しないトランザクション)と
いえるトランザクションとの二種類の不正トランザクシ
ョンが検出される。
トランザクション、すなわち、トランザクション処理状
態の調査で即座に不正トランザクションと認識できるト
ランザクションと、カレント状態では正常トランザクシ
ョンと認識できるトランザクション、すなわち、正常な
トランザクションと認識できるが、トランザクションの
処理状態が変わらないため、不正なトランザクション
(一定時間処理状態の変化しないトランザクション)と
いえるトランザクションとの二種類の不正トランザクシ
ョンが検出される。
【0030】なお、資源マネージャ30のサービスプロ
グラムだけで、カレント状態で不正と認識できるトラン
ザクションは、不正トランザクションと認識できる。し
かし、トランザクションマネージャ40により資源マネ
ージャ30上のプロセスが管理されている場合、資源マ
ネージャ30上では正常なトランザクションであって
も、分散トランザクション環境(システム全体)では不
正なトランザクションである場合があるが、資源マネー
ジャ30のサービスプログラムではトランザクションの
異常を検出できない。従って、グローバルトランザクシ
ョン識別子を記録するAファイル及びBファイルを保持
する記録媒体は、この意味で、本発明にいう記憶手段を
構成している。
グラムだけで、カレント状態で不正と認識できるトラン
ザクションは、不正トランザクションと認識できる。し
かし、トランザクションマネージャ40により資源マネ
ージャ30上のプロセスが管理されている場合、資源マ
ネージャ30上では正常なトランザクションであって
も、分散トランザクション環境(システム全体)では不
正なトランザクションである場合があるが、資源マネー
ジャ30のサービスプログラムではトランザクションの
異常を検出できない。従って、グローバルトランザクシ
ョン識別子を記録するAファイル及びBファイルを保持
する記録媒体は、この意味で、本発明にいう記憶手段を
構成している。
【0031】また、Aファイルに記録されたグローバル
トランザクション識別子とBファイルに記録されたグロ
ーバルトランザクション識別子とをマッチングさせ、A
ファイル及びBファイルともに存在するグローバルトラ
ンザクション識別子を不正トランザクションとしてシス
テムに通知するトランザクションマネージャ40は、こ
の意味で、本発明にいう検出手段及び報知手段を構成し
ている。
トランザクション識別子とBファイルに記録されたグロ
ーバルトランザクション識別子とをマッチングさせ、A
ファイル及びBファイルともに存在するグローバルトラ
ンザクション識別子を不正トランザクションとしてシス
テムに通知するトランザクションマネージャ40は、こ
の意味で、本発明にいう検出手段及び報知手段を構成し
ている。
【0032】本実施形態では、カレント状態で不正と認
識できるトランザクションの資源マネージャ30におけ
るサービスプログラムだけで不正トランザクションと認
識できるトランザクションだけでなく、カレント状態で
は正常トランザクションと認識できるトランザクション
の状態の不正なトランザクションの検出も可能となる。
識できるトランザクションの資源マネージャ30におけ
るサービスプログラムだけで不正トランザクションと認
識できるトランザクションだけでなく、カレント状態で
は正常トランザクションと認識できるトランザクション
の状態の不正なトランザクションの検出も可能となる。
【0033】次に、本実施形態における分散トランザク
ション処理システム10の動作を説明する。トランザク
ションマネージャ40は、資源マネージャ30の各ロー
カルトランザクションに対して、以下の手順に従って命
令を発行し、一連の処理を行っている。XA_OPEN
により、資源マネージャ30を初期化し、アプリケーシ
ョンプログラム20が仕様可能とした後、XA_STA
RTにより、トランザクションを開始させ、XA_EN
Dにより、トランザクションを終了させる。
ション処理システム10の動作を説明する。トランザク
ションマネージャ40は、資源マネージャ30の各ロー
カルトランザクションに対して、以下の手順に従って命
令を発行し、一連の処理を行っている。XA_OPEN
により、資源マネージャ30を初期化し、アプリケーシ
ョンプログラム20が仕様可能とした後、XA_STA
RTにより、トランザクションを開始させ、XA_EN
Dにより、トランザクションを終了させる。
【0034】そして、XA_PREPAREにより、ト
ランザクションマネージャ40から資源マネージャ30
への状態確認でコミットが行えるかどうかを確認してか
ら、XA_COMMITにより、トランザクションマネ
ージャ40から資源マネージャ30へのコミット指示
し、XA_CLOSEにより、アプリケーションプログ
ラム20による資源マネージャ30の使用を終了する。
このとき、プロセスの途中でトランザクションマネージ
ャ40が戻り値に異常を検知した場合、資源マネージャ
30に対してXA_ROLLBACKを発行し、直前に
コミットした状態以降のすべてのプロセスを無効とす
る。
ランザクションマネージャ40から資源マネージャ30
への状態確認でコミットが行えるかどうかを確認してか
ら、XA_COMMITにより、トランザクションマネ
ージャ40から資源マネージャ30へのコミット指示
し、XA_CLOSEにより、アプリケーションプログ
ラム20による資源マネージャ30の使用を終了する。
このとき、プロセスの途中でトランザクションマネージ
ャ40が戻り値に異常を検知した場合、資源マネージャ
30に対してXA_ROLLBACKを発行し、直前に
コミットした状態以降のすべてのプロセスを無効とす
る。
【0035】ここで、注意しなければならないのは、ア
プリケーション処理であるXA_START処理からX
A_END処理で完結する1単位ローカルトランザクシ
ョンが終了しても、グローバルトランザクションを構成
するすべてのローカルトランザクションが正常終了しな
い限り、XA_PREPARE処理及びXA_COMM
IT処理の資源確定指示が発行されないということであ
る。
プリケーション処理であるXA_START処理からX
A_END処理で完結する1単位ローカルトランザクシ
ョンが終了しても、グローバルトランザクションを構成
するすべてのローカルトランザクションが正常終了しな
い限り、XA_PREPARE処理及びXA_COMM
IT処理の資源確定指示が発行されないということであ
る。
【0036】具体例として、トランザクションをデータ
ベース更新プロセスA,B,C(ローカルトランザクシ
ョン)により構成したアプリケーションについて図3を
参照しながら説明する。同図に示すように、AとBのプ
ロセスが正常終了してCのプロセス終了を待機している
場合を想定する。なお、このときのA及びBのプロセス
状態は、XA_END終了状態となっている。
ベース更新プロセスA,B,C(ローカルトランザクシ
ョン)により構成したアプリケーションについて図3を
参照しながら説明する。同図に示すように、AとBのプ
ロセスが正常終了してCのプロセス終了を待機している
場合を想定する。なお、このときのA及びBのプロセス
状態は、XA_END終了状態となっている。
【0037】Cのプロセスが正常終了してXA_END
状態となると、トランザクションマネージャ40は各プ
ロセスに対し、XA_PREPARE及びXA_COM
MITを発行してトランザクションを正常に終了する。
また、Cのプロセスが異常終了した場合、アプリケーシ
ョンプログラム20はトランザクションマネージャ40
にロールバック発行要求指示を出し、トランザクション
マネージャ40からA及びBのプロセスに対し、XA_
ROLLBACKが発行される。
状態となると、トランザクションマネージャ40は各プ
ロセスに対し、XA_PREPARE及びXA_COM
MITを発行してトランザクションを正常に終了する。
また、Cのプロセスが異常終了した場合、アプリケーシ
ョンプログラム20はトランザクションマネージャ40
にロールバック発行要求指示を出し、トランザクション
マネージャ40からA及びBのプロセスに対し、XA_
ROLLBACKが発行される。
【0038】しかし、Cのプロセスが異常終了したにも
拘わらず、アプリケーションプログラム20がロールバ
ック要求指示を出さなかった場合(例えば、アプリケー
ションがCOREアボートした場合など)、A及びBの
プロセスは更新プロセスのため、データベースに対する
使用予約(ロック)を保持したまま、XA_END終了
状態でいつまでも確定しないこととなる。XA_END
の処理状態は正常状態であるため、資源マネージャ30
のXA情報取得サービスでは、正常プロセスと認識され
る。
拘わらず、アプリケーションプログラム20がロールバ
ック要求指示を出さなかった場合(例えば、アプリケー
ションがCOREアボートした場合など)、A及びBの
プロセスは更新プロセスのため、データベースに対する
使用予約(ロック)を保持したまま、XA_END終了
状態でいつまでも確定しないこととなる。XA_END
の処理状態は正常状態であるため、資源マネージャ30
のXA情報取得サービスでは、正常プロセスと認識され
る。
【0039】本実施形態では、以下の手順で障害を検知
している。資源マネージャ30のXA情報取得サービス
により、実行中のトランザクションにおけるトランザク
ション識別子とXA処理状態とを図4に示すような構成
からなるAファイルに保存する。そして、一定時間後に
再度資源マネージャ30のXA情報取得サービスにより
実行中のトランザクションにおけるトランザクション識
別子とXA処理状態とをBファイルに保存する。ここ
で、Aファイル及びBファイルにおけるグローバルトラ
ンザクション識別子(GTRID)とXA処理状態とを
比較し、XA処理状態に変化のないトランザクション識
別子を不正トランザクションとみなし、警告をシステム
管理者に発行するとともに、BファイルをAファイルに
上書きし、新たなAファイルとする。
している。資源マネージャ30のXA情報取得サービス
により、実行中のトランザクションにおけるトランザク
ション識別子とXA処理状態とを図4に示すような構成
からなるAファイルに保存する。そして、一定時間後に
再度資源マネージャ30のXA情報取得サービスにより
実行中のトランザクションにおけるトランザクション識
別子とXA処理状態とをBファイルに保存する。ここ
で、Aファイル及びBファイルにおけるグローバルトラ
ンザクション識別子(GTRID)とXA処理状態とを
比較し、XA処理状態に変化のないトランザクション識
別子を不正トランザクションとみなし、警告をシステム
管理者に発行するとともに、BファイルをAファイルに
上書きし、新たなAファイルとする。
【0040】以上の手順を繰り返しつつ、障害を検知し
ている。なお、本実施形態では、XA情報取得処理間隔
をプロセス処理の最長想定時間(約1分)の5倍に相当
する5分に設定している。このように、一定の時間間隔
をおいて不正となる可能性のあるグローバルトランザク
ション識別子をAファイルとBファイルとに記録し(ス
テップS100、ステップS110)、各グローバルト
ランザクション識別子のマッチングを行う(ステップS
120)。ここで、AファイルとBファイルとに同じグ
ローバルトランザクション識別子があるときは、不正ト
ランザクションとしてシステムに通知する(ステップS
130)ので、不正なトランザクションが発生したこと
を早期に発見して対処することができ、ユーザの認識す
る上での稼働率を上げ、ユーザの満足度を高めることが
可能となる。
ている。なお、本実施形態では、XA情報取得処理間隔
をプロセス処理の最長想定時間(約1分)の5倍に相当
する5分に設定している。このように、一定の時間間隔
をおいて不正となる可能性のあるグローバルトランザク
ション識別子をAファイルとBファイルとに記録し(ス
テップS100、ステップS110)、各グローバルト
ランザクション識別子のマッチングを行う(ステップS
120)。ここで、AファイルとBファイルとに同じグ
ローバルトランザクション識別子があるときは、不正ト
ランザクションとしてシステムに通知する(ステップS
130)ので、不正なトランザクションが発生したこと
を早期に発見して対処することができ、ユーザの認識す
る上での稼働率を上げ、ユーザの満足度を高めることが
可能となる。
【0041】
【発明の効果】以上説明したように本発明は、不正なト
ランザクションが発生したことを早期に発見して対処す
ることにより、ユーザの認識する上での稼働率を上げ、
ユーザの満足度を高めることが可能なトランザクション
処理システムを提供することができる。また、請求項2
にかかる発明によれば、不正なトランザクションが発生
したときに資源を占有してしまい、資源を共有する他の
ユーザによる資源利用が制限されるのを防止することが
できる。
ランザクションが発生したことを早期に発見して対処す
ることにより、ユーザの認識する上での稼働率を上げ、
ユーザの満足度を高めることが可能なトランザクション
処理システムを提供することができる。また、請求項2
にかかる発明によれば、不正なトランザクションが発生
したときに資源を占有してしまい、資源を共有する他の
ユーザによる資源利用が制限されるのを防止することが
できる。
【0042】さらに、請求項3にかかる発明によれば、
処理状況を比較する手順を簡略化することが可能となる
ため、効率良く不正なトランザクションの検出を行うこ
とができる。さらに、請求項4にかかる発明によれば、
不正なトランザクションを検出したとき、検出したこと
をシステム全体に知らせることができる。
処理状況を比較する手順を簡略化することが可能となる
ため、効率良く不正なトランザクションの検出を行うこ
とができる。さらに、請求項4にかかる発明によれば、
不正なトランザクションを検出したとき、検出したこと
をシステム全体に知らせることができる。
【0043】さらに、請求項5にかかる発明によれば、
最新の処理状況を比較して不正なトランザクションの検
出を行うことができる。さらに、請求項6にかかる発明
によれば、システム管理者による資源の監視作業及び不
正アプリケーションの発生時における対応作業を省略す
ることの可能なトランザクション処理システムの制御プ
ログラムを記録した媒体を提供することができる。
最新の処理状況を比較して不正なトランザクションの検
出を行うことができる。さらに、請求項6にかかる発明
によれば、システム管理者による資源の監視作業及び不
正アプリケーションの発生時における対応作業を省略す
ることの可能なトランザクション処理システムの制御プ
ログラムを記録した媒体を提供することができる。
【図1】本実施形態における分散トランザクションモデ
ルの構成を示すブロック図である。
ルの構成を示すブロック図である。
【図2】不正トランザクションを検出する際の手順を示
すフローチャートである。
すフローチャートである。
【図3】アプリケーションを構築する際の手順を示すフ
ローチャートである。
ローチャートである。
【図4】Aファイルの構成を示す概略図である。
10 分散トランザクション処理システム 20 アプリケーションプログラム(AP) 30 資源マネージャ(RM) 40 トランザクションマネージャ(TM)
Claims (6)
- 【請求項1】 トランザクションを入力する入力手段
と、 この入力されたトランザクションに基づいて処理を実行
する処理手段と、 上記トランザクションに基づく処理状況を所定の時間間
隔をおいて複数回にわたって記憶する記憶手段と、 この記憶された各トランザクションに基づく処理状況を
比較し、この処理状況に変化がないときに上記トランザ
クションを不正なものとして検出する検出手段とを具備
することを特徴とするトランザクション処理システム。 - 【請求項2】 上記請求項1に記載のトランザクション
処理システムにおいて、 上記処理手段は、複数個の異なるハードウェアを利用
し、上記トランザクションに基づいて処理を実行するこ
とを特徴とするトランザクション処理システム。 - 【請求項3】 上記請求項1または請求項2に記載のト
ランザクション処理システムにおいて、 上記記憶手段は、上記トランザクションに基づく処理状
況を調査して不正となる可能性のあるトランザクション
の識別子を所定の時間間隔をおいて複数回にわたって記
憶し、 上記検出手段は、この記憶された各識別子を比較して共
通する識別子があるとき、この識別子に関するトランザ
クションを不正なものとして検出することを特徴とする
トランザクション処理システム。 - 【請求項4】 上記請求項1〜請求項3のいずれかに記
載のトランザクション処理システムにおいて、 上記検出手段は、不正なトランザクションを検出したこ
とを報知する報知手段を備えることを特徴とするトラン
ザクション処理システム。 - 【請求項5】 上記請求項1〜請求項4のいずれかに記
載のトランザクション処理システムにおいて、 上記検出手段は、上記記憶手段に記憶された最新の処理
状況どうしを比較することを特徴とするトランザクショ
ン処理システム。 - 【請求項6】 入力されたトランザクションに基づいて
処理を実行して上記トランザクションに基づく処理状況
を所定の時間間隔をおいて複数回にわたって記憶すると
ともに、この記憶された各トランザクションに基づく処
理状況を比較し、この処理状況に変化がないときに上記
トランザクションを不正なものとして検出することを特
徴とするトランザクション処理システムの制御プログラ
ムを記録した媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10353613A JP2000181754A (ja) | 1998-12-11 | 1998-12-11 | トランザクション処理システム及びトランザクション処理システムの制御プログラムを記録した媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10353613A JP2000181754A (ja) | 1998-12-11 | 1998-12-11 | トランザクション処理システム及びトランザクション処理システムの制御プログラムを記録した媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000181754A true JP2000181754A (ja) | 2000-06-30 |
Family
ID=18432038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10353613A Pending JP2000181754A (ja) | 1998-12-11 | 1998-12-11 | トランザクション処理システム及びトランザクション処理システムの制御プログラムを記録した媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000181754A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2013046883A1 (ja) * | 2011-09-30 | 2015-03-26 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | トランザクション処理システム、方法及びプログラム |
-
1998
- 1998-12-11 JP JP10353613A patent/JP2000181754A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2013046883A1 (ja) * | 2011-09-30 | 2015-03-26 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | トランザクション処理システム、方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5704031A (en) | Method of performing self-diagnosing hardware, software and firmware at a client node in a client/server system | |
CA2189307C (en) | Method of commitment in a distributed database transaction | |
US5317739A (en) | Method and apparatus for coupling data processing systems | |
US6959331B1 (en) | System and method for operating a client network computer in a disconnected mode by establishing a connection to a fallover server implemented on the client network computer | |
JP2703479B2 (ja) | タイム・ゼロ・バックアップ・セッションの安全保護機能を有するデータ処理方法及びシステム | |
JP4726416B2 (ja) | コンピュータ・クラスタを操作するための方法 | |
US5923833A (en) | Restart and recovery of OMG-compliant transaction systems | |
CN104793988A (zh) | 跨数据库分布式事务的实现方法和装置 | |
US5632027A (en) | Method and system for mass storage device configuration management | |
EP1624375A2 (en) | Apparatus, method and program to handle an abnormality in a distributed information processing system | |
JP2005510809A (ja) | 媒体のエクスポートの予定を立てるための方法とシステム | |
US6795834B2 (en) | Apparatus, method, and storage medium for file management | |
US7523113B2 (en) | Distributed system, computer and state transition control method for distributed system | |
KR20050035301A (ko) | 이종의 프로세스들을 통합하도록 적응된 데이터 프로세싱시스템 | |
CN114595074A (zh) | 一种基于分布式调度的编排中事务失败回滚方法及装置 | |
JP2003108252A (ja) | ライセンス管理方法,ライセンス管理サーバ,ライセンス管理プログラム及び記録媒体 | |
JP2000181754A (ja) | トランザクション処理システム及びトランザクション処理システムの制御プログラムを記録した媒体 | |
CN114153858B (zh) | 一种MySQL表空间下租户自动更新的方法及装置 | |
CN111698266B (zh) | 服务节点调用方法、装置、设备及可读存储介质 | |
CN112685142A (zh) | 分布式数据处理系统 | |
JP3992029B2 (ja) | オブジェクト管理方法 | |
JP6542172B2 (ja) | ジョブ実行制御装置およびプログラム | |
JP2001306380A (ja) | 二相コミット回避方式およびそのプログラム記録媒体 | |
JP4262932B2 (ja) | トランザクション処理装置、同装置のトランザクション処理方法、トランザクション処理プログラムおよび同プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP3995023B2 (ja) | オブジェクト管理方法 |