K/V存储引擎的由来能够追溯到20世纪70年代的Berkley DB,而近年来,随着互联网利用的倒退,KV存储引擎因其简略高效、可扩展性和适宜缓存利用等特点,在分布式存储畛域失去了广泛应用。而应用Rust编写KV存储具备内存平安、高性能、并发平安、跨平台反对和Rust沉闷的社区反对等提点,能够进步程序的可靠性、性能和可维护性,尤其适宜用于对数据安全性有严格要求的场景。本周咱们翻译一篇Reddit上无关用Rust语言编写的一些要害值存储引擎的文章,让大家一窥目前比拟热门的KV Store都有哪些~

本文的作者是Bassfaceapollo,原文公布在Reddit下Rust讨论区。原文链接:

https://www.reddit.com/r/rust...

本文中的我,指代作者自己。

注释局部

我发现了一些很酷的我的项目想与社区分享。其中一些可能曾经为你们所知了:

  1. Engula - 一个分布式K/V存储。它仿佛是这些我的项目中最踊跃工作的了,但如果仅从版本(0.4.0)上看,依然没有为生产工作做好筹备。
  2. AgateDB - 一个由PingCAP创立的新的存储引擎,试图取代Tikv DB栈的RocksDB。
  3. Marble - 一个新的K/V存储,旨在成为Sled的存储引擎。正如u/mwcAlexKorn在上面的评论中指出的,Sled自身可能仍在开发中。
  4. PhotonDB - 一个旨在利用古代多核芯片、存储设备、操作系统和编程语言的弱小性能的高性能存储引擎。目前尽管在Github上的star不多,但依然在踊跃致力着,且看起来很不错。因而我也想分享一下。
  5. DustData - Rustbase的一个存储引擎。Rustbase是一个NoSQL K/V数据库。
  6. Sanakirja - 由Pijul VCS背地的团队开发,是一个由B-Tree反对的K/V存储。它被Pijul团队应用。与Git不同,Pijul是基于补丁实践的一个新版本的控制系统。Sanakirja的源码仓库在Nest上,并且是目前惟一一个应用Pijul的代码库。 (credit: u/Kerollmops) 另外,Pijul和Sanakirja的作者Pierre-Étienne Meunier(u/pmeunier)也在这个话题中。你能够浏览他的评论以理解更多的观点。
  7. Persy - Persy是一个用Rust编写的事务性存储引擎。(credit: u/Kerollmops)
  8. ReDB - 一个简略的、可移植的、高性能的、ACID的、嵌入式的K/V存储,其灵感源自于 LMDB。(起源:u/Kerollmops)
  9. Xline - 一个用于元数据管理的分布式K/V存储,提供与etcd兼容的API和k8s的兼容性。(credit: u/withywhy)
  10. Locutus - 一个分布式的、去中心化的K/V存储,其中的键是决定该键下什么值无效的加密合约。该存储是可察看的,容许建设在Locutus上的应用程序监听值的变动并立刻失去告诉。加密合约是在webassembly中指定的。这种K/V存储是扩散的、可扩大的和不可信赖的中心化服务的代替计划的根底,包含电子邮件、即时通讯和社交网络,其中许多都依赖于关闭的专有协定。(credit: u/sanity)
  11. PickleDB-rs - PickleDB(基于 Python 实现) 的一个 Rust 实现版本。

结束语

不言而喻,很多我的项目(甚至是Rust我的项目)偏向于应用相似于RocksDB的货色来实现K/V。这不禁让我想到了PingCAP的Tikv和Stalwart实验室的JMAP服务器。

话虽如此,我还是喜爱看到用Rust编写这种货色的大胆尝试。讲一点题外话就是,我依然忍不住诧异,除了ToyDB之外,还没有人尝试在Rust中创立一个用于OLTP负载的关系型数据库。

免责申明

我自己与这些我的项目中的任何一个都没有关系。我只是在分享他们,因为我发现它们很乏味。

对于咱们

达坦科技(DatenLord)推出的开源分布式KV存储Xline,针对多数据中心场景,实现数据的高性能跨云、跨数据中心共享拜访,并保证数据的一致性,不便业务零碎实现多地多核心多活部署。

GitHub链接:Https://github.com/datenlord/Xline

达坦科技(DatenLord)专一下一代云计算——“天空计算”的基础设施技术,致力于拓宽云计算的边界。达坦科技打造的新一代开源跨云存储平台DatenLord,通过软硬件深度交融的形式买通云云壁垒,实现无限度跨云存储、跨云联通,建设海量异地、异构数据的对立存储拜访机制,为云上利用提供高性能平安存储反对。以满足不同行业客户对海量数据跨云、跨数据中心高性能拜访的需要。

公众号:达坦科技DatenLord

知乎账号:https://www.zhihu.com/org/da-...

B站:https://space.bilibili.com/20...