国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

DB2 優(yōu)化器中正確使用分布統(tǒng)計(jì)信息如何操作?

數(shù)據(jù)庫
此文主要向大家講述的是在 DB2 優(yōu)化器中正確使用分布統(tǒng)計(jì)信息的操作步驟,以及對其在實(shí)際操作中所涉及到的細(xì)節(jié)的描述。

我們今天主要向大家講述的是在 DB2 優(yōu)化器中正確使用分布統(tǒng)計(jì)信息的操作步驟,我們大家都知道DB2 優(yōu)化器是一種基于成本的優(yōu)化器。它根據(jù)表和索引的相關(guān)統(tǒng)計(jì)信息作出決策。DB2 在生成統(tǒng)計(jì)信息時(shí)。

不但能提供基本統(tǒng)計(jì)信息,還允許創(chuàng)建所謂的分布統(tǒng)計(jì)信息。本文解釋什么是分布統(tǒng)計(jì)信息、分布統(tǒng)計(jì)信息在哪些情況下尤為重要,以及應(yīng)用程序開發(fā)人員應(yīng)該考慮些什么,才能使 DB2 優(yōu)化器創(chuàng)建有效的訪問計(jì)劃。

簡介

為了執(zhí)行查詢或 DML 語句(INSERT、UPDATE、DELETE),DB2 必須創(chuàng)建一個(gè)訪問計(jì)劃(access plan)。訪問計(jì)劃定義按什么順序訪問表,使用哪些索引,以及用何種連接(join)方法來關(guān)聯(lián)數(shù)據(jù)。好的訪問計(jì)劃對于 SQL 語句的快速執(zhí)行至關(guān)重要。DB2 優(yōu)化器可以創(chuàng)建訪問計(jì)劃。這是一種基于成本的優(yōu)化器,這意味著它是根據(jù)表和索引的相關(guān)統(tǒng)計(jì)信息來作出決策的。

DB2 在生成統(tǒng)計(jì)信息時(shí),不但能提供基本統(tǒng)計(jì)信息,還允許創(chuàng)建所謂的分布統(tǒng)計(jì)信息。不但數(shù)據(jù)庫管理員要理解分布統(tǒng)計(jì)信息,而且應(yīng)用程序開發(fā)人員也要理解分布統(tǒng)計(jì)信息。應(yīng)用程序開發(fā)人員必須小心謹(jǐn)慎,因?yàn)樵谀承┣闆r下分布統(tǒng)計(jì)信息對于 DB2 優(yōu)化器來說非常重要。

主變量或參數(shù)標(biāo)記(在 Java 中為 java.sql.PreparedStatement)的使用可能會造成阻礙,使優(yōu)化器無法***限度地利用分布統(tǒng)計(jì)信息。本文解釋什么是分布統(tǒng)計(jì)信息、分布統(tǒng)計(jì)信息在哪些情況下尤為重要,以及應(yīng)用程序開發(fā)人員應(yīng)該考慮些什么,才能使 DB2 優(yōu)化器創(chuàng)建有效的訪問計(jì)劃。

基本統(tǒng)計(jì)信息和分布統(tǒng)計(jì)信息

在研究分布統(tǒng)計(jì)信息之前,我們先來看看基本統(tǒng)計(jì)信息,只要執(zhí)行 RUNSTATS 即可收集這些表的相關(guān)統(tǒng)計(jì)信息。

表的相關(guān)統(tǒng)計(jì)信息:

當(dāng)前使用的頁面數(shù)

包含記錄行的頁面數(shù)

 

溢出的行數(shù)

 

表中的行數(shù)(基數(shù))

 

對于 MDC 表,還有包含數(shù)據(jù)的塊(block)數(shù)

 

表中各列的相關(guān)統(tǒng)計(jì)信息:

 

列的基數(shù)

列的平均長度

 

列中第二大的值

 

列中第二小的值

 

列中 NULL 值的個(gè)數(shù)

 

通常,執(zhí)行 RUNSTATS 時(shí),不但可以收集到關(guān)于表的統(tǒng)計(jì)信息,而且還可以收集到相應(yīng)的索引的相關(guān)統(tǒng)計(jì)信息。要了解為索引而收集的統(tǒng)計(jì)信息,請參閱 DB2 Administration Guide: Performance - Statistical information that is collected。

 

