2025-11-20 06:43:57
大表通常指超过500万行数据,查询时间超过1秒就可能出现卡顿。比如用亿级数据量做查询,直接导致数据库变慢,还可能撑不住备份恢复。超过千万行建议分表或定期清理冗余数据。
为什么这样回答?因为大表的标准要看具体场景。比如淘宝订单表有十亿行,但用合理索引和分库就能用。但普通小公司用500万行订单表,没有分表的话查询就会变慢。根据《MySQL技术内幕》数据,表数据量每增加一倍,查询时间最多提升30%。当表超过500万行且索引数量超过20个时,优化成本会超过数据收益。比如某电商表有800万行,原查询用秒级,优化后降到0.3秒,但优化耗时用了2个月。所以既要看数据量,也要看查询频率和索引设计。比如用亿级数据量但只做简单统计,可能不需要分表,但频繁复杂查询的千万级表,最好提前规划分表策略。
本题链接: