在上周刚结束的网易数字+大会上

网易数帆宣布:

开源一款名为Curve的高性能分布式存储系统,

性能可达Ceph的1.84倍!

网易副总裁、网易杭州研究院执行院长兼网易数帆总经理汪源:

基础软件的能力对于数字化转型非常关键,当前存储领域需要一款性能更高、可用性/可靠性更好、自治能力更强的分布式存储系统,Curve的开源不仅代表网易数帆在基础软件市场的坚持,也为软件定义基础设施生态的繁荣再添一把火。

采用先进架构设计 单卷性能1.84倍于Ceph

Curve的定位,是提供一个高性能、低延迟的存储底座,基于这个存储底座,企业可以打造适用于不同应用场景的存储系统,如块存储、对象存储、云原生数据库等。目前,网易数帆已经实现了高性能块存储系统。

汪源介绍,Curve主要具有三大设计特点:高性能、高可用和自治。

高性能源自先进架构。Curve参考了业界的存储系统,采用先进、高效的开源技术,设计了一个新架构实现高性能低延迟的核心能力,采用高性能的RPC框架来保障网络数据流的高性能和低延迟,基于Raft协议实现多副本一致性下的低延迟,并针对Raft协议的快照实现进一步优化。磁盘IO方面,Curve通过更细粒度的地址空间的hash减少IO碰撞,增加IO并发度,并采用chunkfilepool减小IO放大倍数,从而最大限度地发挥硬件的性能。

汪源公布了Curve和CephL版本的测试数据对比,在单卷的场景下,核心的4K随机读/写的IOPS性能,Curve分别是Ceph的1.84倍和1.58倍,同时延迟相比Ceph分别降低48.39%和37.50%。

他在采访中透露,Curve还有一些创新的性能优化工作尚未完成,如细粒度哈希、io_uring落盘方案,预计完成优化之后下个版本还会有30%的性能提升。换句话说,Curve单卷性能将会达到Ceph的2倍以上。性能差异来自架构设计的不同选择,分布式一致性Curve采用了Quorum机制,而Ceph实现强一致性,前者延迟优于后者,而且可以在不太影响IO性能的情况下能从故障中快速恢复。

Curve与Ceph性能测试对比

高可用方面,Curve被设计为核心组件都能容忍部分实例失败而不影响整个集群的可用性。汪源介绍,无论是单台存储故障,还是系统扩容,Curve的客户端IO都不会受到丝毫的影响,插拔硬盘、服务进程中断这些常见异常,IO抖动也很小。当然,故障恢复过程对上层IO也不会造成明显影响。

此外,在自治方面,Curve实现了一键部署、一键升级,运维只要很少的人工干预,并基于Promethues和Grafana等开源技术打造了全面的度量标准和告警体系。

回馈开源 强化软件定义基础设施短板

基于Curve的高性能块存储系统已经作为应用在网易的一些核心业务中,支持快照克隆和恢复, 支持QEMU虚拟机和物理机NBD设备两种挂载方式。

系统上线至今400多天,从未出现数据不一致和丢数据的情况,没有发生过重大故障,数据可靠性达到100%,服务可用率达到4个9以上。线上环境的异常演练,也证实了异常对业务的影响如上文所述。但对于网易数帆来说,这个成绩只是Curve征途的开始。

鉴于目前开源领域还没有足够高性能和低延迟的分布式存储系统,汪源宣布,网易数帆把Curve开源出来,回馈社区,让业界一起来使用它,也希望大家一起参与把Curve打造得越来越好。

Curve项目的最新稳定版本已经上传到Github,并提供了部署文档。作为生长于中国本土的项目,Curve首先提供中文文档,希望降低中文用户尝鲜的门槛。对Curve感兴趣的朋友,可以通过http://opencurve.github.io获取更多信息啦。

