检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
select场景,建议join条件是每个表的拆分字段或使用广播表,或者是驱动表是一个小表(inner/left join驱动表是左表,right join驱动表是右表)。 不建议两个大表直接进行join操作。 不建议join on condition中含有非等值操作。 如遇到临时表超限(Temp table
本节定义了分布式数据库中间件服务上报云监控的监控指标的命名空间,监控指标列表和维度定义,您可以通过云监控提供的API接口来检索DDM产生的监控指标信息。 命名空间 SYS.DDMS SYS.DDM是DDM1.0版本的命名空间。 SYS.DDMS是DDM2.0版本的命名空间。 目前DDM服务已经全面升级为2
DDM表数据重载 功能介绍 DDM实例跨region容灾场景下,针对目标DDM实例实现表数据reload,使数据同步。 接口约束 无。 调试 您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
表数据重载 DDM跨region容灾场景下,通过数据复制服务(DRS)进行存储层数据迁移,迁移完成之后,目标DDM无法感知逻辑表信息所在位置,所以需要在目标DDM主动下发“表数据重载”,重新加载信息,跟分片建立联系。 操作步骤 登录分布式数据库中间件控制台。 在“实例管理”页面,选择目标实例。
创建表 禁止创建表名以"_ddm"为前缀的表,系统默认认定此类表为系统内部表。 拆分表不支持全局唯一索引,当唯一键和拆分键不一致时,不能保证数据的唯一性。 建议使用bigint型作为自增键的数据类型。tinyint、smallint、mediumint、integer、int数据
通过DDM对RDS for MySQL实例进行分库分表 方案概述 RDS for MySQL准备 DDM准备 创建DRS迁移任务
广播表和单表的使用场景 单表 DDM管理控制台不提供单表创建操作,用户可以通过MySQL客户端或应用程序连接到DDM实例后自行创建。 如果一张表的数据量预估在1000万条以下,且没有与其他拆分表进行关联查询的需求,建议将其设置为单表类型,存储在默认分片中。 单表创建样例,不做任何拆分:
进行建表操作。 建表操作是将源RDS for MySQL数据库中的表在DDM实例中重新创建,根据表的性质可选择创建为广播表、单表、拆分表。广播表和单表的使用场景请参考广播表和单表的使用场景。 图1 原数据库表 图2 address_test表数据 图3 user_test表数据
规格列表 DDM实例规格,详见如下列表,具体规格请以实际环境为准。 表1 实例规格列表 规格码 CPU 内存 架构 ddm.c6.2xlarge.2 8 16 X86 ddm.c6.4xlarge.2 16 32 X86 ddm.c6.8xlarge.2 32 64 X86 ddm
每一行表示一个不一致的物理拆分表的详细检查结果。 DATABASE_NAME:物理表所在的物理分库。 TABLE_NAME:物理表表的表名。 TABLE_TYPE:物理表所属逻辑表类型。 EXTRA_COLUMNS:该物理表多出来的列。 MISSING_COLUMNS:表示该物理表缺少的列。
方案概述 操作场景 本文将介绍如何通过DDM对已有RDS for MySQL实例进行分库分表。 操作流程 图1 流程图 前提条件 拥有华为账号。 新的RDS for MySQL实例已创建成功。 源RDS for MySQL实例与目标DDM实例、新RDS for MySQL实例必须处于相同VPC,且安全组配置相同。
DDM表数据重载 表1 DDM逻辑表管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目 (Enterprise Rroject) DDM表数据重载 POST /v1/{project_id}/instances/{instance_id}/reload-config
TABLE_NAME:逻辑表名称。 TABLE_TYPE:逻辑表类型。 SINGLE:单表。 BROADCAST:广播表。 SHARDING:拆分表。 DDL_CONSISTENCY:该逻辑表对应所有物理表DDL是否一致。 TOTAL_COUNT:该逻辑表有几个物理表。 INCONSIS
业务的分布式数据库中间件实例。 表1 DDM最佳实践一览表 章节名称 简介 合理制定分片策略 介绍创建拆分表时如何选择拆分键和拆分算法。 如何选择DDM逻辑库分片数 介绍创建拆分库时如何合理选择逻辑库分片。 广播表和单表的使用场景 介绍广播表和单表的常用场景。 DDM事务模型 介绍DDM的事务模型。
创建逻辑表。 创建逻辑表结构请与2中导出的表结构保持一致,把源表映射到目标DDM实例逻辑表,明确对应表结构和表数据的迁移策略,如表2所示。 创建前可先通过SQL语句:show create table {TABLE_NAME}查看自建MySQL中数据表结构。 表2 表迁移策略 逻辑库类型
查询逻辑库的磁盘大小会影响DDM实例的性能。 在逻辑库列表页面,单击目标逻辑库名称或者单击操作列的“管理”,进入逻辑库基本信息页面。 在“逻辑库表管理”页签下,查看当前逻辑库中的逻辑表的信息。 图2 逻辑表列表 您可以查看到逻辑表的表名、类型、分库键、分库算法、分库数、分表键、分表算法、分表数、自增字段、自增键起
迁移策略 Mycat与DDM数据表类型不同,迁移策略也有所差异,详情如表1所示。 表1 迁移策略 Mycat表类型 DDM表类型 迁移策略 非拆分表 单表 Mycat导出表结构和表数据。 连接目标DDM关联的RDS将数据导入至目标DDM(非拆分表场景)。 拆分表:分片规则为hash类(含年月日等日期类)
高危操作提示 在您使用DDM过程中,请不要进行以下高危操作: 为避免系统表、元数据等信息被误清理,用户尽量避免直连DN节点进行数据操作。 为避免元数据丢失,用户请不要清理DDM系统表(如:TBL_DRDS_TABLE、MYCAT_SEQUENCE)。 父主题: 使用限制
创建目标库表结构 DRS目前仅支持迁移源端MySQL的数据到目标DDM,不支持迁移源库表结构及其他数据库对象。用户需要在目标库根据源端逻辑库的表结构,自行在目标库创建对应的表结构及索引。未在目标库创建的对象,视为用户不选择这个对象进行迁移。更对约束限制可参考使用须知。 操作步骤 登录华为云控制台。
按照数据表的实际使用需求,选择最合适的逻辑表类型创建,实际操作请参考创建表。 单表只在第一个分片创建表以及存储数据。 全局表在每一个分片创建表并且存储全量数据。 拆分表在每一个分片创建表,数据按照拆分规则分散存储在分片中。 逻辑表的分片规则 逻辑表的拆分键选择非常重要。建议按实际