头图

Xline v0.3.0: 一个用于元数据管理的分布式KV存储

Xline是什么?我们为什么要做Xline?

Xline是一个基于Curp协议的,用于管理元数据的分布式KV存储。现有的分布式KV存储大多采用Raft共识协议,需要两次RTT才能完成一次请求。当部署在单个数据中心时,节点之间的延迟较低,因此不会对性能产生大的影响。但是,当跨数据中心部署时,节点之间的延迟可能是几十或几百毫秒,此时 Raft 协议将成为性能瓶颈。Curp 协议就是为了解决这个问题而设计的。它可以在命令不冲突的情况下减少一个RTT,从而提高性能。因此,Xline旨在实现高性能的数据访问和跨数据中心场景下的强一致性。

V0.3.0版本有什么新功能?

本版本主要改动为引入一个持久化层的内容,由于本身改动比较大,故单独提取一个版本出来,新版本的改进包含以下内容:

特点:

  • 实现一个持久化存储层,以实现持久性,包括:

    • 实现一个存储引擎层来抽象出具体的存储引擎,比如rocksdb,并启用上层存储功能(#185, #187)。
    • 启用Curp和Xline的恢复机制(#194, #184)。

修复bug:

  • 修复并发的cmd顺序错误(#197)

由于此前的存储都于内存中完成,因此如果进程崩溃了,数据恢复需要较长时间。基于此方面的考量,Xline现在引入一个持久化层,会将数据存储到磁盘上。同样,基于此前收到的“建立在内存基础上的性能测试是否具有说服力”的质疑,经过仔细考量,我们决定在此基础上做一个benchmark,结果预计会于v0.3.1 中展示。

欢迎参与到Xline项目中

我们欢迎任何对于Xline的积极贡献。目前在GitHub上有些任务并不需要深入了解Curp协议或Xline这个项目,只需要了解API和Rust语言即可。即使您现处于入门阶段,并想要在开源项目中使用Rust语言,社区也会提供指导和帮助,来引导您更好地参与项目。Xline的建设需要每一位对此感兴趣且愿意付出的你们的参与,我们期待你们的加入。

相关链接

往期阅读推荐

Xline v0.2.0: 一个用于元数据管理的分布式KV存储
DatenLord | Xline Geo-distributed KV Storage

关于我们

图片
达坦科技(DatenLord)专注下一代云计算——“天空计算”的基础设施技术,致力于拓宽云计算的边界。达坦科技打造的新一代开源跨云存储平台DatenLord,通过软硬件深度融合的方式打通云云壁垒,实现无限制跨云存储、跨云联通,建立海量异地、异构数据的统一存储访问机制,为云上应用提供高性能安全存储支持。以满足不同行业客户对海量数据跨云、跨数据中心高性能访问的需求。
公众号:达坦科技DatenLord
知乎账号:https://www.zhihu.com/org/da-tan-ke-ji
B站:https://space.bilibili.com/2017027518

DatenLord专注打造新一代云原生高性能存储平台,实现跨云、跨数据中心之间数据高速访问,从而极大提升存...

9 声望
3 粉丝
0 条评论
推荐阅读
从云计算到天空计算(二)
2021年,UC Berkeley的Ion Stoica和Scott Shenker,在运行系统热点话题的研讨会上,发布了“从云计算到天空计算”的论文。不同于我们都熟知的Cloud Computing(“云计算”),Sky Computing (“天空计算”),是云计算的未...

Datenlord阅读 555

封面图
终于卷完了!Redis 打怪升级进阶成神之路(2023 最新版)!
是一种非关系型数据库服务,它能解决常规数据库的并发能力,比如传统的数据库的IO与性能的瓶颈,同样它是关系型数据库的一个补充,有着比较好的高效率与高性能。专注于key-value查询的redis、memcached、ttserver。

民工哥11阅读 1k

封面图
硬卷完了!MongoDB 打怪升级进阶成神之路( 2023 最新版 )!
前面我们学习:MySQL 打怪升级进阶成神之路、Redis 打怪升级进阶成神之路,然后我们还在继续 NoSQL 的卷王之路。从第一篇文章开始,我们逐步详细介绍了 MogoDB 基础概念、安装和最基本的CURD操作、索引和聚合、工...

民工哥6阅读 580

封面图
初学后端,如何做好表结构设计?
这篇文章介绍了设计数据库表结构应该考虑的4个方面,还有优雅设计的6个原则,举了一个例子分享了我的设计思路,为了提高性能我们也要从多方面考虑缓存问题。

王中阳Go4阅读 1.7k评论 2

封面图
又一款内存数据库横空出世,比 Redis 更强,性能直接飙升一倍!杀疯了
KeyDB是Redis的高性能分支,专注于多线程,内存效率和高吞吐量。除了多线程之外,KeyDB还具有仅在Redis Enterprise中可用的功能,例如Active Replication,FLASH存储支持以及一些根本不可用的功能,例如直接备份...

民工哥4阅读 1.7k评论 2

封面图
面试官:请说一下如何优化结构体的性能?
使用内存对齐机制优化结构体性能,妙啊!前言之前分享过2篇结构体文章:10秒改struct性能直接提升15%,产品姐姐都夸我好棒 和 Go语言空结构体这3种妙用,你知道吗? 得到了大家的好评。这篇继续分享进阶内容:结...

王中阳Go4阅读 3.8k评论 2

封面图
MySQL百万数据深度分页优化思路分析
一般在项目开发中会有很多的统计数据需要进行上报分析,一般在分析过后会在后台展示出来给运营和产品进行分页查看,最常见的一种就是根据日期进行筛选。这种统计数据随着时间的推移数据量会慢慢的变大,达到百万...

一个程序员的成长7阅读 924

封面图

DatenLord专注打造新一代云原生高性能存储平台,实现跨云、跨数据中心之间数据高速访问,从而极大提升存...

9 声望
3 粉丝
宣传栏