性能1.84倍于Ceph!网易数帆Curve分布式存储开源的更多相关文章

  1. 网易数帆 Envoy Gateway 实践之旅:坚守 6 年,峥嵘渐显

    服务网格成熟度不断提升,云原生环境下流量处理愈发重要, Envoy Gateway 项目于近日宣布开源,"旨在大幅降低将 Envoy 作为 API 网关的使用门槛",引发了业界关注 ...

  2. 大咖说|网易数帆论道 PolarDB 数据库开源 & 存储生态

    开源技术如何商业化?将遇到什么问题?有哪些可行的解决办法?本期大咖说,阿里云数据库开源战役负责人曲山将携手网易副总裁汪源与你分享关于开源商业化的思考. 嘉宾简介 网易副总裁.杭州研究院执行院长.网易数 ...

  3. 将Web应用性能提高十倍的10条建议

    导读 提高 web 应用的性能从来没有比现在更重要过.网络经济的比重一直在增长:全球经济超过 5% 的价值是在因特网上产生的(数据参见下面的资料).这个时刻在线的超连接世界意味着用户对其的期望值也处于 ...

  4. 将 Web 应用性能提高十倍的10条建议

    提高 web 应用的性能从来没有比现在更重要过.网络经济的比重一直在增长:全球经济超过 5% 的价值是在因特网上产生的(数据参见下面的资料).这个时刻在线的超连接世界意味着用户对其的期望值也处于历史上 ...

  5. [转载]PayPal为什么从Java迁移到Node.js,性能提高一倍,文件代码减少44%

    http://ourjs.com/detail/52a914f0127c763203000008 大家都知道PayPal是另一家迁移到Node.js平台的大型公司,Jeff Harrell的这篇博文 ...

  6. PayPal为什么从Java迁移到Node.js 性能提高一倍 文件代码减少44%

    大家都知道PayPal是另一家迁移到Node.js平台的大型公司,Jeff Harrell的这篇博文 Node.js at PayPal  解释了为什么从Java迁移出来的原因: 开发效率提高一倍(2 ...

  7. 谷歌出品EfficientNet:比现有卷积网络小84倍,比GPipe快6.1倍

    [导读]谷歌AI研究部门华人科学家再发论文<EfficientNet:重新思考CNN模型缩放>,模型缩放的传统做法是任意增加CNN的深度和宽度,或使用更大的输入图像分辨率进行训练,而使用E ...

  8. Web 应用性能提升 10 倍的 10 个建议

    转载自http://blog.jobbole.com/94962/ 提升 Web 应用的性能变得越来越重要.线上经济活动的份额持续增长,当前发达世界中 5 % 的经济发生在互联网上(查看下面资源的统计 ...

  9. 如何利用缓存机制实现JAVA类反射性能提升30倍

    一次性能提高30倍的JAVA类反射性能优化实践 文章来源:宜信技术学院 & 宜信支付结算团队技术分享第4期-支付结算部支付研发团队高级工程师陶红<JAVA类反射技术&优化> ...

随机推荐

  1. 【DMCP】2020-CVPR-DMCP Differentiable Markov Channel Pruning for Neural Networks-论文阅读

    DMCP 2020-CVPR-DMCP Differentiable Markov Channel Pruning for Neural Networks Shaopeng Guo(sensetime ...

  2. 面试题64:求 1 + 2 + ... + n

    这道题目条件限制严格,需要发散思维...但是作者是以 C++ 语言特性来做讲解的,对于 Java 狗只能说稍微有点参考意义吧!

  3. java异常处理之try_catch_finally

    java异常处理之try_catch_finally 看下面的一个列子: public class TestException { int goabl=1; public TestException( ...

  4. VM363:1 Uncaught SyntaxError: Invalid or unexpected token

    此报错主要是因为json字符串转json对象时,json字符串中出现特殊字符(如:换行符)报错. json字符转json对象(如下写则报错) 更改后 参考地址: https://www.cnblogs ...

  5. HttPclient 以post方式发送json

    使用HttpClient 以POST的形式发送json字符串 步骤: 1.url .parameters 2.创建httpClient对象 3.创建HttpPost对象 4.为post对象设置参数 5 ...

  6. JQ三种提示框:提示信息框、确认框、输入文本框

    浏览器的三种提示框: alert()提示信息框 confirm()提示确认框 prompt()提示输入文本框 1.alert()提示信息框 效果: 实现代码: <script> alert ...

  7. 使用TransferLearning实现环视图像的角点检测——Tensorflow+MobileNetv2_SSD

    环境说明 依赖环境安装eIQ官方指南: name: eiq_auto channels: - conda-forge - defaults dependencies: - numpy=1.18.1=p ...

  8. 来看下css边框阴影怎么设置?这些方法掌握后工作更轻松

    我们在网页设计中,通常会使用ps工具来达到图片或者边框阴影.立体等效果.但是如果一些基础效果都需要用p图来完成那就显得效率比较低了.其实可以使用CSS来设置边框阴影,下面本篇文章来给大家介绍一下. 在 ...

  9. 01.RabbitMQ简单使用

    官网地址:https://www.rabbitmq.com/getstarted.html RabbitMQ 优点: 数据处理异步执行: 应用之间解耦: 流量削峰 1.docker 安装 Rabbit ...

  10. 【华为云技术分享】跟唐老师学习云网络 : Kubernetes网络实现

    当今K8s独霸天下之时,咱们站在更高的角度,好好的看看K8s网络是以什么理念构筑的.以及一个容器集群的好保姆,是如何分别照顾 南北流量和东西流量的. 一.简单介绍下Kubernetes 略..容器集群 ...