检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
补充说明 HINT对于所有的单表以及全局表失效,只对各种分表起作用。 父主题: TRUNCATE TABLE
合理制定分片策略 当数据表之间存在E-R关系时,可以制定相同的分片规则,各数据表分别选择有关联关系的字段作为拆分键,这样各表中有关联关系的数据将会存储在一个分片上,避免数据跨分片JOIN操作。如客户表、订单表与订单明细表,在创建拆分表时,建议都选取客户ID作为拆分键。 表1 拆分键与拆分算法使用简介
DD按日期哈希 适用场景 DD适用于按日期的天数进行分表,分表的表数就是日期的天数。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值的日期的天数进行取余运算并得到分表下标
DDM实例管理 表1 DDM实例管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目 (Enterprise Rroject) 购买DDM 实例(按需) 购买DDM 实例(包周期) POST /v1/{project_id}/instances ddm:instance
WEEK按星期哈希 适用场景 WEEK适用于按周数的日期目进行分表,分表的表名的下标分别对应一周中的各个日期(星期一到星期天)。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值所对应的一周之中的日期进行取余运算并得到分表下标
SHOW RULE 命令格式: 查看数据库下每一个逻辑表的拆分情况。 show rule 查看数据库下指定逻辑表的拆分情况。 show rule from <table_name> 输出详解: TABLE_NAME :表名。 BROADCAST:是否为广播表(0:否,1:是)。 DB_PARTITION_KEY
DDM是否支持分布式JOIN DDM支持分布式JOIN。 表设计时,增加字段冗余 支持跨分片的JOIN,主要实现的方式有三种:广播表,ER分片和ShareJoin。 DDM目前禁止多个表的跨库update和delete。 父主题: SQL语法类
HINT-TABLE 命令格式: /*+table=<physical_table_name>*/ TRUNCATE TABLE <table_name> 描述: 删除当前库下表名<physical_table_name>的所有物理表的数据,其余分表不受影响。 删除前示例: 删除后示例
状态码 正常状态 正常状态返回码如表1所示。 表1 正常状态返回码 状态码 编码 错误码说明 200 OK 处理正常。 202 OK 异步请求成功提交。 异常状态 异常状态返回码如表2所示。 表2 异常状态返回码 状态码 编码 错误码说明 400 Bad Request 服务器未能处理请求
UPDATE 常用语法 UPDATE table_reference SET col_name1={expr1} [, col_name2={expr2}] ... [WHERE where_condition] 语法限制 不支持使用子查询(相关子查询和非相关子查询)。 UPDATE
HINT-DB/TABLE 命令格式: /*+db=<physical_db_name>,table=<physical_table_name>*/ TRUNCATE TABLE <table_name> 描述: 删除库名为<physical_db_name>下表名为<physical_table_name
CHECK TABLE 检查当前逻辑库下所有逻辑表各分表的DDL一致性 检查某一张逻辑表各分表的DDL一致性 父主题: 实用SQL语句
SHOW TOPOLOGY 命令格式: 查看数据库下指定逻辑表的物理分布情况。 show topology from <table_name> 输出详解: Rds_instance_id:RDS的实例ID。 HOST :IP 。 PORT :端口 。 DATABASE :物理库 。
MMDD按月日哈希 适用场景 MMDD适用于按一年的天数(即一年中日期)进行分表,分表的表名的下标就是一年中的第几天,一年最多366天。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值所对应的日期在一年中对应的天数
REPLACE REPLACE用于往表中插入行或替换表中的行。 常用语法 replace into table(col1,col2,col3) values(value1,value2,value3) 语法限制 暂不支持PARTITION语法。 当自增表格ID不存在时,使用REPLACE
DDM事务模型 因为DDM中的表一般都做了分库分表,使得这些表中的数据可能分布在很多个RDS实例上的不同数据库分片内。在DDM中一个事务中对各个逻辑表的增删改查很有可能实际发生在多个RDS实例上的不同数据库分片上,每个RDS实例上同一数据库分片内所发生的对分片内数据表的一系列操作相当于一个本地事务
如何将单RDS数据整库迁移至DDM 操作场景 本章节主要介绍将单RDS(非拆分,以下简称旧RDS)库中的数据整库迁移到DDM实例非拆分库中,仅使用DDM做读写分离场景。 迁移过程中可能会出现业务中断情况,中断时长与迁移数据量大小、网络情况相关。 数据迁移是一项比较复杂的操作,建议在业务量较低时进行
如何将Mycat数据整库迁移至DDM 操作场景 本章节主要介绍将Mycat中的数据整库迁移到DDM中。 迁移过程中可能会出现业务中断情况,中断时长与迁移数据量大小、网络情况相关。 数据迁移是一项比较复杂的操作,建议在业务量较低时进行。本实践仅供参考,您需要根据自己业务场景、数据量、
LOAD DATA 标准示例 LOAD DATA LOCAL INFILE '/data/data.txt' IGNORE INTO TABLE test CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED
认证鉴权 调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。 Token认证:通过Token认证通用请求。 AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。推荐使用AK/SK认证,其安全性比Token认证要高