最近一直从事的项目中遇到不少性能问题, 虽然表中的数据数量不是太大, 最大也就200万条, 其他基本都是100万左右, 但由于存在一个化合物结构信息的数据使得数据库特别的大, 就dmp文件就达到4G多。而客户对性能要求又比较高。目前遇到问题以及解决方案(并非最佳方案)总结如下:
1. 多表查询时候速度慢: 为表之间关联列创建索引, 只取需要数据。
2. 多条数据批量更新: 尽量使用原生SQL, 少用Hibernate取了循环再更新。
3. 数据量大查询时候少用upper,lower等类似数据提供的功能函数去转换数据,可以考虑是否在存入数据之前就把所有数据改为大写或者小写,显示时候再按要求格式化内容。
4. 使用Hibernate时候,把关联关系尽量设置成延迟加载,然后使用时候再用fetch取出。
目前先总结这些, 遇到再加。
posted on 2009-08-05 16:27
周锐 阅读(348)
评论(0) 编辑 收藏 所属分类:
Java 、
MySQL 、
Oracle 、
软件工程