DDM实践:数据库秒级平滑扩容方案
本文部分内容节选自华为云帮助中心的分布式数据库中间件(DDM)服务的产品介绍
背景
随着业务增长,逻辑库存储空间不足,并发压力较大。
解决方案
此时可对DDM实例逻辑库进行平滑扩容,通过增加RDS实例来提高数据存储能力与并发支持能力。在不中断应用服务的情况下,通过新增RDS实例,扩展数据库存储空间。扩容除了解决数据存储容量瓶颈,还能通过增加并发计算能力间接提升数据库性能。通过DDM管理控制台操作即可完成扩容,应用无需改造,扩容进度支持可视化跟踪。
平滑扩容
平滑扩容是一种水平扩容方式,通过增加RDS实例的数量来提升总体数据存储容量,把分库平滑扩容到新增加的RDS实例上,保证所有的数据都是均衡分布在每个分库上,降低单个RDS实例的处理压力。
平滑扩容原理如下图所示。
平滑扩容原理
逻辑库平滑扩容实践
操作场景
逻辑库扩容涉及到数据迁移。具体分以下情况:
1、所有全局表将复制一份,存储到新增RDS实例的对应分片中。
2、分片表数据将会重新分配和存储。
3、单表存储在默认分片上,扩容过程无需迁移单表数据。
说明:RDS存储空间不足时,建议对逻辑库下的某一RDS实例进行磁盘扩容,扩充RDS实例存储空间。并发压力较大无法满足业务需求时,建议按照以下操作增加RDS实例,进行平滑扩容。“拆分算法”为“Range”的逻辑表在进行平滑扩容时,只在新的分片上创建物理表,不做数据迁移。扩容成功后,用户需要手动修改“Range”表的分片规则,加入新分片的规则。
操作步骤
- 登录管理控制台。
- 在导航上选择“数据库 > 分布式数据库中间件”,进入总览页面。
- 单击左侧菜单栏的“DDM实例管理”,进入“DDM实例管理”页面。
- 单击DDM实例名称,进入实例基本信息页面。
- 在实例基本信息页面,选择“逻辑库管理”选项卡,查看DDM实例逻辑库。
- 在需要扩容的逻辑库右侧操作栏单击“平滑扩容”。
- 在“平滑扩容”弹出框左侧勾选需要扩容的RDS实例,单击“确定”。可在“逻辑库管理”页面查看扩容进度,扩容过程大概需要5-30分钟,具体时长与实际需要迁移的数据量相关。当“逻辑库状态”为“运行中”时,表示扩容成功,“已使用RDS”列将会呈现新扩容的RDS实例。
说明:只有逻辑库状态为“运行中”才能进行平滑扩容。一个DDM实例内,只允许同时对一个实例逻辑库进行平滑扩容操作;不同的DDM实例内,可以同时扩容实例逻辑库。
注:平滑扩容使用限制如下:
1、RDS实例与DDM实例需要在相同VPC,且RDS实例没有被其它DDM实例使用。
2、逻辑库下必须有表才能进行平滑扩容。
3、实例存在节点故障情况下不能进行扩容。
4、一个DDM实例内,只允许同时对一个实例逻辑库进行平滑扩容操作;不同的DDM实例内,可以同时扩容实例逻辑库。
5、不允许使用正在扩容中的RDS实例进行建库建表操作。
6、最多仅支持扩容50个RDS实例。
7、扩容最大规格为:每个分片不超过20张表。每张表不超过800万数据。
以上就是关于数据库秒级平滑扩容的实践方案,想要了解更多,欢迎点开分布式数据库中间件DDM查看。
最新文章
- 《zw版·Halcon-delphi系列原创教程》简单的令人发指,只有10行代码的车牌识别脚本
- 如何修改SharePoint列表条数等阈值
- 界面排版-TableLayout的stretchColumns方法
- hibernate不关闭session后果
- JS中的this用法详解
- 题目1069:查找学生信息(STL的map简单应用)
- Atmel Studio 6.0 重新安装
- HTML 5最终确定,八年后,我们再谈谈如何改变世界
- C#代码实现把网页文件保存为mht文件
- mongodb 3.4 分片 一主 一副 一仲 鉴权集群部署.
- 通过getResourceAsStream 获得Properties文件属性和属性值
- P1451 求细胞数量
- 贷款资讯类APP、贷款资讯网站廉价卖,需要的进来看看
- reset()方法的使用、jq下面reset()的正确使用方法
- 使用Jupyter Notebook编写技术文档
- Confluence 6 创建一个空间
- wcf消息契约
- seo标题关键字描述字数限制Title,keywords,description长度最长多长 ?
- 实际用户ID和有效用户ID (一) *****
- HTML和CSS <;h1>; --1-- <;h1>;
热门文章
- 微信关于网页授权access_token和普通access_token的区别
- jq微信分享
- 安装mask-rcnn问题汇总
- [Linux]正则表达式和grep使用【转载】
- ThinkPHP---TP功能类之公文管理功能2----------继续完善
- 00The C Programming Language
- idea使用maven install命令打包(springboot),jar运行时出现没有主清单属性
- 2n皇后 - 回溯
- centos 7桌面和命令行转行
- 剑指offer---以O(1)时间删除链表节点