大数据基础理论
Shao Kaiyang
BIT && BUAA,云计算相关
展开
-
大数据基础理论—一致性协议
0. 前言一致性协议的出现主要是为了保证大规模分布式系统的数据一致性,对分布式系统设计具有很重要的作用。1. 两阶段提交2. 向量时钟3. RWN协议4. Paxos协议5. Raft协议...原创 2019-05-17 01:02:34 · 882 阅读 · 0 评论 -
大数据基础理论—数据分片与路由
0. 前言随着数据规模的不断扩展,单机已经不能存储和处理如此大的数据量,只能依靠大规模的集群进行存储和处理。扩展的方式分为两种,一种是scale up类型,即通过升级改造单机的处理能力来扩展,例如装配更多的CPU和内存;另外一种是scale out类型,即通过增加机器的方式进行,这种方式是目前主流的方式。对于海量数据的存储和处理,需要通过数据分片来将数据进行切分分配到各个机器中去,数据分片之后...原创 2019-05-07 00:16:37 · 808 阅读 · 0 评论 -
数据复制与一致性—基本原则与设计理念
0. 前言在大型系统中为了提高系统可用性,往往会将一份数据存储多个副本,工业界常常备份三个副本。副本的存在会导致在进行数据更新时需要进行一致性维护,如果没有一致性维护,那么有时候我们读到的数据可能是过期的或者错误的,这是不能容忍的。后续会针对下面方面进行阐述:基本原则与设计理念;一致性模型;副本更新策略;一致性协议等方面进行介绍。1. 基本原则和设计理念CAP,是consistency,...原创 2019-05-07 00:56:13 · 542 阅读 · 0 评论 -
大数据基础理论—一致性模型分类
0. 前言从严格意义上来说,理想情况下的一致性模型只有一种就是强一致性模型,但是在真实世界中强一致性是很难被保证的,很多情况下都是弱一致性。主要是基于CAP理论,大多数互联网应用对于可用性有很高的要求,这样就会适当的降低一致性。一致性模型主要包括:强一致性、弱一致性、因果一致性、读你所写一致性、会话一致性、单调读一致性以及单调写一致性。1. 强一致性对于连接到数据库的所有进程,看到的关于某...原创 2019-05-07 01:25:10 · 1669 阅读 · 0 评论 -
大数据基础理论—副本更新策略
0. 前言一般的大规模分布式存储系统都会将一份数据备份多份存储在不同的机器上用来容错增加可用性,同时也可以增加读操作的并发度。但是这样也带来了一致性的问题,需要保证多个副本之间的数据一致,这个时候就需要按照一定的策略或者协议进行副本更新。本节主要阐述一些常见的副本更新策略,其中使用到的一致性协议将在后续文章进行详细阐明。1. 同时更新类型A,不通过任何一致性协议直接同时进行多个副本的更新。...原创 2019-05-08 01:00:10 · 670 阅读 · 0 评论