栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

事务,分布式事务和关系型,非关系型数据库的关系

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

事务,分布式事务和关系型,非关系型数据库的关系

我们知道 关系型数据库遵守 ACID
非关系型数据库遵守CAP-base

疑问:
为什么只有关系型数据库提供事务处理支持?
如果我们想在微服务架构中对非关系型数据库进行分布式事务操作怎么办?

首先要明确的一点就是:
因为NoSQL的高拓展性(horizontal scaling)一旦我们要做事务操作 就一定是分布式的。
但是 NoSQL不支持事务/分布式事务、
为什么?
因为nosql一般都是强调扩展性的,这就是数据会有很多分区,分布在不同的机器上,要支持事务就得实现分布式事务,实现低延迟的分布式事务是一个业界难题。

但是SQL支持事务、分布式事务。
首先 如果我们只有一个Server 这也是常见的 那么支持事务就没有什么压力。
但是 如果我们的RD的server有好几个 (比如在微服务架构里面),那么就必须要实现分布式事务了。
怎么实现?
2PC 3PC SAGA TCC…
理解分布式事务

但是 最近MongoDB开始支持事务了?(since MongoDB4.0)
MongoDB的事务、ACID和一致性

总结一下就是SQL支持事务分布式事务 NoSQL不支持,但是也正在慢慢支持。
但是 因为NoSQL和微服务用的越来越多 一旦我们需要增删改查 那应该怎么办呢?

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/644827.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号