`
youkimra
  • 浏览: 34581 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

转-》hadoop 性能因素

阅读更多
1. 通常每个服务器的Map + Reduce总数跟cpu核数大致一致,经验表现为略大于 cpu核数的设置可以发挥最大性能,比如8核配5个map, 5个reduce

2. Map数跟Reduce配置个数通常配置相同

3. Hadoop允许集群里的不同节点配置Map跟Reduce数不同,避免服务器开销不均 匀

4. HDFS block大小默认64M推荐128M

5. HDFS在并发写同一文件情况执行状况未知,可能存在写冲突问题

6. HDFS文件不允许修改,文件一旦建立(写入流关闭)后不能修改

7. 移动计算的代价比移动数据的代价低,通常Map在数据存放的节点服务器上运 行,当在其他服务器上运行是上运行时,该节点数据会拷贝到执行服务器上再进行运算

8. 在job的运行时,每个参与任务的Map处理的datanode节点对象是固定不变 的,Map处理dataNode的粒度可以到文件的行级,比如一个Map可以处理某个dataNode的 前10000行

9. 每个Reduce接受所有Map的结果并且只执行跟自己相关的key的Reduce

10. HDFS上跑的应用,主要是以流式读为主的应用,进行批量处理,比如log分析、 索引构建、数据关联等

11. Hadoop支持根据应用分配额定最大map及reduce个数功能

12. HDFS采用master/slave架构(nameNode,dateNode), NameNode是个单点中心服务 器, 管理文件系统及客户端的访问

13. HDFS默认文件副本3个,不同应用可以通过客户端API决定每个文件的副本数为任 意值

一些配置属性:
<property>
<name>mapred.min.split.size</name>
<value>268435456</value>
        <description>决定了每个 Input Split的最小值,也间接决定了一个Job的map 数目。
                          这里设置为256M,默认64M,有效减少了map的数量,因为在大数据量时,
                          map数量过大并不一定速度就快,而1个进程处理256M数据也是很快的</description>
</property>
<property>
<name>mapred.compress.map.output</name>
<value>true</value>
        <description>打开map输出压缩以节省各节点传输的流量</description>
</property>
<property>
<name>io.sort.mb</name>
<value>250</value>
        <description>map输出结果在内存占用buffer的大小,当buffer达到一定阈值,
                          会启动一个后台线程来对buffer的内容进行排序,然后写入本地磁盘(一个spill文件).默认100M,
                          有点小了,但并不是越大越好,尝试过调到400M,发现机器内存有点吃不消,又回调到250M</description>
</property>
<property>
<name>mapred.reduce.parallel.copies</name>
<value>10</value>
        <description>Reduce copy数据的线程数量,默认值是5</description>
</property>
<property>
<name>mapred.job.shuffle.merge.percent</name>
<value>0.8</value>
        <description>从Map节点取数据过来,放到内存,当达到这个阈值之后,
                          后台启动线程(通常是Linux native process)把内存中的数据merge sort,
                          写到reduce节点的本地磁盘;</description>
</property>
分享到:
评论

相关推荐

    HBase 0.98.1-hadoop2 API

    HBase是Apache软件基金会开发的一个开源NoSQL数据库,它构建在Hadoop分布式文件系统(HDFS)之上,提供了高可靠性、高性能、分布式的行式存储方案。 HBase的设计目标是为了处理海量数据,它支持PB级别的数据存储,...

    基于SQL-on-Hadoop的分布式广电数据仓库的设计与实现.pdf

    而性能、扩展性和构建成本等指标是评估TRAF系统成功与否的关键因素。 总结来说,该文章提出了一种创新的数据仓库构建方案,采用SQL-on-Hadoop技术结合分布式计算框架,以提高对非结构化数据处理的能力和系统的扩展...

    构建企业级数仓-Hadoop可行性分析报告.docx

    本文档旨在探讨将现有数据仓库迁移至Hadoop平台的可行性,评估其在技术、业务和社会因素等方面的优势和挑战。 **2. 可行性研究前提** 在进行Hadoop平台的数据仓库可行性分析时,需要考虑以下几个关键因素: - **...

    基于Greenplum-Hadoop-分布式平台的大数据解决方案01-Greenplum架构(1)

    Greenplum是一款基于PostgreSQL的高性能并行数据库系统,由Pivotal公司开发,专门设计用于大数据分析。它采用了MPP(大规模并行处理)架构,能够处理PB级别的数据。Greenplum的核心特点是其分片(sharding)和分布式...

    大数据技术基础-安装-hadoop-过程 (2).docx

    请注意,这只是Hadoop安装流程的一部分,实际的生产环境中可能还需要考虑更多的因素,如安全性、高可用性、性能优化等。在学习过程中,理解Hadoop的核心概念、工作原理以及如何解决实际问题是非常重要的。

    hadoop性能测试报告

    【Hadoop性能测试报告】 Hadoop作为开源的分布式计算框架,其性能是衡量系统效率、稳定性和可扩展性的重要指标。本报告详细介绍了在特定环境下对Hadoop进行的一系列性能测试,包括硬件和软件配置、集群部署以及三个...

    行业分类-设备装置-Hadoop大数据平台中基于网络IO代价评估的ReduceTask数据本地性调度方法.zip

    本主题主要探讨了基于网络IO代价评估的ReduceTask数据本地性调度方法,以优化Hadoop的性能。 在传统的Hadoop MapReduce框架中,数据本地性指的是将处理任务(如ReduceTask)分配到存储数据的节点上,以便减少数据在...

    hadoop-lzo-0.4.21-SNAPSHOT.jar

    在大数据处理的实践中,合理运用Hadoop LZO可以显著优化Hadoop集群的性能,降低存储成本,并提高数据处理的速度。不过,对于开发中的版本,我们应密切关注其更新,以确保系统的稳定性和兼容性。

    hotax-hadoop-manager:大数据平台管理

    Hotax-Hadoop-Manager具备实时监控功能,可以持续跟踪系统性能,及时发现潜在问题,防止故障的发生。它提供的报警机制能够在特定条件触发时,立即通知管理员,确保了大数据环境的稳定运行。此外,它还提供了历史数据...

    #一文读懂大数据-Hadoop-大数据技术和相关应用.docx

    Hadoop、NoSQL和MPP数据库等技术为企业提供了处理大数据的工具,而大数据的广泛应用正逐渐成为企业竞争优势的关键因素。面对大数据的挑战和机遇,企业和个人都需要不断学习和适应,以充分利用大数据的潜力,推动业务...

    hadoop-2.7.4.tar.gz

    9. **优化与性能**:在部署和使用Hadoop时,需要关注硬件配置、网络拓扑、数据块大小、副本数量等因素,以优化性能和效率。 10. **监控与日志**:通过Hadoop提供的监控工具,如Web UI、ganglia或ambari,可以实时...

    hadoop调优指南 hadoop调优指南

    为了充分发挥Hadoop的性能优势,进行合理的系统调优是非常必要的。本文将基于提供的标题、描述、标签以及部分内容,深入探讨Hadoop调优的关键知识点。 #### Hadoop概述 Hadoop是一个开源软件框架,用于分布式存储...

    hadoop-lzo-master.zip

    Hadoop-LZO的性能受到多种因素影响,包括硬件性能、Hadoop集群的配置、数据的特性等。为了优化性能,可以考虑以下策略: 1. 使用多线程进行压缩和解压缩。 2. 调整Hadoop的Block大小以匹配LZO压缩后的数据块大小。 3...

    ieee-hadoop

    然而,在广域网络环境中,由于网络不稳定等因素的影响,传统HDFS在某些场景下面临挑战。 - **QDFS的设计与实现**:QDFS在HDFS的基础上进行了一系列改进,特别是针对数据备份策略和服务质量意识进行了优化。 - **...

    _LAMP人_品友互动-Hadoop的ETL任务—Flume使用及其优化

    标题和描述均指向了一个主题,即在Hadoop环境中如何使用Flume进行ETL(Extract, Transform, Load)任务以及对其进行优化。...此外,Flume的优化策略,如数据压缩、批处理等,也是提升其在高负载环境下性能的关键因素。

    hadoop-eclipse-plugin-1.0.0(5个版本)

    在选择合适的Hadoop-Eclipse-Plugin版本时,需要考虑以下因素: - **Hadoop版本兼容性**:不同版本的插件可能只支持特定版本的Hadoop,确保选择与您正在使用的Hadoop集群版本兼容的插件。 - **bug修复和改进**:新...

Global site tag (gtag.js) - Google Analytics