javaee大数据培训教程-hadoop平台优化总结

javaee大数据培训教程-hadoop平台优化总结

ID:35294572

大小:59.70 KB

页数:4页

时间:2019-03-23

javaee大数据培训教程-hadoop平台优化总结_第1页
javaee大数据培训教程-hadoop平台优化总结_第2页
javaee大数据培训教程-hadoop平台优化总结_第3页
javaee大数据培训教程-hadoop平台优化总结_第4页
资源描述:

《javaee大数据培训教程-hadoop平台优化总结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、http://www.moliying.comJava一直都是主流的语言之一,因为大数据的人才急需导致Java相关的工作岗位再次火爆起来。而在大数据中优化是一个非常关键的课题。今天和大家一起讨论一下关于大数据优化的相关问题。    随着企业要处理的数据量越来越大,MapReduce思想越来越受到重视。Hadoop是MapReduce的一个开源实现,由于其良好的扩展性和容错性,已得到越来越广泛的应用。Hadoop作为一个基础数据处理平台,虽然其应用价值已得到大家认可,但仍存在很多问题,以下是主要几

2、个:    (1)Namenode/jobtracker单点故障。 Hadoop采用的是master/slaves架构,该架构管理起来比较简单,但存在致命的单点故障和空间容量不足等缺点,这已经严重影响了Hadoop的可扩展性。    (2)HDFS小文件问题。在HDFS中,任何block,文件或者目录在内存中均以对象的形式存储,每个对象约占150byte,如果有10000000个小文件,每个文件占用一个block,则namenode需要2G空间。如果存储1亿个文件,则namenode需要20G空

3、间。这样namenode内存容量严重制约了集群的扩展。    (3)jobtracker同时进行监控和调度,负载过大。为了解决该问题,yahoo已经开始着手设计下一代HadoopMapReduce(见参考资料1)。他们的主要思路是将监控和调度分离,独立出一个专门的组件进行监控,而jobtracker只负责总体调度,至于局部调度,交给作业所在的client。    (4)数据处理性能。 很多实验表明,其处理性能有很大的提升空间。Hadoop类似于数据库,可能需要专门的优化工程师根据实际的应用需要对

4、Hadoop进行调优,有人称之为“HadoopPerformanceOptimization”(HPO)。    为了提高其数据性能,很多人开始优化Hadoop。总结看来,对于Hadoop,当前主要有几个优化思路:    (1) 从应用程序角度进行优化。由于mapreduce是迭代逐行解析数据文件的,怎样在迭代的情况下,编写高效率的应用程序,是一种优化思路。    (2) 对Hadoop参数进行调优。当前hadoop系统有190多个配置参数,怎样调整这些参数,使hadoop作业运行尽可能的快,也

5、是一种优化思路。磨砺营IT教育版权所有http://www.moliying.com    (3)从系统实现角度进行优化。这种优化难度是最大的,它是从hadoop实现机制角度,发现当前Hadoop设计和实现上的缺点,然后进行源码级地修改。该方法虽难度大,但往往效果明显。    以上三种思路出发点均是提高hadoop应用程序的效率。实际上,随着社会的发展,绿色环保观念也越来越多地融入了企业,因而很多人开始研究GreenHadoop,即怎样让Hadoop完成相应数据处理任务的同时,使用最少的能源. 

6、   当前学术界的一些优化思路,有人试图从Hadoop自动配置角度对Hadoop进行优化,但更多的是从系统实现角度进行优化,概括其优化点和实验效果如下:    (1)从参数自动调优角度对Hadoop进行优化,给出了一种Hadoop优化的新思路,即怎样对其190多个配置参数进行自动调整,使应用程序执行效率最高。    (2) 提出prefetching和preshuffling机制,在不同负载不同规模集群下测试,效率提升了约73%。    (3) 影响Hadoop效率的五个因素,并通过提出相应的解

7、决方案,使Hadoop效率提高了2.5~3.5倍。    (4) 为Hadoop提供了一种索引机制–TrojanIndex,同时提出了一种高效的join算法–TrojanJoin,实验表明,效率比Hadoop和HadoopDB高很多。    除了学术界的优化,工业界也在不断进行优化以适应自己公司的产品需要,主要有:    (1)Baidu公司。baidu对Hadoop中关键组件使用C++进行了重写(包括map,shuffler和reducer等),经他们内部测试(5nodes,40GBdata)

8、,效率提升了约20%.    (2)淘宝。淘宝针对自己集群特点(作业小,slot多,作业之间有依赖,集群共享,有些作业有时效性),对jobtracker和namenode进行了优化,据其官方博客称,其jobtracker有较大性能提升,且namenode吞吐量提升了8+倍。但其具体优化方法,未公开。从应用程序角度进行优化    (1)避免不必要的reduce任务磨砺营IT教育版权所有http://www.moliying.com如果要处理的数据是排序且已经分区的,或者对于一份数据,需要多次处理,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。