| 導購 | 订阅 | 在线投稿
分享
 
 
 

初學者必讀:IBM DB2數據庫優化措施詳解

來源:互聯網  2008-07-09 05:37:17  評論

1、 對後續用到的表建立索引(注意在插入數據之前建立或者在插入後建立但是要runstats)

說明:插入之前建立的話,在表插入數據的過程中,索引也隨著更新,這樣的話需要較大的日志空間,因此速度會比較慢,可以采用不計日志的方式插入;數據差完之後再建立索引的話,該表的日志統計信息沒有更新,因此執行計劃會很差,用不到索引,runstats on tabble asiainfo.aaaa and indexes all之後,索引統計信息就會更新,這樣執行計劃會考慮到使用索引,因此速度快。

2、將比較大的表建在多節點的表空間上,同時建好索引

說明:現有的db2數據倉庫每個節點使用2個CPU,4G內存,DIM表空間計劃是存放維表的表空間,因此是單節點的。在使用這個表空間的中的表的時候,最多只會用到2個CPU,4G內存,加上其他的表空間也都要用到這兩個CPU和這4G內存,因此資源比較有限。建議較大的表不要放在這個表空間中,而是建立好分區鍵,放在多節點的表空間中,這樣檢索這個表的時候32個節點同時檢索,最後彙總到0節點上進行展現,速度當然會非常的快。另外,雖然32節點並行性好,但是如果建立好索引的話,速度會更快!!

3、將插入的表使用不計日志的方式插入

說明:數據庫爲了保證數據的一致性和可回退性,插入、更新或者刪除數據的時候要計日志,這樣在失敗的時候可以回退,但是如果並發較多或者操作非常大的話,會導致爭搶日志的情況,導致操作非常緩慢。如果使用不計日志的方式進行插入、更新或者刪除操作的話,日志使用極少,但是如果操作失敗的話是無法回退的,這樣一致性得不到保證,這個表只能刪除重建!!!!

4、將表建立表級鎖,減少鎖數量的使用

說明:數據庫的鎖的最大數量是有限制的,並且每個鎖都要占一定的內存,因此如果鎖的數量非常多,使用的內存也就多,導致資源緊張。

5、建立臨時表的時候盡量只插入用的到的數據,不插用不到的數據。

說明:程序中好多地方爲了提高速度,將用到的數據先插入到一個臨時表中,但是插入了非常多的沒有使用的數據,這樣導致臨時表也非常大,所以盡可能的只向臨時表中插入用的到的數據,並且盡可能的使用索引,可以大大的提高速度。

6、關于左關聯的一點使用心得

在on的條件裏面盡量的只寫關聯條件和對左關聯的表作限制,而對主表的限制不要寫在這裏。如果寫在裏面的話,不但速度非常慢,而且可能會出現莫名其妙的結果。

1、 對後續用到的表建立索引(注意在插入數據之前建立或者在插入後建立但是要runstats) 說明:插入之前建立的話,在表插入數據的過程中,索引也隨著更新,這樣的話需要較大的日志空間,因此速度會比較慢,可以采用不計日志的方式插入;數據差完之後再建立索引的話,該表的日志統計信息沒有更新,因此執行計劃會很差,用不到索引,runstats on tabble asiainfo.aaaa and indexes all之後,索引統計信息就會更新,這樣執行計劃會考慮到使用索引,因此速度快。 2、將比較大的表建在多節點的表空間上,同時建好索引 說明:現有的db2數據倉庫每個節點使用2個CPU,4G內存,DIM表空間計劃是存放維表的表空間,因此是單節點的。在使用這個表空間的中的表的時候,最多只會用到2個CPU,4G內存,加上其他的表空間也都要用到這兩個CPU和這4G內存,因此資源比較有限。建議較大的表不要放在這個表空間中,而是建立好分區鍵,放在多節點的表空間中,這樣檢索這個表的時候32個節點同時檢索,最後彙總到0節點上進行展現,速度當然會非常的快。另外,雖然32節點並行性好,但是如果建立好索引的話,速度會更快!! 3、將插入的表使用不計日志的方式插入 說明:數據庫爲了保證數據的一致性和可回退性,插入、更新或者刪除數據的時候要計日志,這樣在失敗的時候可以回退,但是如果並發較多或者操作非常大的話,會導致爭搶日志的情況,導致操作非常緩慢。如果使用不計日志的方式進行插入、更新或者刪除操作的話,日志使用極少,但是如果操作失敗的話是無法回退的,這樣一致性得不到保證,這個表只能刪除重建!!!! 4、將表建立表級鎖,減少鎖數量的使用 說明:數據庫的鎖的最大數量是有限制的,並且每個鎖都要占一定的內存,因此如果鎖的數量非常多,使用的內存也就多,導致資源緊張。 5、建立臨時表的時候盡量只插入用的到的數據,不插用不到的數據。 說明:程序中好多地方爲了提高速度,將用到的數據先插入到一個臨時表中,但是插入了非常多的沒有使用的數據,這樣導致臨時表也非常大,所以盡可能的只向臨時表中插入用的到的數據,並且盡可能的使用索引,可以大大的提高速度。 6、關于左關聯的一點使用心得 在on的條件裏面盡量的只寫關聯條件和對左關聯的表作限制,而對主表的限制不要寫在這裏。如果寫在裏面的話,不但速度非常慢,而且可能會出現莫名其妙的結果。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有