hadoop on ceph

迷南。 2022-06-03 02:56 279阅读 0赞

一、’官方文档:

hadoop on ceph

http://docs.ceph.com/docs/master/cephfs/hadoop/

依赖的接口:

  • CephFS Java Interface
  • Hadoop CephFS Plugin

主要的要点:

1、hadoop更新设置对应的配置为ceph

2、为了支持三副本的要求,需要手动创建hadoop的三个pool

3、hadoop需要支持ceph的本地jar文件

4、当前hadoop支持的ceph版本是hadoop1.x

二、性能比较和第三方评测

HDFS和ceph性能比较

http://iopscience.iop.org/article/10.1088/1742-6596/513/4/042014/pdf

GlusterFS or Ceph as backend for Hadoop

https://stackoverflow.com/questions/34041084/glusterfs-or-ceph-as-backend-for-hadoop

主要观点:

1、 ceph在性能上2/3慢于HDFS,ith default replication factor in terasort benchmark

三、CEPH块存储介绍

http://www.jianshu.com/p/60a78c1fa1ce

  1. 一、 前置知识
  2. 块设备:
  3. 块设备将信息存储在固定大小的块中,每个块都能进行编址。块设备的基本特征是每个块都能区别于其它块而读写。块设备也是底层设备的抽象,块设备上未建立文件系统时,也称之为裸设备。
  4. 块设备与ceph的联系:
  5. client想要把数据存储到ceph的集群中时,他必须要有一个读写的目标,能够在本地知道这个目标。这里讲的是块存储,当然这个读写的目标要是一个块设备才行,需要将这个块设备与ceph关联起来,这个块设备通常成为rbd设备。
  6. rbd的全称应该是Rados Block Devicerbd是由ceph进行整理物理资源并且向外提供的RAODS形式的块设备,这样的块设备在客户端同其他类型的块设备使用方法相同
  7. OSD是如何存储数据:
  8. OSD其实是建立在文件系统之上的,当你使用一个块设备进行部署OSD节点时,部署工具会默认格式化osdxfs,当然你也可以预先格式为想要的文件系统(ext4等)。数据到了OSD层次时,这时可以把这个请求变成一个文件的操作,最后交给了xfs文件系统,最终组织到了磁盘上。
  9. 二、rbdosd的映射:
  10. 1、客户端的使用rbd设备,
  11. 在客户端使用rbd设备时,一般有两种方法。
  12. 第一种 kernel rbd。就是创建了rbd设备后,把rbd设备map到内核中,形成一个虚拟的块设备,这时这个块设备同其他通用块设备一样,一般的设备文件为/dev/rbd0,后续直接使用这个块设备文件就可以了,可以把/dev/rbd0格式化后mount到某个目录,也可以直接作为裸设备使用。这时对rbd设备的操作都通过kernel rbd操作方法进行的。
  13. 第二种是librbd方式。就是创建了rbd设备后,这时可以使用librbdlibrados库进行访问管理块设备。这种方式不会map到内核,直接调用librbd提供的接口,可以实现对rbd设备的访问和管理,但是不会在客户端产生块设备文件。
  14. Hadoop2.7.3Ceph0.94结合

http://www.178pt.com/175.html

ceph中国官方

http://ceph.org.cn/

四、总结

当前hadoop还没有在内核完整的支持ceph,所以直接替换掉hdfs还不太成熟,可以直接当成一个存储介质来使用,CEPH的对象存储到还不错。

发表评论

表情:
评论列表 (有 0 条评论,279人围观)

还没有评论,来说两句吧...

相关阅读

    相关 ceph(ceph是什么意思)

    如何使用ceph Ceph是一个 Linux PB 级分布式文件系统。 其命名和UCSC(Ceph 的诞生地)的吉祥物有关,这个吉祥物是 "Sammy",一个香蕉色的蛞