1、SAN是一种(B)。
A. 存储设备 B. 专为数据存储而设计和构建的存储网络系统
C. 光纤交换机 D. HBA
2、在GFS中,客户端可以并行访问多个(C),提高了系统的整体性能。
A. 客户端 B. 主服务器 C. 数据块服务器 D. 控制节点
3、分布式文件系统的性能要求主要包括(D)。
A. 高效率、高可靠性 B. 高可扩展性、透明性 C. 自治性 D. 以上都是
4、根据不同的存储方法,(B)方式不属于副本部署策略。
A. 路径部署 B. 重建部署 C. 源请求部署 D. 随机部署
5、副本数量的确定与(D)因素有关。
A. 副本属性 B. 系统环境 C. 访问情况 D. 以上都是
6、目前决定副本数量的主要方法不包括(A)。
A. 随机复制 B. 比例复制 C. 方根复制 D. 均匀复制
7、副本删除发生的原因主要包括(D)。
A. 副本的生命周期结束 B. 副本被访问频率低
C. 副本所在节点存储空间不够或处理能力达到极限 D. 以上都是
8、以下不属于静态副本管理策略的优点的是(B)。
A. 复制方案固定 B. 可对文件访问模式和访问节点的范围进行预测
C. 简化后期副本管理的复杂性 D. 结构简单
9、以下不属于集中式副本管理策略的优点的是(A)。
A. 文件副本的数量快速增加 B. 全盘了解整个云存储系统
C. 快速知道任意节点及副本的状态情况 D. 结构简单
10、以下关于分布式副本管理策略描述错误的是(C)。
A. 将整个云存储系统的副本管理分布在各个存储节点上
B. 各个存储节点之间可采用类似心跳机制进行通信
C. 随着文件副本的数量不断增加,其负载会急剧增加
D. 维护存储节点间通信所花费的代价较大
11、Paxos云存储系统中的主要角色不包括(C)。
A. 提议者 B. 决策者 C. 执行者 D. 学习者
12、以下关于S3的数据存储结构描述错误的是(B)。
A. 包含存储桶和存储对象
B. 存储桶是S3中对数据进行排序的唯一方法
C. 每个存储对象都必须存储在一个存储桶中
D. 存储桶的名称唯一
13、S3的性能优势包括(D)。
A. 持久性和可用性 B. 弹性和可扩展性
C. 高数据访问速度和用户接口简单 D. 以上都是
14、云存储系统的网络架构中,主要由(A)承担存储数据文件的任务。
A. 存储节点 B. 控制节点 C. 任务节点 D. 数据节点
15、Paxos算法用于解决分布式系统中的(C)问题。
A. 副本部署 B. 副本数量控制 C. 数据一致性 D. 副本删除
3.2 填空题
1、云存储将网络中大量存储设备通过(集群系统)、(虚拟化技术)或(分布式文件系统)等组织起来。
2、云存储在本质上不仅是一种存储(技术),还是一种(服务)。
3、云存储模型自底向上可划分为(存储层)、(管理调度层)、(应用接口层)和(访问层)。
4、目前的网络存储主要包含(网络连接存储 / NAS)和(存储区域网络/ SAN)这两种类型。
5、目前存在两种数据复制模式分别是(同步复制模式)和(异步复制模式)。
6、在云存储系统中,副本管理机制的主要内容包括(副本部署)、(副本数量控制)、(数据一致性保障)、(副本删除)等机制。
7、随机部署方法中选择整个网络的节点的随机选择法可运用(多哈希函数)和(关联哈希)等方法来实现。
3.3 简答题
1、请描述云存储系统的主要优势。
答:
- 低成本。用户采用云存储服务,无须自行购置存储软硬件系统,也无须自行运营、维护、灾备恢复等,从而显著降低数据存储的成本。
- 高安全性。专业的云服务提供商提供的数据存储服务,广泛采用数据副本和备份机制,使业务相关数据的存储变得更加安全、可靠;数据在传输过程中也可以得到有效保护,传输更稳定。
- 易扩展。从用户的角度来看,用户无须预测将来对存储空间的需求,可按需动态申请存储空间,云服务提供商一般采用按需计费的存储空间租赁服务政策;从系统的角度来看,云存储系统本身也可动态扩展存储资源池,当新的存储节点添加到系统时,会自动实现资源扩展。
- 丰富接口。目前的商用云存储系统一般都提供了丰富的应用程序接口(API),为用户及应用提供了便捷的开发与运行平台。
- 支持同步。基于云存储平台,用户可以在多台设备(如笔记本电脑、平板电脑、智能手机、智能手表等)之间实现数据、程序、状态的同步,从而为多设备协同提供支持。
- 灾备恢复。网络备份一般是通过专业的数据存储管理软件结合相应的硬件和存储设备来实现的,云存储基于多数据中心平台,云计算数据中心通过互联网将数据副本存储在异地的云计算数据中心中,即搬迁数据异地备份,一旦发生地震、洪水等巨大灾害,也能实现灾备恢复。
2、请简述GFS系统中三类节点。
答:
- 客户端。客户端是GFS提供给应用程序的访问接口,是一组专用接口,以库文件的形式提供,应用程序可直接调用这些库函数。
- 主服务器。主服务器是GFS的管理节点,在逻辑上只有一个,用于保存系统的元数据,负责整个文件系统的管理。
- 数据块服务器。数据块服务器负责具体的存储工作,数据以文件的形式存储在数据块服务器上,数据块服务器的数目直接决定了GFS系统的规模。GFS将文件按照预设的大小进行分块,每一块称为一个数据块(Chunk),每个数据块都有一个对应的索引号(Index)。
3、与传统的分布式文件系统相比,GFS文件系统根据搜索等应用的特点进行了哪些方面的优化?
答:
- 中心化管理模式。GFS采用中心化管理模式对整个文件系统进行管理,简化了设计,降低了实现难度。主服务器管理分布式文件系统中所有的元数据,维护一个命名空间,在系统添加一个新的数据块服务器非常容易,数据块服务器只需要在主服务器上注册即可。当然,中心化管理模式也有一些固有的缺点,如主服务器可能成为整个系统的性能瓶颈等。
- 不缓存数据。缓存机制是提高文件系统性能的重要手段。为了提高文件系统的性能,有必要实现缓存机制。然而,GFS文件系统没有进行缓存,主要是因为Google认为大多数应用程序的读写都是按流的顺序进行的,重复读写的频率不高,不缓存数据对系统的整体性能影响并不大;对于频繁读取的数据,数据块服务器则可利用本地操作系统的文件系统缓存机制来优化性能。
- 基于用户模式。根据应用程序对系统资源和机器指令的使用权限,可以将处理器设置为不同的模式,如内核模式与用户模式,处于不同模式的CPU允许执行的指令集合不一样,这和操作权限密切相关。在内核模式下,CPU既可以执行特权指令,也可以执行非特权指令;在用户模式下,CPU只允许执行非特权指令。GFS的管理与工作进程都运行在用户模式下,单个进程不会影响整个操作系统,从而提升了整个系统的稳定性。GFS和操作系统在不同的空间运行,尽量采用松耦合,提升了彼此的通用性,便于GFS和内核的单独升级。
- 提供专用API。GFS提供了专用API,API以库文件的形式提供,应用程序通过调用这些API来完成对GFS文件系统的访问。专用API可以根据应用程序的属性为应用程序提供个性化的支持。应用程序通过专用API直接与客户端、主服务器、数据块服务器交互,更为简单、便捷。
- 提供容错机制。GFS中主服务器存储三种类型的GFS元数据,包括命名空间(整个文件系统的目录结构)、数据库和文件名的映射表、数据库副本位置信息。为了防止主服务器完全崩溃导致命名空间等数据的丢失,GFS提供了主服务器的远程实时备份;GFS主要使用副本来实现数据块服务器的容错,多个相同的数据副本分布在不同的数据块服务器上,在写入或修改数据时所有副本都必须成功写入才能视为操作成功。
- 提供系统管理机制。作为分布式文件系统,GFS由相应的系统管理机制支持整个GFS的应用。GFS是一种构建大规模集群之上的文件系统,节点数量众多。这些节点常出现故障,需要集群监控技术来在尽可能短的时间内找到并确定发生故障的节点和原因。当增加一个新的数据块服务器时,GFS支持节点的动态加入和系统扩展。
4、分布式文件系统的透明性主要指哪些方面?
答:
- 位置透明性。在具有位置透明性的分布式文件系统中,用户看到的是全局名字空间,用户访问文件不需要知道文件的物理存储位置,在创建文件时,分布式文件系统自动选择合适的存储位置。
- 故障透明性。当部分服务器出现故障、离线或网络不可用时,分布式文件系统必须为用户提供持续的存储服务,让用户不会感知到内部的服务器故障。
- 迁移透明性。在文件和目录的物理存储位置改变时不需要改变名字,甚至在数据迁移过程中,数据仍然是可访问的。
- 副本透明性。分布式文件系统通常在不同节点上保存同一文件的多个副本,用户不必知道文件副本细节,副本的产生、分布和访问都是自动的[17]。
- 并发透明性。具有并发透明性的分布式文件系统能够保证并发的用户文件访问之间不会发生冲突,解决了共享文件的读写一致性问题。
5、请对比分析云存储系统中的集中式副本管理策略和分布式副本管理策略。
答:
- 集中式副本管理策略。集中式副本管理策略是一种典型的索引节点策略,在云存储系统中会把所有的文件的元数据信息集中起来,方便管理。其中针对元数据节点的操作包括系统对副本的创建、布局以及副本的放置位置。集中式管理策略的优点是对整个云存储系统有全盘的了解,可以快速知道任意节点及副本的状态情况,但其缺点也非常明显,随着文件副本的数量不断增加,作为独立出来的中心节点,其负载会急剧增加,容易成为云存储系统的性能瓶颈。
- 分布式副本管理策略。分布式副本管理策略将整个云存储系统的副本管理分布在各个存储节点上。各个存储节点之间可采用类似心跳机制进行通信,从而指导相互连接的存储节点之间的信息来协同完成的副本管理。分布式副本管理策略对各个存储节点的性能有一定的要求,虽然没有集中式副本管理策略的性能瓶颈,但是维护存储节点间通信所花费的代价较大,增加了网络的通信成本。
6、数据备份应用于容灾系统时需要考虑的主要问题有哪些?
答:
- 备份窗口。备份窗口是指应用程序允许完成数据备份作业的时间。由于数据备份作业会导致主机的性能下降,甚至使服务水平不可接受,因此数据备份作业必须在停机或业务量较小时进行。典型的解决途径包括加快备份速度和实现在线备份等。
- 恢复时间。备份数据的恢复时间直接关系到容忍业务停止服务的最长时间,当备份数据量较大或者备份策略比较复杂时,备份数据往往需要较长的恢复时间。
- 备份间隔。鉴于数据备份作业对主机系统的性能影响,数据备份作业之间的间隔不能太短;然而数据备份作业之间的间隔不能也不能太长,在两次备份之间发生意外,数据的丢失量太大对于一些重要的信息系统是不可接受的。
- 数据的可恢复性。数据备份的目的是数据恢复,但往往由于存储介质失效、人为错误、备份出错等原因,造成备份数据的不可恢复。
- 数据备份的成本。数据备份的本质是用数据冗余来提升系统的稳定性;高频率、高稳定性的数据备份的成本一般也较高。
3.4 解答题
1、假设有一个3军问题,提供以下信息:
- 1支红军在山谷里扎营,在周围的山坡上驻扎着3支蓝军;
- 红军比任意1支蓝军都要强大;如果1支蓝军单独作战,红军胜;如果2支或以上蓝军同时进攻,蓝军胜;
- 三支蓝军需要同步他们的进攻时间;但他们惟一的通信媒介是派通信兵步行进入山谷,在那里他们可能被俘虏,从而将信息丢失;或者为了避免被俘虏,可能在山谷停留很长时间;
- 每支军队有1个参谋负责提议进攻时间;每支军队也有1个将军批准参谋提出的进攻时间;很明显,1个参谋提出的进攻时间需要获得至少2个将军的批准才有意义;
请回答以下问题:
- 是否存在一个协议,能够使得蓝军同步他们的进攻时间?
- 根据下图并利用该协议描述两个参谋先后提议的场景。
答:
第一问:可采用Paxos协议。
补充:
参谋和将军需要遵循一些基本的规则:
- 参谋以两阶段提交(prepare/commit)的方式来发起提议,在prepare阶段需要给出一个编号;
- 在prepare阶段产生冲突,将军以编号大小来裁决,编号大的参谋胜出;
- 参谋在prepare阶段如果收到了将军返回的已接受进攻时间,在commit阶段必须使用这个返回的进攻时间;
第二问:
- 参谋1发起提议,派通信兵带信给3个将军,内容为(编号1);
- 3个将军收到参谋1的提议,由于之前还没有保存任何编号,因此把(编号1)保存下来,避免遗忘;同时让通信兵带信回去,内容为(ok);
- 参谋1收到至少2个将军的回复,再次派通信兵带信给3个将军,内容为(编号1,进攻时间1);
- 3个将军收到参谋1的时间,把(编号1,进攻时间1)保存下来,避免遗忘;同时让通信兵带信回去,内容为(Accepted);
- 参谋1收到至少2个将军的(Accepted)内容,确认进攻时间已经被大家接收;
- 参谋2发起提议,派通信兵带信给3个将军,内容为(编号2);
- 3个将军收到参谋2的提议,由于(编号2)比(编号1)大,因此把(编号2)保存下来,避免遗忘;又由于之前已经接受参谋1的提议,因此让通信兵带信回去,内容为(编号1,进攻时间1);
- 参谋2收到至少2个将军的回复,由于回复中带来了已接受的参谋1的提议内容,参谋2因此不再提出新的进攻时间,接受参谋1提出的时间;