全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
分布式关系型数据库 DRDS

DRDS SQL 路由

更新时间:2017-12-11 21:26:41

在分库分表模式下,DRDS 会根据拆分键(即拆分字段)以及 SQL 语义把 SQL 语句分发到底层的各个存储的分表进行执行。执行结束后,DRDS 会将各个分表上获取的数据合并,返回给用户。本文介绍在分库分表场景中 DRDS 执行 SQL 语句时的路由原理。DRDS 的数据拆分原理请参考文档分库分表

拆分键

分库分表过程中,DRDS 按照指定的拆分键,加上特定的算法进行计算,根据计算结果将数据存储到对应的分表中。拆分键是 DRDS 中数据分布和 SQL 路由的凭证。

拆分键

SQL 路由

当用户发起执行 SQL 语句的请求时,DRDS 会理解 SQL 语句的含义,然后按照拆分键的值和执行策略将 SQL 路由到对应分区进行执行,如下图所示:

SQL 路由1

数据合并

如果一个 SQL 语句被路由到多个分表执行,DRDS 会将各个分表返回的数据按照原始 SQL 语义进行合并,并将最终结果返回给用户。

SQL 路由2

本文导读目录