`
IT小黑
  • 浏览: 1855 次
  • 性别: 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
分享到:
评论

相关推荐

    es迁移工具,实现es数据的两个集群之间或者导出到本地进行迁移.zip

    **Elasticsearch (ES) 迁移工具详解** 在大数据时代,Elasticsearch作为一个流行的分布式搜索引擎和数据分析...正确理解和使用这个工具,可以帮助我们更好地管理和维护Elasticsearch集群,保证数据的可用性和一致性。

    基于Linux的服务器集群系统设计及实现.pdf

    集群系统的设计和实现需要考虑到多个方面,包括服务器的组织结构、主、从服务器的设计方式、负载均衡和可靠性等。只有通过对这些方面的详细考虑和设计,才能构建一个高性能、高可用性的服务器集群系统。 在实际应用...

    基于moduo实现的集群聊天服务器和客户端源码,使用mysql数据库存储相关数据,采用nginx实现负载均衡.zip

    基于moduo实现的集群聊天服务器和客户端源码,使用mysql数据库存储相关数据。采用nginx实现负载均衡,结合redis发布-订阅模式来实现在不同服务器上客户端进行通信。 基于moduo实现的集群聊天服务器和客户端源码,...

    Aapche+Tomcat实现服务数据集群

    Aapche+Tomcat实现服务数据集群是指通过Apache和Tomcat服务器来实现服务数据集群的方法。这种方法可以解决Tomcat在线访问量超过20-30人的问题,使得服务器可以承载更多的访问请求。 Apache是开源的Web服务器软件,...

    数据库集群系统实现方案详解数据库集群系统实现方案详解

    1. **镜像服务器双机**:是最简单的配置,包含两台服务器,通过镜像卡或软件实现数据同步。虽然成本较低,但可能影响服务器性能,且可能出现数据不同步问题。 2. **双机与磁盘阵列柜互联**:增加磁盘阵列柜,提供更...

    基于muduo库实现的集群聊天服务器,通过mysql存储数据,通过nginx实现tcp负载均衡.zip

    基于muduo库实现的集群聊天服务器,通过mysql存储数据,通过nginx实现tcp负载均衡,通过redis实现集群内服务器间的消息订阅发布。 基于muduo库实现的集群聊天服务器,通过mysql存储数据,通过nginx实现tcp负载均衡,...

    一种数据挖掘算法在Hadoop集群上的研究与实现.pdf

    在Hadoop集群上,数据挖掘算法的实现通常涉及多个组件,如HDFS用于存储大规模数据集,MapReduce用于并行处理和生成中间结果,YARN进行资源管理和任务调度,而HBase或Hive则用于数据查询和分析。在算法的整个实现过程...

    配置Oracle RAC集群数据源

    为了实现高可用性和高性能,需要将 Oracle 数据库配置为 RAC 集群模式。配置 Oracle RAC 集群数据源需要考虑多个方面,包括数据源 URL 的配置、连接池的配置、负载均衡和故障转移等。 在配置 Oracle RAC 集群数据源...

    Raft - 基于共识的分布式数据库协同算法及其在 Neo4j 集群中的实现.pdf

    3. 日志复制:Raft算法使用日志entries来实现数据的一致性。Leader节点会将日志entries发送给Follower节点,以确保所有节点的日志状态保持一致。 4. 故障恢复:Raft算法提供了自动故障恢复机制。当Leader节点出现...

    Redis集群数据迁移操作文档

    在sync模式下,RedisShake使用SYNC或PSYNC命令实现源端Redis到目标端Redis的数据同步,同时支持全量和增量同步。 迁移参数的设置至关重要。例如,`source.type`定义了源Redis的类型,可以是standalone、sentinel、...

    spark-集群与大数据处理

    它不是将数据写入磁盘,而是缓存到内存中,从而实现快速的迭代运算和高速的交互式数据挖掘任务。这种设计特别适合于机器学习、图计算等需要大量迭代计算的场景。 对于大数据处理,Spark还提供了一个针对迭代和交互...

    Linux集群系统下数据传输的研究与实现

    Linux集群系统下数据传输的研究与实现

    多平台k8s集群调研方案

    【标题】: 多平台Kubernetes集群调研方案 【描述】: Kubernetes(简称K8s)是一种强大的开源平台,...通过调研,我们可以选择适合业务需求的Kubernetes实现方式,为多平台环境构建稳定、高效且易于管理的容器集群。

    快速实现 sr 集群之间的数据迁移(离线迁移).zip

    "快速实现 sr 集群之间的数据迁移(离线迁移).zip" 提供了一个针对StarRocks集群的数据迁移解决方案,让我们来深入探讨这个过程。 首先,我们要理解StarRocks是什么。StarRocks是一款高性能、分布式SQL分析数据库...

    SQLSERVER_并行数据库集群实现.doc

    在标准架构中,多个独立的SQL Server实例分布在不同的服务器上,通过中间件实现数据同步和高可用性。中间件监控数据库中的数据变更,并即时同步到其他节点,确保数据一致性。节点的添加和移除可以在不影响服务的情况...

    基于Mysql的数据库集群设计与实现.pptx

    4. 简化备份和恢复:多个数据库服务器可以协同工作,实现数据的备份和恢复,降低操作复杂度。 Mysql数据库集群的设计 Mysql数据库集群的设计需要考虑硬件、软件、数据存储和备份策略等方面。具体来说,需要: 1. ...

    集群redis实现session共享jar包之tomcat8

    在构建分布式Web应用程序时,集群部署是常见的策略,它可以提高系统的可用性和可扩展性。然而,随着集群的建立,一个问题也随之出现:如何在不同的服务器之间共享用户会话(session)。`session共享`成为了多台...

Global site tag (gtag.js) - Google Analytics