Hdfs面试篇01

大数据技术原理与应用 概念、存储、处理、分析和应用(林子雨)——第八章 Hadoop再探讨 阅读详情
  1. 体系结构
    (★★)hdfs的优点与缺点
    HDFS 具有以下优点:
    (1) 高容错性
  1. 数据自动保存多个副本。它通过增加副本的形式,提高容错性。
  2. 某一个副本丢失以后,它可以自动恢复,这是由 HDFS 内部机制实现的,我们不必关心。
    (2) 适合批处理
  3. 它是通过移动计算而不是移动数据。
  4. 它会把数据位置暴露给计算框架。
    (3) 适合大数据处理
  5. 数据规模:能够处理数据规模达到 GB、TB、甚至PB级别的数据。
  6. 文件规模:能够处理百万规模以上的文件数量,数量相当之大。
  7. 节点规模:能够处理10K节点的规模。
    (4) 流式数据访问
  8. 一次写入,多次读取,不能修改,只能追加。
  9. 它能保证数据的一致性。
    (5) 可构建在廉价机器上
  10. 它通过多副本机制,提高可靠性。
  11. 它提供了容错和恢复机制。比如某一个副本丢失,可以通过其它副本来恢复。
    2、 HDFS 缺点:
    (1) 不适合低延时数据访问;
  12. 比如毫秒级的来存储数据,这是不行的,它做不到。
  13. 它适合高吞吐率的场景,就是在某一时间内写入大量的数据。但是它在低延时的情况 下是不行的,比如毫秒级以内读取数据,这样它是很难做到的。
    (2) 无法高效的对大量小文件进行存储
  14. 存储大量小文件的话,它会占用 NameNode大量的内存来存储文件、目录和块信息。这样是不可取的,因为NameNode的内存总是有限的。
  15. 小文件存储的寻道时间会超过读取时间,它违反了HDFS的设计目标。 改进策略
    (3) 并发写入、文件随机修改
  16. 一个文件只能有一个写,不允许多个线程同时写。
  17. 仅支持数据 append(追加),不支持文件的随机修改。

(★★)HDFS的体系结构
Client:切分文件;访问或通过命令行管理HDFS;与NameNode交互,获取文件位置信息;与DataNode交互,读取和写入数据。
NameNode:Master节点,只有一个,管理HDFS的名称空间和数据块映射信息;配置副本策略;处理客户端请求。
DataNode:Slave节点,存储实际的数据;执行数据块的读写;汇报存储信息给NameNode。
Secondary NameNode:辅助NameNode,分担其工作量;定期合并fsimage和fsedits,推送给NameNode;紧急情况下,可辅助恢复NameNode,但Secondary NameNode并非NameNode的热备。
(★)相比于 HDFS1.0, HDFS 2.0 最主要的改进在哪几方面?
NameNode支持HA
命名空间支持分区(Federation)联邦
支持目录快照
https://blog.youkuaiyun.com/qw311113qin/article/details/81707258

  1. 工作原理
    (★★★)hdfs底层存储设计
    对于大数据来说,数据量是巨大的,多样性的,而且后期是要进行本地计算的,这样的话数据的存储要求是可靠的来保证数据的不丢失,HDFS就实现了这样的一个功能
    HDFS存储数据的可靠性主要表现在其的副本机制,默认是3个,而且有其自己的一套存储策略。一个分布式的集群包含有很多的机架,每个机架又包含很多节点,机架内的节点之间的传输效率高于跨机架的节点之间的传输效率,并且机架之间机器的网络通讯通常要收到上层交换机的间网络带宽的限制。所以为了数据的安全和高效,Hadoop默认的存储策略是:
    1、第一个副本存储在client所在的node中。(如果client不在集群中,则随机存储一个node)
    2、第二个副本存储在与第一个副本不同机架的其他任意机架的任意node中。
    3、第三个副本存储在与第一个副本同一个机架但是不同的node中。
    4、如果还有其他副本设置,则随机选择存储
    。
    这样的存储策略可以保证如果第一个节点失效时,能够优先在本机架找到另一个副本,另外如果整个机架发生了故障,能够保证在其他的机架中同样能够找到副本。这样既保证了数据的可靠,又兼容了高效。

(★★★)HDFS 的文件上传与下载底层工作原理(或 HDFS 部分源码分析):FileSystem 的create()和 open()方法源码分析?
https://www.cnblogs.com/qq503665965/p/6696675.html
https://www.cnblogs.com/qq503665965/p/6740992.html
(★★★)HDFS 的 namenode 与 secondarynamenode 的工作原理(重点是日志拉取和合并过程)?
在NameNode端的工作流程如下:
1.Namenode始终在内存中保存metedata,用于处理“读请求” 到有“写请求”到来时,namenode会首先写editlog到磁盘,即向edits文件中写日志,成功返回后,才会修改内存,并且向客户端返回.
2.Hadoop会维护一个fsimage文件,也就是namenode中metedata的镜像,但是fsimage不会随时与namenode内存中的metedata保持一致,而是每隔一段时间通过合并edits文件来更新内容。
secondary namenode的工作流程: 1.secondary通知namenode切换edits文件
2.secondary从namenode获得fsimage和edits(通过http)
3.secondary将fsimage载入内存,然后开始合并edits
4.secondary将新的fsimage发回给namenode
5.namenode用新的fsimage替换旧的fsimage

