456成人影院在线观看_亚洲a毛片_日韩9999_伊人网老司机_一本免费视频_最近高清日本免费

IT之道-艾銻知道

您當前位置: 主頁 > 資訊動態 > IT知識庫 >

IT外包知識中深入優化DB2 數據庫的五個最佳實踐


2020-04-16 13:29 作者:艾銻無限 瀏覽量:


深入優化DB2 數據庫的五個最佳實踐

艾銻無限科技專業:IT外包、企業外包、北京IT外包、桌面運維、弱電工程、網站開發、wifi覆蓋方案,網絡外包,網絡管理服務,網管外包,綜合布線,服務器運維服務,中小企業it外包服務,服務器維保公司,硬件運維,網站運維服務
 
 
結構化查詢語言(SQL)對于關系型DBMS是把雙刃劍,利弊參半。因為從關系型數據庫檢索任何數據都需要SQL,本文所要探討的話題就是:不論是終端用戶還是開發人員或是數據庫管理員(DBA),他們將如何訪問一個關系型數據庫。當使用高效的SQL時,系統會變得易于升級、靈活、而且便于管理。當使用低效的SQL時,響應時間和程序運行時間都會延長,并且還會產生應用系統的中斷。鑒于通常的數據庫系統一般要花費90%的處理時間用于從數據庫檢索數據,由此很明顯的可以看出盡可能的保證SQL的高效是多么的重要。考察通常的SQL語句問題譬如"SELECT*FROM"僅是冰山一角,我們將在本文中探討其他容易確定的普遍的問題。需要記住的是,檢索得到同一數據的SQL語句有很多種殊途同歸的寫法,所以不存在好的查詢語句或是壞的查詢語句,而只有滿足適當需求的查詢語句。各關系型數據庫都有自己的方式來優化和執行查詢語句。因此,各DBMS都擁有自己的最佳性能的查詢技巧。本文將使用Quest軟件中

