数据一致性模型有哪些类型

数据一致性模型有哪些类型。小编来告诉你更多相关信息。数据一致性模型有哪些类型小编为大家解答数据一致性模型有哪些类型方面的介绍,接下来小编就来介绍。强一致性:当更新操作完成之后,任何多个后

数据一致性模型有哪些类型。小编来告诉你更多相关信息。

数据一致性模型有哪些类型

小编为大家解答数据一致性模型有哪些类型方面的介绍,接下来小编就来介绍。

强一致性:

当更新操作完成之后,任何多个后续进程的访问都会返回最新的更新过的值,这种是对用户最友好的,就是用户上一次写什么,下一次就保证能读到什么。

根据CAP理论,这种实现需要牺牲可用性。

数据一致性模型有哪些类型

弱一致性:

系统在数据写入成功之后,不承诺立即可以读到最新写入的值,也不会具体的承诺多久之后可以读到。

用户读到某一操作对系统数据的更新需要一段时间,我们称这段时间为“不一致性窗口”

最终一致性:

最终一致性是弱一致性的特例,强调的是所有的数据副本,在经过一段时间的同步之后,最终都能够达到一个一致的状态。

因此,最终一致性的本质是需要系统保证最终数据能够达到一致,而不需要实时保证系统数据的强一致性。

到达最终一致性的时间,就是不一致窗口时间,在没有故障发生的前提下,不一致窗口的时间主要受通信延迟,系统负载和复制副本的个数影响。

最终一致性模型根据其提供的不同保证可以划分为更多的模型,包括因果一致性和会话一致性等。

因果一致性:

要求有因果关系的操作顺序得到保证,非因果关系的操作顺序则无所谓。

进程A在更新完某个数据项后通知了进程B,那么进程B之后对该数据项的访问都应该能够获取到进程A更新后的最新值,并且如果进程B要对该数据项进行更新操作的话,务必基于进程A更新后的最新值。

在微博或者微信进行评论的时候,比如你在朋友圈发了一张照片,朋友给你评论了,而你对朋友的评论进行了回复,这条朋友圈的显示中,你的回复必须在朋友之后,这是一个因果关系,而其他没有因果关系的数据,可以允许不一致。

会话一致性:

将对系统数据的访问过程框定在了一个会话当中,约定了系统能保证在同一个有效的会话中实现“读己之所写”的一致性,就是在你的一次访问中,执行更新操作之后,客户端能够在同一个会话中始终读取到该数据项的最新值。

实际开发中有分布式的Session一致性问题,可以认为是会话一致性的一个应用。

上面为您介绍的数据一致性模型有哪些类型的全部内容,网友们不妨在这方面予以借鉴

本文内容由互联网用户自发贡献,该文观点仅代表作者本人,本站仅供展示。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 97552693@qq.com 举报,一经查实,本站将立刻删除。

给TA打赏
共{{data.count}}人
人已打赏
互联网

KubernetesPod被驱逐故障排除过程

2023-11-5 13:01:57

互联网

MySQL数据库组复制有什么特点

2023-11-5 13:03:05

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索