【2023】hadoop基础介绍

💻目录

  • Hadoop组成
    • HDFS
    • HDFS操作
      • HDFS分布式文件存储
      • NameNode元数据
      • 数据读写流程
  • YARN和MapReduce
    • MapReduce:分布式计算
    • YARN:资源管控调度
      • YARN架构
      • 提交任务到**YARN中运行**

Hadoop组成

hadoop安装教程可以看我这篇文章===> 🍅hadoop通过docker安装

  • HDFS组件:是Hadoop内的分布式存储组件,可以构建分布式文件系统用于数据存储。
  • MapReduce组件:MapReduce是Hadoop内分布式计算组件。提供编程接口供用户开发分布式计算程序。
  • YARN组件:YARN是Hadoop内分布式资源调度组件。可供用户整体调度大规模集群的资源使用。

HDFS

分布式存储:主从架构——架构角色

  • 主角色:Master(NameNode)
  • 从角色:Slave(DataNode)
  • 主角色的辅助角色:(SecondaryNameNode)
    • 处理合并edits为fsimage:会通过http从NameNode拉取数据(edits和fsimage),然后合并完成后提供给NameNode使用。

HDFS操作

  • HDFS文件系统基本信息

    操作命令添加协议头就会分别是对对应的系统执行,如果不带是会按照

    在这里插入图片描述

  • 操作命令

不同版本命令开头

# 老版本
hadoop fs 
# 新版本
hdfs dfs 

在这里插入图片描述

命令使用在这里插入图片描述

  • 上传文件到hdfs文件系统中
# hdfs dfs -put linux路径 HDFS文件路径
hdfs dfs -put ./test2.test /

在这里插入图片描述

  • 下载HDFS文件到linux中
# hdfs dfs -get HDFS文件路径 linux路径
hdfs dfs -get /.test.txt /

在这里插入图片描述

  • 拷贝HDFS文件和移动
#拷贝文件
hdfs dfs -cp 源路径 粘贴路径#移动文件
hdfs dfs -mv 源路径 粘贴路径

在这里插入图片描述

  • 追加数据到HDFS文件

    HDFS只能追加和删除,不能修改

htfs -dfs -appendToFile 

在这里插入图片描述

  • 查看文件和删除文件
#查看文件内容
htfs -dfs -cat 文件
#删除文件和文件夹(删除文件不用加-r,删除文件夹需要加-r)
htfs dfs -rm -r 文件路径

删除文件看是否需要添加回收站

在这里插入图片描述

html查看文件

在这里插入图片描述

产品插件用于使用:Big Data Tools

在这里插入图片描述

配置插件

在这里插入图片描述

HDFS分布式文件存储

hdfs存储的管理单位是叫 block块

通过分布式的方式进行存储5,为了避免block块丢失,一般会进行冗余备份(通过添加副本块的方式备份),避免文件丢失

在这里插入图片描述

NameNode元数据

  • edits文件———流水帐文件

在这里插入图片描述

  • FSlmage文件———最终文件(保存最终结果)

在这里插入图片描述

  • 执行流程

在这里插入图片描述

数据读写流程

在进行读写时,会优先读写到网络距离最近的那台dataNode给客户端进行读写,实现读写的最优解。

  • 数据写入流程

在这里插入图片描述

在这里插入图片描述

  • 数据读取流程

    在这里插入图片描述

YARN和MapReduce

  • 分布式(数据)计算
    • 分散—>汇总模式
      1. 将数据分片,多台服务器负责一部分数据处理
      2. 然后将各种的数据进行汇总
    • 中心调度—>步骤执行模式
      1. 由一个节点作为中心调度管理者
      2. 将任务划分为几个具体步骤
      3. 管理者安排每个机器执行任务
      4. 最终得到结果数据

MapReduce:分布式计算

采用的是分散—>汇总模式进行分布式计算

提供了2个编程接口

  • Map:分散
  • Reduce:汇总

在这里插入图片描述

YARN:资源管控调度

