云计算与大数据技术课后习题

  • 格式:docx
  • 大小:160.97 KB
  • 文档页数:7

2~5 6. MapReduce 思想来源 LISP 语言

第一章 云计算与大数据基础 1.在信息产业的发展历程中。硬件驱动力,网络驱动力,作为两个重要的内在动力在不同 的时期起着重要的作用

7.按照资源封装层次,云计算分为 Iaas paas saas 三种 8. 教材 P2 1.1.2 10. 教材 P8 1.2.2 11. 教材 P10 1.2.3

第二章 云计算与大数据相关技术 1.一致性 hash 算法原理: 哈希算法是一种从稀疏值到紧密值范围的映射方法,在存储和计算定位时可以被看做 是一种路由算法。通过这种路与哦算法文件块能被唯一的定位到一个节点的位置。传统的 hash 算法容错性和扩展性都不好,无法有效的适应面向数据系统节点的动态变化。意思就 是当集群需要增加节点,传统的 hash 算法不容易检测到新增加的节点,此为扩展性不好, 而一致性 hash 算法增加一个节点只会影响增加的这个节点到前一个节点之间的数据。容错 性就是如果不幸一个机器 C 宕机了,那么机器 B 和 C 之间的数据都会被 D 执行,那么受影响 的数据只是机器 B 和 C 之间的数据。当然,容错性和扩展性对于节点数较多的集群是比较 有意义的,对于节点较少的集群似乎这两个特性并没有什么诱惑力。 一致性 hash 的实际目的就是解决节点频繁变化时的任务分配问题,一致性 hash 将整 个 hash 值空间组织成一个虚拟圆环,我们这里假设某 hash 函数 H 值空间为 0~(2^32-1), 即 32 位无符号整形。下面简述一下一致性 hash 的原理: 这是一致性 hash 的整个值空间 0~(2^32-1)

西摩 克雷 超级计算机之父 约翰 麦克锡 云计算之父 蒂姆 伯纳斯 李 万维网发明人 第一个网页开发者 吉姆 格雷 大数据之父 下一步将各个服务器使用 Hash 进行一个哈希,具体可以选择服务器的 ip 或主机名作 为关键字进行哈希,这样每台机器就能确定其在哈希环上的位置,假设使用四台机器进行 hash:

将数据 key 使用相同的函数 Hash 计算出哈希值,并确定此数据在环上的位置,从此位 置沿环顺时针“行走”,第一台遇到的服务器就是其应该定位到的服务器。 例如我们有 Object A、Object B、Object C、Object D 四个数据对象,经过哈希计算 后,在环空间上的位置如下:

根据一致性哈希算法,数据 A 会被定为到 Node A 上,B 被定为到 Node B 上,C 被定为 到 Node C 上,D 被定为到 Node D 上

下面我们看看当集群机器比较少的情况 例如系统中只有两台服务器,其环分布如下, 此时必然造成大量数据集中到 Node A 上,而只有极少量会定位到 Node B 上。为了解决 这种数据倾斜问题,一致性哈希算法引入了虚拟节点机制,即对每一个服务节点计算多个 哈希,每个计算结果位置都放置一个此服务节点,称为虚拟节点。具体做法可以在服务器 ip 或主机名的后面增加编号来实现。例如上面的情况,可以为每台服务器计算三个虚拟节 点,于是可以分别计算 “Node A#1”、“Node A#2”、“Node A#3”、“Node B#1”、 “Node B#2”、“Node B#3”的哈希值,于是形成六个虚拟节点: 同时数据定位算法不变,只是多了一步虚拟节点到实际节点的映射,例如定位到“Node A#1”、“Node A#2”、“Node A#3”三个虚拟节点的数据均定位到 Node A 上。这样就解 决了服务节点少时数据倾斜的问题。在实际应用中,通常将虚拟节点数设置为 32 甚至更大, 因此即使很少的服务节点也能做到相对均匀的数据分布。

2.科学研究的四个范式:观测实验、理论、计算仿真、数据 3.物联网产业链分为:标识,感知,处理,信息传送 4.非关系型数据库分为: (1) Column-Oriented 面向检索的列式存储,其存储结构为列式结构 如:Google 的 big table,apache 的 hbase

(2) Key-Value 面向高性能的并发读/写的缓存存储,结构类似于 Hash 表(hash 算法真的要好好 学,用的地方太多了,性能的确也是最高的),每个 key 分别对应一个 value,这 种数据库适合用来作为缓存系统使用,比如:MemcacheDB,Berkeley DB,redis,flare(3) Document-Oriented 面向海量数据访问的文档存储,这类存储类似 key-value 形式,只是 value 主要 以 JSON 或者 XML 等格式进行存储,比如:mongoDB,CouchDB

