Todis 企业版

Todis 企业版拥有更加完备的功能,

例如 Topling SST、MemTab,、分布式 Compact 等等。

在内测期间,你可以免费试用 Todis 企业版。

一、简介

Todis 是 Topling(拓扑岭) 出品的大容量、持久化 Redis 服务。

Todis 的 Redis 服务层 fork 自开源的 pika,存储引擎层基于 ToplingDB

ToplingDBTopling(拓扑岭) 出品的兼容 RocksDB API 的分布式存储引擎。

目前(2021-10-11),市面上存在很多大容量、持久化的 Redis 实现(一般基于 RocksDB),几乎每个大厂都有自己的相应产品。但是这类产品都存在性能低下、成本高昂、难以扩展、运维不易、监控缺失等问题,依托 ToplingDB 开创性的独有技术,Todis 解决了所有这些问题,并且在持续地不断改进。

只需要 10分钟,就可以在阿里云上体验 托管的 Todis

二、功能

  1. 存储计算分离,计算和存储可单独弹性伸缩
  2. 一键扩容,无需分片
  3. 完备、丰富的监控指标
  4. 可视化 Web 数据观测

三、性能

  1. 利用弹性分布式 Compact,彻底消除写卡顿(Write Stall)
  2. 利用可检索内存压缩技术大幅提高读性能:CPU消耗降低,内存利用率、缓存命中率提高
  3. 利用共享存储实现毫秒级主从同步,可在 10 秒内拉起新结点

四、架构

在协议、执行层面上(pika/pink/blackwidow)

Redis 协议虽然非常简单,但是正确、完整地实现一遍,其实并不容易,在众多基于 RocksDB 的 Redis 实现中,我们经过仔细调研,反复尝试,最终选择了 pika。选定之后,对其进行了大规模的深度修改:

  1. 重写了性能关键代码
  2. 增加了一系列监控指标(各命令的延时直方图、数据大小分布直方图)
  3. 适配 ToplingDBSidePlugin,Web 展示各种配置,数据概要,状态信息等
  4. 适配 ToplingDB 的 分布式 Compact,为此重新设计了 Key 编码格式,去掉了自定义 Comparator,等等

在 ToplingDB 层面上

ToplingDB fork 自 RocksDB,然后进行了很多深度的重新设计与优化:

  1. 增加 SidePlugin 体系
  2. 使用可检索内存压缩替换 RocksDB 的 BlockBasedTable
  3. 多租户、多实例共享计算结点的弹性分布式 Compact