ホーム Topics トランザクション管理 トランザクション管理とは
IBM Zについて クラウド関連の最新情報の購読
コンピューターのモニター、サーバー、雲、ドットの絵文字のコラージュの図

公開日: 2024年4月5日
寄稿者: Josh Schneider、Ian Smalley

トランザクション管理とは

ランザクション管理はデータベース管理システム(DBMS)の不可欠なプロセスであり、トランザクション管理ソフトウェアは、試行されたすべてのトランザクションを監視、調整、実行します。

ワークフローを自動化するためのトランザクション管理ソフトウェアは、電子商取引、金融、ホスピタリティー、正確なデータベース管理を必要とする企業など、トランザクション処理を伴うあたゆる業界にとって重要な役割を果たします。

重要な点として、トランザクション管理ソフトウェアは原子性の概念に基づいて、単一のトランザクションを、すべて完了する必要がある一連の操作として、または何も完了していないと見なされる一連の操作として定義します。つまり、トランザクション管理システムはデータの一貫性を維持するために、トランザクションが部分的に完了することがないようにします。

たとえば、ある人がATMからお金を引き出そうとすると、トランザクション管理ソフトウェアは、口座残高を確認し、要求された金額を差し引き、銀行の記録を更新し、出金した現金を引き出すために必要なデータベース・クエリーと変更を処理してます。これらのステップはすべて1つの新しいトランザクションと見なされ、トランザクション管理システムによってプロセス全体が確実に完了し、銀行のデータベースに矛盾が生じるのを防ぎ、正確な台帳を保存します。

トランザクション中、相関状態のデータベースは流動的であり、一貫性がないと見なされます。この間、トランザクションは、データベースを読み取って情報を提供する(銀行口座残高の確認など)か、新しい情報をデータベースに書き込む(引き出し後の口座残高の更新など)ことによって、どのような数の読み取り操作や書き込み操作を実行できます。トランザクションが完全に完了して初めて、データベースは新しい一貫した状態に戻ることができます。

IBM Financial Transaction Manager

IBM Financial Transaction Manager オファリングが銀行や金融機関の俊敏性と最新化の推進にどのように役立つかをご覧ください。

関連コンテンツ

IBMニュースレターの購読

トランザクションの状況

原子性の原理により、トランザクション管理ソフトウェアは、データベースの整合性を保護しながら、個別の一連の操作を単一のトランザクションとして扱うことができます。

原子性により、不完全なトランザクションまたは中断されたトランザクションによって発生する可能性のあるエラーが防止されます。ATMの例に戻ると、原子性は、トランザクションが実際の現金を引き出す前にユーザーの銀行口座からお金を引き落とすのを防ぎます。システム・クラッシュなどによりATMがお金を引き出せなくなると、トランザクション全体が中止され、データベースやユーザーの口座は変更されません。

トランザクションが進行中でデータベースが流動的である間、トランザクションはいくつかの連続したトランザクション状態に分類できます。

アクティブ

トランザクションが開始されると、アクティブ状態になり、その間にデータベースの読み取りおよび書き込み操作が実行されます。

一部コミット済み

トランザクションに必要な手順がすべて完了すると、マスター・データベースが更新されるまで、トランザクションは部分的にのみコミットされたとみなされます。

コミット済み

トランザクションが正常に完了すると、トランザクションはデータベースにコミットされ、コミット済み状態になります。

失敗

トランザクションが1つ以上の操作の実行に失敗するか、中止されると、トランザクションは失敗した状態とみなされます。トランザクションが失敗するとロールバックがトリガーされ、進行中のデータベースの変更がすべて元に戻されます。

終了

すべてのトランザクションの最終状態。終了状態のトランザクションはシステムから削除され、データベース操作を実行できなくなります。

トランザクションはすべてアクティブ状態から始まり、問題がなければ、部分コミット状態、コミット状態、終了状態と進みます。トランザクションの処理中に問題が発生した場合、トランザクションは失敗状態になり、トランザクション中に行われたすべての変更がロールバックされます。その後、トランザクションは実行を再試行するか、中止することができます。中止されたかコミットされたかに関係なく、コミットされたすべてのトランザクションは最終的に終了状態になり、DBMSが新しいトランザクションを処理できるようにリソースを解放します。