觀察一個(gè)表的基本統(tǒng)計(jì)信息,您可以看到,DB2 優(yōu)化器知道一個(gè)表由多少行組成(表的基數(shù)),以及一個(gè)列包含多少個(gè)不同的值(列的基數(shù))。但是,還有一些信息是基本統(tǒng)計(jì)信息無法提供的。例如,基本統(tǒng)計(jì)信息不能告訴優(yōu)化器一個(gè)列中某些值出現(xiàn)的頻率。假設(shè)表 TABLE_X 有大約 1,000,000 行,在該表上執(zhí)行這樣一條查詢:

SELECT * FROM TABLE_X WHERE COLUMN_Y = 'VALUE_Z'

難道 DB2 優(yōu)化器知道 TABLE_X 中有多少行滿足條件 COLUMN_Y = 'VALUE_Z' 不重要嗎?換句話說:知道這個(gè)查詢將返回 1 行、100 行、1000 行還是 10000 行有什么不好呢?

實(shí)際上,通過基本統(tǒng)計(jì)信息,DB2 優(yōu)化器只能估計(jì) 'VALUE_Z' 在 COLUMN_Y 中出現(xiàn)的頻率。在這種情況下,優(yōu)化器認(rèn)為所有值在 COLUMN_Y 中是平均分布的,這意味著它認(rèn)為所有的值都有相同的出現(xiàn)頻率。如果事實(shí)碰巧如此,這樣估計(jì)并無大礙。但是,如果有些值比其他值出現(xiàn)得更頻繁一些(例如,如果 'VALUE_Z' 出現(xiàn) 900,000 次,即占所有行的 90%)。

那么優(yōu)化器不能考慮到這一點(diǎn),因而生成的訪問計(jì)劃就不是***的。而分布統(tǒng)計(jì)信息可以填補(bǔ)這一空白。分布統(tǒng)計(jì)信息可以提供關(guān)于數(shù)據(jù)出現(xiàn)頻率及其分布情況的信息,如果數(shù)據(jù)庫中存儲了很多重復(fù)值,并且數(shù)據(jù)在表中并非平均分布的時(shí)候,分布統(tǒng)計(jì)信息對于基本統(tǒng)計(jì)信息是一個(gè)重要的補(bǔ)充。

分布統(tǒng)計(jì)信息的類型 —— 頻率(frequency)統(tǒng)計(jì)信息和分位數(shù)(quantile)統(tǒng)計(jì)信息

有兩種不同類型的分布統(tǒng)計(jì)信息 —— 頻率統(tǒng)計(jì)信息和分位數(shù)統(tǒng)計(jì)信息。讓我們通過一個(gè)示例表來研究一下這兩種不同類型的分布統(tǒng)計(jì)信息。

示例表 “CARS” 表示一家汽車制造商,對于生產(chǎn)的每一輛汽車,在表中都有相應(yīng)的一行。每輛汽車可以由它的 ID 來標(biāo)識,因此 “ID” 是表 “CARS” 的主鍵(PK)。此外,表中有一個(gè) “STATE” 列,表明汽車當(dāng)前處在制造流程中的哪一步。

一輛汽車的制造流程從第 1 步開始,然后是第 2 步、第 3 步,...、第 49 步、第 50 步、第 51 步、...、第 98 步、第 99 步,一直到第 100 步 —— 第 100 步意味著汽車已經(jīng)完工了。已完工的汽車所對應(yīng)的行仍然保留在表中,后續(xù)流程(例如投訴管理、質(zhì)量保證等)仍要用到這些行。

汽車制造商生產(chǎn) 10 種不同型號(“TYPE” 列)的汽車。為了簡化問題,在這個(gè)示例表中,各種汽車型號命名為 A、B、C、D、...、J。除主鍵索引(在 “ID” 列上)之外,“STATE” 列上也有一個(gè)索引(“I_STATE”),在 “TYPE” 列上還有一個(gè)索引(“I_TYPE”)。實(shí)際上,一個(gè) “CARS” 表包含的列遠(yuǎn)不止 “ID”、“STATE” 和 “TYPE”。為簡單起見,示例表中沒有出現(xiàn)其他這些列。

