shardingsphere 学习笔记

shardingsphere 中存在5种表类型

  • 逻辑表: 相同结构的水平拆分数据库(表)的逻辑名称,是 SQL 中表的逻辑标识。 例:订单数据根据主键尾数拆分为 10 张表,分别是 t_order_0 到 t_order_9,他们的逻辑表名为 t_order。
  • 真实表: 在水平拆分的数据库中真实存在的物理表。 即上个示例中的 t_order_0 到 t_order_9。
  • ,绑定表: 如shardingsphere 拆分了3个db,如果我有两张 关联表,那么他们可以存在一个绑定键,绑定表可以保证所有持有这个绑定键的数据在同一个db下,这样就可以防止跨db 的表关联,可以极大增加关联性能,如果没有配置绑定键,表关联时会出现笛卡尔积问题。
  • 具体文档如下
  • 5种表的概念

分片

分片方式

自动化分片: 分片算法语法糖,用于便捷的托管所有数据节点,使用者无需关注真实表的物理分布。 包括取模、哈希、范围、时间等常用分片算法的实现。
自定义分片算法: 提供接口让应用开发者自行实现与业务实现紧密相关的分片算法,并允许使用者自行管理真实表的物理分布。

分片策略

  • 分片键+分片方式 = 分片策略
  • 最常用的分片方式是行表达式分片
  • 用表达式的方式更优雅的表达分片策略 详情可查看上方分片文档