第六周总结
数据分片
硬编码实现数据分片
映射表外部存储
数据分片的挑战
需要大量的额外代码,处理逻辑因此变得复杂
无法执行多分片的联合查询
无法使用数据库的事务
随着数据的增长,如何增加更多的服务器
cobar 系统组件模型
提到了扩容的实践,同步schema到新的实例。
这种基于MyCat的方案会不会已经过时呢,目前TiDB、MongoDB基于region之类的自动均衡,无限伸缩是不是才是主流呢?
数据库部署方案
单一服务与单一数据库;主从复制实现伸缩;多个服务多个数据库;综合部署
CAP原理:一致性、可用性、分区耐受性(已经在作业中完成,不详细说明)
一致性:最终一致性
ACID: 原子性(一个大的操作由多个小的操作组成,大操作是一个原子的)、一致性(保证数据总是正确的)、隔离性(RU\RC\RR)、持久性(一旦保存就不会丢失)
BASE原理:基本可用,允许响应时间和部分功能的损失;软状态,允许系统中的数据存在中间状态,允许数据同步存在延迟;最终一致性,数据允许多份副本过程中不一致,最终是一致的。
案例分布式Doris系统的介绍,一个牛逼系统从立项到设计到实现的心路历程,个人感觉还是比较泛,缺乏细节。
分布式系统的脑裂
分布式系统中,不同服务器获得了互相冲突的数据信息或者执行指令,导致整个集群陷入混乱,数据损坏
Paxos 三个角色: Proposer, Acceptor, Learner (现在不是流行raft)
评论