理解Paxos-分布式系统一致性算法 (一)

简介 Paxos是一个分布式系统一致性算法,用于在分布式系统中的多个节点之间,就某个值达成一致。为便于理解Paxos,本文首先会解释一些背景概念,以及一些上下文关系。然后给出正确性推导的简单介绍,以及最终的两阶段协议。最后会给出一些重要补充,关于演进和具体实现(状态机)。后续如果有机会,会补充一些Paxos实践相关的内容。 本文主要的参考是: Leslie Lamport的论文 Paxos Made Simple »


Google MapReduce

Execution Overview Map调用将输入数据划分成了M splits,可以并行处理;Reduce调用将中间结果分区成了R pieces,分区函数类似于hash(key) mod R。分区个数R和分区函数可以由用户指定。 如上图所示,整体执行流程如下: 用户程序里的MapReduce库首先将输入文件划分成M个(16MB-64MB),然后在一个集群里启动其他进程。 其中有一个进程是特殊的角色:master;其他的worker由master指定工作, »


Google File System Note

GFS是一个可扩展的分布式文件系统,可以运行在普通的商用硬件上,提供高性能和容错能力;GFS在Google内部广泛使用,用于满足各种服务产生和处理数据的需求。 这篇笔记基于Google的 GFS 论文 1. Introduction GFS的 设计目标 和以前的分布式系统类似 Performance Scalability Reliability Availability 不过还基于一些别的观察: 普通商用机器产生 故障 »