第三章 虚拟化技术 1.Popek 和 Goldberg 指出:虚拟机具有 同一性,高效性,可控性 2.虚拟化技术从计算机体系结构层次上可分为以下 5 类: 指令集架构级虚拟化,硬件抽象 层虚拟化,操作系统层虚拟化,编程语言上的虚拟化,库函数虚拟化 3.常用的虚拟化软件系统有 VirtualBox ,VMware Workstation ,KVM 4.系统虚拟化具有 硬件无关性,隔离性,多实例,,特权功能等优点。 5.系统虚拟化可分为 服务器虚拟化 桌面虚拟化 网络虚拟化 6.服务器虚拟化按照虚拟化的部分可分为 CPU 虚拟化,内存虚拟化,I/O 虚拟化 7.什么是广义虚拟化技术: 答:虚拟化技术是一种逻辑简化技术,实现物理层向逻辑层的变化,对物理层运动复杂性 的屏蔽,是系统对外运动呈现出简单的逻辑运行状态

8 虚拟化技术有哪些优势劣势? 优势:1.虚拟化技术可提高资源利用率 2.提供相互隔离,高效的应用执行环境 3.虚拟化可以简化资源和资源管理 4.虚拟化实现软件和硬件的分离 劣势 1.可能会使物理计算机负载过重 2.升级和维护引起的安全问题 3.物理计算机的影响

第四章 集群系统基础 1.云计算领域存在两个主要技术路线,一个是基于集群技术的云计算资源整合技术,一个 是基于虚拟机的云计算资源切分技术 2.集群的设计要考虑 5 个关键的问题是 可用性 单一系统映像 作业管理 并行文件系统 高 效通信 3.传统的集群系统可以分为 高可用性 系统负载均衡 高性能 虚拟化 4 类。 4 简述 Beowulf 系统的主要特点 答:1 Beowulf 系统通常由一个管理节点和多个计算节点构成 2 Beowulf 系统通常用最常见的硬件设备组成 3 Beowulf 系统同城采用哪些廉价且广为传播的软件 5 Lustre 存储系统的组成有 MDS, MDT, OSS, OST, Client

6.简述面向计算分布式系统,混合分布式系统,面向数据的分布式系统的实现机制,分析 三种系统的区别.

面向计算分布式系统: P59 4.6.1 混合型分布式系统:P60 4.6.2面向数据的分布式系统:P61 4.6.3 分析区别:P64 表 4.2 3 中分布式系统的对比

第五章 MPI-面向计算的高性能集群技术 1,什么是 MPI MPI(Message Passing Interface)消息传递接口。它本身不是一个具体的实现,而只是 一种标准描述。 2,MPI 支持 FORTRAN77 、C 、Fortran90 、 C++ 等语言的调用,能满足大多数科 学计算的应用需要。 3,简述 MPICH 并行环境建立的主要步骤。 (1).配置好 NFS 服务,实现所有节点对主节点指定文件夹的共享,该文件夹为 MPICH 的安 装位置,数据和程序的存储位置,这样就可以避免在每个节点安装 MPICH,启动计算时也 可以避免每次向各个节点分发程序。 (2).配置好各个节点间的互信,这一步就是实现集群内部个节点间无密码访问,因为 MPICH 在计算时需要在各节点进行数据交换,集群内的节点应用相互信任的节点。 (3).编译安装配置 MPICH。 4.动手配置 MPI 节点间的 ssh 无密码访问。 (1)生成私钥 id_dsa 和公钥 id_dsa.pub (2)将该密钥用作认证,进行访问授权。 (3)将~/.ssh 目录下的文件复制到所有节点。 (4)检查是否可以直接(不需要密码)登录其他节点。 5,简述基于蒙特卡罗思想求 π 值的编程方法,并编写用 MPI 程序。 蒙特卡罗方法,又称为随机抽样或统计试验方法。 代码在 Page 83 -84

第六章 Hadoop-分布式大数据系统 1.谷歌三宝:mapreduce,bigtable,gfs 2.gfs 的工作过程: p93 3.HDFS 分块策略: p95

第七章 HPCC-面向数据的高性能计算集群系统 1,简述 HPCC 的主要特点。 (1) 强大灵活的 ECL 语言,显著提升了程序员编程的效率。 (2) HPCC 系统提供的 Roxie 集群提供了高效的在线查询和分析服务。 (3) ECL 程序首先编译为优化的 C++,高速性能得到保证。 (4) 高效的错误恢复和冗余备份机制。 (5) 稳定和可靠的系统。 (6) 相对于其他平台,在较低的系统消耗上实现了更高的性能。 2,高性能计算目前可以分为两类:一类是面向 计算 的高性能计算,另一类是面向 数 据 的高性能计算。 3,数据密集型集群计算系统主要有 Hadoop HPCC Storm Apache Drill Rapid Miner Pentaho 4,HPCC 系统从总体物理上可以看作在同一个集群上部署了 Thor(数据加工处理平台) 、