大数据技术原理与应用 林子雨版 课后习题答案 联系客服

发布时间 : 星期日 文章大数据技术原理与应用 林子雨版 课后习题答案更新完毕开始阅读

答:

UMP系统就是构建在一个大得集群之上得,通过多个组件得协同作业,整个系统实现了对用户透明得 容灾、读写分离、分库分表、资源管理、资源调度、资源隔离与数据安全功能.1 ?、容灾

云数据库必须向用户提供一直可用得数据库连接,当MySQL实例发生故障时,系统必须自动执行故障恢复,所有故障处理过程对于用户而言就是透明得,用户不会感知到后台发生得一切。? 为了实现容灾,UMP系统会为每个用户创建两个MySQL实例,一个就是主库,一个就是从库,而且,这两个MySQL 实例之间互相把对方设置为备份机,任意一个MySQL实例上面发生得更新都会复制到对方.同时,Proxy服务器可以保证只向主库写人数据。?

2、读写分离

由于每个用户都有两个MySQL实例,即主库与从库,因此,可以充分利用主从库实现用户读写操作得分离,实现负载均衡.UMP系统实现了对于用户透明得读写分离功能,当整个功能被开启时,负责向用户提供访问MySQL数据库服务得Proxy 服务器,就会对用户发起得SQL 语句进行解析,如果属于写操作,就直接发送到主库,如果就是读操作,就会被均衡地发送到主库与从库上执行。 3、分库分表

UMP支持对用户透明得分库分表(Shard/Horizontal Partition)。但就是,用户在创建账号得时候需要指定类型为多实例,并且设置实例得个数,系统会根据用户设置来创建多组MySQL实例。除此以外,用户还需要自己设定分库分表规则,如需要确定分区字段,也就就是根据哪个字段进行分库分表,还要确定分区字段里得值如何映射到不同得MySQL 实例上。? 4、资源管理? UMP系统采用资源池机制来管理数据库服务器上得CPU、内存、磁盘等计算资源,所有得计算资源都放在资源池内进行统一分配,资源池就是为MySQL 实例分配资源得基本单位。整个集群中得所有服务器会根据其机型、所在机房等因素被划分为多个资源池,每台服务器会被加人到相应得资源池。在资源池划分得基础上,UMP还在每台服务器内部采用Cgroup将资源进一步地细化,从而可以限制每个进程组使用资源得上限,同时保证进程组之间相互隔离。 5、资源调度

UMP系统中有3种规格得用户,分别就是数据量与流量比较小得用户、中等规模用户以及需要分库分表得用户。多个小规模用户可以共享同一个MySQL实例。对于中等规模得用户,每个用户独占个MySQL 实例。用户可以根据自己得需求来调整内存空间与磁盘空间,如果用户需要更多得资源,就可以迁移到资源有空闲或者具有更高配置得服务器上对于分库分表得用户,会占有多个独立得MySQL 实例,这些实例既可以共存在同一台物理机上,也可以每个实例独占一台物理机。

UMP通过MySQL实例得迁移来实现资源调度。借助于阿里集团中间件团队开发得愚公系统,UMP 可以实现在不停机得情况下动态扩容、缩容与迁移.? 6、资源隔离? 当多个用户共

享同一个MySQL 实例或者多个MySQL 实例共存在同一个物理机上时,为了保护用户应用与数据得安全,必须实现资源隔离,否则,某个用户过多消耗系统资源会严重影响到其她用户得操作性能。

7、数据安全??数据安全就是让用户放心使用云数据库产品得关键,尤其就是企业用户,数据库中存放了很多业务数据,有些属于商业机密,一旦泄露,会给企业造成损失.UMP 系统设计了多种机制来保证数据安全。 1) SSL 数据库连接。 2) 数据访问IP 白名单。 3) 记录用户操作日志。 4) SQL拦截。

13、 UMP 系统就是如何保障数据安全得? 答:

1) SSL 数据库连接。 SSL (Secure Sockets Layer) 就是为网络通信提供安全及数

据完整性得一种安全协议,它在传输层对网络连接进行加密.Proxy 服务器实现了完整得MySQL 客户端服务器协议,可以与客户端之间建立SSL 数据库连接。

2) 数据访问IP 白名单。可以把允许访问云数据库得IP 地址放入“白名单”,只有白名单内

