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

我的一次Hadoop小文件Job优化预研报告

 
阅读更多

前言

    公司有日志排序的需求,目前收集环节会产生大量小文件,目前我们没有使用flume和Hbase,本次优化只涉及HDFS和MapReduce。

    关于小文件对Namenode影响,本文不涉及,我们现在使用HAR归档小文件。

    本文的结论基于HDFS大量小文件的情况。

 

一 、开启Jvm重用对Job影响:

文件数

文件大小

JVM重用

耗时

Jobid

4815

7.54 GB

Y

26mins, 5sec

job_201202211018_0034

N

51mins, 49sec

job_201202211018_0044

结论:对于大量小文件Job,开启JVM重用减少50%运行时间

 

二、Map压缩对Job影响(开启JVM重用)

 

2.1大量小文件情况

文件数

文件大小

压缩Map输出

耗时

Jobid

 

4815

 

 

7.54 GB

gz

38mins, 38sec

job_201202211018_0034

27mins, 26sec

job_201202211018_0031

lzo

27mins, 17sec

job_201202211018_0036

 

2.2每个文件140MB情况:

文件数

文件大小

压缩Map输出

耗时

Jobid

 

48(合并小文件)

 

 

7.54 GB

gz

29mins, 37sec

job_201202211018_0039

24mins, 32sec

job_201202211018_0042

lzo

19mins, 18sec

job_201202211018_0040

 

