【大数据 复习】第8章 Hadoop架构再探讨(含设计题)

一、概念

1.Hadoop1.0的核心组件(仅指MapReduce和HDFS,不包括Hadoop生态系统内的Pig、Hive、HBase等其他组件),主要存在以下不足:

(1)抽象层次低,需人工编码

(2)表达能力有限

(3)开发者自己管理作业(Job)之间的依赖关系

(4)难以看到程序整体逻辑

(4)执行迭代操作效率低

(5)资源浪费(Map和Reduce分两阶段执行)

(6)实时性差(适合批处理,不支持实时交互式)

2.优化与发展体现在两个方面:

(1)Hadoop自身两大核心组件MapReduce和HDFS的架构设计改进

(2)Hadoop生态系统其它组件的不断丰富,加入了Pig、Tez、Spark和Kafka等新组件

3.HDFS HA(High Availability,重点)

(1)为了解决1.0第二名称节点无法克服单点故障问题

(2)1.0那种日志啥的叫冷备份,2.0这个升级了叫热备份。

(3)热备份:

通俗讲就是搞俩节点,坏了用另一个。

HA集群设置两个名称节点,“活跃(Active)”和“待命(Standby)”,Zookeeper确保一个名称节点在对外服务,就是确保坏了没有。

4.HDFS Federation(联邦机制,重点)

解决了,不可以水平扩展,系统整体性能受限于单个名称节点的吞吐量,单个名称节点难以提供不同程序之间的隔离性 等这些问题。

(1)设计了多个相互独立的名称节点。

(2)相互之间是联盟(Federation)关系,不需要彼此协调,并且向后兼容。

(3)所有名称节点会共享底层的数据节点存储资源。

二、资源管理调度框架YARN

1.YARN

(1)JobTracker“大包大揽”导致任务过重。

(2)YARN的目标就是实现“一个集群多个框架”.

(3)容器(Container):是YARN的动态资源分配单位。每个容器中都封装了一定数量的CPU、内存、磁盘等资源,从而限定每个应用程序可以使用的资源量。

2.YARN对待JobTracker的拆分思路(熟记)

3.具体架构(没写文字,但是考试肯定是要文字的):

三、习题

大题

1.HDFS Federation相对于HDFS1.0的优势?

(1)HDFS集群扩展性提高,不再像HDFS1.0中那样由于内存的限制制约文件存储数目。

(2)性能更高效。

(3)良好的隔离性。

2.YARN相对于MapReduce1.0来说的优势?

(1)大大减少了承担中心服务功能的ResourceManager的资源消耗。

(2)MapReduce1.0既是一个计算框架,又是一个资源管理调度框架,但是,只能支持MapReduce编程模型。而YARN则是一个纯粹的资源调度管理框架,在它上面可以运行包括MapReduce在内的不同类型的计算框架,只要编程实现相应的ApplicationMaster.

(3)YARN中的资源管理比MapReduce1.0更加高效,以容器为单位,而不是以slot为单位。

3.请结合本学期所学的知识,提供一个该大数据平台的设计方案,请从数据库选择,数据采集开始设计,画出该平台的层次结构图(5分),并说明每层有什么作用(5分),采用什么工具或技术(5分)?

某公司为购物平台,业务量非常庞大,现在需要为一个公司建立大数据平台,全面支持公司业务,需提供以下业务:
实时的订单处理,时间跨度在数百毫秒到数秒之间;
基于历史订单的查询,时间跨度在数分钟之间:
对于平台各种数据的批处理分析,提供较复杂的业务,时间跨度在数小时之间。

大数据平台设计

数据库选择
  • 技术:HBase 和 MySQL
  • 作用:HBase 用于存储大量的历史订单数据,提供高吞吐量和快速查询;MySQL 用于存储实时订单数据,支持高频率的读写操作。
数据采集层
  • 技术:Flume 和 Kafka
  • 作用:Flume 从各种数据源(如日志、数据库)采集数据,Kafka 用于实时数据流的处理和传输,保证高吞吐量和低延迟。
数据存储层
  • 技术:HDFS 和 HBase
  • 作用:HDFS 存储批处理数据,HBase 存储实时和历史订单数据,提供快速随机访问能力。
数据处理层
  • 技术:Spark 和 Hadoop MapReduce
  • 作用:Spark 处理实时数据流,提供实时订单处理和快速查询;Hadoop MapReduce 处理批量数据,进行复杂的数据分析任务。
数据查询层
  • 技术:Hive 和 Impala
  • 作用:Hive 在 HDFS 上构建数据仓库,支持批量数据查询;Impala 提供交互式的 SQL 查询,支持低延迟的数据分析。
数据展示层
  • 技术:Tableau 和 Kibana
  • 作用:Tableau 用于可视化分析和报表生成,Kibana 用于实时数据的监控和展示。
  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值