一、black块
举例:
black块官方设置的是64m,现在多数用的是128m

举例:
一个文件130M % 128M=1…2m
结果是1个块128m,1个块2m
一碗水130ml 一个瓶子规格容量128ml
只能2个瓶子:第1个装满128ml 第二个装不满,实为2ml

二、小文件的危害
HDFS 适应场景: 大文件存储,小文件是致命的
举例说 明

接上个例子130m的文件
10m的10个文件 10块
30m的1个文件 1块
共有11个文件: 11块
系统维护一般轻量级会比较好,本身可以2个块去维护,但现在需要11个块维护 ,如果数量级比较大有可能会把nn撑爆

为什么小文件会把NN撑爆?

例如
NN的大小是4G大概是42亿字节
1个小文件(阈值<=30m): nn节点维护的字节大约250字节
1亿个小文件 250b1亿=250亿字节
反而如果1亿个小文件合并100万个大文件:250b
1百万=2亿字节则不会被撑爆

如果nn撑爆,在大数据中,大数据的结构基本上都是主从架构,主节点的nn起到非常重要的作用,nn挂了,所有对外的服务,读写的流程将不能运行。
生产上:,
1.对小文件阈值进行估算
2.合并小文件,数据未落地到hdfs之前合并或者数据已经落到hdfs,用spark service服务每天调度去合并 -15天
具体情况根据公司的业务周期进行合并,比如今天是15号则合并1号的文件,16号合并2号的
3.小文件危害: 一个是撑爆nn,另一个是hive或者spark计算的时候会影响它的速度

HDFS小文件的危害相关推荐

  1. HDFS小文件治理总结

    目录 背景 第一部分 回本溯源 第二部分 HDFS大量小文件的危害 第三部分 小文件治理方案总结 第四部分 总结 参考文献及资料 背景 企业级Hadoop大数据平台在实际使用过程中,可能大部分会遭遇小 ...

  2. HDFS小文件问题及解决方案

    1.  概述 小文件是指文件size小于HDFS上block大小的文件.这样的文件会给hadoop的扩展性和性能带来严重问题.首先,在HDFS中,任何block,文件或者目录在内存中均以对象的形式存储 ...

  3. HDFS小文件优化方法

    HDFS小文件弊端 HDFS上每个文件都要在NameNode上建立一个索引,这个索引的大小约为150byte,这样当小文件比较多的时候,就会产生很多的索引文件,一方面会大量占用NameNode的内存空 ...

  4. Hadoop之Hadoop企业优化(HDFS小文件优化)

    Hadoop之Hadoop企业优化 目录 MapReduce 跑的慢的原因 MapReduce优化方法之数据输入 MapReduce优化方法之Map阶段 MapReduce优化方法之Reduce阶段 ...

  5. HDFS小文件处理解决方案总结+facebook(HayStack) + 淘宝(TFS)

    2019独角兽企业重金招聘Python工程师标准>>> HDFS小文件处理解决方案总结+facebook(HayStack) + 淘宝(TFS) 博客分类: 数据库 hbase 一. ...

  6. HDFS小文件问题解决方案

    一 如果小文件过多带来的影响 1过多的小文件,意味着需要保存的元数据就更多,那么也就需要更多的NameNode内存了,从而给NameNode带来性能问题 2读取小文件数据的时候,带来集群资源更多开销. ...

  7. Hadoop HDFS 小文件合并

    HDFS的小文件合并 由于Hadoop擅长存储大文件,因为大文件的元数据信息比较少,如果Hadoop集群当中有大量的小文件,那么每个小文件都需要维护一份元数据信息,会大大的增加集群管理元数据的内存压力 ...

  8. spark 实现HDFS小文件合并

    一.首先使用sparksql读取需要合并的数据.当然有两种情况, 一种是读取全部数据,即需要合并所有小文件. 第二种是合并部分数据,比如只查询某一天的数据,只合并某一个天分区下的小文件. val df ...

  9. HIVE 生成过多小文件的问题

    HIVE 生成大量小文件 小文件的危害 为什么会生成多个小文件 不同的数据加载方式生成文件的区别 解决小文件过多的问题 今天运维人员突然发来了告警,有一张表生成的小文件太多,很疑惑,然后排查记录了下 ...

最新文章

  1. ubuntu安装新字体
  2. 成长轨迹59 【ACM算法之路 百炼poj.grids.cn】【递归】【2694:逆波兰表达式】
  3. 标记化结构初始化语法(C语言)
  4. photon四种同步方式_【Linux】多线程同步的四种方式
  5. 数据结构(二):线性表包括顺序存储结构(顺序表、顺序队列和顺序栈)和链式存储结构(链表、链队列和链栈)...
  6. [O365] Azure Active Directory Sync EVENT ID 906 FAILED While Purging Run History. Invalid Namespace
  7. 2019 ICPC 南京网络赛 F Greedy Sequence
  8. 微信小程序(看文档写实例七)微信小程序课堂宝APP实现在线课堂测试
  9. WIFI共享大师无法开启发射功能
  10. Hudi-Flink CDC将MySQL数据写入hudi
  11. aop aspectj autoproxy / 的作用
  12. 2020进博会品牌第一自行车辐轮王助力中国新时代健康建设大业
  13. muduo C++网络库的学习笔记
  14. vmware虚拟机15 安装centos764 并且配置网络
  15. 音乐多媒体播放的三种方式
  16. 报名投票链接怎么做做一个投票的链接怎么做微信投票链接怎么做
  17. 通过源码安装python
  18. linux如何编译tex,linux下编译bib、tex生成pdf文件
  19. JavaWeb案例:旅游网站
  20. linux cp mv区别,浅谈Linux下mv和cp命令的区别

热门文章

  1. 基于matlab的静电场边值,典型静电场场图解析解(含Matlab程序).pdf
  2. c语言第二单元测试,知到计算机程序设计C语言第二单元章节测试答案
  3. 数学建模方法总结(matlab)
  4. I - Por Costel and the Pairs Gym - 100923I _思维啊——可惜我现在还没
  5. 工业水处理行业主要壁垒构成及重点企业分析、相关风险、处理规模
  6. 从“被动挖光缆”到“主动剪网线”,蚂蚁金服异地多活的微服务体系
  7. 超分辨率——综述文章
  8. 安卓-橡皮擦擦线完整实现
  9. web player html5源码,GitHub - WEBHH/DanmuPlayer: Html5弹幕视频播放器插件
  10. android usb通讯波特率,USB串口的特殊波特率通信