架构师之路——数据库垂直拆分

需求背景:

当数据库的数据量非常大时,水平切分和垂直拆分是两种常见的降低数据库大小,提升性能的方法。

水平切分:

将一个库(表)上的数据拆分到多个库(表)上,降低单库(表)大小。
各库的特点:
1、每个库(表)的结构都一样
2、每个库(表)的数据都不一样,没有交集
3、所有库(表)的并集是全量数据

垂直拆分:

将一个属性较多,一行数据较大的表,将不同的属性拆分到不同的表中,降低单库(表)大小。
各库的特点:
1、每个库(表)的结构都不一样
2、一般来说,每个库(表)的属性至少有一列交集,一般是主键
3、所有库(表)的并集是全量数据

垂直拆分的依据是什么:

1、将长度较短,访问频率较高的属性尽量放在一个表里,表为主表。
2、将字段较长,访问频率较低的属性尽量放在一个表里,表为扩展表。
3、经常一起访问的属性,可以放在一个表里。

发布了128 篇原创文章 · 获赞 0 · 访问量 2503

猜你喜欢

转载自blog.csdn.net/qq_41134008/article/details/105491057