大数据技术之_04_Hadoop学习_01_HDFS_HDFS概述+HDFS的Shell操作+HDFS客户端操作+HDFS的数据流(面试重点)+NameNode和SecondaryNameNode 阅读详情

相关推荐

Hive面试必问30题:从原理到优化,搞定面试官就靠这篇

理解原理:不仅要会写HiveQL,还要理解背后的执行原理实战经验:准备几个你优化过的实际案例,用数据说话最新动态:了解Hive社区的最新发展,展示你的学习能力综合能力:理解Hive在整体数据架构中的位置和角色掌握这30个问题,你就能在Hive面试中游刃有余。但记住,面试不仅是考察知识点,更是考察解决问题的思路和能力。希望本文不仅能帮助你在面试中脱颖而出,更能提升你的实际Hive开发能力。祝你在接下来的面试中取得好成绩!如果你在学习和面试过程中遇到任何问题,欢迎在评论区留言讨论。

AI Python 编程之道的博客 831

spark1.0和2.0的区别_hadoop1.0 和 Hadoop 2.0 的区别

1.Hadoop概述在Google三篇大数据论文发表之后,Cloudera公司在这几篇论文的基础上,开发出了现在的Hadoop。但Hadoop开发出来也并非一帆风顺的,Hadoop1.0版本有诸多局限。在后续的不断实践之中,Hadoop2.0横空出世,而后Hadoop2.0逐渐成为大数据中的主流。那么Hadoop1.0究竟存在哪些缺陷,在它升级到Hadoop2.0的时候又做出了怎样的调整,最终使得...

weixin_39767983的博客 289

六阶段面试题01

