Hadoop运行模式及目录结构

文章目录

  • Hadoop运行模式
    • 本地模式
    • 伪分布式模式
    • 完全分布式模式
  • Hadoop目录结构
    • 配置文件说明
      • 默认配置文件:
      • 自定义配置文件:

Hadoop运行模式

本地模式

这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统,一般仅用于本地MR程序的调试。

说明:只是用来演示一下官方案例。生产环境不用。

伪分布式模式

这种模式也是在一台单机上运行,但是具备Hadoop集群的所有功能,一台服务器模拟一个分布式的环境。不同于完全分布式的是,这种模式没用不同的 Java 进程模仿分布式运行中的各类结点 (NameNode,DataNode, ResourceManager,SecondaryNameNode)。

伪分布模式在“单节点集群”上运行 Hadoop,其中所有的守护进程都运行在同一台机器上。该模式在单机模式之上增加了代码调试功能,允许你检查内存使用情况,HDFS 输入输出,以及其他的守护进程交互。

说明:少数经费不足的公司用来测试,生产环境不用。

完全分布式模式

真正的分布式,由3个及以上的实体机或者虚拟机组件的机群。表示集群中的节点会被分配成很多种角色,分散在整个集群中。

说明:生产环境使用。

Hadoop目录结构

重要目录以及目录作用

  • bin目录:存放对 Hadoop 相关服务(hdfs,yarn,mapred)进行操作的脚本
  • etc目录:Hadoop 的配置文件目录,存放Hadoop的配置文件,包括 core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml,slaves(3.x 为 workers)等
  • lib目录:存放 Hadoop 的本地库,用于对数据进行压缩解压缩功能。
    • HDFS metadata 以树状结构存储整个HDFS上的文件和目录,以及相应的权限、配额和副本因子等。
    • dfs.namenode.name.dir 和 dfs.namenode.data.dir 是 HDFS Namenode 本地目录的存储结构 hadoop.tmp.dir 是一切路径的基石,NameNode、DataNode 等会将 HDFS 的元数据存储在这个路径下。
  • sbin目录:存放启动或停止 Hadoop 相关服务的脚本
  • share目录:存放 Hadoop 的依赖 jar 包、文档、和官方案例

配置文件说明

Hadoop 配置文件分两类:默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值。

可以查看官方文档Index of /docs (apache.org)版本号选择于自己对应的版本,查看配置文件和配置要求,官方文档中也有伪分布式配置样例。

默认配置文件:

要获取的默认文件文件存放在Hadoop的jar包中的位置
[core-default.xml]hadoop-common-2.7.7.jar/core-default.xml
[hdfs-default.xml]hadoop-hdfs-2.7.7.jar/hdfs-default.xml
[yarn-default.xml]hadoop-yarn-common-2.7.7.jar/yarn-default.xml
[mapred-default.xml]hadoop-mapreduce-client-core-2.7.7.jar/mapred-default.xml

自定义配置文件:

文件存放路径为:$HADOOP_HOME/etc/hadoop

其中有core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml(文件中是mapred-site.xml.template模板文件,需要copy一下把.template后缀删去才能正常使用)、slaves(Hadoop3.x为workers) 等多个个配置文件,用户可以根据项目需求重新进行修改配置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/187578.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VS2022使用Vim按键

VS2022使用Vim按键 在插件管理里面搜索VsVim 点击安装,重启VS 工具->选项->VsVim 配置按键由谁处理,建议Ctrl C之类常用的使用VS处理,其它使用Vim处理

2024北京眼健康展,北京近视眼镜展,中国眼视光产品展览会

创中国眼康贸易平台,CEYEE中国眼博会创造2024年眼康产业发展的新动力; ——随着科技的不断发展,人们对于眼睛健康问题的重视程度也越来越高。在这样的背景下,2024第6届中国(北京)国际青少年眼健康产业展览会(CEYEE中国眼博会)将于…

golang WaitGroup的使用与底层实现

使用的go版本为 go1.21.2 首先我们写一个简单的WaitGroup的使用代码 package mainimport ("fmt""sync" )func main() {var wg sync.WaitGroupwg.Add(1)go func() {defer wg.Done()fmt.Println("xiaochuan")}()wg.Wait() }WaitGroup的基本使用场…

Day37| Leetcode 738. 单调递增的数字

今天就一个题目,做完吃完饭抓紧做六级试题。 Leetcode 738. 单调递增的数字 题目链接 738 单调递增的数字 本题目思路还是比较巧妙的,对于98,一旦出现strNum[i - 1] > strNum[i]的情况(非单调递增),首…

力扣202题 快乐数 双指针算法

快乐数 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果这个过程 结果为 1&#…

在ubuntu虚拟机上安装不同版本的交叉编译工具链

