hadoop学习笔记之六:一些优化点

hadoop 性能调优

  1调优主要集中在另个方面
   A 减少运算时间
   B减少磁盘空间占用率
   CIo方面的优化

  2 Hadoop自身会将Task分配给正在空闲的节点去做,这样可以充分利用资源,并且会将Map任务分配给InputSplit所在的集群,以减少IO的开销,提升运算速度。

  3我们知道,在编写MapReduce程序时,Map的中间输出结果可能会很多,很大,对其进行压缩可以减少网络上的数据传输量,同时也会减少数据写入HDFS的时间,缺点就是对数据读取产生一定的影响,需更具实际情况来权衡。

  4默认的Hadoop配置不能很好的满足计算需要,默认为2个,需要对Config进行更改,就是设置MapReduce的任务槽,设置Map的数量主要需要参考Map任务的运行时间,Reduce的数量要参考任务槽的设置,一般为任务槽的0.95倍或者1.75倍。

   5Combine函数的使用,Combine函数是用来告诉Hadoop,Map过程中产生重复而且大量的数据可以进行本地合并,不需要交给网络上的其它节点去做,这样可以减少网络开销,提升性能

   6输入采用大文件,Hadoop对于大量小文件的处理能力是有限的,需要把文件的个数经可能的减少,增加文件的内容,这样可以减少开启MapReduce的任务数。

   7过滤数据,有时候很多数据源的数据是垃圾数据,如果直接读进来处理反而会降低性能,应此需要进行过滤。 

你可能感兴趣的:(hadoop 优化)