全部产品
分布式关系型数据库 DRDS

DRDS 分库分表

更新时间:2017-08-23 14:20:02   分享:   

DRDS 在后端将数据量较大的数据表水平拆分到后端的每个 RDS 数据库中,这些拆分到 RDS 中的数据库被称为分库,分库中的表称为分表。

拆分后,每个分库负责每一份数据的读写操作,从而有效的分散了整体访问压力。在系统扩容时,只需要水平增加分库的数量,并且迁移相关数据,就可以提高 DRDS 系统的总体容量。

DRDS 支持库级拆分,表级拆分和分库分表拆分,通过 DRDS DDL 语句指定,具体操作可参考建表语法和方式,以及 DDL 拆分函数说明

拆分键

拆分键即分库/分表字段,因此分为分库键和分表键。拆分键暂时只支持单个字段。

  • 分库键:DRDS 根据分库键的值将数据水平拆分到后端的每一个 RDS 分库里。键值相同的数据,一定会位于同一个 RDS 数据库里。
  • 分表键:每一张逻辑表都可以定义自己的分表键,键值相同的数据,一定会位于同一个 RDS 数据表里。

分库分表

注意:在执行带有 WHERE 条件的 UPDATE、DELETE、SELECT 语句时,如果 SQL 语句中没有使用拆分键,或者虽然指定了拆分键但是范围太广,会导致 SQL 语句被分发到所有分库上执行(即全表扫描),且执行结果会在 DRDS 中进行合并。全表扫描响应较慢,在高并发业务场景中应尽量避免使用。

本文导读目录
本文导读目录
以上内容是否对您有帮助?