将资源统一管控进行分配可以提供资源利用率

MapReduce和YARN的关系

  • YARN用来调度资源给MapReduce分配和管理运行资源
  • 所以,MapReduce需要YARN配合使用

YARN架构

YARN采用的也是主从架构

核心角色

  • ResourceManager:整个集群的资源调度者,负责协调调度各国程序所需要的资源。
  • NodeManager:单个服务器的资源调度者,负责调度单个服务器上的资源提供给应用程序使用

辅助角色

  • ProxyServer:代理服务器
  • JobHistoryServer:历史服务器

在这里插入图片描述

YARN集群启动和停止命令(mapReduce无需启动任何进程)

#一键启动: 
$HADOOP_HOME/sbin/start-yarn.sh
#一键关闭
$HADOOP_HOME/sbin/stop-yarn.sh#历史服务器启动和停止
mapred --daemon start|stop historyserver

查看YARN的web页面通过8088端口

在这里插入图片描述

提交任务到YARN中运行

在这里插入图片描述

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

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

相关文章

RFC7636-PKCE

前言 PKCE (RFC 7636) 是授权代码流的扩展,用于防止 CSRF 和授权代码注入攻击。 PKCE 不是客户端身份验证的一种形式,PKCE 不能替代客户端密码或其他客户端身份验证。即使客户端使用客户端密码或其他形式的客户端身份验证&#…

03.QT命名规范及快捷键(部分)

一、命名规范 1.类名 大驼峰规则:首字母大写,单词和单词之间首字母大写。 2.变量名 小驼峰规则:首字母小写,单词和单词之间首字母大写。 二、快捷键 1.代码操作相关 注释:ctrl / 运行:ctrl r 编译…

从入门到精通UNet: 让你快速掌握图像分割算法

文章目录 一、UNet 算法简介1.1 什么是 UNet 算法1.2 UNet 的优缺点1.3 UNet 在图像分割领域的应用 二、准备工作2.1 Python 环境配置2.2 相关库的安装 三、数据处理3.1 数据的获取与预处理3.2 数据的可视化与分析 四、网络结构五、训练模型5.1 模型训练流程5.2 模型评估指标5.…

redis 三主六从高可用docker(不固定ip)

redis集群(cluster)笔记 redis 三主三从高可用集群docker swarm redis 三主六从高可用docker(不固定ip) 此博客解决,redis加入集群后,是用于停掉后重启,将nodes.conf中的旧的Ip替换为新的IP,从而达到不会因为IP变化导致集群无法…

【递归、搜索与回溯】综合练习

欢迎来到Cefler的博客😁 🕌博客主页:那个传说中的man的主页 🏠个人专栏:题目解析 🌎推荐文章:题目大解析(3) 目录 👉🏻找出所有子集的异或总和再求…

测试新字符设备驱动代码

一. 简介 上一篇文章编写了新字符设备驱动框架的代码,并编写了 LED灯IO初始化工作,也编写了Led的开与关函数。文章地址如下: 向新字符设备驱动代码框架中添加Led功能函数-CSDN博客 本文对所完成的新字符设备驱动代码进行测试。通过测试程…

使用anaconda创建notebook工程

1.由于每个工程使用的环境都可能不一样,因此一个好的习惯就是不同的工程都创建属于自己的环境,在anaconda中默认的环境是base: //括号中名字,代表当前的环境 (base)dragonmachine: $ conda create --nameexample2.激活环境 // 环…

14.用户管理

目录 1、权限表 1、user表 1.用户列 2.权限列 3.安全列 4.资源控制列 2、db表和host 表 1.用户列 2.权限列 3. tables_priv 表和 columns _priv 表 4.procs_priv 表 2、账户管理 1. 登录和退出MySQL服务器 2、创建普通用户: 1.使用CREATE USER语创建…

基于Java SSM框架实现健康管理系统项目【项目源码】

