自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

DB2性能調(diào)優(yōu)中易出現(xiàn)的問題有哪些?

數(shù)據(jù)庫
DB2性能調(diào)優(yōu)的實際操作過程中工程師經(jīng)常遇到的20個問題是此文主要講述的內(nèi)容,下面就是文章的主要內(nèi)容的詳細解析。

在這里主要向大家描述的是DB2性能調(diào)優(yōu)的實際操作過程中工程師經(jīng)常遇到的20個問題,我們大家都知道DB2數(shù)據(jù)庫設計中物理設計在一般的情況下應該盡可能的和邏輯結(jié)構(gòu)相近,但是為性能做出的物理設計改變不能被忽略,因為它們并不來自于邏輯設計。

 

1、邏輯設計應該總是能和物理設計完全映射

實際:DB2數(shù)據(jù)庫設計中物理設計應該盡可能的和邏輯結(jié)構(gòu)相近,但是為DB2性能做出的物理設計改變不能被忽略,因為它們并不來自于邏輯設計。

 

2、將所有東西放在一個緩沖池(BP0)中讓DB2管理

 

實際:就像在DB2手冊和其他地方說明的一樣,你只能在你的內(nèi)存非常受限的情況下(10000 4k pages或者更少),你沒有時間去管理它,你也沒有考慮到性能的條件下,去這樣做。***這樣說:不要放置除了DB2 catalog和目錄以外的東西進入BP0。

 

3、DSNDB07是100%順序的

 

實際:DSNDB07從來就不是100%順序的,因為有工作文件中的對頁面進行的隨機活動。隨即活動可能高達45%,但是通常范圍是3%到10%。

 

4、VARCHAR應該總是被放置在行末

 

實際:這就是總是引發(fā)問題的話。如果表總是被讀,并且非常少的更新,那么可以,這將會減少CPU負載,但是在其它情況下這樣做就是最壞的,甚至如果表是被壓縮的。只有在頻繁更新的情況下它應該被放置在末尾,但是并不通常這樣。

5、程序應該以遵循邏輯過程的方式編碼

 

實際:偽代碼或者一個邏輯過程圖并不需要考慮DB2性能相關(guān)的編碼方式。在OLTP交易代碼中這非常具有戲劇性。

 

6、大多數(shù)過程不在SQL中進行

 

實際:事實上,問題的反面往往是正確的。SQL是一個非常豐富的語言,能夠處理大多數(shù)過程。實際上***的困難是SQL經(jīng)常被用來作為I/O處理器而不是一個集合處理器。

 

7、代碼和引用表應該和DB2聲明的referential integrity(RI)一起使用

 

實際:RI不應該作為一個編輯有效性的快捷方式而使用,這通常屬于別的什么,但是應該在真父子關(guān)系中使用。

 

8、表至多有一到兩個索引

 

實際:表應該按照性能需求擁有多個索引。

 

9、非分割索引(NPI)不應該被使用,尤其是不應該在大的表中使用

 

實際:這關(guān)系到數(shù)不清的問題,總體上這些都能被克服,但是NPI是對適當?shù)脑L問和性能非常必要的。

 

10、大表應該被分割

 

實際:因為一個表中有太多數(shù)據(jù)就意味著有性能下降,這是一個遺留的擔心。當一些表中有超過60億行數(shù)據(jù)時,這個理解已經(jīng)被消除了。

 

11、DB2缺省就是好的

 

實際:缺省的一般不是***的,他們因版本不同而改變。比如考慮綁定參數(shù)CURRENTDATA。

 

12、不要在SQL WHERE謂詞里使用否定

 

實際:另外一個這種規(guī)則并沒有被解釋清楚。只有謂詞是一個否定時,SQL訪問路徑可能使用一個不必要的表空間掃描。但是在其它的多數(shù)情況下,多余的過濾應該在DB2引擎里完成,這會較好。

 

13、我可以只依靠EXPLAIN來決定是否訪問路徑是好的

 

實際:EXPLAIN不顯示執(zhí)行的查詢塊的順序,不會告訴你1或者2階段的謂詞,不會告訴你一個塊會多長時間執(zhí)行一次?;镜?,EXPLAIN只是導出一些數(shù)據(jù)到一個表里,然后結(jié)合其他一些信息來進行更多的一些解釋。有一些工具來幫助處理此過程(如Visual Explain),但是如果所有的事實都沒有被考慮的話,這樣的方式只會帶來壞處。

 

