检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
并发访问。 云图说 立即使用 成长地图 由浅入深,带您玩转DDM 01 了解 分布式数据库中间件(Distributed Database Middleware,简称DDM),是一款分布式关系型数据库中间件。兼容MySQL协议,专注于解决数据库分布式扩展问题,突破传统数据库的容量和性能瓶颈,实现海量数据高并发访问。
数据中心自建MySQL迁移到DDM 企业当前使用数据中心自建MySQL,希望能使用DDM将数据进行分布式存储。 本实践主要介绍将数据中心自建MySQL数据库中数据迁移到DDM的操作流程。 其他云MySQL迁移到DDM 企业当前使用其他云MySQL实例,希望能使用华为云DDM将数据进行分布式存储。 本实践主要
YYYYWEEK按年周哈希 适用场景 适用于需要按年份与一年的周数进行分库的场景,建议该函数与tbpartition YYYYWEEK(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与一年
YYYYMM按年月哈希 适用场景 适用于需要按年份与月份进行分库的场景,建议该函数与 tbpartition YYYYMM(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与月份计算哈希值,然后再按分库数取余。
DD按日期哈希 适用场景 DD适用于按日期的天数进行分表,分表的表数就是日期的天数。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值的日期的天数进行取余运算并得到分表下标。
MMDD适用于按一年的天数(即一年中日期)进行分表,分表的表名的下标就是一年中的第几天,一年最多366天。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值所对应的日期在一年中对应的天数,然后进行取余运算并得到分表下标。
RIGHT_SHIFT算法 适用场景 当拆分键大部分键值的低位部位区分度比较低而高位部分区分度比较高时,则适用于通过此拆分算法提高散列结果的均匀度。 使用说明 拆分键的数据类型必须是整数类型。 路由方式 根据拆分键的键值(键值必须是整数)有符号地向右移二进制移指定的位数(位数由用户通过 DDL
YYYYDD按年日哈希 适用场景 适用于需要按年份与一年的天数进行分库的场景,建议该函数与tbpartition YYYYDD(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与一年
DN管理提供数据节点管理服务,管理DDM实例关联的RDS for MySQL实例,展现实例的状态、存储、规格、读权重等信息,提供设置读权重、同步DN信息、开启读写分离的快捷操作。 表1 功能介绍 功能 使用场景 同步DN信息 主要用于数据节点相关信息变化时(如增删只读实例,变更连接地址/端口号,规格变更,删除数据节点
如何处理DDM逻辑库与RDS实例的先后关系 DDM逻辑库与关联的RDS强相关,不允许直接删除关联的RDS,这会导致业务不可用且逻辑库也会删除失败。如果需要删除,先删除逻辑库再删除RDS。 父主题: DDM使用类
终端节点 终端节点即调用API的请求地址,不同服务不同区域的终端节点不同,您可以从地区和终端节点中查询服务的终端节点。 父主题: 使用前必读
下的,在逻辑库“dml_test_2”下使用全局序列需要显式指定逻辑库“dml_test_1.seq_test.nextval”、“dml_test_1.seq_test.currval”。 全局序列结合insert和replace的使用只支持拆分表,不支持广播表和单表。 nex
查看购买成功的DDM实例。 图2 购买成功 步骤二:购买RDS for MySQL实例 进入购买云数据库RDS页面。 填选实例信息后单击“立即购买”。 仅支持5.7、8.0版本的RDS for MySQL实例与DDM实例进行关联。 RDS for MySQL实例的虚拟私有云(VPC)和子网必须和D
为了避免分片变更失败,请您最晚在变更前一天完成以下内容的检查。 预检查内容 表1 预检查内容 检查内容 检查目的 检查未通过解决方案 表名长度检查 分片变更需要数据重分布时(例如:增加分片),会创建临时表,临时表的表名长度会略长于原表名,需确保临时表的表名长度不超过MySQL限制。 请修改过长的表名。
by和order by过程中使用索引。 Join相关SQL调优建议 建议进行join操作时,join条件优先使用分片键等值连接。 用结果集小的表作为驱动表,尽量减少join的循环次数(使用left join/join时,左边是驱动表,右边是被驱动表;使用right join时,右边是驱动表,左边是被驱动表)。
所组成的分布式事务,这些本地事务要么全部成功,要么全部失败。 DDM的分布式事务实现 DDM中的分布式事务模块基于MySQL XA协议实现,XA协议是对2PC(Two Phase Commit)事务模型的一种实现,2PC是一种经典的分布式事务实现方案。基于MySQL XA协议的分
账号规则 账号 与MySQL不同,DDM只通过用户名确定一个账号,而不是通过'username'@'host'方式来确定一个账号。 用户名规则 大小写敏感。 长度为1-32个字符,必须以字母开头,可以包含字母,数字、下划线,不能包含其它特殊字符。 密码规则 长度为8~32个字符。
库、逻辑库分片变更后清理数据、删除实例等影响Metadata的重要操作也会触发元数据备份。 元数据恢复特性用于误删库或者RDS for MySQL本身出现异常等业务场景,可根据过去的某个时间点,将Metadata数据与已经PITR恢复完成的RDS for MySQL实例进行匹配,重建DDM和RDS
如何处理配置参数未超时却报错 建议可将参数SocketTimeOut值调整或者去掉,默认为0则不断开连接。 父主题: DDM使用类
DDM运行于虚拟私有云,需要使用虚拟私有云创建的IP和带宽。通过虚拟私有云安全组的功能,可增强访问DDM服务的安全性。 弹性云服务器(ECS) 成功购买DDM实例后,您需要通过弹性云服务器连接使用DDM实例。 云数据库服务(RDS) 购买DDM实例后,可以关联同一虚拟私有云中的RDS for M