基于java的SSM框架实现健康管理系统演示 JSP技术 JSP是一种跨平台的网页技术,最终实现网页的动态效果,与ASP技术类似,都是在HTML中混合一些程序的相关代码,运用语言引擎来执行代码,JSP能够实现与管理员的交互&#xf…

[react]脚手架create-react-app/vite与reac项目

[react]脚手架create-react-app/vite与reac项目 环境问题描述create-react-app 脚手架根据脚手架修改项目结构安装脚手架注入配置文件-config文件夹package.json文件变更删除 serviceWorker.js新增reportWebVitals.js文件更新index.js文件 脚手架creat-react-app 缺点 vite 脚手…

基于Springboot实现天天生鲜销售电商平台

SSM毕设分享 基于Springboot实现天天生鲜销售电商平台 1 项目简介 Hi,各位同学好,这里是郑师兄! 今天向大家分享一个毕业设计项目作品【】 师兄根据实现的难度和等级对项目进行评分(最低0分,满分5分) 难度系数:3分 …

中文字符占用字节即相关原理(实现中文(中英混合)字符串的反转)

如有不对欢迎指正。 目录 一.ASCLL字符和中文字符 1.使用无符号数表示的原因(对于中文字符): 2.但是并不是所有情况都是用无符号数(以下目前只是猜测,如有问题欢迎指正) : 1. 什么时候使用无符号数表示: 2. 不需要使用的情况: …

Access数据库C#读写验证

1、数据库简介 Access数据库是一个相当古老的文件型数据库,主打一个简单方便,没有复杂的安装过程,没有庞大的后端管理,整个数据库就是一个文件。可以像普通文件一样复制和修改,可以同时读写。 在小型系统中&#xff0c…

Xgboost分类模型的完整示例

往期精彩推荐 数据科学知识库机器学习算法应用场景与评价指标机器学习算法—分类机器学习算法—回归PySpark大数据处理详细教程 定义问题 UCI的蘑菇数据集的主要目的是为了分类任务,特别是区分蘑菇是可食用还是有毒。这个数据集包含了蘑菇的各种特征,如…

系统学习Python——装饰器:函数装饰器-[装饰器状态保持方案:外层作用域和非局部变量]

分类目录:《系统学习Python》总目录 我们在某些情况下可能想要共享全局状态。如果我们真的想要每个函数都有自己的计数器,要么像前面的文章那样使用类,要么使用Python3.X中的闭包函数(工厂函数)和nonlocal语句。由于这…

听GPT 讲Rust源代码--library/alloc

File: rust/library/alloc/benches/slice.rs 在Rust源代码中,rust/library/alloc/benches/slice.rs文件的作用是对&[T]类型(切片类型)进行性能基准测试。该文件包含了对切片类型的一系列操作的基准测试,例如切片迭代、切片排序…

0101包冲突导致安装docker失败-docker-云原生

文章目录 1 前言2 报错3 解决结语 1 前言 最近在学习k8s,前置条件就是要安装指定版本的docker,命令如下 yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7 containerd.io-1.4.62 报错 file /usr/libexec/docker/cli-plugins/docker-buildx fr…

用 print 太慢了!强烈推荐这款Python Debug工具~

作为程序员,我们都深知调试(Debug)在编程过程中的重要性。 然而,使用传统的"print"语句进行调试可能效率较低,今天,笔者将推荐一款独具一格的Python调试工具——Reloadium。 Reloadium为IDE添加…

sparkstreamnig实时处理入门

1.2 SparkStreaming实时处理入门 1.2.1 工程创建 导入maven依赖 <dependency><groupId>org.apache.spark</groupId><artifactId>spark-streaming_2.12</artifactId><version>3.1.2</version> </dependency> <dependency…

C++初阶——基础知识(内联函数)

目录 1.内联函数 内联函数的示例代码 1.内联函数 是一种 C 中的函数定义方式&#xff0c;它告诉编译器在每个调用点上插入函数体的副本&#xff0c;而不是像普通函数那样在调用时跳转到函数体所在的地址执行。这样可以减少函数调用的开销&#xff0c;提高程序的执行效率。 …