六阶段面试题0101.HDFS的读写流程02.Hive的内部组成模块,作用分别是什么03.Hbase详细架构04.Kafka的架构05.Kafka分区和消费组内的消费者之间的关系有哪些情况?06.Kafka如何保证数据不丢失07.Yarn的调度器有哪些?08.Flink time09.Flink 窗口10.Flink watermark 如何处理乱序数据 01.HDFS的读写流程 02.Hive的内部组成模块,作用分别是什么 1.元数据:Metastore 元数据包括:表名、表所属的数据库(默认是defau

wzb1983的博客 961

【深入理解Hadoop之一】 Hadoop1.0,2.0,3.0区别

1.X,2.X区别: 从HDFS角度来看: 1:Hadoop2.0新增了HDFS HA机制,HA增加了standbynamenode进行热备份,解决了1.0的单点故障问题。 2:Hadoop2.0新增了HDFS federation,解决了HDFS水平可扩展能力。 ...

XVII 的博客 8730

大数据技术之_32_大数据面试题_01_Hive 基本面试 + Hive 数据分析面试 + Flume + Kafka 面试

大数据技术之_32_大数据面试题_01一、Hive 基本面试1、什么是 metastore2、metastore 安装方式有什么区别3、什么是 Managed Table 跟 External Table?4、什么时候使用 Managed Table 跟 External Table?5、hive 有哪些复合数据类型?6、hive 分区有什么好处?7、hive 分区跟分桶的区别8、hive 如何动...

黑泽君 3366

Hadoop面试题及详细答案 110题 (01-15)-- 基础概念与架构

Hadoop面试题摘要 本文整理了15个常见Hadoop面试问题及答案,涵盖核心概念、架构设计、生态系统组件等内容。主要知识点包括:Hadoop的定义与核心组件(HDFS、MapReduce、YARN);1.x与2.x架构区别及YARN的作用;HDFS、MapReduce和YARN的功能特性;Hadoop与传统数据库的差异;生态系统工具(Hive、HBase等)的作用;Hadoop的设计原则与适用场景;分布式文件系统特点;集群角色组成;版本演进关键更新等。还涉及高容错性实现机制、配置文件类型、编程语言支持等

大剑师兰特的GIS世界 1887

HDFS中文件的副本数量设置

setrep:设置HDFS中文件的副本数量 设置副本数前 设置副本数后 在对应的路径设置所需副本数,如下 hadoop fs -setrep 6 /TFBOYS/KarryWang/xiaopangxie.txt 这里设置的副本数只是记录在NameNode的元数据中,是否真的会有这么多副本,还得看DataNode的数量。因为目前只有3台设备,最多也就3个副本,只有节点数的增加到6台时,副本数才能达到6。 ...

weixin_44589713的博客 4182

PCB Layout总结

PCB Layout作为硬件设计中的一个环节,也是很重要的一个环节;在硬件电路设计合理的情况下,他其实是影响性能的一个绝对重要的指标。现在很多的PCB Layout工程师都是按照硬件工程师或者PI SI工程师给出的约束规则来完成布局布线的,这些也就是俗称的 “拉线工”。他们重复而机械的完成一块块PCB设计,一段时间设计后,他们中的一些或许已经有了这样的一些经验:哪些要做等长,哪些要走粗、哪些要平...

xydlxd118的博客 2583

hdfs之副本数

副本数 伪分布式安装HDFS,副本数只有一个 集群安装HDFS,默认副本数是3个,参数:dfs.replication,官方也定义了最大副本数是512个,参数:dfs.replication.max。 题目:块大小128m,副本数3份,一个文件260m,请问需要多少块,多少实际存储? 260M%128M = 2 ……4M 一个副本需要3个块 总共需要9个块 实际存储为 260M * 3 = 780...

走在大数据的小路上 2061

Multisim14安装失败?手把手教你彻底清理残留文件(附专用卸载工具)

本文针对Multisim14安装失败问题,提供了一套从根源解决的完整方案。文章详细分析了安装失败的三大元凶——文件残留、注册表残留和隐藏组件,并手把手指导用户使用专用卸载工具进行标准化清理,再结合手动深度清理文件系统和注册表,最终实现彻底卸载和完美重装,有效解决Multisim14安装问题。

weixin_29179311的博客 317

U8二次开发CO-基于Net8调用COM对象

本文章介绍的U8二次开发CO技术,就是基于微软COM组件技术,使用微软开源的编程框架Net6/7/8/9来调用U8的COM组件,完成基本的登录认证,工作流处理,数据库操作等。

pccai的博客 5507

HDFS01 概述

HDFS 概述 文章目录HDFS 概述HDFS的产生背景和定义HDFS产生背景HDFS定义优缺点优点缺点组成NameNodeDataNodeSecondary NameNode(2nn)Client文件块大小(面试重点) HDFS的产生背景和定义 HDFS产生背景 解决海量数据的存储问题 需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS 只是分布式文件管理系统中的一种。 HDFS定义 HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储

好好学习天天向上 1803

超详细YOLOv8姿态检测全程概述:环境、训练、验证与预测详解

本篇博客详细介绍了使用YOLOv8-pose进行姿态估计的全过程,包括不同版本模型的性能比较、训练与验证步骤,以及预测代码的实现。它对模型参数、训练过程和输出结果进行了解释,同时提供了详细的配置文件示例和标签数据格式说明。此外,还演示了如何使用预训练模型进行图像预测,并如何处理和理解预测结果。最后,它还讨论了如何评估和比较不同模型的性能。如果有哪里写的不够清晰,小伙伴本可以给评论或者留言,我这边会尽快的优化博文内容,另外如有需要,我这边可支持技术答疑与支持。

CDBmax的博客 3万+

(全网独家)面试要懂运维真实案例:HDFS重新平衡(HDFS Balancer)没触发问题排查

在面试时,面试官为了考察面试者是否真的有经验,经常会问运维集群时遇到什么问题,解决具体流程。下面是自己遇到HDFS Balancer没执行,花了半天时间进行排查,全网独家的案例和解决方案。

大模型大数据攻城狮的专栏 1838

SpringBoot 整合 Drools:从环境搭建到复杂业务落地,精通规则引擎实战指南

本文介绍了Drools规则引擎的基础概念及其与SpringBoot的整合方法。首先概述了规则引擎的核心价值,包括业务规则解耦、可维护性提升等。重点讲解了Drools的核心组件(规则、事实、会话等)及其工作原理。随后详细说明了在SpringBoot项目中集成Drools的步骤,包括添加依赖、配置自动加载规则文件、创建KieContainer等关键配置类。文章还提供了完整的DRL规则文件示例和SpringBoot集成配置代码,为开发人员提供了从理论到实践的完整指导。通过这种方式,可以轻松实现业务规则与系统代码的

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1435

麒麟服务器操作系统QT系列软件工具手册

对Qt提供的开发工具进行了一系列的优化之后,在日常的修复bug和维护框架的过程中,桌面研发对Qt的基础软件库也进行了部分优化工作,包括qtbase、qtwayland、qtscript、qt4-x11等Qt基础组件,涉及的Qt框架版本主要涉及到5.9和5.12两个版本。qt 的翻译,是由 ts 文件生成 qm 文件然后进行翻译,国产操作系统上qt 的翻译是由单独的qttranslations包中进行维护,其次部分汉化问题也是qt组件维护工作的一部分,qt的翻译机制如图4-7所示。

太极淘的博客 544

HDFS详解01

一、复习 1、HDFS进程 NN:名称节点 DN:数据节点 SNN:第二名称节点 2、block(数据块) 大小:64M 128M(官网文档2.8.4是这个大小) 可以通过修改参数来变更数据块大小 参数:hdfs-site.xml-----------dfs.blocksize The default block size for new files, i...

Binbinhb的博客 505

爬虫Incapsula reese84加密案例:Etihad航空(纯算法)

爬虫Incapsula reese84加密案例:Etihad航空,本文就不再讲解如何找加密参数、定位加密参数,以及分析加密的一个过程。就直接从扣算法开始,扣算法前先看之前讲解的加密函数生成的过程,文章会一个函数一个函数的讲解扣算法。fiddler根据规则替换本地文件。调试过程中遇到部分环境不一样是正常的,具体还要根据自己调试的js为准,就像之前补环境时是有二十一个循环,这次扣算法多出一个循环,不过大部分环境是一样的第一个函数:通过document.addEventListener添加了很多事件。

老衲爱洗头的博客 1994

面试HDFS技术原理

大家好,HDFS作为各种各种计算引擎的数据存储基础,面试大数据开发岗位必问,今天分享一下华为的一个材料,讲解了HDFS的技术原理。01HDFS概述及应用场景HDFS概述:HDFS(Hado...

weixin_45727359的博客 367

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Hadoop面试-HDFS,MapReduce,Yarn

Hadoop面试 HDFS ###1.hdfs写流程 (1)客户端通过 Distributed FileSystem 模块向 NameNode 通信请求上传文件,NameNode 检查目标文件是否已存在,父目录是否存在。 (2)NameNode 返回是否可以上传。 (3)客户端请求第一个 Block 上传到哪几个 DataNode 服务器上。 (4)NameNode 返回 3 个 DataNode 节点,分别为 dn1、dn2、dn3。 (5)客户端通过 FSDataOutputStream 模块请求 d

niuyan666的博客 654

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

大数据面试问答-Hadoop/Hive/HDFS/Yarn

可分为 SQL解析阶段、语义分析阶段、逻辑计划生成阶段、逻辑优化阶段、物理计划生成阶段。SQL解析阶段词法分析(Lexical Analysis):使用Antlr3将SQL字符串拆分为有意义的token序列语法分析(Syntax Analysis):根据Hive语法规则构建抽象语法树(AST)语义分析阶段元数据验证:检查表、列是否存在,类型是否匹配隐式类型转换:如将字符串与数字比较时的自动转换UDF解析:确定用户定义函数的实现类权限验证:检查用户是否有执行该查询的权限。

weixin_44999258的博客 1254

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

HDFS面试(自己学习版)

大:设置太大,磁盘传输时间明显大于定位块的时间,因为块大了,块总数就相对少了,寻址时间相对少很多,而块过大,磁盘传输时间变大。与寻址时间有关:默认寻址时间为传输时间的百分之一为最优。小:块总数变多,寻址时间增大了。1s*磁盘传输速率就是块大小。假设10ms找到目标,

qq_42265608的博客 2089

大数据面试技术复习hadoop,hdfs,yarn

大数据复习笔记 一、hadoop hadoop特性:高可靠,高拓展,高效,,高容错性。 面试考点: 1.hadoop1.0和2.0区别 ** hadoop1.0主要组成为mapreduce(计算+调度),hdfs(存储),common(辅助工具),2.0中加入了yarn负责资源调度,mapreduce只负责计算。3.0中组成上没有区别。** 2.常用端口号 hadoop3.x hdfs namenode 内部通常端口 :8020/9000/9820 hdfs namenode 对用户的查询端口:9870

jtpython666的博客 522

Hadoop大数据应用:Linux 部署 HDFS 分布式集群_linux操作hdfs(2)

node01node02node03(5)域名主机名(6)修改主机名(7)hadoop节点创建密钥(8)添加免密登录。

2401_83627805的博客 924

HDFS

HDFSHDFS概述HDFS架构HDFS文件块大小(面试重点) HDFS概述 Hadoop分布式文件系统 HDFS使用场景:适合一次写入,多次读出场景,并且不支持文件修改 优点: 1.高容错性 数据自动保存多个副本,它通过增加副本的形式来提高容错性 某一个副本丢失之后,可以自动恢复 2.适合存储大数据 数据规模:能够处理达到GB、TB、甚至PB级别的数据 文件规模:能够处理百万规模即以上的文件数量 3.可构建在廉价机器上 通过多副本机制,提高可靠性 -缺点: 1.不适合低延时数据访问,比如毫秒级的

qq_45080791的博客 288
上一篇: Hadoop中job.setNumReduceTasks(0)方法
下一篇: HDFS面试篇2
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值