用户登录
用户注册

分享至

mapreduce 性能优化

  • 作者: 陆边123
  • 来源: 51数据库
  • 2020-09-28
你这个问题,问的太大了。目前可能有很多人都在熟悉使用hadoop,当然就会有很多人研究它了。默认的集群环境并不是最优的,所以为了提升集群的性能,人们就开始研究hadoop的优化了。现在,通常从以下几个方面对hadoop进行优化:
1、数据放置和数据副本数量的选择。集群默认情况一般有三个副本,并且集群默认每个节点的计算能力是一样的,在分配数据块的时候,均匀分布在每个节点上。实际环境中,更多的是每个节点得各方面能力是不同的,比如计算能力,那么原有的数据分配方式就那么合适了,需要根据节点的能力,合理的放置数据块,从而提升性能。数据副本的数量也会影响hadoop的性能,这里边涉及到数据迁移的问题。
2、参数配置方面。例如数据块的大小当前大多数是128或者64M,相对来说是比较合理的。那么这个值真的适合你的集群环境吗?是否有方法可以计算出集群的最优状态下的数据块大小,这个需要研究。当然还有很多参数,需要优化,比如容器大小,内存分配,map和reduce数量等。
3、作业调度问题。给你一堆的job,如何合理的调度使得执行最快。这也是优化的方向,虽然集群有默认的三种调度策略,但并不一定是最好的。
当然还有很多优化,这里就不一一列举了,如果你感兴趣,可以去网上搜索更多的参考资料!
软件
前端设计
程序设计
Java相关