HDFS
大数据面试宝典
这个作者很懒,什么都没留下…
展开
-
大数据面试之HDFS高可用原理
HDFS高可用原理:HDFS HA(High Available)同时配置两个Namenode,状态分别是Active和Standby。Standby Namenode作为热备份,在机器发生故障时能够快速进行故障转移,同时在日常维护的时候进行Namenode切换。Namenode只能配置一主一备,不能多于两个Namenode。主Namenode处理所有的操作请求(读写),而Standby只是作为slave,用来同步主Namenode的状态,保证发生故障时能够快速切换。为了使Standby Namen.原创 2021-02-28 21:29:53 · 271 阅读 · 0 评论 -
大数据面试之HDFS的读写流程
1. 读流程客户端首先带着读取路径向NameNode发送读取请求NameNode接收到请求后,会先判断是否有权限,读取文件是否存在等等,如果都无误则将 文件所在的DataNode的节点位置,发送给客户端部分或者全部的DataNode的节点位置客户端得到文件块存储的位置后,会调用read()方法,去读取数据在读取之前会先进行一个checksum的操作,去判断一下校验和是否正确,正确则读,不正确 则去下一个存放该block块的DataNode节点上读取读取完NameNode这次发送过来原创 2021-02-27 23:42:28 · 205 阅读 · 0 评论 -
HDFS的特点
高容错保存多个副本,且提供容错机制。 副本丢失或宕机自动恢复,默认存3份。系统故障是不可避免的,如何做到故障之后的数据恢复和容错处理是至关重要的。HDFS通过多方面保证数据的可靠性,多份复制并且分布到物理位置的不同服务器上,数据校验功能、后台的连续自检数据一致性功能都为高容错提供了可能。故障类型节点失败(DN服务挂了)节点没坏,网络坏了数据块损坏(不稳定的网络传输、磁盘损坏)故障检测机制节点失败检测机制数据错误检测机制读写容错机制读:CheckSum 校验和.原创 2021-02-25 22:58:13 · 590 阅读 · 0 评论 -
HDFS架构和组成
HDFS架构和组成Hdfs 采用Master/Slave的架构来存储数据,这种架构主要由四个部分组成NameNode, DataNode,client,和SencondayNameNode组成NameNode(Master):管理 HDFS 的命名空间,维护元数据。接收客户端的请求。管理数据块(Block)映射信息.配置副本策略DataNode(Slave):存储实际的数据块 。执行数据块的读/写操作。向namenode上传心跳信息。Client(客户端):1、文件上传 HDFS原创 2021-02-24 22:52:40 · 832 阅读 · 0 评论 -
简单的介绍一下HDFS(HDFS是什么?)
1. 简单的介绍一下HDFS(HDFS是什么?)HDFS (Hadoop Distributed File System)是 Hadoop 下的分布式文件系统,具有高容错、高吞吐量等特性,可以部署在低成本的硬件上。是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。分布式文件系统解决的问题就是大数据存储。它们是横跨在多台计算机上的存储系统。HDFS使用Master和Slave结构对集群进行管理。一般一个 HDFS 集群只有一个 Namenode 和一定数目的Datanode原创 2021-02-24 17:04:15 · 485 阅读 · 0 评论 -
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.fs.FileAlreadyExistsException)
文章目录1.错误信息:2.原因3.解决方法1.错误信息:父路径不是一个目录:/tmp tmporg.apache.hadoop.ipc.RemoteException(org.apache.hadoop.fs.FileAlreadyExistsException): Parent path is not a directory: /tmp tmpPriviledgedActionExc...原创 2019-11-11 22:21:26 · 7614 阅读 · 1 评论 -
面试官:这些HDFS的面试题你都会了吗?
1.怎么理解分布式?1.一个业务分拆多个子业务,部署在不同的服务器上(不同的服务器,运行不同的代码,为了同一个目的)2.多个人在一起作不同的事情3.分布式就是不同的业务模块部署在不同的服务器上或者一个业务模块拆分成多个子业务,部署在不同的服务器上,解决高并发的问题4.分布式(计算与存储) 分布式计算:是一种计算方法,是将该应用分解成许多小的部分,分配给多台计算机进行处理。 这样可...原创 2019-11-08 10:03:08 · 5667 阅读 · 8 评论 -
HDFS将本地的多个小文件拼接成大文件上传到HDFS文件系统
package com.czxy;import com.sun.jndi.toolkit.url.Uri;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.*;import org.apache.hadoop.io.IOUtils;import java.net.URI;/** * @...原创 2019-11-07 20:01:06 · 5679 阅读 · 1 评论 -
HDFS的10个JavaAPI
package com.czxy;import java.text.SimpleDateFormat;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FSDataOutputStream;import org.apache.hadoop.fs.FileStatus;import org.ap...原创 2019-11-07 19:59:16 · 4729 阅读 · 2 评论 -
HDFS的节点退役
1.创建黑名单配置文件进入到hadoop安装目录下etc/hadoop/touch dfs.hosts.exclude2.添加黑名单配置到 hdfs-site.xml中3.将退役节点的ip在白名单中移除vim dfs.hosts4.将退役节点ip在黑名单中添加vim dfs.hosts.exclude5.将文件在slaves中移除vim slaves6.刷新集群状态...原创 2019-11-06 21:45:11 · 4790 阅读 · 2 评论 -
HDFS集群扩容详解
随着公司的业务越来越多,HDFS文件系统需要的资源也会越来越多,当现有集群不能使用的时候,我们就要要给集群扩容,增加新的节点到集群中,下面我们就来讲解一下添加新集群的步骤1.添加一个新的节点1.配置mac地址2.配置ip3.关闭防火墙与关机自启4.关闭selinux5.设置主机名6.重启7.设置hosts文件8.设置无密码登录9.配置JDK10.安装hadoop2.在...原创 2019-11-06 21:40:28 · 5945 阅读 · 2 评论 -
图解: SecondaryNameNode的工作原理
1.前提: 不使用SNN,日志文件会很大,日志大会导致集群恢复到上次关机前的状态花费很长时间,这个时候集群处于安全模式,集群不可用,长时间处于安全安全模式2.目标:加快集群的二次启动时速度.(减少集群二次启动的时间)SecondaryNameNode周期性复制NameNode的FSimage和Edits到本机(SecondaryNameNode本机),文件进行合并,最终生成全新的Fsimag...原创 2019-11-05 22:04:00 · 4939 阅读 · 0 评论 -
图解: HDFS的Fsimage与Edits
Fsimage与Edits是什么?Fsimage记录文件系统的镜像或快照(周期性记录)(此文件较小)Edits 记录客户端对进行的所有的增,删,改,追加等操作(没有使用SecondaryNameNode之前,不是周期性的)(此文件相对较大)Fsimage Edits作用:用于还原集群上次关闭时的状态,还原将两个文件加载到内存,检查,合并最终生成一个新的Fsimage,原本的Edits失效...原创 2019-11-05 21:30:27 · 5035 阅读 · 0 评论 -
HDFS安全模式详解
什么是HDFS的安全模式安全模式是HDFS所处的一种特殊状态,在这种状态下,文件系统只接受读数据请求,而不接受删除,修改等变更请求,在NameNode主节点启动时,HDFS首先进入安全模式,DataNode在启动的时候会想NameNode汇报可用的block等状态,当整个系统达到安全标准时,HDFS会自动离开安全模式他有什么作用如果HDFS处于安全模式下,则文件block不能进行任何的...原创 2019-11-05 15:04:55 · 5046 阅读 · 0 评论 -
HDFS高级命令-目录下文件大小个数限额
准备创建一个文件夹hadoop fs -mkdir /user/root/lisi给文件夹下文件数量限额限制lisi文件夹下只能存放两个文件hdfs dfsadmin -setQuota 2 lisi试一下:再试一下这是为什么呢?这是因为我们设置了lisi文件夹下最大的文件数量是2个,lisi文件夹本身也要占一个数量,所以会出现了只能上传一个的错误...原创 2019-11-05 14:46:42 · 7585 阅读 · 0 评论 -
HDFS的特性与不足
特性海量的数据储存: HDFS可横向扩展,存储的文件可以支持PB级或者更高级别的数据储存高容错性: 数据保存多个副本,副本丢失后自动恢复. 可构建在廉价(与小型机,大型机相比较)的机器上,实现线性扩展(集群配置随着服务器的增加而增加),当集群增加新的节点之后,NameNode也可以感知,进行负载均衡,讲数据分发和备份数据均衡到新的节点上商用硬件: hadoop并不需要运行在昂贵高可靠的...原创 2019-11-05 14:00:02 · 5278 阅读 · 0 评论 -
图解: HDFS数据的完整性
第一步:写入数据第二步:进行首次校验和,得到数值70第三步:读取数据时,仍然会校验和,得到数据70第四步:对比两次较校验和的值如两次读取的值都是70,则开始读取数据如两次读取的值不一致,说明此节点数据丢失,则去其他节点读取数据总结一下:1.数据在写入之后进行校验和的计算,DataNode周期性的进行校验和计算,将计算结果与第一次进行对比,若相同表示无数据丢失,若不相同表示...原创 2019-11-04 21:16:01 · 4905 阅读 · 1 评论 -
图解: HDFS的文件读取流程
读取之前:第一步:调用open()方法第二步:向NameNode请求文件块的位置第三步:NameNode返回给客户端文件块的位置第四步:调用read()方法第五步:读取数据第六步:继续询问后续block块信息的位置然后重复第四,第五步骤…...原创 2019-11-04 20:56:11 · 4989 阅读 · 0 评论 -
图解: HDFS的文件写入流程
写入之前:现有客户端写入数据现有HDFS文件系统等待接收数据第一步:先问问可不可以写入先来问一下可不可以写入:1.从客户端发送请求到NameNode2.NameNode接收到请求后校验他是否有权限,是否有同类文件在系统中如果有父级目录,也要校验一下父级目录是否存在第二步:开始分块上传,询问第一块数据块放在那?同样的,也是向NameNode发送请求第...原创 2019-11-04 20:34:53 · 5736 阅读 · 1 评论 -
HDFS-机架感知脚本
机架感知需要人为进行配置,编写python脚本"RackAware.py",内容为服务器ip与交换机的对应关系(开源hadoop使用的是RackAware.sh)#!/usr/bin/python #-*-coding:UTF-8 -*- import sys rack = { "12.12.3.1":"SW6300-1", "12...原创 2019-11-04 20:06:17 · 4886 阅读 · 0 评论 -
图解: HDFS-DataNode作用
1.负责管理它所在节点上存储的数据的读写,及存储数据,一般是文件系统客户端需要请求对指定数据点进行读写操作,DataNode作为数据节点的服务进程来文件系统客户端打交道.2.向NameNode节点报告状态,每个DataNode节点会定期性地向NameNode发送心跳信号和文件块状态报告.3.执行数据的流水线复制。当文件系统客户端从Namenode服务器进程获取到要进行复制的数据块列表后,完...原创 2019-11-04 14:29:28 · 6268 阅读 · 0 评论 -
图解: HDFS-NameNode作用
1.管理HDFS集群中文件系统的名字空间(Namespace),例如打开文件系统,关闭文件系统,重名名文件或者目录等2.NameNode节点负责确定指定的文件块到具体的Datanode节点的映射关系,在客户端与数据段节点之间共享数据3.管理DataNode节点的状态报告,包括Datanode节点的健康状态报告和其所在节点上数据块状态报告,以便能够及时处理失效的数据节点...原创 2019-11-04 09:32:22 · 6628 阅读 · 0 评论 -
图解: HDFS的Master与slave
现实生活中的Master与slave现实中在一座城市中的master就是市长市长的工作做不完了,就会让市长秘书做,市长秘书就是辅助市长工作的管理者在学校中,校长就是master,校长秘书就是slave市政府中的公务员与学校中的老师就是工作者slave市政府的公务员是为老百姓服务的,老师是教书育人的(为学生服务)HDFS中的Master与slaveclient是老百姓,生产数...原创 2019-11-04 09:20:06 · 5808 阅读 · 1 评论 -
图解: HDFS的分块储存与副本存放机制
1.分块储存简介: HDFS中的文件在物理上是分块储存(block)的,默认大小在Hadoop2.x版本中是128M(可调)现在用户手上有一个文件数据下面有一个大的核心交换机,与三个小的核心交换机HDFS会将文件以分块的方式将文件存放在HDFS文件系统中2.副本存放机制第一块数据来自客户端,10M还是上面的集群图第一块数据会按照一定的规则(根据CPU,内存,磁盘...原创 2019-11-04 09:03:48 · 7498 阅读 · 1 评论 -
HDFS文件系统的容量
什么是文件系统?就是存取文件的系统什么是容量?能放多少东西就叫容量先上图上图中有6个服务器,每个服务器中有4个T的硬盘,问一共是多少T?上面写着呢 是 HDFS的容量就为24T:其中里面服务器之间任意一台服务器访问HDFS里面的数据,都可以访问到...原创 2019-11-01 17:39:56 · 5487 阅读 · 0 评论