💡
原文英文,约300词,阅读约需2分钟。
📝
内容提要
在项目实践中,遇到特殊字段如身份证号码,建立前缀索引可以提升性能。前缀索引只对字段的前几个字符建立索引,节约空间且减少比较时间。选择合适的前缀长度需要科学计算,通过计算选择性,选择前缀长度为10,并创建前缀索引。前缀索引的选择性为1,可以唯一定位到记录。但前缀索引无法使用覆盖索引。对于身份证号码建立索引,可以倒序存储并建立前缀索引,提高选择性和节约空间。
🎯
关键要点
- 在项目实践中,特殊字段如身份证号码的索引建立需要考虑性能和存储空间。
- 前缀索引只对字段的前几个字符建立索引,节约空间并减少比较时间。
- 选择合适的前缀长度需要科学计算,前缀长度为10时选择性为1,可以唯一定位记录。
- 前缀索引的选择性越高,查询效率越高,但选择性最高为1时会占用更多存储空间。
- 通过SQL计算全列选择性和前缀选择性,选择合适的前缀长度以达到最佳效果。
- 在实际案例中,user_uuid字段的前缀索引可以通过前十个字符唯一定位记录。
- 使用前缀索引后,无法使用覆盖索引,因为B+Tree中保存的不是完整字段值。
- 对于身份证号码,考虑倒序存储并建立前缀索引,以提高选择性和节约空间。
➡️