【云计算 复习】第3节 Bigtable

一、概念

1.Bigtable 应达到的基本目标

(1)广泛的可用性:是为了满足一系列Google产品而并非特定产品的存储要求。

(2)很强的扩展性:根据需要随时可以加入或撤销服务器。

(3)高可用性:确保几乎所有的情况下系统都可用,因为对于客户来说,短暂的服务中断也不能忍受。

(4)简单性:底层系统的简单性既可以减少系统出错的概率,也为上层应用的开发带来便利。

2.概述

(1)Bigtable对存储的数据不做解析,一律看作字符串,具体数据结构由用户实现。

3.数据的存储格式

(1)Bigtable是一个分布式多维映射表,表中的数据通过一个行关键字(Row Key)、 一个列关键字(Column Key)以及一个时间戳(Time Stamp)进行索引

(row:string, column:string, time:int64)→string

4.基本架构

5.Bigtable 中 Chubby 的主要作用

(1)选取并保证同一时间内只有一个主服务器(Master Server)。

(2)获取子表的位置信息。

(3)保存Bigtable的模式信息及访问控制列表。

6.主服务器

(1)Bigtable中主服务器对子表服务器的监控是通过Chubby完成的。以便及时检测到服务器的加入或撤销——保证良好的扩展性。

(2)当一个新的子表产生时,主服务器通过一个加载命令将其分配给一个空间足够的子表服务器。创建新表、表合并以及较大子表的分裂都会产生一个或多个新子表。

(3)创建新表、表合并是由主服务器发起的,主服务器会自动检测到。

(4)较大子表的分裂是由子表服务器发起的,主服务器无法自动检测到,需要分割完成之后子服务器向主服务发出一个通知

(5)主服务器会定期询问每个具体的子表服务器独占锁的状态。

(6)如果子表服务器的锁丢失或没有回应,则

 Chubby服务问题——主服务器首先自己尝试获取独占锁,若失败,说明 Chubby服务出了问题,需要等待Chubby服务的恢复。

子表服务器问题——主服务器获取独占锁成功,说明子表服务器出现了问题。主服务器就中止这个子表服务器并将其上的子表全部移至其他子表服务器。

7.子表服务器

(1)Bigtable中实际的数据都是以子表的形式保存在子表服务器上的。

(2)SSTable是Google为Bigtable设计的内部数据存储格式,所有的SSTable文件都存储在GFS上,用户可以通过键来查询相应的值。

(3)子表是一系列行的集合,每个子表由多个SSTable及日志文件构成。

8.查询

首先从Chubby中提取这个根子表的地址,进而读取所需的元数据子表的位置, 最后就可以从元数据子表中找到待查询的子表。

9.三种形式压缩之间的关系

二、习题

第1题 1分
Bigtable中,为了使主服务负载大大降低,客户端主要与( )通信。 

A Master服务器
B 子表服务器
C 主服务器
D 子服务器

答案:B

第19题 1分
Bigtable是Google开发的基于( )和Chubby的分布式存储系统。
A GFS
B Paxos
C Megastore
D Dapper

答案:A

一个用于存数据,一个用于实现一致性

第28题 2分
BigTable是一个分布式多维映射表,表中数据通过行关键字,[填空1],[填空2]来进行索引。

答案:列关键字、时间戳

第29题 1分
SSTable是Google为Bigtable设计的内部数据存储格式,所有的SSTable文件都存储在[填空1]上。

答案:GFS

第2题 1分
Bigtable中,数据划分负载均衡基本单位是( )。
A 行
B 列
C 子表
D 主表

答案:C

子表中包含很多行,是数据划分和负载均衡的基本单位。

第3题 1分
以下描述中,Bigtable中Chubby的主要作用不包括( )。
A 选取并保证同一时间内只有一个主服务器。
B 获取子表的位置信息。
C 保存Bigtable的模式信息及访问控制列表。
D 创建访问控制列表。

答案:D

通常是由系统管理员或者具有管理权限的用户通过相应的管理接口或工具来创建和管理访问控制列表。

访问控制列表(Access Control List, ACL)是用于控制资源(如文件、目录、数据库表等)访问权限的列表

第5题 1分
Bigtable中,实际的数据都是以子表的形式保存在( )中。
A Master服务器
B 子表服务器
C 主服务器
D 子服务器

答案:B

第7题 1分
Bigtable中的SSTable数量过多,将会显著影响( )的速度。
A 读操作
B 写操作
C 次压缩
D 合并压缩

答案:A

因为在进行读取时,系统需要查找并读取多个SSTable 文件中的数据,当数量过多时,可能会增加读取的开销和时间,从而影响读操作的性能。

第9题 1分
Bigtable通过( )保存日志和数据文件。
A GFS
B MapReduce
C Chubby
D Table

答案:A

第12题 1分
以下不能为Bigtable表中的数据进行索引的是( )。
A 行关键字
B 列关键字
C 时间戳
D 锚点

答案:D

第17题 1分
Bigtable表中的数据是根据( )进行排序的,排序使用的是词典序。
A 行关键字
B 列关键字
C 时间戳
D 锚点

答案:A

第8题 1分
Bigtable中访问控制的基本单位是()。

A. 子表
B. 族
C. 行
D. 列

答案:B

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值