2.HDFS 架构

目录

  • 概述
  • 架构
    • HDFS
    • 副本
    • HDFS数据写入流程
    • NN 工作原理
    • DN 工作原理
  • 结束

概述

官方文档快递

环境:hadoop 版本 3.3.6
相关文章速递

架构

HDFS

在这里插入图片描述

HDFS 架构总结如下:

  • a master/slave architecture 一主多从架构
  • a file is split into one or more blocks and these blocks are stored in a set of DataNodes 一个文件会被拆分成1或者多个 block (块),然后存储在 DN 上
  • NameNode:NN
    • file system namespace 文件系统命名空间
    • 执行文件系统的命名空间操作:打开、关闭、重命名文件或者文件目录
    • 记录数据 block (块) 对应的 DN
  • DataNode:DN

HDFS 组件职责

  • NN
    • 维护和管理文件系统的命名空间
    • 副本策略
    • Block 的映射信息
    • 处理客户端读写请求
  • DN
    • 存储 Block
    • 真正执行数据块的读写操作
  • Client
    • 与 NN 交互,获取到文件的元数据信息
    • 与 DN 交互,执行数据块的读写操作
    • 管理 HDFS
  • SNN:Secondary NameNode
    • 不是 NN 的热备
    • 分担一些 NN 工作量:定期合并 FsImage Edits 完成后推送到 NN
  • Block
    • hadoop3.x 默认大小 128M

副本

For the common case, when the replication factor is three, HDFS’s placement policy is to put one replica on the local machine if the writer is on a datanode, otherwise on a random datanode in the same rack as that of the writer, another replica on a node in a different (remote) rack, and the last on a different node in the same remote rack.

在这里插入图片描述

上述两个机架,一个机架三台机器。

通常情况下,副本因子为3

  • 第一个副本:client 所处的节点上,如果 client 在集群外,在相同机架上(rack)随机选择一个
  • 第二个副本:在另外一个机架上随机选择一个节点
  • 第三个副本:在第二个副本所在机架上随机选择一个节点(与二个副本不在一个节点)

HDFS数据写入流程

先来张图,如下
在这里插入图片描述

  • 客户端发送请求 put 一个文件,由 NN 根据元数据判断文件是否存在,是否具备权限,根据副本摆放策略,返回响应数据给 client 端
  • client 根据响应数据,将第一个 block 写入 DN1 , DN1、DN2、DN3 之间会同步数据,而不是由 client 执行

NN 工作原理

老规矩上个图易理解
在这里插入图片描述
重点总结如下:

  • NN 元数据采取的是 内存+磁盘的方式管理
    • FsImage
    • Edits 每次操作都以追加的方式写入日志
    • 完整的元数据信息 = FsImage + Edits
  • 相关配置
    • dfs.namenode.checkpoint.txns
    • dfs.namenode.checkpoint.period

DN 工作原理

老规矩上图
在这里插入图片描述

  • 向 NN 发起注册
  • Block 信息汇报
    • dfs.blockreport.intervalMsec
  • DN 发起心跳
    • ​dfs.heartbeat.interval (默认 3秒)
    • dfs.namenode.heartbeat.recheck-interval (再次 recheck 默认 5分钟)
  • 超时掉线 10分钟30秒 检测不到心跳,直接掉线
    • timeout = 2 * heartbeat.recheck.interval + 10 * dfs.heartbeat.interval

结束

至此,HDFS 架构 就结束了,如有疑问,欢迎评论区留言。

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

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

相关文章

mysql 高阶查询

