首页 > 其他分享 >HDFS的block为什么是128M?增大或减小有什么影响?

HDFS的block为什么是128M?增大或减小有什么影响?

时间:2023-05-24 22:31:56浏览次数:39  
标签:HDFS 传输速率 寻址 时间 设置 128M 磁盘 block

1、首先先来了解几个概念

寻址时间:HDFS中找到目标文件block块所花费的时间。

原理:文件块越大,寻址时间越短,但磁盘传输时间越长;文件块越小,寻址时间越长,但磁盘传输时间越短。

2、为什么block不能设置过大,也不能设置过小

如果块设置过大,如果块设置的太大,从磁盘传输数据的时间会明显大于定位这个块开始位置所需的时间。导致程序在处理这块数据时,会非常慢;另一方面,MapReduce中的map任务通常一次只处理一个块中的数据,如果块过大运行速度也会很慢。

如果设置过小,一方面存放大量小文件会占用NameNode中大量内存来存储元数据,而NameNode的内存是有限的(主要原因),不可取;另一方面块过小,寻址时间增长,导致程序一直在找block的开始位置(MapReduce将起多个进程,带来切换开销)。因此,块适当设置大一些,减少寻址时间,传输一个有多个块组成的文件的时间主要取决于磁盘的传输速度。

3、块大小多少合适

如果寻址时间约为10ms,而传输速率为100MB/s,为了使寻址时间仅占传输时间的1%,我们要将块大小设置约为100MB。默认的块大小128MB。

块的大小:10ms x 100 x 100M/s = 100M,如图

HDFS的block为什么是128M?增大或减小有什么影响?_大数据开发

如果增加文件块大小,那就需要增加磁盘的传输速率。HDFS块的大小设置主要取决于磁盘传输速率。

比如,磁盘传输速率为200MB/s时,一般设定block大小为256MB;磁盘传输速率为400MB/s时,一般设定block大小为512MB。

标签:HDFS,传输速率,寻址,时间,设置,128M,磁盘,block
From: https://blog.51cto.com/u_15553407/6343210

相关文章

  • HDFS文件因Hadoop版本原因导致append操作失败的问题
    问题重现:2023.05.24练习B站尚硅谷Hadoop3里的HDFS的Shell操作(append)[[email protected]]$hadoopfs-appendToFileliubei.txt/sa点击查看代码[[email protected]]$hadoopfs-appendToFileliubei.txt/sa2023-05-2420:30:37,303WARNhdfs.......
  • HDFS学习进阶
    一、HDFS元数据管理HDFS是一个分布式文件存储系统,文件分布式存储在多个DataNode节点上。一个文件存储在哪些DataNode节点的哪些位置的元数据信息(metadata)由NameNode节点来处理。随着存储文件的增多,NameNode上存储的信息也会越来越多。在HDFS中主要是通过两个组件FSImage(快照文件,......
  • SAP CODING BLOCK
    https://blog.csdn.net/m0_46145967/article/details/110954475  文章目录1.背景2.添加字段2.1普通模式2.2专家模式2.3新建MSEG的CDS视图3.添加字段到屏幕3.1需要更改的标准程序及屏幕3.2将拷贝出来的屏幕替换标准屏幕4.维护字段状态4.1维护字段状态变式4.2维护字段是......
  • HDFS学习基础
    一、HDFS基础知识HDFS 是 HadoopDistributeFileSystem 的简称,意为:Hadoop 分布式文件系统。是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。分布式文件系统解决的问题就是大数据存储。它们是横跨在多台计算机上的存储系统。分布式文件系统在大数据时代有着广......
  • HDFS架构与原理浅析
    当需要存储的数据集的大小超过了一台独立的物理计算机的存储能力时,就需要对数据进行分区并存储到若干台计算机上去。管理网络中跨多台计算机存储的文件系统统称为分布式文件系统(distributedfileSystem)。分布式文件系统由于其跨计算机的特性,所以依赖于网络的传输,势必会比普通的本......
  • VFS: Unable to mount root fs on unknown-block
    [1.736146]Listofallpartitions:[1.736921]fd00256000vda[1.736928]driver:virtio_blk[1.737723]Nofilesystemcouldmountroot,tried:[1.737723][1.738136]Kernelpanic-notsyncing:VFS:Unabletomountrootfs......
  • LinkedBlockingQueue源码分析
    1、LinkedBlockingQueue使用LinkedBlockingQueue的使用案例详情如下:1importjava.util.concurrent.LinkedBlockingDeque;2importjava.util.concurrent.LinkedBlockingQueue;34publicclassTestLinkedBlockingQueue{5publicstaticvoidmain(String[]......
  • [未解决] 如何用vite的vueCustomBlockTransforms实现源代码展示
    想实现源代码展示,搜索结果90%都是用vueCustomBlockTransforms,但我在自己项目的vite.config.js里加入该选项以后并没有生效在vite官网配置中也没有,vite源码中没有(但是node/server的createServer中有)找到了一个demo,也是可以用的(虽然vite版本是很早的1.0):https://zhuanlan.zhihu.co......
  • 4、HDFS-java操作类HDFSUtil及junit测试(HDFS的常见操作以及HA环境的配置)
    目录Hadoop系列文章目录一、pom.xml二、junit测试类三、操作类(帮助类)四、高可用环境的操作类本文编写了java对HDFS的常见操作,并且均测试通过。其功能包含构造conf、设置系统环境变量、创建目录、判断文件是否存在、获取文件/目录的大小等,具体见下图。本文分为四部分,即pom.xml、ju......
  • 12、HDFS Trash垃圾桶回收介绍与示例
    文章目录Hadoop系列文章目录一、介绍二、HDFSTrash功能开启1、关闭HDFS集群2、修改core-site.xml文件3、同步集群配置文件4、启动HDFS集群三、HDFSTrash功能验证1、删除文件并验证2、不进回收站的删除3、从Trash中恢复文件4、清空Trash本文主要介绍HDFSTrash垃圾桶回收。前提......