得IP地址才能访问,其她IP地址得访问都会被拒绝,从而进一步保证账户安全。 3) 记录用户操作日志。 用户得所有操作记录都会被记录到日志分析服务器,通过检查用户

操作记录,可以发现隐藏得安全漏洞。

4) SQL拦截。Proxy 服务器可以根据要求拦截多种类型得SQL 语句,比如全表扫描语

句”select *”。

15、 简述RDS 中实例与数据库得概念。

答: RDS实例或简称“实例”,就是用户购买RDS服务得基本单位。在实例中可以创建

多个数据库,可以使用常见得数据库客户端连接、管理及使用数据库。可以通过RDS管理控制台或OPEN API来创建、修改与删除数据库。各实例之间相互独立、资源隔离,相互之间不存在CPU、内存、IOPS等抢占问题。但就是,同一实例中得不同数据库之间就是资源

共享得。每个实例拥有其自己得特性,如数据库类型、版本等,系统有相应得参数来控制实例行为.用户所购买RDS实例得性能,取决于购买RDS实例时所选择得配置,可供用户选择得硬件配置项为内存与磁盘容量。

RDS数据库或简称“数据库\就是用户在一个实例下创建得逻辑单元,一个实例可以创建

多个数据库,在实例内数据库命名唯一,所有数据库都会共享该实例下得资源,如CPU、内存、磁盘容量等。RDS不支持使用标准得SQL 语句或客户端工具创建数据库,必须使用OPEN API或RDS管理控制台进行操作。

16、 列举连接RDS for MySQL 数据库得4 种方法.

答: 方法1: 使用客户端MySQL—Front访问。使用客户端MySQL-Front,在连接H

ost 框中输人数据实例链接地址、端口(默认3306)、数据库用户名与数据库密码后,单击“确定”按钮即可。? 方法2: 使用数据库管理T 具Navicat MySQL。Navicat_MySQL 就是一套专为MySQL 设计得强大得数据库管理及开发工具,可以在连接输人框中输人数据实例地址、端口(默认3306 )、数据库用户名与数据库密码后,单击“确定”按钮即可。 方法3: 使用MySQL 命令登录.用户安装MySQL 客户端后,可进人命令行方式连接数据库。命令格式如下。? mysql -u user_name —h yuqianli、mysql、rds、aliyuncs、 -P3306 —pxxxx

其中,-u指定得就是用户名,-h指定得就是主机名,—P指定得就是端口,-p指定得就

是密码。? 方法4: 使用阿里云控制台iDB Cloud访问。阿里云控制台iDB Cloud得页面如图6-7 所示,RDS 连接地址以及端口不需要再输人,只需在“用户名”中输人数据库得账号,在“密码”栏中输人数据库账号得密码,便可以登录RDS进行数据操作了.?

第七章

1、试述MapReduce与Hadoop得关系.

答: 谷歌公司最先提出了分布式并行编程模型MapReduce, Hadoop MapReduce就是它

得开源实现。谷歌得MapReduce运行在分布式文件系统GFS上,与谷歌类似,HadoopMapReduce运行在分布式文件系统HDFS上.相对而言,HadoopMapReduce 要比谷歌MapReduce 得使用门槛低很多,程序员即使没有任何分布式程序开发经验,也可以很轻松地开发出分布式程序并部署到计算机集群中。

?2、MapReduce 就是处理大数据得有力工具,但不就是每个任务都可以使用MapReduce 来进行处理。试述适合用MapReduce来处理得任务或者数据集需满足怎样得要求。

答: 适合用MapReduce来处理得数据集,需要满足一个前提条件: 待处理得数据集可以分解成许多小得数据集,而且每一个小数据集都可以完全并行地进行处理。??3、 MapR

educe模型采用Master(JobTracker)-Slave(TaskTracker)结构,试描述JobTracker与TasKTracker得功能.

答: MapReduce 框架采用了Master/Slave 架构,包括一个Master 与若干个Slave。Master 上运行JobTracker,Slave 上运行TaskTrackero 用户提交得每个计算作业,会被划分成若千个任务.JobTracker 负责作业与任务得调度,监控它们得执行,并重新调度已经失败得任务.TaskTracker负责执行由JobTracker指派得任务。?

6、试述MapReduce得工作流程(需包括提交任务、Map、Shuffle、Reduce得过程)。