什么是数据库事务?

什么是数据库事务?,第1张

(1):事务(Transaction)是并发控制的单位,是用户定义的一个 *** 作序列。这些 *** 作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL

Server能将逻辑相关的一组 *** 作绑定在一起,以便服务器保持数据的完整性。

(2):事务通常是以BEGIN

TRANSACTION开始,以COMMIT或ROLLBACK结束。

COMMIT表示提交,即提交事务的所有 *** 作。具体地说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。

ROLLBACK表示回滚,即在事务运行的过程中发生了某种故障,事务不能继续进行,系统将事务中对数据库的所有以完成的 *** 作全部撤消,滚回到事务开始的状态。

(3):事务运行的三种模式:

A:自动提交事务

每条单独的语句都是一个事务。每个语句后都隐含一个COMMIT。

B:显式事务

以BEGIN

TRANSACTION显式开始,以COMMIT或ROLLBACK显式结束。

C:隐性事务

在前一个事务完成时,新事务隐式启动,但每个事务仍以COMMIT或ROLLBACK显式结束。

(4):事务的特性(ACID特性)

A:原子性(Atomicity)

事务是数据库的逻辑工作单位,事务中包括的诸 *** 作要么全做,要么全不做。

B:一致性(Consistency)

事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

C:隔离性(Isolation)

一个事务的执行不能被其他事务干扰。

D:持续性/永久性(Durability)

一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

注:事务是恢复和并发控制的基本单位。

分析可疑交易涉及交易数据时要尽量得到交易笔数、金额,资金来源、资金去向,重点账户、关系,交易特点,如是否存在某些特殊金额及使用习惯等。

交易的数据是基于底层数据,通过数据的清洗、分析、建模、可视化后的结果,并不直接交易底层数据。

交易数据库(TransactionalDatabase)是指实时的,面向应用的数据库,响应及时性要求很高,只关注最近一段时间的数据库,又称事务数据库。

交易型数据库主要是实时的,面向应用的数据库,响应及时性要求很高,只关注最近一段时间的数据。就是平时搭建的服务都叫事务型数据库。

简单来说,储存引擎分为两大类。针对事务处理(OLTP)和针对分析型(OLAP)。

事务性处理优化架构的数据库通常面对用户,为具体的程序设计。在使用中往往磁盘的寻道时间会是负载的瓶颈。更具体细分的一哈,主要分为两大流派:

日志结构流派,具体的有BitCask、SSTables、LSM-tree等都属于此类

原地更新流派,B-tree类型是这一类的代表。像我们熟悉的关系型数据库和非关系型数据库。mysql,mongodb等等。

分析型的不面向最终用户,一般是业务分析师使用。需要在短时间扫描百万条记录,磁盘带宽通常是瓶颈。数据库有c-store等。面向列储存是这种数据库工作负载比较流行的解决方案。

希望是你期望的答案~~~~~~~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6619956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-25
下一篇 2023-03-25

发表评论

登录后才能评论

评论列表(0条)

保存