在之前的章节中,学习了如何安装了4.8.3的交叉编译工具链: 交叉编译 和 软硬链接 的初识(面试重点)-CSDN博客 但是,在之后学习内核编译时,由于我的树莓派内核版本较高,为6.1,所以在…

【android开发-01】android中toast的用法介绍

1,android中toast的作用 在Android开发中,Toast是一种用于向用户显示简短消息的轻量级对话框。它通常用于向用户提供一些即时的反馈信息,例如操作结果、提示或警告。 Toast的主要作用如下: 提供反馈:Toast可以在用户…

chrome vue devTools安装

安装好后如下图所示: 一:下载vue devTools 下载链接https://download.csdn.net/download/weixin_44659458/13192207?spm1001.2101.3001.6661.1&utm_mediumdistribute.pc_relevant_t0.none-task-download-2%7Edefault%7ECTRLIST%7EPaid-1-13192207…

知乎禁止转载的回答怎么复制做笔记?

问题 对于“禁止转载”的回答,右键复制是不行的,ctrl-c也不行,粘贴之后都是当前回答的标题。稍微看了代码,应该是对copy事件进行了处理。不过这样真的有用吗,真是防君子不防小人,只是给收集资料增加了许多…

sso单点登录

一:业务需求 客户要求在门户网站上实现一次登录能访问所以信任的系统 二: 处理方式 实现sso单点登录需要前后端配合处理 1. 通过网页授权登录获取当前用户的openid,userid 2.设置单点登录过滤器并进行参数配置 3.另外写一个登录接口&…

Git分支批量清理利器:自定义命令行插件实战

说在前面 不知道大家平时工作的时候会不会需要经常新建git分支来开发新需求呢?在我这边工作的时候,需求都是以issue的形式来进行开发,每个issue新建一个关联的分支来进行开发,这样可以通过issue看到一个需求完整的开发记录&#x…

菜鸟学习日记(Python)——基本数据类型

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。 等号()用来…

深入学习redis-基于Jedis通过客户端操作Redis

目录 redis客户端(JAVA) 配置 引入依赖 建立连接 常用命令实现 get/set exists/del keys expire和ttl type 字符串(String) mget和mset getrange和setrange append incr和decr 列表(list) …

Android 13.0 修改Android系统的通知自动成组的数量

场景: Android 系统对显示在通知列表中的同一个应用的通知进行分组管理,即相同的packageName中,当通知数量达到系统默认指定的数量时,会自动成一组. Android 13.0 中系统默认的自动成组数如下所示: 核心路径 : frameworks/base/core/res/res/values/config.xml<!-- 来自同…

leecode | 1657. 确定两个字符串是否接近 | 30号最后一题

判断两个字符串是否是最接近 怎么解释&#xff0c;最接近&#xff1f; 首先两个字符串的长度要一样&#xff0c;字符串中的字符出现的频率要一样 然后字符串中任意两个不同字符串可以直接交换 当然&#xff0c;多个也可以交换&#xff0c;例如&#xff1a;aacabb -> bbcbaa&…

c++--类型的基础

1.常量对象&#xff0c;常量成员函数 (1).常量对象 常量对象的引用和指针不能调用类的普通的成员函数。只能调用常量成员函数。 (2).常量成员函数&#xff1a;把const放在类成员函数参数列表后。表示隐含的this是一个指向常量的指针 (3).当创建一个const对象时&#xff0c;直到…

运行启动vue项目报报错node: --openssl-legacy-provider is not allowed in NODE_OPTIONS解决

报错的问题就是package.json中的Scripts下的dev 解决方法就是要不升级你的应用代码&#xff0c;支持 新版本的node.js 要不就是删除SET NODE_OPTIONS--openssl-legacy-provider &&代码&#xff0c;如下代码即可正常运行起来

windows判断端口是否在使用 bat脚本

脚本 REM 查询端口是否占用 netstat -ano|findstr 3306 >nul &&echo y >1.log ||echo n >1.log REM 读取文本内容赋值给变量 set /P resu<1.log if %resu% y (echo port in use ) else (echo port not in use ) mysql服务不运行的时候检测效果 mysql服…

鸿蒙原生应用/元服务开发-开发者如何进行真机测试

前提条件&#xff1a;已经完成鸿蒙原生应用/元服务开发&#xff0c;已经能相对熟练使用DevEco Studio,开发者自己有鸿蒙4.0及以上的真机设备。 真机测试具体流程如下 1.手机打开开发者模式 2.在项目中&#xff0c;左上角 文件(F)->项目结构 进行账号连接 3.运行

Flash学习

FLASH介绍 FLASH是常用的&#xff0c;用于存储数据的半导体器件&#xff0c;它具有容量大&#xff0c;可重复擦写&#xff0c;按“扇区/块”擦除、掉电后数据可继续保存的特性。 常见的FLASH有NOR FLASH和NAND FLASH。 NOR和NAND是两种数字门电路&#xff0c;可以简单地认为F…