HDFS简介

HDFS设计(Architecture)

原因:为了平衡数据的可靠性和写操作的花费

方法:默认副本数为3;

  1. 第一个副本在Client所处的节点上,若客户端在集群外,随机选一个;
  2. 第二个副本在另一个机架的随机一个节点
  3. 第三个副本在第二个副本所在机架的随机节点

注:NameNode不允许DataNode有两个相同的块,所以最大副本数量可根据DataNode数量决定。

存储对一每一个文件系统元数据做出的改变

整个文件系统名称空间,包括块与文件的映射,文件系统属性

背景:若每对文件做一次更改就写入到磁盘的FsImage中,会占用大量资源

解决方法:

启动时,从EditLog和FsImage中将名称空间与块映射读取到内存,将来自EditLog的所有事务写入到FsImage在内存中的代表,然后一起写入到磁盘上新的FsImage中,然后就可以截断老的EditLog。这个过程就称为检查点。
检查点在指定时间间隔或指定数量事务后触发。

心跳机制告诉了namenode,namenode跟踪哪些块需要被再拷贝然后开始行动。

客户端程序实现了checksum机制,当创建Hdfs文件时,会计算checksum,并存储在相同的Hdfs名称空间(就是Hdfs的同一个文件夹下),据此获得完整数据

高可用性(HA) ,启用多个NameNode

面试重点,我还没学到😁

后面的感觉不太重要,详情可参看官网

Original: https://www.cnblogs.com/pitaya01/p/15571626.html
Author: somelovelanguage
Title: HDFS简介

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/603267/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • matplotlib cm.coolwarm报错 解决方法

    目录 背景 解决方法 第一处错误 解决方法 第二处错误 cm.coolwarm 解决方法 完整代码 使用其它颜色 背景 想了解一下 matplotlib 绘图,从官网 copy了以…

    Python 2023年9月3日
    0127
  • python怎么绘制折线图_python 使用matplotlib绘制折线图

    matplotlib 能将数据进行可视化,更直观的呈现 是数据更加客观、更具说服力 matplotlib: 最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATL…

    Python 2023年9月5日
    045
  • Python 异常捕获是什么

    程序异常,就是程序出错了,程序员一般叫做 BUG(八哥),写程序不出错是不可能发生的事情,而程序员要做的事情就是及时的捕获错误,修改错误。 最常见的错误 – 除数为 0…

    Python 2023年5月25日
    099
  • 零基础python知识手册(四)

    第13 章Pygame 游戏编程: Pygame做游戏开发的优势在于不需要过多考虑与底层开发相关的内容,而可以把工作重心放在游戏逻辑上。例如,Pygame中集成了很多和底层开发相关…

    Python 2023年9月24日
    044
  • 【python】词云图制作

    词云图制作 python 练了一段时间的词云图,就来和大家讲讲词云图制作的详细过程。 效果图 ; 工具准备 1、python3 2、安装第三方库wordcloud 3、安装nump…

    Python 2023年8月1日
    064
  • Python入门到精通(九):模块(Module)和包(Package)

    1.1、简介 在计算机程序开发过程中,随着程序代码越写越多,在一个文件中代码量就会越大,将来就越来越不容易维护。我们把很多函数分组,分别放到不同的文件里,这样每个文件包含的代码就相…

    Python 2023年9月19日
    047
  • 销售额预测_机器学习

    小白第一次写,欢迎大佬们指教,在此谢过。 本文主要介绍运用ARMA开展销售额预测 第一步当然还是引入所需要的数据包 import numpy as np import pandas…

    Python 2023年8月7日
    043
  • Windows的Flask怎样让局域网的同事访问到

    几个大步骤: 代码实例: ; 1、关闭你的电脑防火墙; 2、你的同事和你,需要同一个局域网络; 3、你需要提供给他们你自己的内网IP,查看方式是cmd重输入ipconfig得到; …

    Python 2023年8月10日
    0183
  • scrapy获取a标签的连接_Scrapy:获取某个标记后面的所有标记

    更新: 您可以使用以sel.xpath(‘.//a[@name=”summaries”]’)开头的xpath。。。我在这台mac电脑…

    Python 2023年10月4日
    039
  • Pandas基础题一百道(前15)

    目录 1、使用List创建Series 2、使用Dict创建Series 3、将Series转换成List 4、将Series转换成DataFrame 5、借助Numpy创建Ser…

    Python 2023年8月18日
    061
  • 人脸表情识别系统介绍——离线环境配置篇

    摘要:本文详细介绍如何使用离线方法配置前面一篇博文《人脸表情识别系统介绍——上篇(python实现,含UI界面及完整代码)》项目中代码的Python环境,能够有效避免一些可能出现的…

    Python 2023年10月29日
    054
  • 第十四届蓝桥杯模拟赛第一期试题【Java解析】

    目录 A 二进制位数 问题描述 答案提交 参考答案 解析 B 晨跑 问题描述 答案提交 参考答案 解析 C 调和级数 问题描述 答案提交 参考答案 解析 D 山谷 问题描述 答案提…

    Python 2023年10月7日
    064
  • 第十三章 外星人来了

    外星人来了 13.1 项目回顾 13.2 创建第一个外星人 * 13.2.1 创建 Alien 类 13.2.2 创建Alien实例 13.3 创建一群外星人 * 13.3.1 确…

    Python 2023年9月20日
    053
  • nacos注册源码分析

    注册中心(二):nacos注册源码分析 cosumer启动的时候,从nacos server上读取指定服务名称的实例列表,缓存到本地内存中。 开启一个定时任务,每隔10s去naco…

    Python 2023年11月8日
    040
  • 合约广告平台架构演进实践

    作者 | 王悦凯 导读从事B端业务系统研发多年,不免会有这样的思考:B端系统的技术挑战是什么?什么样的业务架构算好架构?本文结合百度合约广告业务的发展历程,介绍广告投放平台从单体架…

    Python 2023年11月8日
    052
  • pandas中使用fillna函数填充NaN值

    1.1 inplace参数 取值:True、False True:直接修改原对象False:创建一个副本,修改副本,原对象不变(缺省默认) 1.2 method参数 取值 : {&…

    Python 2023年8月8日
    068
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球