ACIDプロパティについて

データベース管理の分野では、原子性はデータベースの整合性を維持するために必要な4つの重要な特性の1つにすぎません。ACID 頭字語で呼ばれる、原子性(atomicity)、一貫性(consistency)、分離性(isolation)、持続性(durability)の4つの特性は次のとおりです。

  • 原子性:トランザクションは単一の操作単位として扱われ、完全に実行されるか、まったく実行されないかのどちらかであり、その間の状態がマスター・データベースにコミットされることはありません。
  • 一貫性:データベースをチェックするすべてのユーザーが最新かつ正確な情報にアクセスできるよう、データベースは一貫した状態を維持する必要があります。
  • 分離:トランザクションは相互に分離して処理される必要があります。同時実行トランザクションからの情報が別のトランザクションに関連する場合、トランザクションの適切な実行を容易にするために、トランザクション分離レベルが実装される場合があります。一般的な分離レベルには、コミットされていない読み取り、コミットされた読み取り、反復可能な読み取り、シリアル化可能などがあります。
  • 持続性:トランザクションは、完了したすべてのトランザクションがDBMSによって保持され、システム障害が発生した場合に失われないという意味で、持続性が必要です。
トランザクション管理テクノロジー

DBMSの一側面として、トランザクション管理システムは、自動化、テンプレート、チェックリストなど、さまざまなレベルの最適化を実現する多数のデータベース・テクノロジーとソフトウェアを利用しています。IBM、Microsoft、Oracleなどのベンダーは、幅広いトランザクション管理ソリューションを競争力のある価格で提供しています。より広範なトランザクション管理テクノロジには次のようなものがあります。

構造化照会言語(SQL)

SQLは、リレーショナル・データベースに情報を保存および処理するための標準プログラミング言語です。典型的なSQLコマンドには、BEGIN TRANSACTION、COMMIT、ROLLBACKなどがあります。

JavaトランザクションAPI(JTA)

JTAは企業向けアプリケーション用の標準アプリケーション・プログラミング・インターフェース(API) で、トランザクション管理アプリケーションが原子性と一貫性を確保しながら、データベースやメッセージング・システムなどの他のアプリケーション・タイプと通信できるようにします。

トランザクション管理のメリットとユースケース

さまざまな業界が、リレーショナル・データベースと、それが表す重要な物理的(在庫)運用リソースと一時的(情報)運用リソースの両方を効果的かつ効率的に管理するために、トランザクション管理を使用しています。

一般的なトランザクション管理ユースケースの簡単なリストを以下に示します。

財務

証券会社や銀行機関を含む金融サービスは、日常業務だけでなく、マイクロ秒単位のビジネスにおいてもトランザクション管理に依存しています。トランザクション管理がなければ、最新の当座預金口座や株式取引プラットフォームなどの一般的な製品は実現できません。

eコマース

オンライン小売プラットフォームでは、トランザクション管理によって注文処理、支払い、在庫管理が容易になり、eコマースの注文を効果的に処理できます。

不動産

複雑な不動産の世界では、プロの取引コーディネーターはトランザクション管理ソフトウェアを利用して不動産の購入、販売、リースを効率化します。

顧客関係管理(CRM)

SalesforceのようなCRMシステムは、大企業にとって、見込み客、顧客とのやり取り、販売注文、DBSMやトランザクション管理を通じてアクセスできるその他さまざまなタッチ・ポイントを追跡、管理する上で極めて重要です。

トランザクション管理の課題