頻率統(tǒng)計(jì)信息

假設(shè)表 CARS 現(xiàn)在有大約 1,000,000 條記錄,不同的型號在表中出現(xiàn)的頻率如下所示:

表 1. 表 CARS 中 TYPE 列的頻率統(tǒng)計(jì)信息

 

  1. TYPE COUNT(TYPE)   
  2. A 506135   
  3. B 301985   
  4. C 104105   
  5. D 52492   
  6. E 19584   
  7. F 10123   
  8. G 4876   
  9. H 4589   
  10. I 4403   
  11. J 3727  

 

型號為 A 的汽車最受購買者的青睞,因此生產(chǎn)的汽車中大約有 50% 是這種型號。型號 B 和型號 C 僅次于型號 A ,分別占所有汽車的 30% 和 10%。其他所有型號加在一起僅占 10%。

上面的表顯示了 “TYPE” 列的頻率統(tǒng)計(jì)信息。通過基本統(tǒng)計(jì)信息,DB2 優(yōu)化器只能了解到該表包含 1,000,000 行(表的基數(shù))和 10 種不同的值(型號),即 A 到 J。如果沒有分布統(tǒng)計(jì)信息,優(yōu)化器會認(rèn)為每種值以相同的頻率出現(xiàn),大約都是出現(xiàn) 100,000 次。而一旦生成了關(guān)于 “TYPE” 列的分布統(tǒng)計(jì)信息,優(yōu)化器即可了解每種型號真正的出現(xiàn)頻率。因此,優(yōu)化器清楚各種已有型號出現(xiàn)的不同頻率。

優(yōu)化器使用頻率統(tǒng)計(jì)信息來計(jì)算用于檢查相等或不等的謂詞的過濾因子。例如:

  1. SELECT * FROM CARS WHERE TYPE = 'H'  

分位數(shù)統(tǒng)計(jì)信息

與頻率統(tǒng)計(jì)信息不同,分位數(shù)統(tǒng)計(jì)信息與不同值的出現(xiàn)頻率無關(guān),而與一個(gè)表中有多少行小于或大于某個(gè)值(或者有多少行介于兩個(gè)值之間)相關(guān)。分位數(shù)統(tǒng)計(jì)信息提供關(guān)于一個(gè)列中的值是否聚合的信息。為獲得這樣的信息,DB2 假定列中的值是按升序排列的,并根據(jù)正則行間隔確定相應(yīng)的值。

我們來看看表 CARS 中的 “STATE” 列,該列按升序排列。根據(jù)正則行間隔,即可確定 “STATE” 的對應(yīng)值。

表 2. CARS 表中 STATE 列的分位數(shù)統(tǒng)計(jì)信息

 

  1. COUNT(row) STATE ASC   
  2. 5479 1   
  3. 54948 10   
  4. 109990 21   
  5. 159885 31   
  6. 215050 42   
  7. 265251 52   
  8. 320167 63   
  9. 370057 73   
  10. 424872 84   
  11. 475087 94   
  12. 504298 100   
  13. ... 100   
  14. 1012019 100  

由于已完工的汽車仍然沒有從表中刪除,因此狀態(tài)為 100 (=完工)的汽車數(shù)量比所有處于其他狀態(tài)的汽車總和還多。已完工的汽車占表中所有記錄的 50%。

注意: 在實(shí)際情況下,已完工的汽車數(shù)量甚至還要更多(例如超過 99%)。在后文中的具體例子中可看到這種情況。

上表顯示了 “STATE” 列的分位數(shù)統(tǒng)計(jì)信息。有了這種關(guān)于有多少行分別小于和大于確定值的信息,DB2 優(yōu)化器即可計(jì)算出用于測試小于(小于等于)、大于(大于等于)或介于兩值之間的謂詞的過濾因子。例如:

  1. SELECT * FROM CARS WHERE STATE < 100   
  2. SELECT * FROM CARS WHERE STATE BETWEEN 50 AND 70   

根據(jù)已有的分位數(shù)統(tǒng)計(jì)信息計(jì)算出來的過濾因子不是很精確,但即使只收集 20 個(gè)值,其誤差仍然低于 5%。

完整內(nèi)容的學(xué)習(xí),請?jiān)L問:

http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0606fechner/

