今天搜索了下开心农场的性能优化策略,看到其中有关数据库优化有一条写到:用update代替insert和delete,不是特别明白,于是搜索之,发现有人给出这样的解答:
写道
用 update 代替 delete:在删除行时,可以将行标示为“删除”即可,此操作只需要“就地更新”操作,不需要执行“删除-插入更新”操作,因为只要修改行中标示列(bit 类型)就可以了,这样不会进行基于索引的移行操作,从而不会产生索引碎片,同时也减少了磁盘 I/O。
用 update 代替 insert:在插入行时,可以直接修改在插入位置标示为“删除”的行,这样只需要通过索引定位标示为“删除”的行,而不需要像 insert 操作那样可能修改索引(分页),从而不会产生索引碎片,同时也减少了磁盘 I/O。
用 update 代替 insert:在插入行时,可以直接修改在插入位置标示为“删除”的行,这样只需要通过索引定位标示为“删除”的行,而不需要像 insert 操作那样可能修改索引(分页),从而不会产生索引碎片,同时也减少了磁盘 I/O。
先记录在此,抽空补充完整~