标签: 数据库
分库分表不是银弹
分库分表在很多团队是一种默认操作:数据量一大就分。但它换来的收益很窄,付出的代价很宽,而且代价大多在上线半年后才开始显现。 先问要不要分 分库分表真正解决的问题只有两个:单表数据量导致的索引效率下降,以及单库写入的 IOPS 瓶颈。除此之外的问题它都解决不了,甚至会恶化。 在决定分之前,这几件事的性价比更高: 加索引或改查询。慢查询里相当大一部分是索引缺失或者写法导致索引失效,跟数据量无关。 冷热分离。交易流水表里九成查询集中在最近三个月。把历史数据归档到历史库,主表立刻瘦身,成本远低于分表。 …
分库分表在很多团队是一种默认操作:数据量一大就分。但它换来的收益很窄,付出的代价很宽,而且代价大多在上线半年后才开始显现。 先问要不要分 分库分表真正解决的问题只有两个:单表数据量导致的索引效率下降,以及单库写入的 IOPS 瓶颈。除此之外的问题它都解决不了,甚至会恶化。 在决定分之前,这几件事的性价比更高: 加索引或改查询。慢查询里相当大一部分是索引缺失或者写法导致索引失效,跟数据量无关。 冷热分离。交易流水表里九成查询集中在最近三个月。把历史数据归档到历史库,主表立刻瘦身,成本远低于分表。 …