《大数据基础——基于Hadoop与Spark》课后习题——第二章部分答案
仅用于我个人的学习。书籍为人民邮电出版社的《大数据技术基础——基于Hadoop与Spark》。课后习题选择是我个人认为有用的。记录下来是为了督促我学习:)
共好
1.请指出以下产品之间的关系
VMware Workstation、Linux、JDK、SSH、Hadoop、Eclipse、hadoop-eclipse-plugin
首先应该明确这些产品是什么
VMware Workstation:一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统
Linux:Linux是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。通常所说的Linux是采用Linux内核的GNO操作系统。
JDK:JDK是 Java 语言的软件开发工具包。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。
SSH:一种建立在应用层和传输层基础上的安全协议,专为远程登录回话和其他网络服务提供安全性的协议。
Hadoop:一个由Apache基金会所开发的分布式系统基础架构
Eclipse:一个开放源代码的、基于Java的可扩展开发平台(集成开发环境)
hadoop-eclipse-plugin:是一种对hadoop中的文件可视化以及在创建MapReduce Project时辅助引入依赖的jar的插件
简单来说,为了搭建Hadoop项目,我们要使用VMware的虚拟机,即在VMware Workstation中创建Linux虚拟主机(Hadoop运行在JVM之中)。
Hadoop是用Java语言构建的,因此搭建Hadoop平台要使用相对应的java版本和相对应提供商的JDK。java语言常用的集成开发工具IDE为Eclipse等,但是由于原生的Eclipse并不支持Hadoop,必须添加集成插件hadoop-eclipse-plugin等。
由于其分布式的特点,为了保证网络应用之间的数据传输的安全性,我们使用SSH来加密传输数据。
2.Hadoop的3种运行模式的区别
运行模式 | 运行方式 | 数据存储 | 主要作用 |
---|---|---|---|
Local(Standalne)Mode本地模式 | 所有程序都运行在同一个JVM中,无守护进程 | Linux的本地文件系统 | 用于测试和调试MapReduce程序 |
Pseudo-Distributed Mode伪分布模式 | 守护进程运行在本地机器上,创建不同的JVM实例来实现程序的分布式运行 | HDFS | 帮助没有足够的机器去部署一个完全分布式环境的用户进行开发 |
Fully-Distributed Mode完全分布模式 | 在集群中的每个节点上启动一个守护进程,Map任务和Reduce任务通过调度机制并行地运行于不同的节点之中 | HDFS | 用户有多台机器去部署一个完全分布式环境时使用 |
4.指出以下环境变量的作用及其取值
JAVA_HOME、 JRE_HOME、 CLASSPATH、 HADOOP_HOME
环境变量 | 作用 | 取值 |
---|---|---|
JAVA_HOME | jdk的安装路径 1.方便引用2.归一原则3.第三方软件会引用约定好的JAVA_HOME变量 | /user/local/jdk1.8.0_101 |
JRE_HOME | 设置jre的安装路径 | ${JAVA_HOME}/jre |
CLASSPATH | 指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序 | .: ${JAVA_HOME}/lib: $ {JRE_HOME}/lib |
HADOOP_HOME | Hadoop的安装路径 | /home/hadoop/hadoop-2.7.2 |
5.Hadoop的配置文件有多个,其中包含了大量的配置参数。请指出以下参数的意义。
fs.defaultFS、hadoop.tmp.dir、dfs.namenode.name.dir、dfs.datanode.data.dir、dfs.replication、mapreduce.framework.name
参数 | 意义 |
---|---|
fs.defaultFS | NameNode的URI |
hadoop.tmp.dir | 临时文件的存储目录 |
dfs.namenode.name.dir | 指定NameNode在本地文件系统中保存namespace和持久性日志的路径 |
dfs.datanode.data.dir | 指定DataNode在本地文件系统中保存数据块的路径 |
dfs.replication | 指定数据块的副本个数,该值应该小于DataNode节点的数量 |
mapreduce.framework.name | 为Hadoop YARN设置可执行框架 |
- 《大数据基础——基于Hadoop与Spark》课后习题——第三章部分答案
- 《大数据基础——基于Hadoop与Spark》课后习题——第四章部分答案
- 基于hadoop与spark的大数据分析实战——第二章、Spark部署与安装
- 第二章 物理层笔记及部分课后习题
- 《跟阿铭学Linux》第10章 shell基础知识:课后习题与答案
- C++大学基础编程第二章部分题目答案
- 《跟阿铭学Linux》第10章 shell基础知识:课后习题与答案
- 快学 scala 第二章课后习题答案
- 鸟哥的linux私房菜基础学习篇课后习题与答案 第二章
- 数据结构与算法分析(java语言描述) 部分课后习题答案 第一章
- 《计算机网络》第七版第一章总结及部分课后习题答案
- 自考本科《计算机网络原理》课后习题参考答案(第二章)
- C++ Primer Plus (第6版)课后习题答案 第二章
- 《C语言程序设计教程》(主编黄迪明、余勤)第二章课后习题答案
- “大数据分析挖掘-基于Hadoop/Mahout/Mllib的大数据挖掘(含Spark、Storm和Docker应用介绍)”培训
- 编程珠玑第1章部分课后习题答案注解
- 基于Hadoop2.6.0的Spark1.3.1大数据处理平台的搭建
- 基于hadoop与spark的大数据分析实战——第一章 Hadoop部署与实践
- C++Primer Plus笔记——第二章 开始学习C++及课后习题答案
- 算法竞赛入门经典第二版课后习题答案第二章