一般在應用中, 糟糕的SQL語句是造成系統性能低下的最主要原因,例如大小寫的不統一、同樣的SQL語句不同的寫法等。而且,隨着數據量的增加,情況會變得越來越嚴重。(題外話:優秀的Oracle數據庫優化人才,是任何公司都稀缺的)
SQL優化又稱SQL調節,其步驟一般包括:
SQL調節的目標
SQL調節包括三大目標:降低負載、均衡負載和並行化負載。
l降低負載:即尋找更高效的途徑來完成相同的功能
如某個非大表(小於2000萬行數據數據或小於2G大小的單表),常規查詢需要訪問的數據實踐中90%情況下是不會超過20%的,此時建立合理的索引是有效的方法之一
l均衡負載:即應該把任務分時段均衡調度
如一般系統白天是訪問高峯,如果此時備份任務、批處理任務或報表數據抽取任務也
擠在這個時段則易造成負載峯值現象,正確的做法應該是把備份任務、批處理任務和報表數據抽取任務放到晚上進行處理,或採用並行化策略
l並行化負載:即大數據量的查詢訪問需要使用併發策略
如在數據倉庫環境中應該多使用併發策略,此舉可以明顯減少響應時間