Transactions 事务性和非事务性之间的区别

Transactions 事务性和非事务性之间的区别,transactions,transactional,master-data-management,Transactions,Transactional,Master Data Management,简单地说:“交易性”和“非交易性”有什么区别 在我的例子中,我在阅读以下“MDM”的定义时提出了这个问题: “在计算中,主数据管理”(MDM)包括一组 一致定义和管理 组织的非事务性数据实体(可能包括 参考数据)。” 当它说非事务性时,我相信这意味着数据不是由(在线事务处理)系统直接访问的,而是存储在一个中央存储库中,所有系统都从该存储库获取数据,并每X小时发布一次更新(以预先确定的间隔)我认为理解事务性数据和非事务性数据之间差异的最佳方法是通过示例 非事务性(与事务性数据相比,这些信息与企业相

简单地说:“交易性”和“非交易性”有什么区别

在我的例子中,我在阅读以下“MDM”的定义时提出了这个问题:

“在计算中,主数据管理”(MDM)包括一组 一致定义和管理 组织的非事务性数据实体(可能包括 参考数据)。”


当它说非事务性时,我相信这意味着数据不是由(在线事务处理)系统直接访问的,而是存储在一个中央存储库中,所有系统都从该存储库获取数据,并每X小时发布一次更新(以预先确定的间隔)

我认为理解事务性数据和非事务性数据之间差异的最佳方法是通过示例

非事务性(与事务性数据相比,这些信息与企业相关的持续时间更长。)

  • 顾客:姓名、偏好
  • 产品:名称、层次结构
  • 地点/地点:地址
  • 账户:合同详情
事务性(具有时间维度,并在事务完成后成为历史)

  • 财务:订单、发票、付款

事务性(TRANSACTIONAL)常用词是指在交易过程中获得的数据,例如,当您注册销售或票证时。

当您收集一组操作并将其打包为一组操作时,您的操作组是原子的,任何子操作失败都将导致整个w的回滚这使得操作集可靠。这种操作结构的属性称为事务性

举一个关于交易的例子

假设您有一个处理客户订单、付款和其他账单的数据库,因此数据非常重要。您提供一个web ui,web ui调用业务包类和方法。这些方法在完成bi作业后,还将调用dao(代表数据访问对象)类,用于处理crud操作。因此,后端服务器采用n层应用程序模型构建,并且存在dom对象(代表域对象模型)它以两种方式将数据从服务端点上下传输到数据库

在用户希望更新某些信息的情况下,比如说电话号码、付款类型和信用卡。当服务器更新其中三个数据时,如果其中一个数据出现问题怎么办?比如说,付款类型和电话号码已更新,但在更新信用卡时,发生了错误?您将在当天或当月结束由于计费尝试失败

但是,如果您有一种机制,它将所有信息更新打包到一个信息更新组中,那么在任何错误情况下,整个更新都将回滚。这是一个事务的示例

如果没有事务机制,假设您将所有信息保存在处理io机制的自定义文件上,那么您的应用程序将必须处理每个可能的错误场景

要了解更多信息,你应该查阅这些有用的维基百科文章


基本上,事务是对数据库的一个或多个添加、更新、删除、修改更改,这些更改必须全部完成或不执行任何步骤。当数据完整性很重要时,事务数据库非常有用。如果事务中的一个步骤失败,则必须将这些步骤回滚到没有更改的状态对数据库进行了修改

您需要交易的一个例子是,您进行银行交易,将资金从一个帐户转移到另一个帐户。该交易包括两个操作

1) 从帐户上取钱

2) 把钱存入B帐户

如果您未能从帐户A中取出资金,则交易失败,并且没有资金从帐户A中取出,也没有资金存入帐户B

如果您成功地从帐户A中删除了资金,但未能将资金添加到帐户B,则交易失败,必须回滚交易,以便不从帐户A中提取资金

只有当资金从帐户A中删除并添加到帐户B时,事务才会将更改提交到数据库

下面是一个链接,指向使用SQLTransaction对象启动事务、提交事务并在失败时回滚的代码示例:

非事务性数据库可能具有更好的性能,因为它不必担心回滚更改。非事务性数据库中的单个数据可能不需要事务性处理,就像在银行帐户之间管理资金一样

可能的非事务性列表的示例包括: 客户列表、联系信息、供应商信息、位置列表和零件列表

Master Data Services旨在支持您希望与多个应用程序共享的非事务性数据

例如,您可能希望使用公司成员联系人信息的单一主列表,并使其可供不同的应用程序访问。如果您有许多应用程序需要相同的信息,这比为每个应用程序维护不同的联系人列表要好得多

其他来源:


谢谢你的回答,迭戈。这更有意义。我还在网上和网上找到了一些其他参考资料。但没有什么是非常明确和直接的。你的答案基于什么?你有任何参考资料吗?我参与了一个MDM项目,所以这对meThis来说是有意义的。这是正确的答案,因为我们不是闲聊