建立时间索引后,按照时间排序来获得列表的查询,速度增快了不少
来源:互联网 发布:java继承例子 编辑:程序博客网 时间:2024/05/16 11:49
一个论坛中搜评论列表
没创建时间索引前: 总共 其中排序 取行
0.0617 0.0381 0.0235 使用了聚集索引
创建索引后: 0.00699 0.00036 0.00663 使用了普通索引
全表搜评论列表
创建索引前 0.222 0.119539 0.103411使用了聚集索引
创建索引后: 0.00681 0.000349 0.006462使用了普通索引
具体一个论坛一个帖子全部回复列表
创建索引前 0.0160 0.11956 0.00409 使用了聚集索引
创建索引后: 0.0132 0.000924 0.0123 使用了普通索引
整体结论,建立了时间索引后,整个根据时间排序获得评论的速度增加了,当搜索的范围越小,
速度增加得越明显,当搜索到具体某一个帖子时,差异变小,但始终建立时间索引会更快.
另外发现,当你另外建立了时间索引,数据库会自动优化判断选择使用聚集索引还是普通的时间索引.
使用索引的几点原则:
1、对小的数据表,使用索引并不能提高任何检索性能,因此不需对其创建索引。
2、当用户要检索的字段的数据包含有很多数值或很多空值(null)时,为该字段创建索引,会大大提高检索效率。
3、当用户查询表中的数据时,如果查询结果包含的数据(行)较少,一般少于数据总数的25%时,使用索引会显著提高查询效率。反之,如果用户的查询操作,返回结果总是包含大量数据,那么索引的用处不大。
4、索引列在WHERE子句中应频繁使用。例如,在学生姓名字段上建了索引,但实际查询中并不是经常用姓名作为查询条件,该索引就没有发生作用。
5、先装数据,后建索引。对于大多数的表,总有一批初始数据需要装入。该原则是说,建立表后,先将这些初始数据装入表,然后再建索引,这样可以加快初始数据的录入。如果建表后就建索引,那么在输入初始数据时,每插入一个记录都要维护一次索引。当然,对于索引来说,早建和晚建都是允许的。
6、索引提交了数据检索的速度,但也降低了数据更新的速度。如果要对表中的数据进行大量更新时,最好先销毁索引,等数据更新完毕再创建索引,这样会提高效率。
7、索引要占用数据库空间。在设计数据库时,要把需要的索引空间考虑在内。
8、尽量把表和它的索引存放在不同的磁盘上,这样会提高查询速度。
- 建立时间索引后,按照时间排序来获得列表的查询,速度增快了不少
- cdsn的速度快了不少
- Android 列表按照时间排序
- 时间过的太快了,
- 时间过的太快了
- 时间过的太快了
- mysql按照时间查询
- mongodb按照时间查询
- mysql 按照时间查询
- MySQL 按照时间查询
- 按照时间排序
- 获取本地文件列表后按照文件修改时间降序排列
- Android list按照时间排序的问题
- SQLite对字符串字段建立索引后查询速度无优化的问题
- 时间啊,过的太快了。。。
- 建立索引,提高查询速度
- JQueryMiniUI按照时间进行查询
- 按照时间间隔查询数据库
- xalan.jar的下载地址
- 51单片机体系结构初步分析
- oracle中的全局数据库名、环境变量和sid的区别
- tomcat 的几点配置说明
- 写Java程序最容易犯的21种错误实例分析
- 建立时间索引后,按照时间排序来获得列表的查询,速度增快了不少
- 项目经验 PAUL总结
- org/objectweb/asm/CodeVisitor的解决方法
- Sql Server2000的全局变量
- C#多线程编程简单实例
- Spring依赖注入
- JAVA数据库连接池
- UNIX System Administration: A Beginner's Guide
- 2008年最优质广告联盟排行榜|2008最新网络赚钱方法