在查询大量数据时,怎么提高查询效率?
从数据库设计方面考虑:
- 建立索引
- 分区(MysQL,比如按时间分区)
- 尽量使用固定长度的字段
- 限制字段长度
从数据库I/O方面:
- 增加缓冲区
- 如果涉及表的级联,不同的表存储在不同的硬盘上,以增加I/O读取的速度
从SQL语句方面:
- 优化SQL语句,减少比较的次数
- 限制返回的条目数(MySQL中用的limit)
从Java代码方面:
- 如果反复使用的查询,使用preparedStament减少查询的次数
- 使用批量处理
在查询大量数据时,怎么提高查询效率?
从数据库设计方面考虑:
从数据库I/O方面:
从SQL语句方面:
从Java代码方面: