562
阿里云
遍历全表操作__开发手册_分布式关系型数据库 DRDS-阿里云
DRDS 在全表扫描时支持聚合函数进行统计汇总,目前全表扫描默认是关闭的,需要您显示的通过配置打开,因为我们认为默认关闭对于您而言,性能更可控。 具体的配置方式,您可以访问我们提供的运维管理平台,找到对应的表后进行配置:
1) 如果目标表没有分库分表,那么 DRDS 可以支持任何聚合函数,因为实际上 DRDS 是直接把原 SQL传递到后端 MySQL 执行。
2) 非全表扫描:SQL语句在经过 DRDS 路由后,直接发送到后端单个 MySQL 库上执行。如果拆分键在 WHERE 条件中都是 = 关系,常会出现这种情况。在非全表扫描的情形下,同样可以支持任何聚合函数。
3) 全表扫描:目前支持的聚合函数有 COUNT, MAX, MIN, SUM, 另外在全表扫描时同样支持 LIKE, ORDER BY 与 LIMIT 语法, 但是不支持 GROUP BY 语法。
4) 并行的全表扫描:在一些时候您可能希望直接从所有库上面dump数据到其他地方,我们也提供了方法可以允许您感知到当前下层有多少个库,并允许您单独的针对这些库进行操作。
第一步 获取当前总的库表个数
mysql:> show topology from tddl_users;
+------+--------------------------+---------------------+
| ID | GROUP_NAME | TABLE_NAME |
+------+--------------------------+---------------------+
| 0 | DRDS_00_RDS | drds_users |
| 1 | DRDS_01_RDS | drds_users |
+------+--------------------------+--------------------+
第二步 针对topology进行单表遍历
如:我想进行第一个表的查询,那么可以运行
/*TDDL:node='DRDS_00_RDS'*/ select * from drds_users;
即可在第0个库运行当前SQL
/*TDDL:node='DRDS_01_RDS'*/ select * from drds_users;
即可在第1个库运行当前SQL
需要注意的是,这个库的个数可能会因为进行扩容等情况随时的发生变化,我们不保证这些GROUPS的名字一定是永远固定不变的,所以请务必每次都先运行show topology from table语句来获得最新的表拓扑。
最后更新:2016-11-23 17:31:29
上一篇:
全局唯一数字序列使用__开发手册_分布式关系型数据库 DRDS-阿里云
下一篇:
DRDS自定义注释__开发手册_分布式关系型数据库 DRDS-阿里云
添加角色并通过ACL授权__快速开始_安全指南_大数据计算服务-阿里云
SSH 登录时出现如下错误:Host key verification failed__远程登录 (SSH)_Linux操作运维问题_云服务器 ECS-阿里云
使用阿里云Java应用向导__使用手册_Eclipse 插件-阿里云
监控__用户指南_云服务器 ECS-阿里云
查询实例规格族列表__其他接口_API 参考_云服务器 ECS-阿里云
SLBSubDomainType__数据类型_API文档_云解析-阿里云
计量计费__购买指导_表格存储-阿里云
NAT网关-使用限制__使用限制_用户指南_专有网络 VPC-阿里云
SSH 登录时出现如下错误:Maximum amount of failed attempts was reached__远程登录 (SSH)_Linux操作运维问题_云服务器 ECS-阿里云
MFADevice__数据类型_RAM API文档_访问控制-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云