华为云gaussdb(for redis)揭秘第19期:gaussdb(for redis)全面对比codis-4008云顶国际网站

高斯redis官方博客 发表于 2022/06/23 19:31:12 2022/06/23
【摘要】 codis集群在国内redis生态圈很流行,但在兼容性等方面表现欠佳,社区已停止维护。与之相比,华为云gaussdb(for redis)优势更强。

  • 高斯redis资料库:bbs.huaweicloud.com/blogs/248875

codis是国内最流行的自建redis集群方案,一点也不为过。客户曾这样说:

codis你不知道吗?我们公司用了好多年了,好东西呀。”

 

的确,相比去中心化架构的开源redis clustercodis这种proxy代理集群显然更“好用”,甚至就连redislabs官方都推出了功能类似的redis-cluster-proxy来弥补传统cluster缺点。

然而其实从n年前开始,codis社区就没有人维护了,我们的客户项目经理海鹏老师也经常要帮助客户把自建codis搬迁到云上的gaussdb(for redis)

codis的确很优秀,不过我们可以负责任地说:

华为云kv数据库gaussdb(for redis)更优秀!

 

首先,我们从技术架构角度来看看两款产品究竟哪里不同。

如图,架构上的差异一目了然,我们可以自顶向下分析:

1、非标sdk vs 标准sdk

公有云用户普遍讨厌“搞特殊”,然而codis偏要搞特殊。codis绑架用户必须使用非标jodis sdk来解决代理层单点故障问题。但如果用户偏要使用标准sdk(如大名鼎鼎的jedis)呢?codis表示:对不起,跟高可用说拜拜吧。

相反,gaussdb(for redis)在使用上则很友好,业务侧使用任何标准sdk都行,同时高可用、自动负载均衡能力也全都在。上云搬迁时,gaussdb(for redis)兼容方面做得也很成熟,不论客户原来代码用的是standalone,还是clustersentinel等模式,都可以0改造上云,真正做到开箱即用,体验感极佳。

 

2、无负载均衡 vs 专业的elb

codis的代理层虽然提供了横向扩展能力,但并不好用:要么牺牲高可用来使用标准sdk连接单点;要么使用jodis sdk,但代价是业务走向非标化。

gaussdb(for redis)提供elb,方便用户统一接入,在简化客户端复杂度的同时,还带来了专业的负载均衡能力。有了这个统一接入ip,用户相当于自己在使用一个超大容量的单机redis,而无需操心底层细节。

 

3、存算耦合 vs 存算分离

可以认为,codis是在多套redis分片上做了一层封装,架构模型是传统的存算耦合。在大key、数据一致性、分片故障、扩缩容等典型场景中,都延续了开源redis的长期“痛点”。

gaussdb(for redis)采用存算分离架构,计算层聚焦数据业务,存储层基于高性能分布式共享存储池,确保数据三副本存储强一致,超高可靠。同时大幅节省硬件成本,帮业务减负。

 

从前文的架构维度对比可以看出,gaussdb(for redis)上有elb让业务侧“更好用”,下有存储池让数据“更可靠”,比自建codis集群优秀了太多。

 

下面再从特性维度聊聊,gaussdb(for redis)还能给业务侧带来哪些价值。

1、兼容性

gaussdb(for redis)完全兼容redis协议,同时兼容standalone/cluster/sentinel等多种sdk模式,方便业务搬迁上云。而codis的兼容性则显得很差。

2、稳定性

自建codis集群稳定性强依赖开源redis能力,不论是扩容还是大key场景,都有相同痛点,在此不再赘述。

gaussdb(for redis)自研架构完全解决了开源redisfork问题,稳定性大幅提升;同时,在与分布式存储池架构的深度合作下,数据的可靠性也全面优于codis

 

3、成本

codis依然是传统纯内存redis的封装,业务存不了多少就会触及成本痛点。随着业务长期发展,逐渐也会有数据降冷(如app的冷用户),此时codis里真正有价值的热数据占比越来越低,全量数据在内存中成本会相当高。

gaussdb(for redis)的算力则按需选配,存储价格低,非常适合大容量kv存储场景

 

codis是很多开发和运维同学曾经青睐的产品,是时代的记忆,但是,技术在快速发展。在这里,建议使用了codis的业务可以考虑使用gaussdb(for redis),感受华为云这款企业级kv数据库的全新价值。

 

  • 本文作者:

华为云数据库gaussdb(for redis)团队

  • 杭州/西安/深圳简历投递:

yuwenlong4@huawei.com

  • 更多产品信息,欢迎访问官方博客:

bbs.huaweicloud.com/blogs/248875


【4008云顶国际集团的版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。