首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >事务在RDBMS和Nosql中有何不同?

事务在RDBMS和Nosql中有何不同?
EN

Stack Overflow用户
提问于 2016-01-03 17:15:49
回答 3查看 1.8K关注 0票数 1

我试图理解NO-SQL和RDBMS模型之间的区别,在web上我读到的任何地方,RDBMS都比NOSQL更好地支持事务。据我读的一个博客说,

在数据可靠性和执行事务的安全保证方面,SQL数据库仍然是更好的选择。

根据这个在SO上的回答

降低原子性可以缩短时间表(数据集)被锁定的时间。例子: MongoDB,CouchDB。

我明白原子性是什么意思,

假设我有一项与银行有关的交易,其中一项是信贷业务,一项是借记业务,要么两者都会成功,要么没有人会成功。

如果没有事务,这个特定的事务在非sql世界中是如何表现的?

EN

回答 3

Stack Overflow用户

发布于 2016-01-03 17:28:18

首先,NoSQL不仅仅是许多人(错误地)认为的一种模型,在这一点上有4种不同的模型:键值、文档、列和图,每个模型都是不同的。每个不同的模型都有很多供应商,每个供应商都为数据库提供了一组不同的特性。有一些支持事务和ACID属性的NoSQL数据库,还有一些不支持的其他NoSQL数据库。

要回答您的问题,如果您选择一个支持事务和ACID属性的NoSQL数据库,则它与SQL一样,数据库处理它。

但另一方面,如果您选择了一个不直接支持事务的数据库,那么响应性取决于应用程序本身。有一些策略被普遍接受来处理这个问题,比如一个2-阶段提交

希望能帮上忙。

票数 3
EN

Stack Overflow用户

发布于 2016-01-17 10:03:25

我猜想,当你说NoSQL时,你指的是一个纯粹的键值NoSQL数据库。这不允许您原子地更改两个不同键的值。

在许多情况下,当每个事务都通过特定的键更改一个值时,这些数据库仍然很有用。

但是,在借记一个帐户并贷记另一个帐户的情况下,您应该使用另一个支持“全部或无”的SQL或NoSQL数据库进行至少两个操作。

因此,NoSQL的意思是没有SQL,但没有事务。

票数 1
EN

Stack Overflow用户

发布于 2021-09-26 12:07:30

现在的NoSQL数据库支持多种意义上的事务,如单共享酸、多共享酸、单区域、多区域.有一些开放源码和一些适当的数据库。

例如-

Azure Cosmos DB -单键酸(强一致性)

Mongo DB -单一共享酸

基础数据库-多共享酸-单一区域

TiKV -多共享酸-单区

亚马逊迪纳摩数据库-多共享酸-单一区域

YugaByte DB -多共享酸-多区域

动物群DB -多共享酸-多区域

根据您的要求,您可以选择其中之一。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34579287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档