トランザクション管理は、現代の多くの事業運営に欠かせないものです。ただし、信頼性の高いトランザクション管理では、次のような特定の重要な課題を軽減できる必要があります。

  • 依存関係管理:トランザクション管理システムには、トランザクションの依存関係を管理する機能を備える必要があります。これは、複数の個別トランザクションが別のトランザクションから情報が解放されるのを待って停止してしまうようなデッドロック状態を避けるためです。
  • システムクラッシュからの復旧:システム障害が発生した場合、トランザクション管理システムはデータベースを一貫性のある状態に復元するのに十分な耐久性を備えている必要があります。
  • リアルタイム処理:株式取引や価格設定エンジンなどリアルタイムに依存するトランザクションの場合、トランザクション処理システムは大量のトランザクションを効率的かつ低レイテンシーで処理できなくてはなりません。
関連ソリューション
IBM Z

IBM Z®は、エンタープライズ向けオペレーティング・システムとIBM Zシステム・ソフトウェアを実行する最新のインフラストラクチャー・ファミリーです。IBM Zは、IBMの主力エンタープライズ・コンピューティング・プラットフォームに期待されるセキュリティー、レジリエンス、パフォーマンス、拡張性、およびサステナビリティーを提供します。

IBM Zについて

IBM IMS Transaction Manager Solution Pack for z/OS

IBM IMS™ Transaction Manager Solution Pack for z/OS®を使用すると、アプリケーション・リソースの変更を改善し、ワークロードの管理性を向上させ、メッセージ・キューなどを管理できます。z/OSベースの環境でIMS Transaction Managerを管理、監視できるように設計されたツールのセットを入手しましょう。

IBM IMS Transaction Manager Solution Pack for z/OSの詳細はこちら

IBM CICS Transaction Server for z/OS

IBM® CICS Transaction Server(CICSとも呼ばれます)は、ハイブリッド・アーキテクチャーでトランザクション・エンタープライズ・アプリケーションをホストするために使用される、世界クラスの安全かつ強力でスケーラブルな混合言語アプリケーション・サーバー・プラットフォームです。

IBM CICS Transaction Server for z/OS を探る
IBMテクノロジー・コンサルティング・サービス

IBM コンサルティングでビジネス目標の達成を加速させましょう。当社は、新しいテクノロジーをコアのビジネス・プロセスとプラットフォーム戦略に組み込んで運用できるようにすることで、テクノロジー管理を簡素化し、コストを削減する、専用のアプリケーションのモダナイゼーションの実現を支援します。

IBMテクノロジー・コンサルティング・サービスの詳細はこちら

参考情報 メインフレームとは何ですか?

メインフレームは、最高レベルのセキュリティーと信頼性を備え、毎日最大1兆件のWebトランザクションを処理するように設計されたデータ・サーバーです。

トランザクション処理システム(TPS)とは

トランザクション処理システム(TPS)は、ビジネス・トランザクション中に顧客データとビジネス・データの両方の収集と取得を管理するために使用されるデータ管理情報処理ソフトウェアの一種です。

データ管理とは

データ管理とは、組織のデータを取り入れ、処理、保護、保管することです。この場合、データはビジネスの成果を向上させるための戦略的な意思決定に利用されます。

データ・セキュリティーとは何か?

データ・セキュリティーとは、デジタル情報をそのライフサイクル全体を通して、不正アクセス、破損、盗難から保護するためのプラクティスです。

電子データ交換(EDI)とは

EDI(電子データ交換)は、2つの組織間でビジネス文書を標準形式でやり取りすることです。EDIを簡単に定義すると、発注書や請求書などの紙ベースの文書に代わる標準的な電子形式ということになります。

eコマースとは

eコマース(電子商取引)は、インターネット上で商品やサービスを売買するプロセスです。これには、企業、消費者、またはその両方の間で製品またはサービスを交換することが含まれます。

次のステップ

効率的なトランザクション管理を使用する幅広い業界に対応しているIBM Zは、企業が創造、革新、構築するための強力で安全なプラットフォームを提供します。IBM Z®は、エンタープライズ・オペレーティング・システムとIBM Zシステム・ソフトウェアを実行する最新のインフラストラクチャー・ファミリーで、IBM®に期待されるセキュリティー、レジリエンス、パフォーマンス、拡張性、持続可能性を実現します。

IBM Zについて