对于单节点数据库而言,分表和索引在本质应该原理差不多,应该在性能上没有区别吧?虚心请教下大家
![]() | 1 dw2693734d OP 比如说 postgres 的 b-tree |
![]() | 2 acerphoenix 2022-12-09 09:39:59 +08:00 还是不一样,比如 mysql,单表数据量太大会影响性能,不过一般到不了那么大而已 |
3 yoahang 2022-12-09 09:52:04 +08:00 要考虑不走索引的情况吧 |
![]() | 4 7911364440 2022-12-09 11:11:55 +08:00 如果是横向分表的话,可以减少单表的数据量,也是可以提高性能的。 |
![]() | 5 dw2693734d OP |
6 lookStupiToForce 2022-12-26 11:57:53 +08:00 ![]() 今天看到了,直接回一下 结论是有用: 1. 大表的索引查询,可以降低 b+tree 层数 https://mp.weixin.qq.com/s/XX_NkIIf_PLyU4IE6lEEYQ 2. 按特定字段 /值分表,相当于手动实现了一遍“分区表”( https://developer.aliyun.com/article/75306 ),对于大数据量的查询肯定有显著提升 <-- 因为数据表大小实质上减少了,随机 IO 下磁头要扫过的范围也减少了;同时索引范围也减少了,索引效率也会有提升 |