QuestCentralforDB2的例子和概述來集中討論DB2forOS/390和z/0S。

  要是在十七年前,這張技巧單會更長,并且會包含對最小化的SELECT場景的矯正方法。每一個新版本的DB2都會增加成千上萬行的新代碼,用以擴展智能優化,和查詢重寫及執行。例如,多年來一種被稱為數據管理器的組件,通常被提供作為"第一階段處理"以增加它的過濾容量一百倍。另一組件是關系型數據服務器,通常被提供作為"第二階段處理"來進行其主函數的查詢重寫和優化。另一關鍵組件就是基于當前的SQL,并使用存取路徑以決定檢索數據的DB2優化器。DB2優化器改善了每一個DB2的版本,考慮到另外的DB2目錄中的統計,可以提供新的和改善過的存取路徑。圖1顯示了這些組件及其他更多的部分,并描述了DB2如何處理數據或SQL的請求。這就是以下DB2SQL性能技巧的來源。

  在這篇文章中,我們將回顧一些更具有代表性的SQL問題,有更多的SQL方面的性能技巧超出了本篇文章描述的范圍。像所有指導方針一樣,所有這些技巧也會有一些例外。

  技巧1:核實是否提供了適當的統計:

  對于DB2優化器來說,最重要的資源除了SELECT語句本身,就是DB2目錄中創建的統計。優化器基于眾多的選擇而使用這些統計。DB2優化器為了查詢而選擇一條非最佳存取路徑的主要原因,歸結于無效的或缺失的統計。DB2優化器使用以下目錄統計:

  經常的執行"RUNSTATS"命令,用來更新DB2的目錄統計,這樣可以在特別繁忙的生產環境里中得到全貌。為了使執行"RUNSTATS"命令的影響最小化,可以考慮使用采樣技術。即使取樣10%也夠了。另外"RUNSTATS"命令可以更新統計,DB2給您可以額外更新1,000個條目的能力,以用于不均勻的分類統計。當心隨著每一條目隨著增量的增加,而涉及到對所有參考的綁定時間的影響。

  假如當您缺少統計的時候您怎么知道呢?當目錄或使用工具不能提供這種功能的時候,您可以通過手工執行查詢。當前,DB2優化器不能給缺失的統計提供具體的警告。

  技巧2:盡可能的采用階段1和階段2的謂詞:

  不論是階段1的數據管理器還是階段2的關系型數據服務器都將處理每一次查詢。當您處理查詢時,使用階段1將會比使用階段2有著巨大的性能優勢。當謂詞確定階段1能夠處理的時候,通常謂詞會限制您只能使用階段1查詢。另外,每一個謂詞都會被檢驗評估是否比另一個謂詞更有資袼作為索引路徑。有一些謂詞不能作為階段1來處理,或是不符合索引的條件。關于您的查詢是否可以被索引并且能夠在階段1被處理,理解這一點是很重要的。下面是文擋化的階段1或Sargable(search+argument-able謂詞是一個可以由數據管理器來值的謂詞)謂詞:

  還有一些謂詞不能看作階段1被文檔化,因為他們不能總處于階段1。加入表序列和查詢重寫也能夠影響謂詞被過濾掉的階段。讓我們通過例子查詢來顯示重寫您的SQL的影響。

  例子1:COL1和COL1之間的值:

  任何類型的謂詞如不能被階段1識別,就是階段2。如下所示就是階段2謂詞。然而,重寫可能促進對可索引階段1的查詢:Value>=COL1ANDvalue<=COL2。

  這意味著,優化器也許會在多個索引中選擇一個匹配的索引來使用謂詞。沒有重寫,謂詞的剩余被當作階段2。

  例子2:COL3NOTIN(K,S,T):

  如果可能,非可索引的階段1的謂詞也應該被重寫。例如,符合以上條件的是階段1,但不是可索引的。括號里值的列表辨認什么與COL3不相等。為了確定重寫的可行性,辨認出那些COL3不相等的、更長和更不穩定的表單,就越不具有可行性。如果對面的(K,S,T)是少于200的靜態值,就值得輸入額外的重寫。促進階段1的條件對于可索引的階段1,提供了其它匹配索引選擇的優化器。既使一個可支持的索引在綁定時間不可利用,重寫也將確保查詢具有索引訪問的資格,并且此索引將在以后被創建。一旦一個索引被創建并與COL3合并,重新綁定的事務也許可能獲得匹配的索引訪問,那里的舊謂詞將不會對重新綁定有影響。

  技巧3:僅選擇需要的列:

  每一個被選擇的列必須單獨地被傳回到調用程序,除非對整個的DCLGEN定義有精確匹配的。這也可能依賴于您向所有列發出的請求,但是,真正的損失發生在需要排序的時候。每一個被SELECTed的列,和重復的排序列,使得排序文件的寬度更寬。文件越長越寬,排序越慢。例如,100,000個四字節的列可能在大約一秒的時間內完成排序。而只有10,000個五十字節的列可能在同樣時間內完成排序。實際的時間是非常依賴于硬件的。

  這個規則的例外是“DisallowSELECT*”,當幾個處理需要一個表中行的不同的部分的時候。通過事務的整合,一次取回所有行,然后單獨處理這些部分。

  技巧4:選擇唯一需要的行:

  越少的行被檢索,查詢將運行的越快。符合要求的行不得不令自己在存儲器中通過漫長之旅,穿過緩沖池,階段1,階段2,可能的分類和轉換,然后傳遞結果集到調用程序。數據庫管理器管理所有的數據過濾;這對于檢索一行是非常浪費的,測試在程序代碼里的那一行,然后過濾掉那行。禁止程序自動過濾是一個必須強制執行的鐵的規則。開發商可能選擇使用程序代碼執行所有或部分的數據操作或者他們可能選擇使用SQL。典型地是混合在一起。已知的敘述顯示,過濾器可能被放入DB2engine里的程序代碼,類似:

    IFTABLE-COL4>:VALUE

    GETNEXTRESULTROW
 
  技巧5:使用常量和字面值,如果值在以后的3年中不改變(對于靜態查詢):

  DB2優化器對所有不均勻的分類統計都充分的使用,并為任何一個列統計提供了不同領域范圍內的值,尤其當沒有主機變量在謂詞中被發現時,(WHERECOL5>'X')。主機變量的目的是使一個事務能適應一個可變化的變量;當一個用戶請求輸入這個值的時候是最經常被使用的。主機變量不需要重新綁定一個程序,當這個變量每一次改變的時候。這種可延伸性能得到優化器準確的耗費。當主機變量剛被發現,(WHERECOL5>:hv5),優化器使用以下的圖表來評估過濾器要素,而不是使用目錄統計。

  列的基數性越高,則謂詞的過濾器要素就越低(保留部分行的預測)。多數時候,這種評估有助于優化器對適當存取路徑的選取。然而,有時謂詞的過濾器要素遠離實際。這就是通常需要對存取路徑進行調優的時候。

  解決方案

  QuestCentralforDB2是一個集成的控制臺,可以提供核心功能,DBA(數據庫管理員)需要執行他們日常的數據庫管理任務,空間管理,SQL調優和分析,并且可以進行性能診斷監視。QuestCentralforDB2是由DB2軟件專家撰寫的,并且提供具豐富的功能,以利于視圖化的用戶界面,并且支持在Unix,Linux,和windows主機上運行DB2數據庫。DB2的客戶不再被要求用獨立的工具維護和使用他們的主機和分布式的DB2系統。

  QuestCentral的SQL調優組件提供一個完整的SQL調優環境。QuestCentral是唯一可以提供完整的SQL調優環境的針對DB2可用的產品。這個環境包括以下部分:

  1.調優實驗室:通過場景的使用,一個單獨的SQL語句能夠被改進很多次。然后這些場景能夠立刻被比較以確定哪個SQL語句提供了最有效率的存取路徑。

  2.比較:您立刻可以看出對于SQL語句修改的性能改變效果。由于比較多個場景,您能看到對CPU的效果,消耗的時間,I/O和其他更多的統計。另外數據的比較將保證您的SQL語句返回相同的數據子集。

  3.建議:由SQL調優組件提供的建議,將會發現所有的在白皮書指定的條件等等。另外,如果一個新場景可以利用,SQL調優組件甚至將會重寫SQL,并綜合選擇的建議。

  4.存取路徑和對應的統計:在SQL的上下文中,對于DB2存取路徑,所有適合的統計應被顯示出來。采取推測以設法理解為什么選擇一個特殊的存取計劃。

  QuestCentralforDB2健壯的功能顯現了上述SQL調優中的技巧以及更多。這篇白皮書剩余的部分將證明QuestCentral是由更豐富和更透徹的知識恰當的組成的。QuestCentral不僅可以提高您的SQL語句效率,更可以幫助您全面的提升數據庫的性能。上面描述的各種調優技巧都被QuestCentral所包括。
  解決的技巧1:核實特定提供的統計:

  一旦一條SQL語句在QuestCentral中被描述,建議欄會提供一整套建議,包括當沒有RUNSTATS時也可以發現的能力。QuestCentral一直以堅定的決心來探究這類建議。每一條建議都有相對應的"建議操作"。這種建議操作會指導如何矯正建議發現的問題。這將會打開一個新的場景由被重寫的SQL或以促進對象分析的腳本組成。在這個例子中,建議顯示,統計的缺失和相對應的建議操作將建立一個腳本,它包含RUNSTATS命令,為了在建議操作的窗口中選擇任何一個對象。

  并且能夠生成必要的命令對所有選擇對象的統計進行更新。

  另外,QuestCentralSpace的管理能夠自動的收集、維護和檢驗在表空間里的統計及表和索引等級。以下的例子顯示了在數據庫里所有表空間里的統計檢驗報告。
  
  解決的技巧2:盡可能的提升階段2和階段1的謂詞:

  SQL的調優組件將列出所有的謂詞并指出那些謂詞是否是"Sargable"或"Non-Sargable"。另外,各個謂詞都將被檢查,以確定它是否具有索引存取的資袼。這種單獨的建議可以解決響應時間的問題和在謂詞重寫的期間內得到某些成果。在下面的例子中,一條查詢被看作non-sargable和non-indexable(階段2)。這條最初的查詢被輸入在一個謂詞間。一個新場景被打開了并且謂詞被重寫使用大于,小于符號。這種比較確定了查詢重寫對性能方面的影響。

  一個新場景被創建并且查詢被重寫在列值中使用"a>="和"a<="。注意,謂詞現在是可索引的和sargable。記住以上的信息,謂詞現在將由數據管理器(階段1)處理,以減少這次查詢的潛在響應時間。

  隨后可以使用比較工具來比較他們和"<>"之間的性能,會發現"<>"更有效的減少消耗的時間。

  解決的技巧3:選擇唯一需要的列:

  SQL調優的特點不僅是相對于使用"SELECT*"的建議,更提供一個事半功倍的可以令產品自動重寫SQL的特點。建議和相對應的建議操作將提供重寫您SQL的能力,簡單地檢查想要的列并選擇"applyadvice"按鈕,SQL調優將用被選擇的列替換"*"。

  解決的技巧4:選擇唯一需要的行:

  越少的行被檢索,查詢將運行的越快。使用QuestCentral能比較您最初的SQL相對于選擇較少行但相同的SQL語句。使用多個場景和利用比較特點,比較那些立刻顯示發生變化的性能影響的場景。在以下例子中,兩張表單的加入,產生了一個有意義的結果集。由于加入了"FetchFirst1RowOnly'"執行時間顯著的減少了。

  解決的技巧5:使用常量和字面值,如果值在以后的3年中不改變(對于靜態查詢):

  在這個例子中,讓我們進行一個基于Win2K平臺的DB2測試。當使用主機變量時,DB2優化器無法預測謂詞過濾的值。沒有這個值,DB2將默認并使用上面列出的默認的過濾器要素。QuestCentralSQL調優將一直顯示過濾器要素用以幫助了解有多少列將被過濾。

