- 分布式文件系统GFS
- Chubby锁服务
- Bigtable的数据模型和系统架构
- 分布式计算编程模型Mapreduce
Google文件系统(Google File System,GFS)是一个大型的分布式文件系统。它为 Google云计算提供海量存储,并且与Chubby、MapReduce 及 Bigtable 等技术结合十分紧密,处于所有核心技术的底层。
GFS 的系统架构
GFS将系统节点分为三类角色:
Chubby 是 Google 设计的提供粗粒度锁服务的一个文件系统,它基于松耦合分布式系统,解决了分布的一致性问题。通过使用Chubby 的锁服务,用户可以确保数据操作过程中的一致性。Chubby 还可以作为一个稳定的存储系统存储包括元数据在内的小数据。同时 Google 内部还使用 Chubby 进行名字服务(Name Server)。
Chubby 的基本架构
Bigtable 是 Goole 开发的机遇 GFS 和 Chubby 的分布式存储系统。
Bigtable 数据的存储格式:
Bigtable是一个分布式多维映射表,表中的数据通过一个行关键字(Row Key)、一个列关键字(Column Key)以及一个时间戳(Time Stamp)进行索引。
Bigtable的存储逻辑可以表示为:
(row:string,column:string, time:int64)→string