文档介绍:主讲人:刘鹏
第10章云计算(3)
云计算
云计算概念
Google云计算
并行数据处理模型MapReduce
分布式锁服务Chubby
分布式数据表BigTable
Google App Engine
Google云计算应用场景分析
Google云计算应用场景分析
Google云计算技术框架
应用场景分析1:Google网站流量分析
应用场景分析2:Google搜索
Google的云计算应用均依赖于四个基础组件
分布式文件存储,GFS
并行数据处理模型MapReduce
分布式锁Chubby
结构化数据表BigTable
Google云计算应用
MapReduce
BigTable
GFS
Chubby
Google云计算的技术架构
Google云计算的技术架构
Google云计算应用
BigTable
GFS
MapReduce
Chubby
组件调用关系分析
Chubby的作用
为GFS提供锁服务,选择Master节点;记录Master的相关描述信息
通过独占锁记录Chunk Server的活跃情况
为BigTable提供锁服务,记录子表元信息(如子表文件信息、子表分配信息、子表服务器信息)
(可能)记录MapReduce的任务信息
为第三方提供锁服务与文件存储
Google云计算应用
BigTable
GFS
MapReduce
Chubby
Google云计算的技术架构
GFS的作用
存储BigTable的子表文件
为第三方应用提供大尺寸文件存储功能
文件读操作流程
API与Master通信,获取文件元信息
根据指定的读取位置和读取长度,API发起并发操作,分别从若干ChunkServer上读取数据
API组装所得数据,返回结果
Google云计算应用
BigTable
GFS
MapReduce
Chubby
Google云计算的技术架构
BigTable的作用
为Google云计算应用(或第三方应用)提供数据结构化存储功能
类似于数据库
为应用提供简单数据查询功能(不支持联合查询)
为MapReduce提供数据源或数据结果存储
Google云计算应用
BigTable
GFS
MapReduce
Chubby
Google云计算的技术架构
BigTable的存储与服务请求的响应
划分为子表存储,每个子表对应一个子表文件,子表文件存储于GFS之上
BigTable通过元数据组织子表
每个子表都被分配给一个子表服务器
一个子表服务器可同时分配多个子表
子表服务器负责对外提供服务,响应查询请求
Tablet 1: <startRowKey1, endRowKey1>, root\bigtable\tablet1,……
Tablet 2: <startRowKey2, endRowKey2>, root\bigtable\tablet2,……
Tablet 3: <startRowKey3, endRowKey3>, root\bigtable\tablet3,……
Tablet 4: <startRowKey4, endRowKey4>, root\bigtable\tablet4,……
Google云计算的技术架构
MapReduce的作用
对BigTable中的数据进行并行计算处理(如统计、归类等)
使用BigTable或GFS存储计算结果
Google云计算应用
BigTable
GFS
MapReduce
Chubby
Google云计算的技术架构