目录 基础用法 表连接 求交集 内连接 左/右连接 多表查询 子查询 分组统计 求左表无交集 求右表无交集 求两个表无交集 面试题:视图表的数据是否能修改? 无值 和 空值null 的区别? 存储过程(数据库脚本&#xff09…

激光焊接机:塑料产品制造中的革命性优势

随着科技的飞速发展,激光焊接机在塑料产品制造领域的应用越来越广泛。相较于传统的焊接技术,激光焊接机在塑料产品制造中展现出诸多优势,成为现代工业生产中不可或缺的一部分。 一、精确、高效的焊接性能 激光焊接机采用高能激光束作为焊接热…

华为交换机怎么添加和剥除VLAN标签

知识改变命运,技术就是要分享,有问题随时联系,免费答疑,欢迎联系! 华为交换机VLAN标签的添加和剥除处理过程 接口对收发的以太网数据帧添加或剥除VLAN标签的处理依据接口的接口类型和缺省VLAN。 由上面各类接口添加或…

http 状态码 列表

1XX系列: 指定客户端应相应的某些动作,代表请求已被接受,需要继续处理。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送 1xx 响应。 2XX系列: 代表…

windows通过ssh连接Liunx服务器并实现上传下载文件

连接ssh 输入:ssh空格用户名ip地址,然后按Enter 有可能出现下图提示,输入yes 回车即可 输入 password ,注意密码是不显示的,输入完,再按回车就行了 以上是端口默认22情况下ssh连接,有些公司它…

(vue)el-popover鼠标移入提示效果

(vue)el-popover鼠标移入提示效果 效果&#xff1a; 代码&#xff1a; <el-form-itemv-for"(item,index) of ele.algorithmParameters":key"index":label"item.parametersName"class"descInput" ><el-input v-model"i…

柱面,盘片,盘面,扇面,磁头,磁道,扇区,CHS地址,LAB地址

柱面&#xff0c;盘片&#xff0c;盘面&#xff0c;扇面&#xff0c;磁头&#xff0c;磁道&#xff0c;扇区&#xff0c;CHS地址&#xff0c;LAB地址1 CHS地址 CHS地址指的是柱面&#xff08;Cylinder&#xff09;、磁头&#xff08;Head&#xff09;、扇区&#xff08;Secto…

Kotlin:Set其实是有插入的顺序?

MutableSet怎么能调用indexOf去获取它的插入顺序呢&#xff1f;参考官网Collections overview | Kotlin Documentationhttps://kotlinlang.org/docs/collections-overview.html#set翻不了墙的看下面 &#xff08;MutableSet的默认实现是LinkedHashSet&#xff0c;LinkedHashSet…

【论文阅读笔记】Stable View Synthesis 和 Enhanced Stable View Synthesis

目录 Stable View Synthesis摘要引言 Enhanced Stable View Synthesis 从Mip-NeRF360的对比实验中找到的两篇文献&#xff0c;使用了卷积神经网络进行渲染和新视角合成&#xff0c;特此记录一下 ToDo Stable View Synthesis paper&#xff1a;https://readpaper.com/pdf-ann…

Docker 存储卷管理

一、存储卷简介 存储卷是一种方便、灵活、高效的Docker容器内数据存储方式。存储卷可以在容器内的不同进程间共享数据&#xff0c;并且可以在容器之间共享和重用。 二、存储卷的优点 可以在容器之间共享和重用&#xff0c;避免了在不同容器之间复制数据的繁琐。对数据卷的修…

BMS开发之面向对象思想(adbms1818)

借鉴adbms1818的底层驱动代码 前言&#xff1a;adbms1818的主要用途就是不同种类的寄存器里面存储不同的数据&#xff0c;程序员需要通过特定的协议往寄存器里面写入或者读出数据 &#xff08;1&#xff09;定义一个结构体 里面存储了adbms1818的所有寄存器的信息。然后我们看…

航天航空线束工艺3D虚拟展馆支持多人异地参观漫游

为了满足汽车线束企业员工工作需要&#xff0c;让新老员工了解到更先进、规范的线束工艺设计技术&#xff0c;华锐视点基于VR虚拟仿真、web3d开发和图形图像技术制作了一款汽车线束工艺设计VR虚拟仿真模拟展示系统。 汽车线束工艺设计VR虚拟仿真模拟展示系统共分为pc电脑端和VR…

如何启动flowable的Flowable UI画工作流程图

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; https://gitee.com/nbacheng/n…

分享一个idea插件MyBatisX的Bug

分享一个idea插件MyBatisX的Bug The plugin com.baomidou.plugin.idea. mybatisx failed to save settings and has been disabled. Please restart IntelliJ IDEAjava.lang.Throwableat com.intellij.openapi.project.DumbServiceImpl.queueTask(DumbServiceImpl.java:293)at…

XV4001BC (数字输出) 车载用

XV4001BC、XV4001BD、XV4001KC和XV4001KD是车载用SPI/I2C输出接口&#xff0c;支持角速度输出、温度传感器输出以及20度倾斜实现。这些接口可适应各种汽车导航和通讯系统&#xff0c;符合AEC-Q200标准 SPI / I2C 输出接口角速度输出(16bit)、温度传感器输出(11bit)20度倾斜实现…

初识Web服务器

一、web服务器 1、什么是web服务器&#xff1f; web服务器就是web项目的容器&#xff0c;我们将开发好的web项目部署到web容器中&#xff0c;才能使用网络中的用户通过浏览器进行访问。 一张图带你了解web服务器有啥作用&#xff1a; 在我的电脑上有一个已经做好的项目&#…

大数据Doris(五十):数据导出的其他导出案例参考

文章目录 数据导出的其他导出案例参考 一、​​​​​

Spark调优解析-spark数据倾斜优化2(七)

1 数据倾斜优化 1.1为何要处理数据倾斜&#xff08;Data Skew&#xff09; 什么是数据倾斜 对Spark/Hadoop这样的大数据系统来讲&#xff0c;数据量大并不可怕&#xff0c;可怕的是数据倾斜。 何谓数据倾斜&#xff1f;数据倾斜指的是&#xff0c;并行处理的数据集中&#xf…

UE5.1_AssetEditorSubsystemUE4_AssetEditorManager

UE5.1_AssetEditorSubsystem&UE4_AssetEditorManager 目录 UE5.1_AssetEditorSubsystem&UE4_AssetEditorManager 1. 疑问: 2. 引擎源码文件差别:

react中概念性总结(二)

目录 说说你对react的理解&#xff1f;有哪些特性&#xff1f; 说说Real diff算法是怎么运作的&#xff0c;从tree层到component层到element层分别讲解&#xff1f; 调和阶段setState干了什么&#xff1f; 说说redux的工作流程&#xff1f; 为什么react元素有一个$$type属…