什么是 OLTP?定义、架构、示例

什么是OLTP?

OLTP是一种操作型系统,它支持三层架构中的面向事务的应用程序。它管理组织的日常交易。OLTP主要侧重于查询处理、在多用户访问环境中维护数据完整性以及以每秒总交易量衡量的有效性。OLTP的全称是在线事务处理。

OLTP的特点

以下是OLTP的重要特点

  • OLTP使用包含少量数据的事务。
  • 可以轻松访问数据库中的索引数据。
  • OLTP拥有大量用户。
  • 它具有快速的响应时间
  • 终端用户可以直接访问数据库
  • OLTP使用完全规范化的模式来确保数据库的一致性。
  • OLTP系统的响应时间很短。
  • 它严格地对少量记录执行预定义的操作。
  • OLTP存储最近几天或一周的记录。
  • 它支持复杂的数据模型和表。

OLTP系统可以处理的查询类型

OLTP系统是一个在线数据库变更系统。因此,它支持数据库查询,例如从数据库中插入、更新和删除信息。

POS system for OLTP
POS系统用于OLTP

以超市的销售点系统为例,该系统可以处理以下示例查询

  • 检索特定产品的描述。
  • 筛选与供应商相关的所有产品。
  • 搜索客户记录。
  • 列出价格低于预期金额的产品。

OLTP的架构

这是OLTP的架构

OLTP Architecture
OLTP架构
  1. 业务/企业战略:企业战略涉及影响整个组织的事务。在OLTP中,它通常由公司内部、董事会或高层管理人员在高层面上制定。
  2. 业务流程:OLTP业务流程是一组活动和任务,一旦完成,就可以实现组织目标。
  3. 客户、订单和产品:OLTP数据库存储有关产品、订单(事务)、客户(买家)、供应商(卖家)和员工的信息。
  4. ETL流程:它从各种RDBMS源系统分离数据,然后转换数据(如应用连接、计算等),并将处理后的数据加载到数据仓库系统中。
  5. 数据市场和数据仓库:数据市场是数据仓库环境中特定的结构/访问模式。OLAP使用它来存储处理后的数据。
  6. 数据挖掘、分析和决策:数据市场和数据仓库中存储的数据可用于数据挖掘、分析和决策。这些数据有助于您发现数据模式、分析原始数据,并为组织的增长做出分析性决策。

OLTP事务示例

OLTP系统的一个例子是ATM中心。假设一对夫妇在一个银行拥有一个联名账户。有一天,两人同时到达不同的ATM中心,并想同时提取银行账户中的全部金额。

OLTP Transaction
OLTP ATM图片

但是,首先完成身份验证过程的人将能够获得现金。在这种情况下,OLTP系统确保提取的金额永远不会超过银行中的金额。需要注意的是,OLTP系统针对事务的卓越性进行了优化,而不是数据分析。

OLTP系统的其他示例如下

  • 在线银行
  • 在线机票预订
  • 发送短信
  • 订单录入
  • 将书籍添加到购物车

OLTP 与 OLAP

OLTP vs. OLAP

以下是OLTP和OLAP之间重要区别

OLTP OLAP
OLTP是在线事务处理系统。 OLAP是在线分析和数据检索过程。
其特点是大量的短期在线事务。 它以大量数据为特征。
OLTP是在线数据库修改系统。 OLAP是在线数据库查询管理系统。
OLTP使用传统的DBMS OLAP使用数据仓库
从数据库插入、更新和删除信息。 主要是选择操作
OLTP及其事务是数据源。 不同的OLTP数据库成为OLAP的数据源。
OLTP数据库必须维护数据完整性约束。 OLAP数据库不会频繁修改。因此,数据完整性不是问题。
其响应时间以毫秒计。 响应时间为秒到分钟。
OLTP数据库中的数据总是详细且有组织的。 OLAP过程中的数据可能没有组织。
允许读/写操作。 只读,很少写。
它是面向市场的过程。 它是面向客户的过程。
此过程中的查询是标准化的且简单的。 涉及聚合的复杂查询。
数据的完整备份与增量备份相结合。 OLAP只需要不时进行备份。备份不如OLTP重要。
数据库设计是面向应用的示例:数据库设计会随着零售、航空、银行等行业的变化而变化。 数据库设计是面向主题的。示例:数据库设计会随着销售、营销、采购等主题而变化。
它由数据关键用户(如职员、DBA和数据库专业人员)使用。 它由数据知识用户(如员工、经理和CEO)使用。
它专为实时业务运营而设计。 它专为按类别和属性分析业务指标而设计。
事务吞吐量是性能指标 查询吞吐量是性能指标。
这种数据库用户支持数千名用户。 这种数据库只支持数百名用户。
它有助于提高用户的自助服务和生产力 帮助提高业务分析师的生产力。
数据仓库历来是一个开发项目,其构建成本可能很高。 OLAP多维数据集不是开放的SQL服务器数据仓库。因此,管理OLAP服务器需要技术知识和经验。
它为日常使用的数据提供了快速的结果。 它确保对查询的响应始终更快。
它易于创建和维护。 它允许用户借助电子表格创建视图。
OLTP旨在实现快速的响应时间、低数据冗余,并且是规范化的。 创建数据仓库是为了集成不同的数据源来构建一个统一的数据库。

OLTP的优点

以下是OLTP系统的优点/好处

  • OLTP提供准确的收入和费用预测。
  • 由于所有事务的及时修改,它为稳定业务/组织奠定了坚实的基础。
  • OLTP为客户提供了更便捷的交易。
  • 它通过加速和简化各个流程来扩大组织的客户群。
  • OLTP支持更大的数据库。
  • 数据的数据操作分区很容易。
  • 我们需要OLTP来使用系统频繁执行的任务。
  • 当我们只需要少量记录时。
  • 涉及插入、更新或删除数据的任务。
  • 当您需要一致性和并发性来执行确保其更高可用性的任务时,可以使用它。

OLTP的缺点

以下是OLTP系统的缺点/弊端

  • 如果OLTP系统遇到硬件故障,在线事务将受到严重影响。
  • OLTP系统允许多个用户同时访问和更改相同的数据,这常常会造成前所未有的情况。
  • 如果服务器hang几秒钟,可能会影响大量的交易。
  • OLTP需要大量员工分组工作来维护库存。
  • 在线事务处理系统没有将产品自行转移给买家的正确方法。
  • OLTP使数据库更容易受到黑客和入侵者的攻击。
  • 在B2B交易中,买卖双方都有可能错过系统提供的效率优势。
  • 服务器故障可能导致数据库中的大量数据被擦除。
  • 您可以执行有限数量的查询和更新。

OLTP系统面临的挑战

  • 它允许多个用户同时访问和更改相同的数据。因此,它需要并发控制和恢复技术,以避免任何前所未有的情况。
  • OLTP系统数据不适合决策。您必须使用OLAP系统的数据进行“假设”分析或决策。

摘要

  • OLTP被定义为一个操作型系统,它支持三层架构中的面向事务的应用程序。
  • OLTP使用包含少量数据的事务。
  • OLTP系统是一个在线数据库变更系统。
  • OLTP的架构包含1)业务/企业战略、2)业务流程、3)客户、订单和产品、4)ETL流程、5)数据市场和数据仓库,以及6)数据挖掘、分析和决策。
  • OLTP是在线事务处理系统,而OLAP是在线分析和数据检索过程。
  • 由于所有事务的及时修改,它为稳定业务/组织奠定了坚实的基础。
  • OLTP系统允许多个用户同时访问和更改相同的数据,这常常会造成前所未有的情况。