最近一直從事的項目中遇到不少性能問題, 雖然表中的數據數量不是太大, 最大也就200萬條, 其他基本都是100萬左右, 但由于存在一個化合物結構信息的數據使得數據庫特別的大, 就dmp文件就達到4G多。而客戶對性能要求又比較高。目前遇到問題以及解決方案(并非最佳方案)總結如下:
1. 多表查詢時候速度慢: 為表之間關聯列創建索引, 只取需要數據。
2. 多條數據批量更新: 盡量使用原生SQL, 少用Hibernate取了循環再更新。
3. 數據量大查詢時候少用upper,lower等類似數據提供的功能函數去轉換數據,可以考慮是否在存入數據之前就把所有數據改為大寫或者小寫,顯示時候再按要求格式化內容。
4. 使用Hibernate時候,把關聯關系盡量設置成延遲加載,然后使用時候再用fetch取出。
目前先總結這些, 遇到再加。
posted on 2009-08-05 16:27
周銳 閱讀(361)
評論(0) 編輯 收藏 所屬分類:
Java 、
MySQL 、
Oracle 、
軟件工程