首页 > 编程语言 >HDFS读数据流程、NN和2NN工作机制、DataNode工作机制、数据完整性

HDFS读数据流程、NN和2NN工作机制、DataNode工作机制、数据完整性

时间:2024-03-12 19:33:24浏览次数:19  
标签:数据完整性 NN 读数据 FsImage Edits DataNode NameNode 机制 客户端

HDFS读数据流程

      事件描述:客户端要下载一个200m的数据文件,hdfs是如何读取的。

      两个对象:一个客户端、一个集群

      流程:

              1.客户端创建一个分布式文件系统(DistributedFileSystem),向集群NameNode请求下载文件。

               2.集群判断客户端是否有权限,并判断是否有对应的文件,并返回目标文件元数据。

               3.客户端创建一个流对象,选择读取节点的原则:首先考虑节点距离最近,然后要看该节点是否数据量很大,(负载均衡问题)当达到一定的量级后访问其他节点。读取顺序:先读第一块,再读第二块。

NN和2NN工作机制

       思考:NameNode中的元数据是存储在哪里?

       回答:NameNode元数据存放在内存中。但是一旦断电,元数据丢失。因此产生在磁盘中备份元数据的FsImage。但是内存的元数据更新时,如果同时更新FsImage会导致效率低,为了能够进行更新,引入Edits文件(只进行追加操作,效率高)。每当元数据有更新或者添加元素时,修改内存中的元数据并追加到Edits中。一旦断电,可以通过FsImage和Edits的合并,合成元数据。

      工作流程:服务器一启动,将FsIamge和Edits加载到内存。服务器一关机,将Edits和FsImage合并 。若Edits追加过多,需要2NN将Edits和FsImage定期合并。

       NN和2NN之间的区别是NN中记录了最新的inprogress操作。

DataNode工作机制

         工作机制

                 1.DataNode启动后向NameNode注册,并汇报DataNode中有哪些块信息

                 2.DataNode每周期上报所有块信息

                 3.DataNode每过3秒告诉NameNode还活着,若超过3秒没有回复,则再等10分钟,若再超过10分钟,再等30秒,若还是没有收到心跳,则说明该节点不可用

      掉线时限参数设置:

           如果hadoop被挂掉了,在被挂掉的hadoop中使用命令即可恢复:

hdfs --daemon start datanode

数据完整性

     对原始数据进行封装,使用奇偶校验位,若1的个数是偶数,则为0;若1的个数是奇数则为1;为防止网络传输错误,使用crc校验位,对比传输后的数据看是否一致。

       

标签:数据完整性,NN,读数据,FsImage,Edits,DataNode,NameNode,机制,客户端
From: https://blog.csdn.net/weixin_66383346/article/details/136654192

相关文章

  • 自-注意力机制(向量)
    2024.3.12自-注意力机制(向量)首先可以看到SelfAttention有三个输入Q、K、V:对于SelfAttention,Q、K、V来自句子X的词向量x的线性转化,即对于词向量x,给定三个可学习的矩阵参数$W_Q$,$W_K$,$W_V$,x分别右乘上述矩阵得到Q、K、V。Self-Attention的关键点在于,不仅仅是k......
  • Attention(注意力机制)
    2024.3.12Attention(注意力机制)##怎么做注意力我(查询对象Q),这张图(被查询对象V)如:我看这张图,第一眼,我就会去判断哪些东西对我而言更重要,哪些有更不重要(去计算Q和V里的事物的重要度)重要度计算,其实是不是就是相似度计算(更接近)Q,$K=k_1,k_2,\cdots,k_N$,(图中所有事物的一个列......
  • 保护模式:段机制
     一、段机制  内存是计算机系统的关键资源,程序必须被加载到内存中才可以被CPU所执行。程序运行过程中,也要使用内存来记录数据和动态的信息。在一个多任务的系统中,每个任务都需要使用内存资源,因此系统需要有一套机制来隔离不同任务所使用的内存,要使这种隔离即安全又高效,那么硬......
  • 权限概念、权限提升概念以及权限提升的分类和目的 Windows 提权的基础原理是了解操作
    关于权限概念、权限提升概念以及权限提升的分类和目的,以下是一些基本信息供您参考:权限概念:权限是指系统或应用程序授予用户或进程执行某些操作或访问资源的能力。权限通常按照用户的身份、角色或组织结构来管理,以确保系统安全和数据保护。权限提升概念:权限提升是指用......
  • 图数据库基准测试 LDBC SNB 系列讲解:Schema 和数据生成的机制
    LDBC(LinkedDataBenchmarkCouncil)SocialNetworkBenchmark,简称LDBCSNB,是一种针对社交网络场景的评估图数据库性能的基准测试。LDBC简介除了SocialNetworkBenchmark,LDBC旗下目前还有其他几种基准测试:GraphalyticsBenchmark,FinancialBenchmark和SemanticPublishB......
  • cglib FastClass机制
    前言关于动态代理的一些知识,以及cglib与jdk动态代理的区别,在这一篇已经介绍过,不熟悉的可以先看下。本篇我们来学习一下cglib的FastClass机制,这是cglib与jdk动态代理的一个主要区别,也是一个面试考点。我们知道jdk动态代理是使用InvocationHandler接口,在invoke方法内,可以使用Meth......
  • 简述Kubernetes准入机制
    在对集群进行请求时,每个准入控制代码都按照一定顺序执行。如果有一个准入控制拒绝了此次请求,那么整个请求的结果将会立即返回,并提示用户相应的error信息,准入控制(AdmissionControl)准入控制本质上为一段准入代码,在对kubernetesapi的请求过程中,顺序为:先经过认证&授权,然后执行准入......
  • QT信号与槽机制与事件机制的区别
    QT信号与槽机制与事件机制的区别第一:什么是信号与槽?事件?所谓信号槽,实际就是观察者模式。当某个事件发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号(signal)。这种发出是没有目的的,类似广播。如果有对象对这个信号感兴趣,它就会使用连接(connect)函数,意思是,用自己的一......
  • SHA算法:数据完整性的守护者
    一、SHA算法的起源与演进SHA(SecureHashAlgorithm)算法是一种哈希算法,最初由美国国家安全局(NSA)设计并由国家标准技术研究所(NIST)发布。SHA算法的目的是生成数据的哈希值,用于验证数据的完整性和真实性。最早的SHA-0版本于1993年发布,之后陆续发布了SHA-1、SHA-2和SHA-3等不同版本,不......
  • Java入门(向世界呐喊、Java运行机制、IDEA)
    Java入门1.HelloWorld!(向世界呐喊)新建文件夹用于存放代码(Code)->新建Java文件(Hello.java)->使用Notepad++进行编辑->在当前路径打开CMDpublicclassHello{ publicstaticvoidmain(String[]args){ System.out.print("HelloWorld!"); }}注意:系统可能没有显示文件......