您的位置:首页 > 数据库

分布式数据库中间件设想

2021-03-01 23:32 706 查看

DB PROXY 功能

0 拥有分片数数据库和主数据库(非分片的)

1 前端SQL明文要求,并非绑定变量化,且客户端HASH成SQLID

2 前端MAXCONN限制,MAXPACKESIZE

3 返回前端RETURN PACKAGE SIZE+RETURN ROWS

4 缓存SQLID路由路径

5 路由分析SQL明文确定路由路径 并且存放在缓存中

6 分片表 有全局表,单分片表,主从分表

7 分片表 算法:LIST HASH,RANGE,DATETIME

8 SQL语句中FROM后面的表必须全部是分片表,如果有一个是非分表将无法分片,则路由到主数据库去执行。

10 全局事务表,这是解决全局表的和全分片事务表。当一个事务需要在全分片库里执行,那在全局事务表做登记。

当所有分片事务执行成功则向下发COMMIT;部分失败则失败向成功的分片库发ROLLBACK命令。

11 异步日志

除了全局表外分片表的DML需要同步到主库,DBRROXY会生产SHARDING_TO_MASTER_ASYN.LOG

当在主库里执行分片表的DML然后需要同步到分片表。DBPROXY会生产MASTER_TO_SHARDING_ASYN.LOG

需要设置延迟时间

12 DDL 将视为全局事务 ONLINE DDL

13 事务的一致性读 需要应用先锁定数据 SELECT * FROM T FOR UPDATE;

14 支持逻辑数据节点,分片表存放在逻辑节点上,物理数据节点上可以有多个逻辑节点。

15 分片表重新分布是基于逻辑节点

16 支持逻辑节点整体迁移不同的物理节点。

17 物理节点不支持主从切换,需要KEEP AVLIE(ORACLE RAC SCAN IP OR VIP)

18 支持物理节点读写分离和从库负载均衡。

19 TABLE NAME TUSER_G(M,S,N)_LIST(HASH,RANGE)_001(UNKONW)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: