Hadoop 学习笔记之入门准备
一、Hadoop概述
1、Hadoop概念:
是一个由Apache基金会开发的开源分布式计算框架,旨在处理大规模数据集。主要解决海量数据的存储和分析计算问题。广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈
2、Hadoop优势:
高可靠性:通过维护多个数据副本,确保在节点故障时仍能继续处理,也不会导致数据的丢失。
高扩展性:在集群间分配任务数据,可以轻松扩展到数千个节点。
高效性 :在MapReduce的思想下,通过并行处理加快数据处理速度。
高容错性:自动保存数据副本,并在任务失败时重新分配。
低成本 :开源软件,降低了项目成本。
3、组成架构:
MapReduce(计算)+ Yarn(资源调度)+ HDFS(数据存储)+ Common(辅助工具)
3.1、MapReduce
MapReduce 将计算过程分为两个阶段: Map 和 Reduce
1) Map 阶段并行处理输入数据
2) Reduce 阶段对Map结果进行汇总
3.2、Yarn
ResourceManager + NodeManager + ApplicationMaster + Container
ResourceManager :是Yarn的核心组件,负责整个集群的资源管理和分配
NodeManager :是每个节点上的资源和任务管理器
ApplicationMaster:是用户提交的每个应用程序的调度和协调者
Container :是Yarn中的资源抽象,它封装了NodeManager节点上的多维度资源,如内存、CPU、磁盘和网络等
3.3、HDFS
NameNode + DataNode + Secondary NameNode(
NameNode(nn):HDFS的核心,负责管理文件系统的命名空间和元数据信息
DataNode(dn):HDFS的存储节点,负责存储实际的数据块(Block)
Secondary NameNode(2nn):主要作用是辅助NameNode,定期合并EditLog和FsImage,生成新的FsImage文件
二、运行环境搭建
1、虚拟机环境准备(虚拟机搭建自行查询搭建方法)
2、克隆三台虚拟机(hadoop102、hadoop103、hadoop104)
3、安装 Hadoop(官网下载)
3.1、Hadoop重要目录:
1)bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本
2)etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件
3)lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)
4)sbin目录:存放启动或停止Hadoop相关服务的脚本
5)share目录:存放Hadoop的依赖jar包、文档、和官方案例
3.2、Hadoop运行模式
本地模式、伪分布式模式以及完全分布式模式
4、安装JDK,分发脚本
5、配置 SSH 无密登录
6、集群配置(自定义配置文件)
配置策略:NameNode和SecondaryNameNode不要安装在同一台服务器, ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置在同一台机器上
配置文件说明:配置文件分默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值
常用配置文件:core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、workers(路径:$HADOOP_HOME/etc/hadoop)
7、群起集群(第一次启动要格式化NameNode:hdfs namenode -format)
启动HDFS:sbin/start-dfs.sh
启动YARN:sbin/start-yarn.sh
常用端口号:(浏览器查看集群信息)
1)NameNode 内部通信端口 8020 / 9000/9820
2)NameNode 对用户的查询端口 9870
3)Yarn 查看任务运行情况 8088
4)历史服务器通信端口 19888
8、编写Hadoop集群常用脚本(startall,stopall,jpsall)
三、常见错误及解决方案
1、搭建Hadoop完全分布式模式时, scp拷贝Hadoop报错Permission denied, 原因是权限不够
用下面这条命令:
chmod 777 文件或目录
不是 root 用户, 可能需要加上 sudo 来执行:
sudo chmod 777 文件或目录
运行命令后,文件或目录 的权限就被修改为777(可读可写可执行)
重新执行SCP拷贝操作, 报错问题就会解决了
四、入门常见面试题
1、常用端口号
NameNode 内部通信端口 8020 / 9000/9820
NameNode 对用户的查询端口 9870
Yarn 查看任务运行情况 8088
历史服务器通信端口 19888
2、常用配置文件
core-site.xml、 hdfs-site.xml、 yarn-site.xml、 mapred-site.xml 、workers
更多推荐




所有评论(0)