写点什么

极客大学架构师训练营 - 本周总结

发布于: 2020 年 07 月 15 日

本周讲解的内容为分布式数据库、NoSQL 与分布式一致 ZooKeeper 等。李老师重点解释了业界主要的几款 NoSQL 中间件架构,包括 Cassandra,HBase,ZooKeeper 等。

CAP 原理说,一个数据分布式系统不可能同时满足 C 和 A 和 P 这 3 个条件。所以系统架构师在设计系统时,不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍。由于网络的不可靠性质,大多数开源的分布式系统都会实现 P,也就是分区容忍性,之后在 C 和 A 中做抉择。

一致性意味着每次读取数据时,要么失败,要么是数据的最新版本,而不是数据的过时、历史版本。可用性意味着系统的每个请求都需要响应,允许响应的数据不是最新版本,这不会影响系统用户的使用。分区容忍度是指在某些服务器节点之间由于网络波动或其他原因导致消息丢失或延迟时,系统仍能正常工作的能力。在现实中,系统的分区容忍度必须得到保证,因此 CAP 原则成为分布式系统满足分区容忍度时,不能同时满足可用性和一致性。关系数据库的特征是 ACID,即。、原子性、隔离、持久性和一致性。NoSQL 的特征是 BASE,即基本可用性、软状态和最终一致性。当达到最终的一致性时,不同的中间件采用不同的方案。例如,Cassandra 采用的处理方案是通过投票来解决冲突,以达到最终的一致性。


用户头像

还未添加个人签名 2019.11.28 加入

还未添加个人简介

评论

发布
暂无评论
极客大学架构师训练营-本周总结