【編輯推薦】

  1. DB2數(shù)據(jù)庫物化視圖之MQT物化查詢表如何操作?
  2. DB2 9.5分區(qū)管理以及其應(yīng)用實(shí)踐的詳細(xì)描述
  3. DB2數(shù)據(jù)庫在創(chuàng)建存儲過程中有哪些錯(cuò)誤出現(xiàn)?
  4. DB2 CMO安裝7.1.2.6補(bǔ)丁之后會出現(xiàn)什么?
  5. IBM DB2中新手要了解的東西有哪些?
責(zé)任編輯:佚名 來源: 機(jī)械工業(yè)出版社
相關(guān)推薦

2010-08-19 14:54:07

DB2 優(yōu)化器

2010-08-13 14:32:13

DB2 優(yōu)化器

2009-07-22 09:01:54

導(dǎo)出LOB數(shù)據(jù)DB2

2010-08-20 10:18:32

DB2自動增長主鍵

2011-03-14 16:42:54

DB2 UDB監(jiān)控死鎖

2010-09-01 10:38:47

DB2統(tǒng)計(jì)信息

2010-08-13 10:50:15

DB2取得當(dāng)前時(shí)間

2010-09-07 16:11:19

執(zhí)行DB2命令

2010-08-04 10:03:37

DB2 9 分布式管理

2015-10-23 16:35:11

DB2導(dǎo)出LOB

2010-08-20 09:44:51

DB2確定某個(gè)表

2010-08-20 09:44:51

DB2確定某個(gè)表

2010-07-30 15:44:04

DB2數(shù)據(jù)庫

2010-08-20 09:44:51

DB2確定某個(gè)表

2010-08-10 15:42:31

DB2 back 存檔

2010-08-18 15:14:08

DB2恢復(fù)命令

2010-08-18 16:45:40

IBM DB2 Cat

2010-08-05 15:40:07

DB2快照函數(shù)

2010-08-17 09:11:42

DB2數(shù)據(jù)庫備份性能

2010-08-05 11:29:04

java DB2
點(diǎn)贊
收藏

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

