vlambda博客
学习文章列表

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座

随着全球数据呈爆发式增长,基于海量数据的挖掘和分析,为用户带来了巨大的商业价值。源于开源平台的Apache Hadoop,允许使用简单的编程模型跨计算机集群分布式处理大型数据集,成为大数据时代最受欢迎的技术之一。
图片来源网络
01
性能瓶颈
HDFS分布式文件系统作为Hadoop的三大组件之一,是分布式计算中数据存储管理的基础。 但是在HDFS传统架构下,Hadoop扩展性受到了一定限制,容易出现性能瓶颈等问题。
量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座
图片来源: Hadoop官方文档
例如,由于HDFS中每个文件、目录和数据块的元数据信息(大约150字节)必须存储在NameNode的内存中,这也就意味着对于一个拥有大量文件的超大集群来说, 内存将成为限制系统横向扩展的瓶颈
同时,作为一个可扩展的文件系统,单个集群中支持数千个节点。 在单个命名空间中DataNode可以扩展的很好,但是NameNode并不能在单个命名空间进行横向扩展。 通常情况下, HDFS集群的性能瓶颈出现在单个NameNode上
虽然,在Hadoop 2.x发行版中引入了联邦HDFS功能,允许系统通过添加多个NameNode来实现扩展。 但是,系统管理员需要维护多个NameNodes和负载均衡服务,这又无形中增加了管理成本。
此外,大数据平台建设和应用中还亟待解决以下问题:
  • 在传统的Apache Hadoop集群系统中,计算和存储资源紧密耦合。当存储空间或计算资源不足时,只能同时对两者进行扩容,不仅扩容不方便,且经济效率较低;

  • Hadoop的数据备份方案昂贵,且难以实现;

  • 不同部门、平台各自建大数据系统,数据不共享,导致大数据计算平台碎片化,逐渐形成大数据烟囱。

02
XSKY HDFS Client

为了解决上述问题,业界一般采用对象存储来作为Hadoop的后端存储,解决上面HDFS的各种问题,构建数据湖解决方案。
Hadoop社区也开发了S3A连接器,用来对接标准的S3对象存储。 但是,标准的S3A连接器的性能一般比HDFS要差很多,而且不支持追加写,因此只能支持部分对性能不高的业务,或者作为Hadoop分层存储使用。
为此,XSKY开发了基于对象存储XEOS的专用Hadoop HDFS高性能客户端 XSKY HDFS Client  
量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座
XSKY HDFS Client和S3A架构对比
通过XSKY HDFS Client,Hadoop应用可以访问存储在XEOS中的所有数据,这就避免了传统的Hadoop应用在进行数据分析前,还要将数据由业务存储移动到分析存储HDFS中。
XSKY HDFS Client为Hadoop应用提供了标准的 Hadoop 文件系统操作接口。 在每个计算节点上,Hadoop应用都将使用XSKY HDFS Client (JAR) 执行 Hadoop文件系统的操作,XSKY HDFS Client屏蔽了Hadoop应用与XEOS集群交互的复杂性。
相比于原生Hadoop S3A对接对象存储的方式,XSKY HDFS Client可以直接访问存储集群的OSD, IO路径更短 同时,XSKY HDFS Client具有 追加写的功能 ,可以匹配Hadoop文件系统对追加写的需求。
X SKY内部对在业界最广泛应用的Hadoop商业发行版本之一Cloudera CDH的TestDFSIO测试中显示,部署了XSKY HDFS Client的 XEOS集群写性能超过采用Remote HDFS系统的 94% ,读性能超过 77% (两种测试硬件配置一样,节点数都是8节点,其中存储和Datanode都是3节点)。

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座
WordCount测试中,性能瓶颈主要在CDH计算集群的CPU使用率,两组测试环境计算集群的CPU均达到了100%。 HDFS对1TB数据进行WordCount计算的时间消耗为 46分22秒 ,而XEOS的时间消耗为 47分20秒 ,相差不大。
量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座
HBase写测试中,HDFS对30,000,000条数据进行写入时间消耗为 2分23秒 ,而XEOS的时间消耗为 2分55秒 ,与HDFS比相差30秒左右。但是从HBase统计的IOPS来看,HDFS和XEOS相差不大。

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座


HBase读测试,HDFS对30,000,000条数据进行读取时间消耗为 47秒 ,而XEOS的时间消耗为 46秒 ,几乎没有差别。但是从HBase统计的IOPS来看, XEOS明显高于HDFS。

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座
03
客户收益

  • 计算存储分离部署,按需扩容,大幅降低TCO;

  • 更加优化的性能,以及企业级存储特性;

  • 适用于大数据平台的容灾备份;

  • 同时支持生产业务、Hadoop、MPP、AI等计算业务,解决数据孤岛问题;

  • 一套存储系统,承载多个异构平台的数据整合,加速数据流动;

  • NFS、HDFS、S3三种协议互通,三种协议来源的数据都可以统一进行in-place分析,分析结果可以通过S3实时发布。

XSKY目前已经实现 块、文件、对象、HDFS支持 ,为企业用户构建了真正统一的数据存储平台,可实现用户从核心生产到海量数据分析的最大化数据整合,助力构筑企业数据湖理想底座!

END

量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座

推荐阅读

Recommended reading

点击下列标题  阅读更多资讯


|

|