检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
力。 应用场景 DDM支持以下三种不同的分片变更方式,以满足不同的应用场景。 方式一:分片数不变,增加数据节点数量 该变更方式不改变当前分片数,只增加数据节点数量。将原数据节点的部分分片平移到新增数据节点上,分片数据进行平移,数据相对位置不需要重新分布,所以变更速度最快,推荐您优先使用此方式进行分片变更。
建议使用bigint型作为自增键的数据类型。tinyint、smallint、mediumint、integer、int数据类型不建议作为自增键的类型,容易越界造成值重复。 通过“show sequences”命令可查看自增序列的使用率。如果使用率已达到或接近100%,请不要再插入数据,联系DDM客服人员进行处理。
"total_page":10 } 汇总查询结果。 参考1持续调用,如果查询的DDM实例列表为空,或者返回的body体中不存在instances字段,表明所有DDM实例查询完成。 汇总所有查询到的DDM实例即当前查询条件下的所有DDM实例。 父主题: 应用示例
创建DDM实例 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。 按需设置实例相关信息和规格。参数说明请参考实例购买。
是 String 租户在某一region下的project ID。 获取方法请参见获取项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 索引位置,偏移量。 从第一条数据偏移offset条数据后开始查询,默认为0。 取值必须为数字,且不能为负数。
es/{node_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户在某一region下的project ID。 获取方法请参见获取项目ID。 instance_id 是 String DDM实例ID。 node_id 是 String
租户在某一region下的project ID。 获取方法请参见获取项目ID。 instance_id 是 String DDM实例ID。 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务的“获取用户Token”接口来获取。
适用场景 适用于需要按用户ID或订单ID进行分库的场景。 使用说明 拆分键的数据类型必须是整数类型(INT, INTEGER, BIGINT, MEDIUMINT, SMALLINT, TINYINT, DECIMAL(支持精度为0的情况))或字符串类型(CHAR,VARCHAR)。
用结果集小的表作为驱动表,尽量减少join的循环次数(使用left join/join时,左边是驱动表,右边是被驱动表;使用right join时,右边是驱动表,左边是被驱动表)。 对于被驱动表的join字段需添加索引,不建议两张大表直接进行join,尤其是包含不带限制条件的单表,将消耗大量计算资源。
DDM实例ID。 ddm_dbname 是 String 需要查询的逻辑库名称,不区分大小写。 表2 Query参数 参数 是否必选 参数类型 描述 delete_rds_data 否 String 是否同时删除关联后端数据库实例上存储的数据。 取值为“true”:删除。 取值为空或“false”:不删除。
方案概述 操作场景 本文将介绍如何通过DDM对已有RDS for MySQL实例进行分库分表。 操作流程 图1 流程图 前提条件 拥有华为账号。 新的RDS for MySQL实例已创建成功。 源RDS for MySQL实例与目标DDM实例、新RDS for MySQL实例必须处于相同VPC,且安全组配置相同。
objects 对应API的链接信息,v1、v3版本该字段为空。 status String 版本状态。 取值“CURRENT”,表示该版本为主推版本。 取值“SUPPORTED”,表示为老版本,但是现在还继续支持 取值“DEPRECATED”,表示为废弃版本,存在后续删除的可能。 version
返回结果 状态码 请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。 状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。 对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。 响应消息头 对应请求
目前只支持SELECT语句。 通常情况下,实现了读写分离之后,主实例上只能进行写操作,只读实例上只进行读操作。但是在某些特殊情况,需要在主实例上读取数据时,可以用自定义Hint的方式指定在主实例上进行读操作。此方式仅适用于查询功能。 父主题: 实用SQL语句
适用于需要按年份与一年的周数进行分库的场景,建议该函数与tbpartition YYYYWEEK(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与一年的周数计算哈希值,然后再按分库/表数取余。
创建DRS迁移任务 创建DRS迁移任务 确认迁移执行结果 父主题: 通过DDM对RDS for MySQL实例进行分库分表
正则匹配:禁止在对应逻辑库执行含有该正则表达式的SQL语句。 配置的黑名单SQL之间以英文分号隔开,前缀匹配、全量匹配、正则匹配中的SQL语句大小分别不超过1KB。 如果在配置SQL黑名单弹窗中清除之前编辑的前缀匹配与全量匹配中的SQL语句,并单击“确定”,则表示清空之前配置的SQL黑名单。 父主题:
DDM是否支持分布式JOIN DDM支持分布式JOIN。 表设计时,增加字段冗余 支持跨分片的JOIN,主要实现的方式有三种:广播表,ER分片和ShareJoin。 DDM目前禁止多个表的跨库update和delete。 父主题: SQL语法类
适用场景 适用于需要按用户ID或订单ID进行分库的场景。 使用说明 拆分键的数据类型必须是整数类型(INT, INTEGER, BIGINT, MEDIUMINT, SMALLINT, TINYINT, DECIMAL(支持精度为0的情况))或字符串类型(CHAR,VARCHAR)。
租户在某一region下的project ID。 获取方法请参见获取项目ID。 instance_id 是 String DDM实例ID。 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 x-auth-token 是 String 用户Token。 通过调用IAM服务的“获取用户Token”接口来获取。