极客时间架构师训练营 - week6 - 作业 2

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 极客时间架构师训练营 - week6 - 作业 2

根据当周学习情况,完成一篇学习总结

本周内容续上周,讲解的内容为分布式数据库、NoSQL 与分布式一致 ZooKeeper 等内容。第一次课,李老师讲解了分布式哈希算法的实现,分布式数据库(分表分库)的架构演进,及 NoSQL 的相关概念。NoSQL 与以关系型数据库为主要应用不同的点在于,其遵循着 CAP 的规律。第二次课,李老师重点解释了业界主要的几款 NoSQL 中间件架构,包括 Cassandra,HBase,ZooKeeper 等。

CAP 理论的解释如下:

在一个分布式系统(指互相连接并共享数据的节点的集合)中,当涉及读写操作时,只能保证一致性(Consistence)、可用性(Availability)、分区耐受性(Partition Tolerance)三者中的两个,另外一个必须被牺牲。

其中的一致性是指,每次读取到的数据要么失败,要么是最新版本的,而不是过期的、历史版本的数据;可用性即系统的每次请求都要求得到一个响应,允许响应的数据不是最新的版本,不能影响系统用户的使用。分区耐受性,是指即便是因为网络波动等原因,部分服务器节点之间消息丢失或延迟,系统依然要能运转。而实际情况下,系统的分区耐受性必须要得到保证,所以 CAP 原理就变成,分布式系统在满足分区耐受性的情况下,可用性与一致性无法同时满足。关系型数据库的特点是 ACID,即原子性、隔离性、持久性与一致性。而 NoSQL 的特点是 BASE,即基本可用,软状态与最终一致性。在实现最终一致性的时候,不同的中间件采用不同的方案,如 Cassandra 采用的处理方案是,通过投票来解决冲突,实现最终的一致性;ZooKeeper 则是通过类 Paxos 算法,解决分布式系统脑裂的问题。

本周内容,个人感觉,对于目前的我而言是有点超前。我们做的业务系统目前用户数还不够多,还没到需要分库分表的时候,一个 MySQL 数据库就能满足需求。希望公司能尽快成长到需要分库分表的那一天。而 NoSQL 相关组件,目前我们主要用到的是搜索引擎 ElasticSearch,Solr,HBase 等,ZooKeeper 此前仅仅是配置的时候用到的,原理通过这次课有了深入的了解,有时间还是要自己去鉴赏一下源码。

以上。


相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
目录
相关文章
|
2月前
|
机器学习/深度学习 算法 安全
隐私计算训练营第三讲-详解隐私计算的架构和技术要点
SecretFlow 是一个隐私保护的统一框架,用于数据分析和机器学习,支持MPC、HE、TEE等隐私计算技术。它提供设备抽象、计算图表示和基于图的ML/DL能力,适应数据水平、垂直和混合分割场景。产品层包括SecretPad(快速体验核心能力)和SecretNote(开发工具)。算法层涉及PSI、PIR、数据分析和联邦学习(水平、垂直、混合)。此外,SecretFlow还有YACL密码库和Kusica任务调度框架,Kusica提供轻量化部署、跨域通信和统一API接口。
72 0
|
8月前
|
消息中间件 缓存 NoSQL
|
9月前
|
消息中间件 存储 关系型数据库
极客时间架构实战营作业八
极客时间架构实战营作业八
117 0
|
9月前
|
消息中间件 Java 中间件
极客时间架构实战营作业六
极客时间架构实战营作业六
73 0
|
9月前
|
运维 关系型数据库 MySQL
极客时间架构实战营作业三
极客时间架构实战营作业三
100 0
|
9月前
|
SQL 分布式计算 架构师
极客时间架构师训练营 - week12 - 作业 2
极客时间架构师训练营 - week12 - 作业 2
75 0
|
7月前
|
资源调度 分布式计算 调度
Fink--3、Flink运行时架构(并行度、算子链、任务槽、作业提交流程)
Fink--3、Flink运行时架构(并行度、算子链、任务槽、作业提交流程)
|
9月前
|
容灾 网络协议
极客时间架构实战营模块 7 作业
极客时间架构实战营模块 7 作业
58 0
|
9月前
|
存储 缓存 负载均衡
极客时间架构实战营作业五
极客时间架构实战营作业五
90 0
|
9月前
|
存储 JSON NoSQL
极客时间架构实战营作业四
极客时间架构实战营作业四
78 0