EloqDoc - 弹性文档数据库
EloqDoc 的设计理念是将对象存储(例如 S3)作为主要持久化层,NVMe作为缓存层,兼具高性能和低成本。如果您喜欢 MongoDB 文档模型的灵活性,但又因其耦合架构而在扩展性、成本和一致性方面遇到挑战,EloqDoc将是更好的替代方案。它旨在解决 MongoDB存算分离方面的挑战,同时保持与现有 MongoDB 客户端和驱动程序的完全兼容。
主要特性
1 原生优先支持对象存储
使用对象存储作为主要持久化层,利用本地 NVMe 缓存,实现比使用块存储云盘(如 EBS)更低的成本和更高的性能。
2 解耦计算与存储
独立扩展计算/QPS 或存储容量,无需数据迁移。
3 真正的 ACID 事务
提供完整的 ACID 事务,支持低延迟分布式事务。
4 原生分布式与多写入器
无需复杂的手动分片路由(如 mongos),并支持真正的多写扩展能力。
Benchmark
测试结果
混合读写(1:1)场景下,EloqDoc在高并发中保持了更高的吞吐量,每秒操作数峰值达到Atlas的约160%(即高出约60%)
纯读取场景下,EloqDoc在并发量适中时仍能实现高吞吐量,持续保持比Atlas约高60%的性能表现
针对低缓存命中场景,EloqDoc利用本地NVMe作为对象存储的缓存。这种架构在保持数据完全可恢复的同时,实现了数十万IOPS的性能。相比之下,MongoDB Atlas受限于EBS云盘的IOPS,吞吐量显著下降,尾部延迟明显升高。


