两大主流开源分布式存储的对比:GlusterFS vs. Ceph
两大主流开源分布式存储的对比:GlusterFS vs. Ceph
存储世界最近发生了很大变化。十年前,光纤通道SAN管理器是企业存储的绝对标准,但现在的存储必须足够敏捷,才能适应在新的基础架构即服务云环境内运行。
GlusterFS和Ceph是在现代云环境中表现最出色的两个敏捷存储系统。
在讲述GlusterFS和Ceph的相同点和区别之前,我们先谈一谈云环境中敏捷存储的一些关键点。
纵向升级和横向扩展。在云环境中,很容易向服务器添加更多存储空间和扩展可用存储池。Ceph和GlusterFS都符合这一需求,让新的存储设备可以轻松融入现有存储产品环境。
高可用。GlusterFS和Ceph都会使用复制方法将数据同时写入不同存储节点。这种运作模式会增加读写次数,但同时也确保了数据的可用性。以Ceph为例,数据在默认情况会被复制到三个不同的节点,确保数据副本一直可用。
通用的硬件。GlusterFS和Ceph的开发基础都是Linux操作系统(OS)。因此,对于硬件的唯一要求就是:能够正常运行Linux即可。由于几乎任何商品硬件都能运行Linux操作系统,只要选择这些存储技术,这些技术的使用单位就可以大幅节省硬件投入。实际上,有许多公司也正在投资专用于GlusterFS或Ceph的硬件平台,因为专门优化的硬件可以更快速高效地访问存储空间。
去中心化。正常的云环境绝对不会出现某个中心节点故障而引起的失效。对于存储系统而言,这就意味着不应该使用单个中央位置来保存元数据。GlusterFS和Ceph的解决方案实现了元数据访问分散化,从而提高了存储访问的可用性和冗余性。
接下来我们来谈谈GlusterFS与Ceph的差异和对比。顾名思义,GlusterFS是来自Linux世界的文件系统,并且完整遵守POSIX便携式操作系统接口标准。尽管您可以轻而易举地将GlusterFS集成到Linux的环境中,但是让GlusterFS和Windows环境紧密配合同样至关重要。
Ceph是一种全新的存储方法,被定义成Swift对象存储的一种实现。在对象存储中,应用程序不会直接写入文件系统,而是使用存储设施提供的直接API访问写入存储。因此,应用程序能够绕过操作系统的功能和限制。如果应用程序已经针对Ceph存储编写读写接口,那么应用程序的读写就和操作系统无关。结果是,在Windows环境中集成使用Ceph存储就和在Linux系统中一样简单。
当然,基于API来访问存储并非应用程序访问Ceph的唯一途径。为了实现最佳集成,Ceph也提供一个块设备接口,可以在Linux环境中作为常规块设备使用,使您能够使用Ceph来模拟常规Linux硬盘。Ceph还有CephFS,这是一个针对Linux环境编写的Ceph文件系统。
最近,SUSE已经添加了一个iSCSI接口,使得运行iSCSI客户端的客户端能像访问任何其他iSCSI目标一样访问Ceph存储。所有这些功能使Ceph成为异构环境的最佳选择,而不仅仅适用于Linux操作系统。
综上所述,Ceph是一个更容易集成到非Linux环境中的更灵活的产品。对于许多公司来说这就有足够的理由决定在Ceph而不是GlusterFS上构建存储产品。但是对于只需运行Linux的环境,灵活性不是重点,所以让我们再谈谈其他非常重要的事情:速度。
在GlusterFS与Ceph的比赛中已经有过若干次测试,目的是证明这些存储产品中的某一种比另一种更快,然而迄今并没有明显的赢家。GlusterFS的存储算法更快,并且由于GlusterFS在节点块中使用更多的层次化组织方式,这在某些情况下可能实现更高的速度,特别是如果和未经优化的Ceph对比的话。但另一方面,Ceph也提供了丰富的定制灵活性,这足以让Ceph与GlusterFS同样快速,结果就是,两者的性能对比都不够令人信服,不足以证实自己能完全超越对方。
最后,现实表明,Ceph独特的存取存储空间的方法正在使其成为更受欢迎的技术。事实证明更多的公司正在考虑Ceph技术而不是GlusterFS,部分原因也在于GlusterFS仍然与Red Hat关系密切。例如,SUSE没有GlusterFS的商业实施案例,而Ceph已经被开源社区大量采用,市场上已经出现多种基于Ceph的产品。结论就是:在GlusterFS与Ceph的竞争战斗中,Ceph事实上已经比GlusterFS略胜一筹。
————————————————
版权声明:本文为CSDN博主「CloudXli」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/CloudXli/article/details/79681699
两大主流开源分布式存储的对比:GlusterFS vs. Ceph的更多相关文章
- 6 大主流 Web 框架优缺点对比:15篇前端热文回看
摘自:http://blog.csdn.net/VhWfR2u02Q/article/details/78993079 注:以下文章,点击标题即可阅读 <6 大主流 Web 框架优缺点对比> ...
- 6大主流开源SQL引擎总结,遥遥领先的是谁?
根据 O’Reilly 2016年数据科学薪资调查显示,SQL 是数据科学领域使用最广泛的语言.大部分项目都需要一些SQL 操作,甚至有一些只需要SQL.本文就带你来了解这些主流的开源SQL引擎!背景 ...
- 3大主流NoSQL数据库性能对比测试报告
近日,知名独立基准测评机构Bankmark,针对目前市面上主流的NoSQL数据库SequoiaDB.MongoDB以及Cassandra三款NoSQL数据库产品做了性能对比测试并发布测试报告.在所有的 ...
- 6 大主流 Web 框架优缺点对比(转)
英文: Kit Kelly 译文:oschina https://www.oschina.net/translate/web-frameworks-conclusions 是该读些评论和做一些总结 ...
- Java Web J2EE下的两大框架SSH和SSM对比
当下流行的两种企业开发MVC开源框架,是我们Java程序猿必备知识能力.MVC,即模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界 ...
- Ceph与Gluster之开源存储的对比
一.Ceph与Gluster之开源存储的对比 一.Ceph与Gluster的原理对比 Ceph和Gluster是Red Hat旗下的成熟的开源存储产品,Ceph与Gluster在原理上有着本质上的不同 ...
- 11大Java开源中文分词器的使用方法和分词效果对比
本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...
- 大数据领域两大最主流集群管理工具Ambari和Cloudera Manger
不多说,直接上干货! 目前啊,都知道,大数据集群管理方式分为手工方式(Apache hadoop)和工具方式(Ambari + hdp 和Cloudera Manger + CDH). 手工部署呢, ...
- 11大Java开源中文分词器的使用方法和分词效果对比,当前几个主要的Lucene中文分词器的比较
本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...
随机推荐
- (十)shiro之自定义Realm以及自定义Realm在web的应用demo
数据库设计 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/ ...
- android 蓝牙连接端(客户端)封装
0.权限 AndroidManifest.xml <uses-permission android:name="android.permission.BLUETOOTH"/ ...
- MySQL INNER JOIN子句介绍
MySQL INNER JOIN子句介绍 MySQL INNER JOIN子句将一个表中的行与其他表中的行进行匹配,并允许从两个表中查询包含列的行记录. INNER JOIN子句是SELECT语句的可 ...
- What's new in C# 7.0
1.数字分隔符(Digit Separators ) 数字分隔符使代码更具可读性.在声明变量时,可以将_添加到单独的数字中.编译器只删除_.以下代码片段在C#7中看起来更具可读性: In C# 6 l ...
- wince如何扫描条码并且在浏览器上查询数据
这个挺简单的,winform也适用 public override void OnGetBarcode(string scanStr) { try { Process.Start("iesa ...
- Marketing Cloud contact主数据的csv导入
使用这个mock数据生成器网站https://www.mockaroo.com/b6790790,创建一个基于Marketing Cloud contact schema的csv文件. 如果偷懒的话, ...
- centos安装netcat工具及测试
netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据.通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它.使用netcat命令所能完成的事情令人惊讶. netcat所做的 ...
- 取出List<Map<String,Object>>里面Map的key:value值
1.取出Map其中一个属性的值 Map map = new HashMap(); map.put("key1", "value1"); map.put(&quo ...
- 成为一个高级java架构师所需要具备那些技能呢?
一.什么是架构师 所谓架构师,思考的是全局的东西,是如何组织你的系统,以达到业务要求,性能要求,具备可扩展性(scalability),可拓展性(extendability),前后兼容性等.可能涉及到 ...
- 第五章、Celery分布式系统
Celery 官方 Celery 官网:http://www.celeryproject.org/ Celery 官方文档英文版:http://docs.celeryproject.org/en/la ...