`
coderplay
  • 浏览: 571863 次
  • 性别: Icon_minigender_1
  • 来自: 广州杭州
社区版块
存档分类
最新评论

hadoop改进方面的胡思乱想

阅读更多

1. 我做数据挖掘的时候, 经常需要只对key分组,不必排序。目前把sort类给设为null能处理,但还是不尽人意。hadoop的机制是通过一个circle buffer 收集mapper输出的东西, 到了io.sort.mb * percent量的时候,就spill到disk, 而spill前使用排序,默认快排。 之后reduce下载spill的东西, 进行merge, merge的时候使用了堆排。我的想法是通过一个hash,每个hash的元素是一个链表,存放相同key的所有值。不过这样就没circle buffer了,用不到其对stream缓存的优点,这个要仔细想想。

2. map之后要么直接写到hdfs(reducer 个数为0时), 要么同一道作业指定的reducer去处理这些东西. 这个机制很不灵活。有时候我的mapper输出,让不同的reducer处理不同的任务,输出不同的结果。 目前hadoop虽然能处理,但太牵强了。如果mapper处理完之后,加一层转发机制。这时候可以少一次io, 而且灵活,  NB. 如果能把数据像流一样处理,而且可以分流,汇集之类的,那更好。

3. 还是百度提出的老问题, 机器一般挂多块磁盘。 单块磁盘的故障会导致系统认为整个节点down了, 这个修改相应的代码应该可以实现。slave报告的时候准确一点, 就可以只复制坏了的磁盘的数据了。

4. hadoop的任务跟踪能力太弱了,如果能做到和erlang那么NB,就厉害了

5. mapper的个数实际上是根据block数来定的, 线程太多, 消耗太大。

分享到:
评论
4 楼 coderplay 2011-07-19  
conservatism 写道
sort设置成null也只能避免mapper spill时的排序吧,reducer端的排序可以改成hash,保证相同key的结果都在一起

map spill前和reduce的merge都会使用sort
3 楼 conservatism 2011-07-17  
sort设置成null也只能避免mapper spill时的排序吧,reducer端的排序可以改成hash,保证相同key的结果都在一起
2 楼 coderplay 2009-02-08  
知道这东西, erlang还有个disco. 目前最好的还是hadoop
1 楼 yawl 2009-02-07  
你看过couchdb没有?我觉得idea真是不错。底层是erlang实现的,但可以用javascript写map/reduce程序。不知道用起来怎么样。

我前几周写了点erlang程序,实在是太受罪了。

相关推荐

    hadoop2.7.3 hadoop.dll

    在windows环境下开发hadoop时,需要配置HADOOP_HOME环境变量,变量值D:\hadoop-common-2.7.3-bin-master,并在Path追加%HADOOP_HOME%\bin,有可能出现如下错误: org.apache.hadoop.io.nativeio.NativeIO$Windows....

    论文研究-基于Hadoop分布式改进聚类协同过滤推荐算法研究.pdf

    为了改善协同过滤推荐算法在大数据下的稀疏性和可扩展性问题,提出一种基于Hadoop平台的分布式改进聚类协同过滤推荐算法。在分布式平台下,离线对高维稀疏数据采用矩阵分解算法预处理,改善数据稀疏性后通过改进项目...

    《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf

    《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf...

    Hadoop下载 hadoop-2.9.2.tar.gz

    Hadoop 是一个处理、存储和分析海量的分布式、非结构化数据的开源框架。最初由 Yahoo 的工程师 Doug Cutting 和 Mike Cafarella Hadoop 是一个处理、存储和分析海量的分布式、非结构化数据的开源框架。最初由 Yahoo...

    Hadoop下载 hadoop-3.3.3.tar.gz

    Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进 Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不...

    一种改进的Hadoop数据负载均衡算法

    在介绍Hadoop,HDFS的原理的基础上,分析了Hadoop的数据负载均衡算法.Hadoop负载均衡算法只是根据空间使用率对各个结点的负载进行均衡,这种均衡方法没有考虑结点的处理能力、带宽、文件访问频度等因素,因此,造成了基本...

    Hadoop权威指南 中文版

    本书从hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍hado叩这一高性能处理海量数据集的理想工具。全书共14章,3个附录,涉及的主题包括:haddoop简介:mapreduce简介:hadoop分布式文件系统;hadoop的i...

    Hadoop+平台下改进的+LATE+调度算法

    Hadoop+平台下改进的+LATE+调度算法

    hadoop_tutorial hadoop入门经典

    hadoop_tutorial hadoop入门经典 Hadoop 是一个能够对大量数据进行分布式处理的软件框架。Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。...

    Hadoop平台下的作业调度算法研究与改进_夏祎

    Hadoop平台下的作业调度算法研究与改进

    hadoop2.7.3 Winutils.exe hadoop.dll

    hadoop2.7.3 Winutils.exe hadoop.dll

    hadoop的dll文件 hadoop.zip

    hadoop的dll文件 hadoop.zip

    Hadoop集群pdf文档

    Hadoop 集群配置详解 Hadoop_Hadoop集群(第1期)_CentOS安装配置 Hadoop_Hadoop集群(第2期)_机器信息分布表 Hadoop_Hadoop集群(第4期)_SecureCRT使用 Hadoop_Hadoop集群(第5期)_Hadoop安装配置 Hadoop_Hadoop...

    论文研究-改进的Hadoop作业调度算法.pdf

    针对如上问题,深入分析了Hadoop源代码,理清了Hadoop的运行原理,在Hadoop资源管理机制Yarn中改进了Hadoop任务的排序,建立了新的任务排序规则,提出了对各节点性能评价的指标,分为动态性能指标和静态性能指标。...

    hadoop最新版本3.1.1全量jar包

    hadoop-annotations-3.1.1.jar hadoop-common-3.1.1.jar hadoop-mapreduce-client-core-3.1.1.jar hadoop-yarn-api-3.1.1.jar hadoop-auth-3.1.1.jar hadoop-hdfs-3.1.1.jar hadoop-mapreduce-client-hs-3.1.1.jar ...

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

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

    hadoop配置资源 ,hadoop-3.0.0,hadoop.dll,winutils

    调用保存文件的算子,需要配置Hadoop依赖 将文件夹中的 hadoop-3.0.0 解压到电脑任意位置 在Python代码中使用os模块配置:os.environ[‘HADOOP_HOME’] = ‘HADOOP解压文件夹路径’ winutils.exe,并放入Hadoop解压...

    Hadoop大数据资料集锦

    Hadoop大数据资料集锦Hadoop大数据资料集锦Hadoop大数据资料集锦Hadoop大数据资料集锦

    hadoop-3.3.4 版本(最新版)

    Apache Hadoop (hadoop-3.3.4.tar.gz)项目为可靠、可扩展的分布式计算开发开源软件。官网下载速度非常缓慢,因此将hadoop-3.3.4 版本放在这里,欢迎大家来下载使用! Hadoop 架构是一个开源的、基于 Java 的编程...

    hadoop2.6.0 hadoop.dll包括winutils.exe

    hadoop2.6.0 hadoop.dll包括winutils.exe

Global site tag (gtag.js) - Google Analytics