盘点华为云 GaussDB(for Redis) 六大秒级能力
本文分享自华为云社区《华为云GaussDB(for Redis)揭秘第20期:六大秒级能力盘点》,作者: 高斯 Redis 官方博客。
一、引言
大家经常用时间类指标来评估数据库能力,诸如 RTO/RPO、扩容耗时、变更操作对业务影响的时长等等,在高可用需求日益迫切的当下,这些都是评价数据库能力的重要参考;在 KV 数据库领域,华为云 GaussDB(for Redis)基于存算分离的基础架构,在很多关键评估维度都具有“秒级”能力,今天便带大家了解一下。
二、GaussDB(for Redis)秒级能力盘点
1. 秒启动
社区版 Redis 在宕机恢复的场景下,需要依赖 AOF 或 RDB 文件将数据全量加载到内存中,随着数据量增加,这个耗时经常需要数分钟甚至更久。
GaussDB(for Redis)节点拉起时无需加载全量数据,即可快速提供服务,启动时间受数据量影响极小,大数据规模下亦可以达到秒级启动,体验丝滑。
2. 秒删除
社区版 Redis 在删除/过期数据尤其是大 key 的情况下会导致访问严重阻塞。
而 GaussDB(for Redis)从根本上解决了大 key 删除/过期的操作隐患,在底层实现先采用了“标记删除,异步回收”的逻辑,对任何数据执行删除/过期,都是立刻执行成功且 0 阻塞,因此完全不影响业务访问,实测删除/过期一个大 hash key(包含 1000w 个元素),GaussDB(for Redis)毫秒级。
图:GaussDB(for Redis)大 key 秒删
3. 秒备份
社区版 Redis 打快照时需要将全量数据 dump 到磁盘上,效率受到磁盘 IO 性能影响,耗时久。而且有着“fork 问题”,造成性能抖动,导致容量利用率只有 50%。
GaussDB(for Redis)备份基于底层文件系统的快照技术,记录某一时间点的数据状态,而无需进行耗时的数据拷贝操作,真正做到秒级打快照。客户的数据快照文件自动上传到华为云 OBS 桶内,后续可用来一键恢复到新实例,相当便捷。
图:GaussDB(for Redis)时间点快照一键恢复
4. 秒扩容
社区版 Redis 计算、存储强耦合。比如 64G 规格装满了,当需要升 128G 规格,此时不但耗时久,严重影响业务;而且价格翻倍,存在大量算力成本浪费。
GaussDB(for Redis)提供 3 种“扩容”方式,灵活变更:
1)数据快装满了?一键扩容量,秒级完成,不影响业务
GaussDB(for Redis)底层存储资源按配额形式提供使用,数据快写满场景,只需一键点击扩容,秒级获得更多容量。比如 64G 扩容到 128G,秒级完成,不影响业务。同时由于无需为不必要的算力买单,扩容价格涨幅小,成本有极大优势。
图:GaussDB(for Redis)存储扩容
2)流量突发高峰?一键加节点,业务只受到秒级影响
GaussDB(for Redis)扩算力的最便捷方式即增加节点,秒级即可完成负载重新均衡,业务短暂受影响。
图:GaussDB(for Redis)算力扩容-添加节点
3)周期性做活动?节点规格按需伸缩,避免算力浪费
GaussDB(for Redis)还支持提升节点规格,比如 16U 升 32U。在一些周期性的活动抢券场景,客户往往需要按周期进行规格升降,承载计划内的流量高峰,同时避免平时的浪费。
图:GaussDB(for Redis)算力扩容-节点规格变更
4. 故障秒恢复
GaussDB(for Redis)内部有全局的 HA 管控能力,计算节点故障秒级探测,发现故障后同样采用秒级接管的方式处理,秒级恢复业务侧正常访问。
5. 双活秒级 RPO
GaussDB(for Redis)支持 region 内/跨 region 容灾,即搭建稳定主从实例,提供企业级的高可用。通过高性能数据同步模块实现高性能主从实例同步,在高压力写入的业务压力下测试,有着 10s 的 RPO 的超高可靠性表现。
三、总结
经过上面的简单盘点可以看出,GaussDB(for Redis)在启动、大 key 删除、扩容变更等多种应用场景下均具有秒级能力,最小化业务影响,给用户提供企业级安全、稳定、可靠的使用体验。
四、附录
本文作者:
华为云数据库 GaussDB(for Redis)团队
杭州/西安/深圳简历投递:
yuwenlong4@huawei.com
更多产品信息,欢迎访问官方博客:
bbs.huaweicloud.com/blogs/248875
版权声明: 本文为 InfoQ 作者【华为云开发者联盟】的原创文章。
原文链接:【http://xie.infoq.cn/article/d033472fd64d9027610b2541d】。文章转载请联系作者。
评论