最近一个项目 在大把大把的使用hadoop-HDFS,关于HDFS 的优势网上都快说烂了,这里不再说了,免得被。。 呵呵

废话少说,开整

1、场景描述:

服务器A 监听 服务器B分发任务socket。当B 服务器发送指令上传数据,服务器A 便启动HDFSClient 开始

从服务器D(FTP服务器)获取数据上传至HADOOP(这里的数据总量大小一般10-100G,单个文件4-15M)2、

2、环境:

  网络:千兆局域网

  hadoop版本:1.2.1

  硬件环境:略(正规服务器,不扯了)

3、问题

至于这种数据量大,文件碎小。单线程程序绝对打不满网络(IO 这里绝对不是问题,服务器插着多块磁盘)此处已写程序测试。

4、解决方法

4.1、hadoop优化配置

-------------------------------------------------------------------------------------------------------------

集群整体心跳 将默认3秒 修改为0.25秒
<!--hadoop 源代码 心跳 解释:conf.getLong("dfs.heartbeat.interval", HEARTBEAT_INTERVAL) * 1000L;//代码中读取心跳 为毫秒 --->
    <property>
       <name>dfs.heartbeat.interval</name>
       <value>0.25</value>
    </property>
------------------------------------------------------------------------------------------------------------------------
集群  SequenceFiles在读写中可以使用的缓存大小 默认 为4KB  ,这里扩容至 1MB 今后根据实际物理机器调优
直接影响 hdfs 读写能力
<property>
         <name>io.file.buffer.size</name>
         <value>1048576</value>
    </property>
 
注意:看你hadoop 集群的配置,普通pc 或者虚拟机请勿模仿。
-------------------------------------------------------------------------------------------------------------------------
启动 hadoop 做磁盘存储均衡
hadoop balancer -Threshold 5 ------- 每个磁盘利用率偏差 在5% 之内
-------------------------------------------------------------------------------------------------------------------------
 
4.2 程序优化
1、将程序改为多线程(我的集群目前35线程可以将网络基本打满)
2、将HDFS 操作类改成单例(注意,线程安全的哦),这只主要第一步初始化的是
 
(1) Configuration config = new Configuration();
(2)FileSystem hdfs = FileSystem.get(URI.create(URL),config);
//FileSystem 初始化相对比较耗时。
----------------------------------------------------------------------
好了,开启你的线程池 开始测试吧
我这里网络基本可以打满,个人还是比较满意的
(亲们,千兆局域网  一般说的是都是小b,你传输数据的时候 理想速度应该是125M)。
 
 
 
 
 

hadoop HDFS 写入吞吐量的更多相关文章

  1. Hadoop HDFS分布式文件系统设计要点与架构

      Hadoop HDFS分布式文件系统设计要点与架构     Hadoop简介:一个分布式系统基础架构,由Apache基金会开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群 ...

  2. 从 RAID 到 Hadoop Hdfs 『大数据存储的进化史』

    我们都知道现在大数据存储用的基本都是 Hadoop Hdfs ,但在 Hadoop 诞生之前,我们都是如何存储大量数据的呢?这次我们不聊技术架构什么的,而是从技术演化的角度来看看 Hadoop Hdf ...

  3. 我理解中的Hadoop HDFS分布式文件系统

    一,什么是分布式文件系统,分布式文件系统能干什么 在学习一个文件系统时,首先我先想到的是,学习它能为我们提供什么样的服务,它的价值在哪里,为什么要去学它.以这样的方式去理解它之后在日后的深入学习中才能 ...

  4. Hadoop HDFS负载均衡

    Hadoop HDFS负载均衡 转载请注明出处:http://www.cnblogs.com/BYRans/ Hadoop HDFS Hadoop 分布式文件系统(Hadoop Distributed ...

  5. HADOOP HDFS的设计

    Hadoop提供的对其HDFS上的数据的处理方式,有以下几种, 1 批处理,mapreduce 2 实时处理:apache storm, spark streaming , ibm streams 3 ...

  6. [转]hadoop hdfs常用命令

    FROM : http://www.2cto.com/database/201303/198460.html hadoop hdfs常用命令   hadoop常用命令:  hadoop fs  查看H ...

  7. Hadoop HDFS文件常用操作及注意事项

    Hadoop HDFS文件常用操作及注意事项 1.Copy a file from the local file system to HDFS The srcFile variable needs t ...

  8. Hadoop HDFS文件常用操作及注意事项(更新)

    1.Copy a file from the local file system to HDFS The srcFile variable needs to contain the full name ...

  9. Hadoop HDFS (3) JAVA訪问HDFS

    如今我们来深入了解一下Hadoop的FileSystem类. 这个类是用来跟Hadoop的文件系统进行交互的.尽管我们这里主要是针对HDFS.可是我们还是应该让我们的代码仅仅使用抽象类FileSyst ...

随机推荐

  1. NSMutableArray 排序

    NSMutableArray *array1=[NSMutableArray arrayWithObjects:@"1",@"3",@"2" ...

  2. C++:虚函数的详解

    5.4.2 虚函数详解 1.虚函数的定义 虚函数就是在基类中被关键字virtual说明,并在派生类重新定义的函数.虚函数的作用是允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问 ...

  3. iOSTab bar

    http://www.apkbus.com/android-130504-1-1.html #import #import "FirstViewController.h"#impo ...

  4. TeeChart的X轴,使用伪装的时间

    TeeChart曲线的X轴是时间,但是频率很高.没法完全显示. 例如,一秒钟有2000个点,那么点与点的间隔为0.5毫秒. 使用TChart类的GetAxisLabel事件, 函数手册上对此事件的解释 ...

  5. git push 提示

    我运行git push -u origin master  时提示如下: To git@github.com:userName/project.git ! [rejected] master -> ...

  6. java 语言里 遍历 collection 的方式

    我来简单说一下吧,一般有2种方法来遍历collection中的元素,以HashSet为例子HashSet hs=new HashSet();hs.add("hello");hs.a ...

  7. UVa 12034 (递推) Race

    题意: 有n个人赛马,名次可能并列,求一共有多少种可能. 分析: 设所求为f(n),假设并列第一名有i个人,则共有C(n, i)种可能,接下来确定后面的名次,共有f(n-1)种可能 所以递推关系为: ...

  8. POJ 2752 (KMP 所有可能长度的前缀后缀) Seek the Name, Seek the Fame

    题意: 求一个字符串的相同前缀后缀的所有可能的长度,这里该字符串其本身也算自己的前缀和后缀. 分析: 我们知道next数组的性质是,该字符之前的字符串的最大相同前缀后缀. 既然知道了最大的,即next ...

  9. LA 2797 (平面直线图PLSG) Monster Trap

    题意: 平面上有n条线段,一次给出这n条线段的两个端点的坐标.问怪兽能否从坐标原点逃到无穷远处.(两直线最多有一个交点,且没有三线共交点的情况) 分析: 首先说明一下线段的规范相交:就是交点唯一而且在 ...

  10. LA 4728 (旋转卡壳) Squares

    题意: 求平面上的最远点对距离的平方. 分析: 对于这个数据量枚举肯定是要超时的. 首先这两个点一定是在凸包上的,所以可以枚举凸包上的点,因为凸包上的点要比原来的点会少很多,可最坏情况下的时间复杂度也 ...