华为云GaussDB(for Redis)揭秘第20期:六大秒级能力盘点
一、引言
大家经常用时间类指标来评估数据库能力,诸如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
- 点赞
- 收藏
- 关注作者
评论(0)