基于异构arm硬件的Hadoop集群测试

前段时候做了单机版的Hadoop on arm的测试,最近又买了一个新的arm板子,就考虑把他们串起来组一个hadoop集群。而且由于产品更新换代的问题,硬件上是异构的。

namenode是cubieboard一代,采用单核arm v7架构,1G内存,4G板载flash ROM
datanode采用cubietruck,双核armv7,2G内存,8G板载Flash ROM,挂了一个80G的2.5寸磁盘。

两个主板的操作系统均采用Ubuntu server。
nn的操作系统装在SD卡上,把nand分区格式化掉当存储,所谓nand就是flash ROM。
dn操作系统直接刷在nand上,无SD卡,挂载一块硬盘当存储。
怎么把linux安装到nand上这次先不讲,以后单独说。

linaro@namenode:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p2  1.8G  1.1G  600M  66% /
devtmpfs        408M  4.0K  408M  1% /dev
none            408M  128K  408M  1% /tmp
none            82M  164K  82M  1% /run
none            408M    0  408M  0% /var/tmp
none            5.0M    0  5.0M  0% /run/lock
none            408M    0  408M  0% /run/shm
none            100M    0  100M  0% /run/user
/dev/nand      3.8G  75M  3.5G  3% /opt


linaro@datanode-01:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root      2.0G  1.3G  648M  67% /
devtmpfs        913M  4.0K  913M  1% /dev
none            4.0K    0  4.0K  0% /sys/fs/cgroup
none            183M  224K  183M  1% /run
none            5.0M    0  5.0M  0% /run/lock
none            913M    0  913M  0% /run/shm
none            100M    0  100M  0% /run/user
/dev/nandc      5.1G  139M  4.7G  3% /opt
/dev/sda1        74G  180M  70G  1% /data
linaro@datanode-01:~$

dd测试一下磁盘性能,nand读写可以忽略不计,flash ROM上读写数据的效率可以用惨不忍睹来性能。写数据只有每秒可怜的5M,读数据每秒7M,逆天的慢。

如果使用磁盘的性能差不多,就可以拼凑出一个超级屌丝的Hadoop集群来用。

写数据性能,没有想象中的快,不过作为一个N年前的80G 2.5寸,5400转的SATA盘,这个成绩不错了。43.2MB/s
linaro@datanode-01:~$ sudo time dd if=/dev/zero of=/data/1GB bs=4096 count=250000
250000+0 records in
250000+0 records out
1024000000 bytes (1.0 GB) copied, 23.7274 s, 43.2 MB/s
0.28user 11.04system 0:23.73elapsed 47%CPU (0avgtext+0avgdata 776maxresident)k
8inputs+2000000outputs (0major+252minor)pagefaults 0swaps


读数据性能超乎意料的好,惊了。338MB/s。 
linaro@datanode-01:~$ sudo time dd if=/data/1GB of=/dev/null bs=4096 count=250000
250000+0 records in
250000+0 records out
1024000000 bytes (1.0 GB) copied, 3.02673 s, 338 MB/s
0.19user 2.80system 0:03.03elapsed 98%CPU (0avgtext+0avgdata 776maxresident)k
0inputs+0outputs (0major+252minor)pagefaults 0swaps


如果是这样,那么当成Hadoop服务器肯定是没啥大问题的,本来hadoop就是做一次写入多次读取来用的,写入慢一些不怕,只要读取够快就行了。哪怕做hbase的在线服务也可以将就。

有图有真相

黑色为cubieboard一代,红色板卡为cubietruck,CT下面是80G硬盘

基于异构arm硬件的Hadoop集群测试

相关推荐