有關更多IT知識請關注北京艾銻無限有限公司

相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 91cn国产在线_久久官网_日本爱爱网_亚洲女人久久久_天天操天天摸天天射_91蜜臀精品国产自偷在线_久久中文av_欧美精品videofree | 一级毛片免费在线_爱爱视频网站免费_亚洲无嘛_国产色片免费色网视频_伊人久久精品欧洲综合网_天堂va蜜桃一区_亚洲精品一区二区三区不_国产免费啪视频观看网站 | 国产真实夫妇对白视频_亚洲国产精品无码久久98_日韩一区二区三区四区在线_欧美秋霞_国产99久久久国产精品成人免费_国产免费av一区二区_国产JJZZJJZZ视频全部免费_蜜芽亚洲AV无码精品国产午夜 | 艳妇荡乳豪妇荡乳av精东_噜噜吧噜噜色_亚洲国产第一区_七级黄色片_久久国语精品_99er在线观看_爱爱视频一区_青青草自拍 | 17C精品麻豆一区二区免费_97人妻熟女成人免费视频_亚洲在线中字幕_99久久毛片免费观看_我的性奴的肉玩具1一17心奴_国产精品久久777777毛茸茸_韩国一级毛片_日韩人妻少妇一区二区三区 | 亚洲熟妇自偷自拍另欧美_国产精品污www一区二区三区_麻豆综合在线_91视频网入口_亚洲自拍偷拍精品_日韩一卡2卡3卡4卡2021免费观看国色天香_99r在线_亚洲国产天堂久久综合网 | 亚洲成人第一网站_欧美视频在线观看_大地资源在线观看官网第三页_老司机在线精品_99久久免费精品国产免费高清_久久a级片_亚洲小视频在线_日韩欧美高清DVD碟片 | 国产真实夫妇对白视频_亚洲国产精品无码久久98_日韩一区二区三区四区在线_欧美秋霞_国产99久久久国产精品成人免费_国产免费av一区二区_国产JJZZJJZZ视频全部免费_蜜芽亚洲AV无码精品国产午夜 | www.成年人_日日夜夜91_欧美第6页_春药高潮抽搐流白浆在线播放_中文字幕国语版毛片免费_热久久久久久久久_精品国产三级在线观看_国产黄色毛片 | 人妻无码αv中文字幕久久琪琪布_正在播放亚洲一区_日韩欧美在_狠狠色噜噜狠狠狠777米奇小说_婷婷综合基地俺也来_成人依依网_久久久这里有精品999_国产精品久久久久一区二区三区 | 亚洲亚洲精品三区日韩精品在线视频_6699久久久久久久77777'7_免费在线观看视频完整_精品av中文字幕在线毛片_aⅴ免费在线观看_深夜免费观看视频_日韩一区二区观看_日韩国产成人无码AV毛片蜜柚 | 国产精品九九九九九_精品久久久久久久久久ntr影视_中文字幕一区av_狼人久久乐_无码乱码av天堂一区二区_免费观看成人毛片a片2008_日韩有码在线观看_伊人久久精品无码二区麻豆 | 免费A级毛片无码免费视_日韩一中文字无码不卡_国产精品国语版在线观看_性一交一乱一做一爰_国产精品推荐制服丝袜_99久久网站_另类毛片_亚洲熟妇成人精品一区 | 亚洲色欲色欲欲WWW在线_久久一次_97视频入口_一个人在线观看的WWW片_国产一卡二卡三卡四卡_欧美特级一级片_亚洲欧美一级黄色录像视频_国产精品高潮呻吟爱久久AV无码 | 艳母1-6在线播放_日韩精品一区二区久久_青青久草在线_三个男人躁我一个爽公交车上_国产在线欧美日韩精品一区_性国产丰满麻豆videosex_91亚洲影院_狠狠色综合色区 | 国产色综合视频_亚洲第一成人久久网站_免费看奶_亚洲日本韩国一区_亚洲a区在线视频_奇米影视9999_成人精品视频网站_好大好爽受不了了h | 国产东北肥熟老胖女_久久免费的精品国产v∧_日本国产一区_曰韩欧美_亚洲色图网友自拍_精品国产乱码久久久久禁果_色哟哟在线观看免费高清大_久久亚洲精品成人av | 午夜精品福利视频_国产日韩欧美东南在线_日韩美国1级大片_99视频国产热精品_久草热精品_18无码粉嫩小泬无套在线观看_强壮的公次次弄得我高潮a片日本_亚洲伦理片在线观看 | 久久久久夜色精品国产老牛91_精品2区_精品国产欧美一区二区三区不卡_亚洲自偷自自_亚洲综合网站久久久_九色国产精品_成年免费观看视频_亚洲图片小说综合 | 国产拍精品一二三_日韩久久久久久久久久久久_无码人妻一区二区三区A片_免费九一_在线欧美鲁香蕉94色_精品久久久久久久久亚洲_久久字幕精品一区_男生夜间福利免费网站 | 欧美国产日韩在线_日韩黄色a_www.草草草_日韩欧美一级视频_久久99热这里只频精品6_国产精品入口福利_中文字幕在线观看第三页_久久成人影院精品99 | 成人无码午夜在线观看_福利视频三区_91超碰caoporm国产香蕉_亚洲精品综合久久中文字幕_国产农村妇女一区二区三区_91福利在线观看_美女被按在床上_亚州一区 | 99情趣网视频_欧美日韩久久精品_久久99精品久久久秒播软件优势_逼逼影视_女人被狂躁的高潮免费视频_亚洲欧洲日韩在线观看_国产xxxx69_亚洲国产精品一区二区第一页 | 国产精品草草在线观看_国产成人亚洲影院在线播放_亚洲一二三四区不卡_黄频视频在线观看_性欧美极品另类_免费在线看一区_人妻无码精品久久亚瑟影视_息与子五十路中文字幕 | 97国产高清dvd_国产乱仑视频_韩日免费_久久高清内射无套_国产欧美精品一区二区三区-老狼_成人精品毛片_亚洲色欲色欱WWW在线_亚洲性毛片 | 把女的下面扒开添视频_国产精品亚洲二区在线播放_无码AV岛国片在线观看免_精品久久久网站_国产一区免费播放_亚洲小视频网站_91久久久亚洲精品_欧美一级片久久 | 成人手机在线视频_gay男同帅哥网站在线观看_欧美人与拘牲交大全视频_日韩高清不卡一区二区_一区二区三区四区免费在线观看_tube69最新_亚洲欧洲日产韩国在线看片_91嫩草国产在线观看 | av毛片一区二区三区_人妻VA精品VA欧美VA_新91视频在线观看_蜜臀av中文字幕_日韩欧美在线播放视频_午夜影院免费体验区_日本成人在线观看网站_人人爱人人乐免费 | 无码人妻精品中文字幕不卡_亚洲国产主播一区_天天爽人人爽夜夜爽_CHINESE国产老熟女_J97久久国产亚洲精品超碰热_一区二区久久久久草草_琪琪午夜成人理论福利片美容院_亚洲一区二区三区不卡国产欧美 | 一本一道久久a久久精品逆3p_内射精品无码中文字幕_午夜久久国产_免费av毛片不卡无码_天天躁夜夜躁狠狠综合2020_国产香蕉精品视频老妇_欧美一区二区三区蜜桃_色999在线 | 一级黄色录像影片夫妻性生活影片_日本道色综合久久影院_国产精品xxx在线观看_激情婷婷_亚洲精品免费在线观看视频_亚洲三级性片_国产97视频人人做人人爱_懂色av色香蕉一区二区蜜桃 | 在线观看a级_国产高清成人av片_免费能直接在线观看黄的视频_色成人网站www永久免费观看_日本成人黄色_初毛初精小男生GV网站_亚洲资源网_久久久久久久久久毛片 | 神马久久免费_日韩亚洲在线观看_亚洲欧美韩国_蘑菇视频黄色_天天干夜夜艹_911色_911色sss主站色播_免费观看做爰视频ⅹxx午夜_国产精品久国产精品 | 男人的好看免费观看在线视频_秋霞人成在线观看免费视频_99久久国产免费_69堂在线_色视频一区二区_国产美女操_自拍视频国产_欧洲美熟女乱AV亚洲一区 亚洲综合一二三区_午夜伦理片在线观看_免费精品国产自产拍在线观看图片_日韩av有码在线_性欢交69国产精品_91精品一二区_久久久综合九色合综国产精品_伊人精品在线观看 | 99午夜_全黄a免费一级毛片人人爱_亚洲一区二区av在线_久久99久久久_国产亚洲日韩欧美另类第八页_麻豆av网站_色综合网址_超碰免费看 | 日韩免费黄色_少妇人妻呻吟青椒BOBX_911国产自产精品a_伊人久久精品亚洲午夜_亚洲日本乱码一区二区三区_国产91黄色_亚洲欧美日韩视频高清专区_成人天堂网 | 日韩在线播放第一页_亚洲在线高清_国产网战无遮挡_久久久久人妻精品一区蜜桃_两性色午夜视频免费播放_一二三四在线观看免费中文在线观看_gav成人网免费免播放器播放_久久精品水蜜桃AV综合天堂 | 九色免费视频_国产精品一区二区亚洲_www.久久综合_亚洲九九影院_日本国产免费_狠狠色噜噜狠狠狠狠色综合久AV_亚洲精品美女久久777777_中文一区二 | 第一福利在线_国内精品免费一区二区2001_在线观看中文字幕网站_欧美一区二区三区性视频_亚洲日本成本人观看_亚洲一级毛片视频_高清一区在线_天天操人人爱 色欲aⅴ亚洲情无码AV_欧美喷潮久久久XXXXX_国产精品高潮呻吟久久av黑人_亚洲AV无码专区亚洲AV网站_姑娘第7集在线观看_国产成人精选视频在线观看_91视频在线视频_亚洲伦理一区 | 91jq激情_国产在线91精品入口首页_国产一区二区三区乱码在线观看_91国在线高清视频_日本一区二区免费在线观看_色综合天天综合网国产成人综合天_天天操中文字幕_国产视频色 | 伊人色综合久久天天网图片_三上悠亚在线一区二区_97夜夜澡人人爽人人模人人喊_国产片性视频免费播放_avv在线播放_亚洲欧美综合另类中字_性爱国产精品福利_国产特级黄色 |