`
IT小黑
  • 浏览: 1781 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

冷数据集群调研和实现

阅读更多

与普通HDFS对比,冷数据集群目的是不降低数据可靠性的前提下,减少磁盘开销。

经过facebook-hadoop版本和apache-hadoop(0.20至0.23)版本的比较,最后选型为facebook-hadoop版本。原因是apache-hadoop版本有许多缺陷,比如raidnode客户端没有实现placementmonitor,raidshell终端命令少的不忍直视(以后不好运维),bug太多等等。还有一个重要的原因考虑到facebook-hadoop版本facebook已经在成熟的运用之中。

有关radi技术可参考以下两篇文章:

http://jiangbo.me/blog/2012/12/21/hdfs-raid/

http://jiangbo.me/blog/2013/06/05/setup-hdfs-raid/

facebook-hadoop源码下载:https://github.com/facebook/hadoop-20

目前状况:

经过一个多月的研究和debug,facebook-raid冷数据集群已经搭建成功。不过在这过程中,遇到各种问题:

1. 编译问题

2. 网上讲的raid.xml配置和源代码的实现不一样

3. BlockMissingException类路径不一致

4. raidnode客户端fs.hdfs.impl要配置成org.apache.hadoop.hdfs.DistributedFileSystem

<property>

        <name>fs.hdfs.impl</name>

        <value>org.apache.hadoop.hdfs.DistributedFileSystem</value>

        <description></description>

 </property>

5. native包系统不兼容问题

6. 数据块分布问题,源码的实现是将数据块分布在不同机架上,需要将这个限制去掉,只保留分布到不同机器的原则就行。

总之是发现各种坑,不过源码的逻辑是比较清晰的。

目前成果:

实现冷数据facebook-raid集群的搭建,raid策略,每个stripe组4个数据块,校验块2个。相对于原来的hdfs集群3个副本的备份配置(总共占了300%的空间),facebook-raid总共只需要占用150%空间就能达到同样的效果,同样允许2台机器挂掉。

 

下图是冷数据集群管理, 数据上下线功能及任务进程追踪功能



 

 

 

 

 

  • 大小: 23.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics