性能分析:哈希索引导致删除慢

前端时间,应用人员上报一个性能问题:在生产环境中,每天凌晨时段数据库运行很慢,一些事件运行失败,导致一部分应用功能异常。


根据应用人员提供的时间段,对数据库进行排查。


先对主机CPU、IO、数据库连接等监控历史数据进行分析,确认故障时间线,缩小时间范围。

性能分析:哈希索引导致删除慢”> </p> <p> <br/> </p> <p>从上图看到破发左右,数据库活动连接由0增到200,和活动连接数增到400 +,数据库连接异常增高,需要进一步分析数据库此时间在执行什么操作。</p> <p> <br/> </p> <p> <img src= <李>

把删除改为没地方有条件的全表删除或截断(该表数据是缓存数据)。

<李>

把哈希索引改为btree索引。


注:由于btree索引占用的内存空间很大(经测试,btree索引占用空间是哈希索引的6倍以上),数据库主机当时内存紧张,所以优先使用方案1。

性能分析:哈希索引导致删除慢