数据采集与预处理技术考点复习——第七章

第七章:大数据分析实例

1. Hadoop具有那些特征

(1)高可靠性:采用冗余数据存储方式,即使一个副本发生故障,其他副本也可以保证正常的高效性
(2)高效性:作为并行分布式计算平台,Hadoop采用分布式存储和分布式处理两大核心技术,能够高效的处理PB级数据
(3)高可扩展性:Hadoop的设计目标是可以高效、稳定的运行在廉价的计算机集群上,可以扩展到数以千计的计算机节点上
(4)高容错性:采用冗余数据存储方式,自动保存数据的多个副本,并且能够自动将失败的任务进行重新分配
(5)成本低:Hadoop采用廉价的计算机集群,成本低
(6)运行在Linux平台上:Hadoop基于java语言开发的,可以较好的运行在Linux平台
(7)支持多种编程语言。

2. HDFS的块与普通文件系统中的块有何区别

  • HDFS采用块的概念可以将大规模文件分拆成若干个文件块,适宜大规模文件的存储;
  • 不同文件块可以被分发到不同的节点上,文件的大小就不会受到单个节点存储容量的限制;
  • 使存储管理更为方便,简化了系统设计;
  • 适合数据备份,将文件块冗余的存储到多个节点上,提高了系统的容错率和可用性

3. 简述HDFS中名称节点和数据节点的功能

  • 名称节点:负责管理分布式文件系统的命名空间,记录了每个文件中各个块所在的数据节点的位置信息,但不是持久存储这些信息,而是在系统每次启动时扫描所有数据节点重构得到这些信息
  • 数据节点:分布式文件系统HDFS的工作节点,负责数据的存储和读取

4. 简述MapReduce与Hadoop的关系

  • Mapreduce是一种模式。
  • Hadoop是一种框架。
  • Hadoop是一个实现了mapreduce模式的开源的分布式并行编程框架。

5. MapReduce的主从结构中,JobTracker和TaskTracker的作用是什么

  • JobTracker:负责控制以及调度MapReduce的Job
  • TaskTracker:负责运行MapReduce的Job

6. 简述MapReduce工作流程
MapReduce工作流程图

  • MapReduce将输入数据拆分成多个split(分片)。
  • 由多个Map任务在多台机器上执行这些分片,每个Map任务通常运行在数据存储的节点上,计算和数据放在一起运行,不需要额外的数据传输开销。
  • 当Map任务结束后,会生成以<key,value>键值对形式的许多中间结果,MapReduce将这些中间结果分发到多个MapReduce。
  • 与Map任务相似,Reduce也是在多台机器上并行执行,并将具有相同key值的<key,value>的键值对发送到同一个Reduce任务,Reduce任务对中间结果进行汇总计算得到最后结果。
  • 最后输出到分布式文件系统中

7. 分析MapReduce中Shuffle过程的作用

使Reduce可以并行处理Map端的结果,需要对Map的输出进行一定的分区、排序、合并、归并等处理,从而得到<key,(list of value)>形式的中间结果,然后再交给对应的Reduce进行处理

8. 简述HBase与传统数据库的区别

  • 数据类型:

    关系数据库:采用关系模型,数据类型和存储方式丰富

    HBase:数据模型更加简单,将数据存储为未经解释的字符串,因此结构化、非结构化数据都可转化为字符串保存在HBase中

  • 数据操作:

    关系数据库:包含了丰富的操作,其中涉及复杂的多表连接

    HBase:不涉及复杂的表与表的关系,只有简单的插入、查询、删除、清空等,使得数据操作更为简单直观

  • 数据存储模式:

    关系数据库:基于行模式存储

    HBase:基于列模式的存储,每个列族都由几个文件保存,不同列族的文件是分离的

  • 数据索引:

    关系数据库:针对不同列构建复杂的多个索引,以提高数据访问性能

    HBase:只有一个索引——行键,其所有访问方法,通过行键访问或者通过行键扫描

  • 数据维护:

    关系数据库:更新操作会用最新的当前值去替换记录中的旧值,旧值被覆盖后就不会存在

    HBase:执行更新操作时,不会删除数据旧的版本,而是生成一个新的版本,有的旧版本仍然保留

  • 其他:

    关系数据库:很难实现横向扩展

    HBase:能够轻易通过集群中增加或者减少硬件数量来实现性能的伸缩

9. 解释HBase中行键/列键和时间戳的概念

  • 行键:HBase表由若干行组成,每个行由行键标识
  • 列键:HBase表由若干列组成,每个列由列键标识
  • 时间戳:HBase中通过行、列族和列限定符确定一个单元格cell。每个cell都保存着同一份数据的多个版本。版本通过时间戳来索引。如果应用程序要避免数据版本冲突,就必须自己生成具有唯一性的时间戳

10.简述Yarn组件在Hadoop中的作用

将JobTracke的三大功能(资源管理、任务调度、任务监控)进行拆分,分别交给不同的新组件去处理,重新设计后产生的Yarn:

  • ResourseManage:资源管理
  • ApplicationMaster:调度和监控
  • NodeManager:执行原TaskTracker的任务

这种设计实际为“放权”,大大降低了JobTracke的负担,提升了运行的效率和稳定性

  • 4
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值