布景:GaussDB(for Redis)是华为云数据库团队推出的企业级Redis,完全兼容开源Redis,既能显著降低成本,又能供给更稳定可靠的KV存储服务。

一、一切要从某个深夜的需求说起

某天深夜,作为后端小能手的小强强刚准备收工,老板打来电话:“小强强,咱们Redis用的也太杂了,好几十套,啥规格都有!这里面肯定有不少资源糟蹋!你负责搞个降本增效专项吧,把Redis运用成本降下来,也让运维同学轻松点。”

别看咱们小伙子年轻,实则经验老道。小强强拍着胸脯接下需求,大致有了思路(如图):****

华为云企业级Redis揭秘第17期:集群搭载多DB,多租隔离更降本

图1 Redis资源整合+降成本+轻松运维

“搞定这件事的核心方法便是‘一Redis多用’!”,小强强马上想到2个计划:

计划1: 让事务同学给key加前缀。该计划看似搞定了需求,但阻隔性差,大量key前缀占空间,事务改造也很麻烦,因此它并不是优选。

计划2: 运用Redis的多DB。事务通过select指令访问专属DB,flushdb指令又能一键清数据,阻隔效果不错,按理说还是很方便的。

二、开源Redis的多DB是鸡肋

可是,作为经验十足的后端开发,小强强提早识别到了计划2的严重隐患:

  • 开源Redis的“多DB”只能用于单机,不支撑集群,搞不定后期扩容。
  • 而单机Redis扩容到64G已经是极限,更不用说fork导致的容量利用率只要50%。

也便是说,随着后期事务增加,多个事务挤在一套容量只要64G的开源Redis中,意味着当内存不足时,有必要得有事务迁出!

华为云企业级Redis揭秘第17期:集群搭载多DB,多租隔离更降本

图2 开源Redis多DB无法扩展,后期只能从头拆分

这不就回到了最初的问题**吗?开源Redis的多DB计划明显不符合资深后端的身份,对此,小强强坚决say no!

好吧,开源Redis的多DB,看来你是真的帮不上忙!

三、当多DB遇上GaussDB(for Redis)

前面提到,“多DB”是小强强此刻最需求的功用,但开源Redis多DB却有着后期无法扩容的严重隐患。为了处理问题,小强强找到了真实处理该痛点的产品GaussDB(for Redis) 。****

在多DB的运用上,GaussDB(for Redis)与开源Redis用法完全一致,完成了同一实例下的数据阻隔。GaussDB(for Redis)的多DB核心价值在于:

  • 吞吐可水平扩展至百万QPS,容量支撑12TB,处理了扩展性问题;
  • 比较开源Redis,成本可降20%~70%
  • 单实例支撑6w+DB数,搞定大规模事务多租阻隔。

基于GaussDB(for Redis)多DB功用,事务多租户可以放心共用一套GaussDB(for Redis),不但轻松完成降本,并且能完美cover住后期事务增加。

华为云企业级Redis揭秘第17期:集群搭载多DB,多租隔离更降本

图3 GaussDB(for Redis)多DB完成事务多租阻隔

终于搞定一个靠谱计划!小强强可以放心肠交差了。最后,再一次为好用的产品打call:

GaussDB(for Redis) 支撑真实可扩展的多DB,轻松降本,几乎yyds!

四、附录

  • 本文作者:华为云数据库GaussDB(for Redis)团队
  • 杭州/西安/深圳简历投递:yuwenlong4@huawei.com
  • 官方博客:bbs.huaweicloud.com/blogs/24887…

华为云开年采购季盛大开幕! 点击了解概况:activity.huaweicloud.com/dbs_Promoti…