第一次
- 大数据有哪些基本特征,请分别解释每一个特征的意义?
Volume:巨大的数据量
Variety: 数据类型多样化
结构化的数据:即具有固定格式和有限长度的数据
半结构化的数据:是一些xml或者HTML格式的数据
非结构化的数据:现在非结构化的数据越来越多,就是不定长、无固定格式的数据,例如:网页、语言、视频等。
Velocity:数据增长速度快
Value:价值密度低,商业价值高
2.Google的“三驾马车”思想都包括哪些?请简述MapReduce的大数据计算思想。
“三架马车”: GFS 、MapReduce、Big Table
MapReduce:采用“分而治之”的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个子节点共同完成,然后整合各个子节点的中间结果,得到最终的计算结果。简而言之,就是“分散任务,汇总结果”。
- 什么是机架感知,它的设计目标是什么?
机架感知:通常,大型Hadoop集群会分布在很多机架上。在这种情况下,不同节点之间的通信希望尽量在同一个机架之内进行,而不是跨机架;为了提高容错能力,名称节点会尽可能把数据块的副本放到多个机架上。
设计目标:是GFS的“副本选择目标最大化数据可靠性和可用性”的一种具体实现方式。
第二次
HDFS组成与架构小结
- Name Node主要职责有哪些?
- 管理和维护HDFS的命名空间
- 管理Data Node上的数据块
- 接收客户端的请求
- Data Node 主要职责有哪些?
- 保存数剧块。每个数据块对应一个元数据信息文件,描述这个数据块属于哪个文件,是第几个数据块等
- 启动Data Node线程,向Name Node定期汇报数据块信息。
- 定期向Name Node发送心跳信息保持联系。
- Secondary Name Node 主要职责有哪些?
定期把name node的fsimage 和edits 下载到本地,并将它们加载到内存进行合并,最后将合并后的新的fsimage上传回namenode,这个过程称为检查点。
第三次
3-1什么是HDFS.
HDFS是Google公司的GFS分布式文件系统思想的开源实现,是Apache Hadoop项目的一个子项目。
3-2什么是 HDFS的edits、fsimage。
Edits: 操作日志文件,主要是在Name Node已经启动的情况下对HDFS进行的各种更新操作进行记录。HDFS客户端执行的所有写操作都会被记录到deitlog中。保存editlog的文件则是edits。
Fasimage:命名空间镜像文件,包含hadoop文件系统中所有目录和文件的序列化信息。对于文件,fsimage包含的信息有修改时间、访问时间、块大小和组成一个文件的数据块信息等;而对于目录,fsimage包含的信息主要有修改时间、访问控制权限等。
3-3什么是 HDFS的Federation。
即HDFS联邦,指的是HDFS有多个name node或name space(NS),这些name node或name space是联合的,它们相互独立且不需要相互协调,各自分工,管理自己的区域。
3-4 NameNode、DataNode.SecondaryNameNode的职责分别是什么。
Name Node
- 管理和维护HDFS的命名空间
- 管理Data Node上的数据块
- 接收客户端的请求
- Data Node
- 保存数剧块。每个数据块对应一个元数据信息文件,描述这个数据块属于哪个文件,是第几个数据块等
- 启动Data Node线程,向Name Node定期汇报数据块信息。
- 定期向Name Node发送心跳信息保持联系。
- Secondary Name Node
定期把name node的fsimage 和edits 下载到本地,并将它们加载到内存进行合并,最后将合并后的新的fsimage上传回namenode,这个过程称为检查点。
3-5 HDFS的 Federation 与HA有什么区别。
HA解决了HDFS的NameNode的单点问题;
Federation解决了整个HDFS集群中只有一个名字空间,并且只有单独的一个NameNode管理所有DataNode的问题。
第四次
5.6小结与思考
通过本章学习,需要达到如下目标:
- 很好掌握MapReduce编程模型及采用此模型解决相关问题
理解Map和Reduce
- 输入(Input)一个大文件,通过拆分(Split)之后,将其分为多个分片。
- 每个文件分片由单独