我们很高兴地介绍 EloqKV,这是一个高性能的 Redis API 兼容、ACID 事务性、可扩展、分布式键值数据库。你可能会想,"真的吗?又一个键值数据库?"在这篇文章中,我们将解释是什么让 EloqKV 与众不同,以及 EloqKV 提供的独特价值。
EloqKV 是我们基于突破性数据基底技术构建的第一个产品,这是一个创新架构,旨在为云时代创建高性能、模块化、可扩展和事务性的数据库。我们在之前的博客文章中介绍了数据基底。
像许多键值存储一样,EloqKV 提供卓越的性能,在单个服务器上可以处理每秒数百万次操作,延迟低于毫秒级。但凭借其革命性的架构,EloqKV 提供了独特的功能,使其区别于其他键值数据库。
在需要时提供完整的 ACID 事务
许多键值存储将所有数据保存在内存中以实现低延迟。然而,这种方法显著增加了成本,因为即使是不经常访问的(冷)数据也会占用宝贵的内存。此外,为了追求性能,持久性通常被牺牲,尽管在现代 SSD 上优化的预写日志(WAL)通常可以帮助将影响降低到可接受的水平。此外,由于分布式事务的高成本,大多数分布式键值存储要么放弃事务支持,要么只提供有限的部分事务。
EloqKV 采用了不同的方法,拥抱 ACID(原子性、一致性、隔离性、持久性)事务很重要但不应在不需要时增加额外成本的理念。EloqKV 让你可以通过配置标志启用 ACID。当 ACID 被禁用时,EloqKV 不会产生任何额外开销,提供与非事务性键值数据库相当的性能。目前处于 Beta 版本,在未来版本中,EloqKV 将允许在每个数据库的基础上打开和关闭 ACID 支持,进一步避免不必要的开销并简化管理。
即使完全符合 ACID,EloqKV 也包含了几项创新来最小化开销。例如,WAL 日志的延迟通常由同步写入稳定存储所主导。在 EloqKV 中,日志可以水平扩展和独立扩展,当添加更多存储设备时可以减少日志延迟。此外,在 EloqKV 中,单键读取事务不会产生额外开销。这使得 EloqKV 对许多常见工作负载来说都非常快。我们将在未来的博客文章或学术论文中深入探讨这些技术。