14、不要做EDM池太大以避免其分頁

 

實際:EDM池通常通過分頁來提升DB2性能(這里分頁是指擴展存儲,而不是磁盤)而不是變得更小并且因為頁面置換和其他因素持續(xù)重建內(nèi)部結(jié)構(gòu)。

 

15、擴展不會關(guān)系其他任何東西

 

實際:什么時候開始的?未來如果世界上充滿了SAN或者ESS,那差不多。擴展的影響已經(jīng)因為新的磁盤緩存控制器而變得很小了,但是仍然有一些額外的檢查和處理需要來管理它們。

 

16、關(guān)系的劃分不會在DB2中使用

 

實際:關(guān)系的劃分已經(jīng)在過去的許多系統(tǒng)中被使用了,可以有效的通過數(shù)據(jù)庫設計者和程序開發(fā)者來實現(xiàn)。在目前的商業(yè)智能(BI)和市場系統(tǒng)中,它可以被數(shù)次用在每個單個程序中。

 

17、將所有的包綁定到兩個計劃中:一個批處理和一個在線的

 

實際:在介紹DB2包的時候,這是一個不好的陳述。有許多理由可以說這個理解是錯誤的。

 

18、未授權(quán)的讀是不好的

 

實際:未授權(quán)的讀并不是一個四字單詞但是是一個非常好的性能增強,可以被用在比經(jīng)常理解的更多的地方。

 

19、在沒有超時和死鎖的情況下不會有鎖問題

 

實際:事實上沒有一個問題發(fā)生并不意味著沒有需要關(guān)注的的DB2性能問題。經(jīng)常鎖定不被認為是一個問題,因為注意力主要放在反應的調(diào)節(jié)測量(統(tǒng)計死鎖或者超時的數(shù)量),而不是后發(fā)式的調(diào)節(jié)(監(jiān)控鎖等待時間)。

 

20、ESA數(shù)據(jù)壓縮總是好的

 

實際:當壓縮能被在很多地方起作用時,有一些情況它能帶來問題。每種情況都要在壓縮使用前決定是否使用它。這不是可選的,而是必須要在高層決定是否使用還是不使用。

 

【編輯推薦】

  1. 使DB2數(shù)據(jù)庫備份和恢復的效率大大增加的秘訣
  2. DB2重定向恢復失敗“水到渠成”
  3. 對DB2還原經(jīng)常遇到的問題描述
  4. DB2 Online備份的操作方案“盛宴”
  5. 正確提高DB2數(shù)據(jù)備份和恢復的效率要用到哪些項目?
責任編輯:佚名 來源: 51CTO
相關(guān)推薦

2010-08-09 15:59:42

2010-08-20 14:15:08

DB2性能調(diào)優(yōu)

2010-07-28 09:42:57

DB2性能

2010-07-30 11:10:24

DB2性能調(diào)優(yōu)

2010-08-20 11:22:48

DB2性能調(diào)優(yōu)

2010-02-04 11:55:27

ibmdwDB2

2010-08-10 13:51:13

DB2文件系統(tǒng)已滿

2010-08-02 17:42:40

DB2性能調(diào)優(yōu)

2010-08-18 09:42:11

DB2性能調(diào)優(yōu)

2010-08-13 14:40:14

DB2性能調(diào)優(yōu)

2010-08-18 09:26:56

DB2性能調(diào)優(yōu)

2010-08-06 12:38:17

DB2性能調(diào)優(yōu)

2010-07-29 10:19:18

提高DB2 IMPOR

2010-08-09 13:22:40

DB2應用系統(tǒng)

2010-08-11 12:43:45

DB2數(shù)據(jù)庫調(diào)優(yōu)

2010-08-13 18:00:36

2010-05-28 14:11:57

ibmdw數(shù)據(jù)庫性能調(diào)優(yōu)

2010-08-11 14:32:55

DB2數(shù)據(jù)庫調(diào)優(yōu)

2012-08-13 10:30:31

IBMdW

2010-08-03 14:20:26

點贊
收藏

51CTO技術(shù)棧公眾號