国开搜题
想要快速找到正确答案?
立即关注 国开搜题微信公众号,轻松解决学习难题!
作业辅导
扫码关注
论文指导
轻松解决学习难题!
广东开放大学Hadoop数据处理(专)期末考试试卷与参考答案
以下是一份针对广东开放大学《Hadoop数据处理(专)》期末考试的复习笔记,结合核心知识点、常见考点及参考答案示例,供参考:
广东开放大学Hadoop数据处理期末复习笔记
一、核心概念与基础理论
1. Hadoop概述
- Hadoop是什么?
Hadoop是一个分布式计算框架,用于处理大规模数据存储和计算,核心组件包括HDFS(分布式文件系统)和MapReduce(分布式计算模型)。
- Hadoop生态系统
包含HDFS、MapReduce、YARN(资源管理器)、Hive(数据仓库工具)、Pig(数据处理语言)、HBase(分布式数据库)、ZooKeeper(协调服务)等。
2. HDFS(Hadoop Distributed File System)
- 核心功能
存储海量数据,提供高容错性、高吞吐量,适合批量数据访问。
- 架构组成
- NameNode:管理元数据(文件目录、块信息等)。
- DataNode:存储实际数据块(默认块大小128MB)。
- Secondary NameNode:协助NameNode合并编辑日志,避免元数据过大。
- 副本机制
默认数据块副本数为3,可配置,用于容错和负载均衡。
3. MapReduce
- 核心思想
将任务分解为Map和Reduce两个阶段,实现分布式计算。
- 执行流程
1. Map阶段:将输入数据分割为分片,每个分片由Map任务处理,生成键值对(Key-Value)。
2. Shuffle阶段:对Map输出进行分区、排序、合并。
3. Reduce阶段:聚合Map的输出结果,生成最终结果。
- Combiner与Partitioner
- Combiner:本地聚合,减少数据传输量。
- Partitioner:决定数据分发到哪个Reduce任务。
二、常见考点与解答示例
1. 选择题
题目:HDFS默认的数据块大小是?
答案:128MB(Hadoop 3.x版本默认值,旧版本为64MB)。
题目:MapReduce中负责协调作业执行的是?
答案:JobTracker(旧版)或ResourceManager(YARN模式)。
2. 简答题
题目:简述HDFS的高容错性如何实现?
答案:
- 数据块默认存储3个副本,分布在不同DataNode上。
- NameNode实时监控DataNode状态,若检测到故障,会重新复制数据块到其他节点。
- 元数据备份通过Secondary NameNode定期合并编辑日志,避免NameNode单点故障。
题目:MapReduce的Shuffle阶段包含哪些步骤?
答案:
1. 分区(Partitioning):将Map输出数据分到不同Reduce任务。
2. 排序(Sorting):按Key对数据排序。
3. 合并(Combining):本地聚合相同Key的值(可选)。
4. 归并(Merging):将多个Map的输出合并后传输给Reduce。
3. 综合应用题
题目:设计一个统计日志中每个用户访问次数的MapReduce程序。
解答思路:
- Map阶段:
输入日志行,解析出用户ID作为Key,值设为1。
输出:`<用户ID, 1>`
- Reduce阶段:
对每个用户ID的值列表求和,得到总访问次数。
输出:`<用户ID, 总次数>`
- 优化:
使用Combiner进行本地聚合,减少网络传输。
三、配置与优化
1. Hadoop集群配置
- 核心配置文件
- `core-site.xml`:设置HDFS地址、Hadoop临时目录等。
- `hdfs-site.xml`:配置HDFS参数(如副本数、块大小)。
- `mapred-site.xml`:MapReduce作业参数(如调度器类型)。
- `yarn-site.xml`:YARN资源管理配置。
- 伪分布式配置示例
```xml
```
2. 性能优化策略
- HDFS优化
- 根据数据量调整块大小(如冷热数据分层存储)。
- 合理设置副本数(通常3副本,高吞吐场景可减少为2)。
- MapReduce优化
- 调整内存参数(如`mapreduce.map.memory.mb`)。
- 使用压缩中间结果(如Snappy或LZO)。
- 平衡Map/Reduce任务数量,避免数据倾斜。
四、案例分析
1. 数据倾斜问题
场景:Reduce阶段某个任务执行时间远长于其他任务。
原因:Key分布不均(如某个Key对应大量数据)。
解决方案:
- 使用`HashPartitioner`的替代方案(如RangePartitioner)。
- 在Map端预处理数据,对热点Key进行拆分(如`<用户ID+随机数, 1>`)。
2. HDFS数据丢失恢复
步骤:
1. 执行`hdfs fsck /`检查数据块状态。
2. 若发现副本不足,运行`hdfs dfsadmin -report`定位故障节点。
3. 重启故障DataNode或通过`hdfs balancer`重新平衡数据。
五、模拟试题与答案
1. 填空题
- Hadoop的默认RPC通信端口是______。
答案:8020(NameNode)/8032(ResourceManager)。
2. 简答题
题目:解释YARN在Hadoop中的作用。
答案:
YARN(Yet Another Resource Negotiator)是资源管理框架,负责集群资源分配与任务调度,将MapReduce的JobTracker拆分为ResourceManager和NodeManager,支持多种计算框架(如Spark、Storm)。
六、复习建议
1. 重点章节:HDFS架构、MapReduce执行流程、YARN资源管理。
2. 实践操作:
- 配置伪分布式环境,运行WordCount示例。
- 使用HDFS命令(`hdfs dfs`)操作文件系统。
3. 高频考点:数据倾斜处理、HDFS副本机制、MapReduce阶段划分。
希望这份复习笔记能帮助你高效备考!祝考试顺利!