在线观看免费视频一区二区三区| 国模冰冰炮一区二区| 久久久成人网| 日韩有码在线观看| 老司机aⅴ毛片免费观看| 日本午夜一本久久久综合| 911国产网站尤物在线观看| 日本天码aⅴ片在线电影网站| 色噜噜狠狠一区二区| 在线观看日韩av先锋影音电影院| 亚洲在线欧美| 色喇叭免费久久综合网| 中文字幕一区日韩电影| 日本成a人片在线观看| 亚洲欧美一区二区三区久本道91| 青青草免费在线视频观看| 亚洲一级淫片| 久久久噜噜噜久噜久久| 色黄视频在线观看| 欧美日韩精品综合在线| 一级毛片电影| 久久久久久久网| 亚洲自拍偷拍二区| 国产精品激情电影| 国产精品久久久久久五月尺| 外国电影一区二区| 亚洲国产美女精品久久久久∴| 欧美日韩国产综合视频| 一区二区三区欧美激情| 一级片视频免费观看| 99久久久无码国产精品| 可以在线看黄的网站| 久久性色av| 看高清中日韩色视频| 婷婷综合伊人| 国产精品极品尤物在线观看| 中文无码日韩欧| 久久国产色av| 欧美videos粗暴| 深夜精品寂寞黄网站在线观看| 三级在线看中文字幕完整版| 98精品在线视频| 免费黄网站在线观看| 黄网站免费在线观看| 曰本色欧美视频在线| a级片在线免费观看| 中文精品一区二区| 成人av在线网址| 99精品中文字幕在线不卡| 精品毛片乱码1区2区3区| 日韩不卡免费高清视频| 国产精品一区专区欧美日韩| 99久久www免费| 日本在线观看天堂男亚洲| 蜜桃国内精品久久久久软件9| 亚洲曰本av电影| 国产精品一区二区免费福利视频| 中文字幕中文字幕一区| 国产四区在线观看| 欧美精品二区| 欧美一级片中文字幕| 中文字幕国产一区| 成人avav影音| 免费看黄色a级片| 国产一区二区导航在线播放| 日本中文字幕一级片| 精品一区二区在线视频| 最近最好的中文字幕2019免费 | 午夜欧美性电影| 日韩电影在线一区二区| 香蕉视频免费版| 国产喷白浆一区二区三区| 国产女优裸体网站| 欧美日韩精品欧美日韩精品一| 鲁鲁在线中文| 九九九热精品免费视频观看网站| 国产乱码精品一区二区三区亚洲人 | 国产精品入口麻豆九色| 天天综合网久久| 亚洲精品视频一区二区| 18av.com视频| 欧美三级韩国三级日本一级| 欧美人与性动交α欧美精品图片| 精品夜色国产国偷在线| 欧美男女视频| 国产精品美腿一区在线看| 在线高清一区| 国产日本欧美在线| 中文字幕精品在线不卡| 中文字幕在线永久在线视频 | 视频一区视频二区视频| 国产盗摄一区二区三区| 精品国产免费av| 亚洲在线免费播放| av网站免费在线观看| 在线中文字幕日韩| 国产精品欧美日韩一区| 国产乱码精品一区二区三区日韩精品| 日本不卡一二三区黄网| 四虎最新网站| 欧美日韩精品系列| 九九热这里有精品| 国产精品丝袜白浆摸在线| 日韩国产精品久久久久久亚洲| 北条麻妃在线一区| 欧美在线影院一区二区| 欧美xxxx网站| 91日韩在线播放| 欧美日韩18| 欧洲av无码放荡人妇网站| 欧美性生交大片免费| 亚洲精品国产嫩草在线观看| 日韩av不卡电影| 日韩—二三区免费观看av| 久久99999| 日韩欧美激情在线| 麻豆国产欧美一区二区三区r| 天堂√在线观看一区二区| 国产精品久久99| 天堂成人av| 77777亚洲午夜久久多人| 女生裸体视频一区二区三区| 国产黄视频在线| 欧美群妇大交群的观看方式| 91福利精品在线观看| 成人在线资源网址| 国产精品久久久久aaaa樱花 | av丝袜天堂网| 91麻豆精品国产91久久久更新时间 | 日韩一区二区影院| 自拍自偷一区二区三区| 妺妺窝人体色www看人体| 欧美伊人久久久久久午夜久久久久| 色8久久久久| 美媛馆国产精品一区二区| 国产精品欧美久久久久一区二区| 999av小视频在线| av在线亚洲男人的天堂| **欧美大码日韩| 欧亚一区二区| 日韩欧美国产二区| 欧美日韩一二三四五区| 草草视频在线一区二区| www国产无套内射com| 欧美一区二区视频观看视频| 久久久影院免费| 九七影院理论片| 日韩av在线网站| 97精品一区二区| avtt天堂资源网| 精品国产一区二区三区在线观看 | 亚洲在线观看一区| 欧美三级视频在线观看| 精品国产乱码久久久久久果冻传媒| 久久久久久久午夜| 亚洲视频第一页| 老鸭窝91久久精品色噜噜导演| 在线观看免费网站| 国产精品三级久久久久久电影| 91女厕偷拍女厕偷拍高清| aaaa欧美| 成人黄色片免费| 日韩手机在线导航| 久久高清国产| 亚洲91av| 色阁综合av| 欧美丰满一区二区免费视频| 伊人情人综合网| 久草在线看片| 成人福利在线观看| 精品久久久久久久久久久久| 天堂俺去俺来也www久久婷婷 | 亚洲一级不卡视频| 91麻豆精品| 成人午夜免费剧场| 精品一区二区亚洲| 狠狠色丁香九九婷婷综合五月| 青春草免费在线视频| 水蜜桃一区二区三区| 精品一区精品二区| 99精品桃花视频在线观看| 亚洲ww精品| 欧美激情三级免费| 亚洲视频免费观看| 伊人成综合网伊人222| 中文字幕一区免费| 超碰97国产在线| 欧美日韩中文字幕日韩欧美| 亚洲一区二区三区高清| brazzers在线观看| 虎白女粉嫩尤物福利视频| 久久欧美在线电影| 欧美天堂在线观看| 亚洲欧美日韩国产一区二区| 性欧美videohd高精| 日本在线观看a| 国产在线观看91精品一区| 欧美日韩中文精品| 国产美女精品在线| 久久av免费|