week6. 课后作业
请简述 CAP 原理。
针对 Doris 案例,请用 UML 时序图描述 Doris 临时失效的处理过程(包括判断系统进入临时失效状态,临时失效中的读写过程,失效恢复过程)。
分布式系统的可用性(Availability)、一致性(Consistency)、分区耐受性(Partition tolerance)不能同时满足。或者在满足分区耐受性前提下,可用性和一致性无法同时满足。
一致性 每次读取的数据都应该是最新数据或返回错误,不能返回过期数据。
可用性 每次请求都应该得到一个响应,而不是返回一个错误或失去响应,不需要数据是最新的,但系统要一直是可以正常使用的。和一致性对立。
分区耐受性 即使因为网络原因,部分服务节点之间的消息丢失了或延迟了,系统依然应该是可以操作的。
当网络分区失效发生时,要保证数据一致,就要取消操作,则系统不可用。要保证系统可以,则一致性可能被破坏。分布式系统的网络失效一定会发生,一致性和可用性需要二选一。
放弃一致性不一定能得到可用性,不是非此即彼。
大部分存储系统选择最终一致性,冲突通过时间戳解决写入覆盖,投票解决
判断系统进入临时失效状态
临时失效中的读写过程
失效恢复过程
版权声明: 本文为 InfoQ 作者【个人练习生niki】的原创文章。
原文链接:【http://xie.infoq.cn/article/613417340faea9f2230686e82】。文章转载请联系作者。
评论 (1 条评论)