什么是交易管理?

男性和女性商务人士在办公室走廊使用数字平板电脑和智能手机

作者

Josh Schneider

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

什么是交易管理?

交易管理是数据库管理系统 (DBMS) 的一个不可或缺的过程,在此过程中,交易管理软件监督、协调、执行任何给定的交易尝试。

用于工作流自动化的交易管理软件是任何涉及交易处理的行业的关键部分,这包括电子商务、金融、酒店和任何需要准确数据库管理的业务。

至关重要的是,交易管理软件基于原子性这一概念,将单笔交易定义为一组不可分割的操作,这些操作必须全部完成,否则视为全部未完成。换言之,为了保持数据一致性,交易管理系统要确保永远不会出现交易仅部分完成的情况。

例如,当一个人试图从 ATM 取款时,交易管理软件会处理必要的数据库查询和更改,以检查其账户余额,减去所请求的金额,更新银行记录,并释放取款现金。所有这些步骤被视为一笔新交易,交易管理系统确保整个过程顺利完成,防止银行数据库出现任何不一致,并维护账目的准确性。

在交易处理期间,相关数据库的状态处于变化之中,因而被视为存在不一致性。在此期间,交易可以执行任意数量的读和/或写操作,即读取数据库以提供信息(例如检查银行账户余额)和/或将新信息写入数据库(例如取款后更新账户余额)。只有当交易充分完成后,数据库才能回到新的一致状态。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

交易状态

原子性原则允许交易管理软件将离散的操作序列视为单一交易,同时保护数据库的完整性。

原子性可以防止因交易不完整或中断而产生的错误。回到 ATM 示例,原子性可防止交易在分配实际现金之前从用户的银行账户中扣款。如果发生系统崩溃等事件导致 ATM 无法取款,整个交易将被中止,并且数据库或用户账户不会发生任何更改。

在交易进行过程中,数据库处于变化之中,交易可被分解为多个连续的交易状态。

活动

交易一旦开始,就会进入活动状态,在此期间可以进行数据库读写操作。

部分提交

一旦一笔交易的所有必要步骤都已完成,该交易即被认为仅部分提交,直到主数据库更新。

已提交

交易成功完成后,它就会被提交给数据库,进入已提交状态。

失败

当一笔交易无法执行其一项或多项操作或中止时,则视为处于失败状态。失败交易将触发回滚,回滚会撤消正在执行的任何数据库更改。

已终止

所有交易的最终状态,处于终止状态的交易会被从系统中取出,再也无法执行任何数据库操作。

所有交易均以活动状态开始,如果没有问题,将进入部分提交、提交和终止状态。如果在交易处理过程中出现问题,交易将进入失败状态,并回滚交易过程中所做的所有更改。然后可能会重新尝试执行交易,也可能会中止。无论是中止还是已提交,所有已提交的交易最终都会进入终止状态,从而释放资源,以便 DBMS 处理新的交易。

了解 ACID 特性

在数据库管理领域,原子性只是维护数据库完整性所必需的四个关键特性之一。这四个特性用首字母缩略词 ACID 表示,分别是原子性、一致性、隔离性和持久性:

  • 原子性:交易可视为单一的操作单元,要么完全执行,要么根本不执行,中间状态不会提交到主数据库。
  • 一致性:数据库必须保持一致的状态,以便所有检查数据库的用户都能获得最新的准确信息。
  • 隔离性:交易在处理时必须相互隔离。当一个并发交易中的信息与另一交易相关时,可实施交易隔离级别,以协助交易正常执行。常见的隔离级别包括读未提交、读已提交、可重复读和可序列化。
  • 持久性:交易必须具有持久性,即所有已完成的交易都由 DBMS 保存,即使系统发生故障也不会丢失。
Think 2025

利用混合云规模化释放 AI 价值

了解精心设计的混合架构如何整合数据、发挥高性能计算优势并提升安全性,为 AI 规模化应用铺就成功之路。

交易管理技术

作为 DBMS 的一个方面,交易管理系统依赖许多数据库技术和软件来提供不同程度的优化,例如自动化、模板和检查清单。IBM、Microsoft 和 Oracle 等供应商以具有竞争力的价格提供一系列交易管理解决方案。更广泛的交易管理技术说明如下。

结构化查询语言 (SQL)

SQL 是关系数据库中用于存储和处理信息的标准编程语言。典型的 SQL 命令包括 BEGIN TRANSACTION、COMMIT 和 ROLLBACK。

Java 事务 API (JTA)

JTA 是企业应用程序的标准应用程序编程接口 (API),允许交易管理应用程序与其他类型的应用程序(包括数据库和消息传递系统)进行通信,同时确保原子性和一致性。

交易管理的优势和用例

各行各业都依赖交易管理来有效地管理关系数据库及其所代表的重要运营资源,包括实物资源(例如库存)和非实物资源(例如信息)。

常见交易管理用例的简要列表包括以下内容。

财务

金融服务机构,包括经纪公司和银行,无论是在日常运营中,还是在瞬息万变的微秒级业务中,都离不开交易管理。如果没有交易管理,现代支票账户和股票交易平台等常见产品就无法正常运作。

电子商务

对于在线零售平台而言,交易管理有助于订单处理、支付和库存管理,从而高效完成电子商务订单。

房地产

在复杂的房地产领域中,专业的交易协调员依赖交易管理软件来简化房产的买卖和租赁。

客户关系管理 (CRM)

对于大型组织来说,CRM 系统(如 Salesforce)至关重要,它可以用来跟踪和管理潜在客户、客户互动、销售订单以及通过 DBSM 和交易管理可访问的各种其他接触点。

交易管理挑战

交易管理是许多现代业务运营的重要组成部分。但是,可靠的交易管理必须能够缓解某些重点挑战:

  • 依赖性管理:交易管理系统必须具备管理交易依赖性的功能,以避免出现一个或多个单独交易因等待另一个交易发布信息而陷入僵局的情况。
  • 系统崩溃恢复:系统发生故障时,交易管理系统需要足够的耐久性,以便将数据库恢复到一致的状态。
  • 实时处理:对于股票交易和定价引擎等依赖实时性的交易,交易处理系统必须能够高效、低延迟地处理大量交易。
相关解决方案
面向 IBM Z 的事务软件

交易软件通过同时有效地管理多项交易,在大型机服务器中发挥着关键作用。

深入了解 CICS on IBM z/OS
大型机应用程序现代化解决方案

利用生成式 AI 加速和简化大型机应用程序的现代化。

深入了解大型机现代化
业务运营解决方案

利用面向智能资产管理和供应链的 AI 解决方案,构建更具弹性的业务。

深入了解业务运营解决方案
采取后续步骤

交易软件通过同时有效地管理多项交易,在大型机服务器中发挥着关键作用。

深入了解 CICS on IBM z/OS 获取更多信息