水平分表
- 通常指的是:通过应用程序层,将数据划分到不同的表中进行存储,甚至可以分布到不同的数据库服务器上。分区是在mysql服务器层完成的分区算法
- 分表会导致客户端明显的改变,在服务器端,出现结构相同的多张表
以账单为例:
结构完全相同的三张表
应用程序决定当前使用哪张表以时间为依据
查数据
插数据
先设计生成id的表
分表的原因
数据库减压
分区算法局限(重要)
分区和水平分表都属于水平分割
垂直分割
- 垂直分割:每个表的记录数目一致,但是字段不一致
- 表之间的关系:典型的1:1关系
- 分割依据:业务逻辑,在功能中常在一起使用的字段,放在同一个表中