Hadoop2.xios个版本大小中Block块大小的计算过程

..port已经被占用的时候可以搜一个涳闲的端口绑定。这个功能在测试的时候很有用默认关闭。

当一个HStore含有多于这个值的HStoreFiles(每一个memstore flush产生一个HStoreFile)的时候会执行一个合并操作,把這HStoreFiles写成一个这个值越大,需要合并的时间就越长

ZooKeeper的zoo.conf中的配置。 发送一个请求到获得承认之间的ticks的数量限制

ZooKeeper的zoo.conf中的配置 ZooKeeper集群中的单个節点接受的单个Client(以IP区分)的请求的并发数。这个值可以调高一点防止在单机和伪分布式模式中出问题。

如果coprocessor加载失败或者初始化失败或者拋出Throwable对象则主机退出。设置为false会让系统继续运行但是coprocessor的状态会不一致,所以一般debug时才会设置为false默认是true;

设置为true来允许在schema变更时zk锁表,锁表可以组织并发的schema变更导致的表状态不一致默认是true;

线程池的core size,在达到这里配置的量级后新线程才会再新的连接创立时创建,默認是16;

顾名思义最大线程数,达到这个数字后服务器开始drop连接,默认是1000;

Thrift连接队列的最大数如果线程池满,会先在这个队列中缓存請求缓存上限就是该配置,默认是1000;

开启后文件在regionserver写入时会 有权限相关设定,默认是false不开启;

开启上面一项配置后文件的权限umask,默認是000

是否为每个指标显示表名前缀默认是true;

是否进行关于操作在使用时间维度的指标报告,比如GET PUT DELETE INCREMENT等默认是true;

让hbaseconfig去读zk的config,默认false也不支歭开启,这个功能很搞笑~~个人观点;

是否允许snapshot被使用、存储和克隆默认是true;

REST服务器线程池的最大线程数,池满的话新请求会自动排队限制这个配置可以控制服务器的内存量,预防OOM默认是100;

同上类似,最小线程数为了确保服务器的服务状态,默认是2;

??在HDFS中存储数据是以块(block)的形式存放在DataNode中的块(block)的大小可以通过设置dfs.blocksize来实现;在Hadoop2.x的ios个版本大小中,文件块的默认大小是128M老ios个版本大小中默认是64M;寻址时间:HDFS中找到目标文件块(block)所需要的时间。原理:

  • 文件块越大寻址时间越短,但磁盘传输时间越长
  • 文件块越小寻址时间越长,但磁盘传输时間越短
  1. 如果块设置过大 一方面,从磁盘传输数据的时间会明显大于寻址时间导致程序在处理这块数据时,变得非常慢;另一方面mapreduce中嘚map任务通常一次只处理一个块中的数据,如果块过大运行速度也会很慢

  2. 如果块设置过小,一方面存放大量小文件会占用NameNode中大量内存来存儲元数据而NameNode的内存是有限的,不可取;另一方面文件块过小寻址时间增大,导致程序一直在找block的开始位置

因而,块适当设置大一些减少寻址时间,那么传输一个由多个块组成的文件的时间主要取决于磁盘的传输速率

  1. HDFS中平均寻址时间大概为10ms

  2. 经过前人的大量测试发现,寻址时间为传输时间的1%时为最佳状态;

  3. 目前磁盘的传输速率普遍为100MB/s;

实际在工业生产中,磁盘传输速率为200MB/s时一般设定block大小为256MB;磁盘傳输速率为400MB/s时,一般设定block大小为512MB

  hadoop集群中文件的存储都是以块嘚形式存储在hdfs中

3.如何修改block块的大小?

  注意:在修改HDFS的数据块大小时首先停掉集群hadoop的运行进程,修改完毕后重新启动

  在实际應用中,hdfs block块的大小设置为多少合适呢为什么有的是64M,有的是128M、256M、512呢

  首先我们先来了解几个概念:

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

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

5.block不能设置过大,也不要能设置过小

  1)如果块设置过大一方面从磁盘传输数据的时间会明显大于寻址时间,导致程序在处理这块数據时变得非常慢;另一方面,MapReduce中的map任务通常一次只处理一个块中的数据如果块过大运行速度也会很慢。

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

  1)HDFS中平均尋址时间大概为10ms;

  2)经过前任的大量测试发现寻址时间为传输时间的1%时,为最佳状态所以最佳传输时间为:

  3)目前磁盘的传輸速度普遍为100MB/s,最佳block大小计算:

    所以我们设置block大小为128MB.

  4)实际中磁盘传输速率为200MB/s时,一般设定block大小为256MB;磁盘传输速率为400MB/s时一般设定block大小为512MB.

我要回帖

更多关于 ios个版本大小 的文章

 

随机推荐