结论:

 

  • 对于大量小文件Job,使用lzo压缩可以比gz压缩减少28%运行时间。
  • 平均140MB输入文件的 Job比大量小文件Job减少30%的时间(jvm重用、map输出lzo

 

三、 参数mapred.reduce.parallel.copies

 

任务时间

mapred.reduce.parallel.copies

54mins, 21sec

5(默认值)

45mins, 30sec

20

 

结论:通过配置参数mapred.reduce.parallel.copies可以提升16%性能

 

 

四、 总结

优化项

优化方法

可以减少Job时间

Jvm重用

开启jvm重用

50%

mapred.reduce.parallel.copies

默认值为5,优化值20

16%

Map输出LZO格式

默认输出为gz,修改为lzo

28%

合并小文件

合并小文件

30%

 

 

--本文来自heipark iteye博客

 


分享到:
评论
1 楼 skzr.org 2013-09-06  
如果有具体的集群规模,硬件环境配置就更好了。

  • 4815个文件 7.5G(平均才1.5M),估计秒级就over了,大量的耗时在jvm启动中。
  • 如果配置成一直重用同一个jvm估计更快。
  • 压缩后的效果还是很明显
  • 小文将试试CombineFileInputFormat


相关推荐

    hadoop配置文件详解

    了解这些配置文件是实施和优化Hadoop集群的重要部分。核心配置文件core-site.xml涉及整个Hadoop环境的设置,而hdfs-site.xml和mapred-site.xml则针对Hadoop分布式文件系统(HDFS)和MapReduce计算框架进行局部配置。 ...

    hadoop的dll文件 hadoop.zip

    在提供的信息中,我们关注的是"Hadoop的dll文件",这是一个动态链接库(DLL)文件,通常在Windows操作系统中使用,用于存储可由多个程序共享的功能和资源。Hadoop本身是基于Java的,因此在Windows环境下运行Hadoop...

    Hadoop分布式文件系统的文件读写

    2. **Block Size配置**:适当增大或减小Block Size可优化大文件或小文件的存储和读取效率。 3. **缓存策略**:通过设置`dfs.client.read.shortcircuit`等参数,启用短路读取和数据本地化策略,提高读取速度。 4. *...

    论文研究-Hadoop小文件存储方法改进研究 .pdf

    Hadoop小文件存储方法改进研究,陈洋,黄岚,Hadoop是一个开源的分布式计算框架。运用Hadoop所提供的分布式文件系统(Hadoop distributed file system, HDFS)处理农业生物领域不断增加的大量科�

    win7下hadoop job提交

    在Windows 7环境下提交Hadoop作业(Job)是一项技术性的任务,涉及到多个步骤和概念。首先,我们需要了解Hadoop的基本架构。Hadoop是由Apache软件基金会开发的一个开源分布式计算框架,它允许在廉价硬件上处理和存储...

    hadoop的默认配置文件

    Hadoop是Apache软件基金会开发的一个开源分布式计算框架,它允许在廉价硬件上处理大量数据,提供了高可靠性、高扩展性和高效能的数据存储与处理能力。Hadoop的核心组件包括HDFS(Hadoop Distributed File System)、...

    windows安装需要的Hadoop库文件

    3. **WinUtils**:WinUtils是Hadoop在Windows上的一个辅助工具,包含了像hadoop.dll这样的库文件。这些文件需要放在Hadoop的`bin`目录下,以便Hadoop能够找到它们。在压缩包文件中,可能包含这些必要的WinUtils库...

    Hadoop平台性能优化

    Hadoop平台的性能优化研究涉及了如何在大型分布式系统中提升任务处理速度和效率,这对于当前数据密集型应用的发展至关重要。本文将从以下几个关键点详细解读Hadoop平台性能优化的知识点。 首先,了解Hadoop平台的...

    hadoop配置文件

    hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件hadoop配置文件

    Hadoop配置文件表(如需要请下载附件)

    在大数据处理领域,Hadoop是一个不可或...总之,Hadoop配置文件的管理和优化是大数据平台运维中的核心任务之一。通过详细分析和理解“Hadoop配置文件表”,IT专业人员可以提升Hadoop集群的性能,实现更高效的数据处理。

    《Hadoop大数据开发实战》教学教案—03HDFS分布式文件系统.pdf

    HDFS(Hadoop Distributed File System,Hadoop 分布式文件系统)是一种通过网络实现文件在多台主机上进行分布式存储的文件系统。分布式存储比普通存储方式节省时间。HDFS 由 NDFS 系统演变而来,主要解决海量大数据...

    HadoopHA集群配置文件

    配置Hadoop HA集群需要对这些文件进行精确调整,以实现命名节点的自动故障切换、保证数据的安全性和一致性,以及优化资源分配和任务调度。在实际操作中,还需要关注其他配置,比如Zookeeper的设置(用于协调NN的故障...

    HADOOP配置文件-有注释版.rar

    Hadoop是一款开源的大数据处理框架,它主要由Apache基金会维护,是大数据领域的核心工具之一。这个压缩包"**HADOOP配置文件-有注释版.rar**"包含了Hadoop的配置文件,并且带有注释,这对于理解和配置Hadoop环境至关...

    基于LZO的Hadoop文件归档优化方法.docx

    本文的研究不仅为Hadoop文件归档提供了一种实用的优化方法,也为大数据处理领域的实践者提供了有价值的参考。未来的研究可以进一步探索不同压缩算法的组合使用,以适应更多样化的需求,或者结合其他数据管理策略,如...

    hadoop config 配置文件

    在分布式计算领域,Hadoop是一个不可或缺的关键框架,它主要用于处理和存储海量数据。Hadoop配置文件是这个系统的核心组成部分,它们定义了Hadoop集群的行为、性能和稳定性。在这个主题中,我们将深入探讨Hadoop配置...

    Hadoop 2.2.0 配置文件

    Hadoop 2.2.0 是 Apache Hadoop 的一个关键版本,它包含了众多改进和优化,使得这个分布式计算框架在处理大数据集时更加高效和稳定。在这个配置文件中,我们将会探讨Hadoop 2.2.0 在4台CentOS 6.4系统上运行所需的...

    Hadoop课程实验和报告——Hadoop安装实验报告

    Hadoop课程实验和报告——Hadoop安装实验报告 Hadoop是一个开源的大数据处理框架,由Apache基金会开发和维护。它提供了一种可靠、可扩展、可高效的方法来存储和处理大规模数据。在本实验报告中,我们将介绍Hadoop的...

    Hadoop默认配置文件

    Hadoop的默认配置文件对于理解和优化Hadoop集群的运行至关重要。本文将深入解析标题提及的四个核心配置文件:`core-default.xml`、`hdfs-default.xml`、`mapred-default.xml`以及`yarn-default.xml`。 首先,`core-...

    win hadoop 开发文件

    Hadoop是Apache软件基金会的一个开源项目,它提供了一个分布式文件系统(HDFS)和MapReduce计算框架,能够处理和存储大量数据。这里我们将详细探讨如何在Windows上进行配置。 首先,你需要下载Hadoop的发行版。在本...

    hadoop的优化.docx

    Core-site.xml 是 Hadoop 集群的核心配置文件,通过修改这个文件可以实现优化。 1. 调整 ipc.server.listen.queue.size 参数 可以通过修改 Core-site.xml 文件来实现。 Hadoop 优化需要从多方面入手,包括 ...

Global site tag (gtag.js) - Google Analytics