成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

用Oracle 9i全索引掃描快速訪問數據

瀏覽:3日期:2023-11-24 17:10:20
為了實現Oracle關于增加SQL優化查詢智能的承諾,Oracle9i增強了全索引SQL執行計劃以支持基于功能的索引(function-based index)。在Oracle 8i中,SQL優化器添加了判定查詢是否可以專門用一個現存的索引來解決的智能。一旦存在索引,Oracle就會繞過對表的訪問,索引組織表(index-organized table,IOT)結構就是一個例子。在IOT結構中,所有的數據都載入索引的b-樹結構,這樣表(table)就成為一個多余的東西了。 一旦Oracle SQL優化器檢測到查詢無需訪問表時,Oracle就調用全索引掃描并快速讀取每一個索引塊而無需接觸表本身。有一點很重要:全索引掃描并沒有讀取索引節點,而是一塊一塊的執行掃描并快速捕捉索引節點。最好,Oracle調用多塊讀取功能,調用多個過程來讀取表。 Oracle和多塊讀取 為了加快表和索引的訪問速度,Oracle使用了db_file_multiblock_read_count參數(默認參數為8)來輔助把全表掃描和全索引掃描所獲得的數據塊盡快送到數據緩沖區中。然而,這個參數只有當SQL查詢執行全表掃描時才可用,并且,在絕大多數情況下,查詢要使用索引來訪問表。 Oracle對全索引掃描有如下限制: SQL請求的全部列(column)必須駐留在索引樹中;也就是說,SELECT和WHERE字句中的所有數據列必須存在于索引中。 查詢訪問大量的行(row)。根據你查詢的范圍,比例變化范圍為10%到25%之間,這個比例參數db_file_multiblock_read_count的設置和查詢的并行程度極大的影響到這個比例。 由于索引節點并沒有按索引順序排列,所以列并沒有順序。這樣,ORDER BY字句將要求附加的排序操作。 Oracle提供了一個SQL提示(hint)來強制全索引掃描。你也可以通過指定index_ffs提示來強制快速索引掃描,這經常與parallel_index提示組合來提高性能。例如,下面的查詢強迫使用并行快速全索引掃描: select distinct /*+ index_ffs(c,pk_auto) parallel_index_ (automobile, pk_auto) color, count(*)fromautomobilesgroup by color;由于涉及了所有的變量,所以全索引是否會加快查詢速度并不能簡單的加以回答。所以,大多數有經驗的SQL調試者(tuner)會對符合快速全索引掃描標準的查詢進行手工計時,看看使用全索引掃描的反映時間是否會降低。 函數索引基礎 在Oracle9i之前,全索引掃描只有當創建的索引沒有空值時才可以使用,也就是說,Oracle建立索引時必須用一個NOT NULL子句才可以使用該索引。由于Oracle9i支持用函數(function-based)索引實現的唯索索引掃描,這種情況大大改觀。 簡單回歸一下,函數索引是Oracle8的一個重要改進,因為它提供了一種有效的消除無必要長表全掃描的機制,由于函數索引可以在任何查詢語句中的WHERE子句中精確復制,Oracle總會用一個索引來匹配上SQL查詢的WHERE子句。 現在,我要會用一個student表來舉一個簡單的例子來解釋全索引掃描如何與函數索引一起工作的過程。 創建student表 (student_name varchar2(40), date_of_birth date); 使用這個表,創建與表中所有列相關聯的函數索引。在本例中,該函數為initcap(即大寫每個單詞的首字母)和to_char(即把一個數字變成字符): create index whole_studenton student(initcap(student_name), to_char(date_of_birth,’MM-DD-YY’));定義完函數索引后,Oracle9i中任何可以引用這些列(column)的SQL語句都可以使用全索引掃描。下面是SQL匹配函數索引的查詢例子: select * from studentwhere initcap(student_name) = ‘Jones’;select * from studentwhere to_char(date_of_birth,’MM-DD=YY’) = ’04-07-85’;用函數索引來調用全索引掃描 Oracle9i只要可能就會使用函數索引并在函數索引的基礎上調用全索引掃描。假如SQL優化器統計結果表明使用全索引掃描的速度將會超過通過索引的b-樹訪問的速度,那么Oracle9i就會這么做。 下面是用函數索引調用唯索掃描的準則。所有的SQL謂詞匹配索引中的列,查詢必須從表中返回足夠多的行,這樣做的目的是為了讓代價優化器(cost-based optimizer)來判定全索引掃描是否要比傳統的索引訪問方法要快。是否調用全索引掃描的決定取決于下面幾個參數設置: 代價優化器的適當統計數字——這個計劃(schema)最近已經分析過了,而且optimizer_mode參數不能設置為RULE。 索引的并行程度——注重索引的并行程度是獨立設置的;索引并沒有繼續表的并行程度。 optimizer_index_cost_adj的設置——它控制代價優化器是否傾向于全索引掃描。 db_file_multiblock_read_count的設置——這個參數影響到全索引掃描的代價。這個值越高,全索引掃描的代價也就會越“便宜”。 索引的直方圖表示——對偏移(skewed)索引,它幫助代價優化器評估查詢返回的行數。 Oracle的一個重要提高 在函數索引基礎上的快速全索引掃描是Oracle9i的另一個提高性能的途徑。當數據庫遷移到Oracle9i時,許多數據庫自動開始使用這個新的執行計劃。不過,當SQL代價優化器決定是否選擇全索引掃描時,還要考慮幾個因素。Oracle專業人員需要適當設置參數,以確保代價優化器不會用不合適的方式使用快速全索引掃描——這一點需要非凡注重。
標簽: Oracle 數據庫
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
91精品国产黑色紧身裤美女| 色综合网色综合| 成人性生交大片免费看中文 | 欧美三级韩国三级日本三斤 | 欧美高清在线一区| 成人一二三区视频| 日韩三级.com| 国产乱人伦精品一区二区在线观看 | 日本不卡中文字幕| 麻豆精品网站| 亚洲美女屁股眼交3| 久久99久久久欧美国产| 成人av电影免费在线播放| 3d成人动漫网站| 国产一区二区在线免费观看| 欧美日本一道本| 亚洲一区二区精品3399| 激情综合网址| 中文字幕一区二区三区乱码在线| 国内成人精品2018免费看| 夜夜嗨一区二区三区| 亚洲欧美怡红院| 亚洲国产精品一区二区第四页av| 日韩视频一区二区在线观看| 亚洲国产精品久久人人爱| 99精品视频一区二区三区| 精品少妇一区二区三区| 成人aa视频在线观看| 欧美体内she精视频| 毛片av一区二区| 欧美日韩午夜在线视频| 国模套图日韩精品一区二区| 欧美日韩国产小视频| 国内成人免费视频| 色呦呦国产精品| 石原莉奈在线亚洲三区| 91久久极品少妇xxxxⅹ软件| 亚洲免费在线看| 亚洲综合国产激情另类一区| 日韩精品五月天| 欧美三级电影在线观看| 国产不卡高清在线观看视频| 欧美性感一类影片在线播放| 亚洲综合区在线| 一本一本大道香蕉久在线精品 | 99精品视频在线免费观看| 欧美高清www午色夜在线视频| 亚洲午夜一二三区视频| 一本到不卡免费一区二区| 久久97超碰色| 亚洲精品一区二区三区影院| 丰满白嫩尤物一区二区| 在线播放中文一区| 99久久免费精品高清特色大片| 欧美一区日韩一区| 久久99精品国产.久久久久| 91精品久久久久久久91蜜桃| 99re视频精品| 亚洲女人小视频在线观看| 久久精品国产第一区二区三区最新章节| 亚洲欧美乱综合| 国产精品xvideos88| 久久久久久久av麻豆果冻| 激情自拍一区| 日本美女一区二区| 久久综合影视| 久久国产福利国产秒拍| 精品国产成人在线影院| 韩日欧美一区| 亚洲6080在线| 一本久久精品一区二区| 国产99久久久国产精品免费看| 91麻豆精品久久久久蜜臀| av一二三不卡影片| 亚洲欧美日韩国产另类专区| 欧美亚洲高清一区二区三区不卡| 日本伊人精品一区二区三区观看方式 | 中文字幕乱码久久午夜不卡| 国产区二精品视| 麻豆精品视频在线观看免费| 久久亚洲欧美国产精品乐播| 在线视频精品| 黄色精品一二区| 中文字幕欧美三区| 色婷婷亚洲一区二区三区| 国产91对白在线观看九色| 日韩欧美高清在线| 国内精品久久久久久久影视麻豆| 欧美大胆一级视频| 亚洲乱码视频| 国产成人夜色高潮福利影视| 最新日韩av在线| 欧美浪妇xxxx高跟鞋交| 粉嫩在线一区二区三区视频| 亚洲乱码国产乱码精品精98午夜| 亚洲免费影视| 国产不卡视频一区| 一级精品视频在线观看宜春院 | 亚洲国产精品久久人人爱蜜臀 | 久久99精品国产.久久久久久| 欧美一区二区三区人| 亚洲精品孕妇| 国产suv精品一区二区883| 久久久另类综合| 久久天堂成人| 午夜日本精品| 国模无码大尺度一区二区三区| 久久久99精品免费观看| 美日韩免费视频| 91猫先生在线| 亚洲小少妇裸体bbw| 精品电影一区二区三区| 色诱亚洲精品久久久久久| 欧美视频四区| 国产成人综合精品三级| 午夜av区久久| 亚洲欧洲在线观看av| 日韩视频一区二区三区| 久久一区精品| 一区在线视频观看| 成人av免费观看| 麻豆精品在线看| 亚洲一区免费观看| 国产精品人人做人人爽人人添| 六月婷婷一区| 欧美日一区二区在线观看| 国产一区二区精品久久| 中文文精品字幕一区二区| 欧美日韩国产一级| 国产毛片一区| 午夜精品亚洲| 国产91露脸合集magnet| 日韩一区在线播放| 欧美不卡在线视频| 欧美网站一区二区| 国产伦精品一区二区三区四区免费 | 亚洲麻豆视频| 成人99免费视频| 一区二区三区鲁丝不卡| 欧美性色黄大片| 在线一区视频| 国内一区二区三区| 成人av片在线观看| 亚洲国产精品尤物yw在线观看| 6080午夜不卡| 亚洲国产欧美国产综合一区| 99久久99久久免费精品蜜臀| 亚洲与欧洲av电影| 国产蜜臀97一区二区三区| 日韩欧美高清一区| 欧美日韩色一区| 香蕉久久夜色精品国产| 国模精品一区二区三区| 成人国产一区二区三区精品| 看片网站欧美日韩| 石原莉奈在线亚洲二区| 一二三区精品视频| 亚洲视频免费观看| 国产精品久久久久四虎| 国产日韩av一区二区| 精品少妇一区二区三区视频免付费| 亚洲欧美日韩精品久久久| 一区久久精品| 国产一区二区三区四区老人| 黑人精品欧美一区二区蜜桃| 日韩国产精品大片| 亚洲男人都懂的| 中文字幕日韩一区| 国产视频一区二区在线观看| 精品久久久久久无| 精品乱人伦一区二区三区| 日韩欧美国产精品| 欧洲av在线精品| 色综合久久久久久久久| 麻豆成人在线播放| 久久精品天堂| 葵司免费一区二区三区四区五区| 欧美日韩在线精品一区二区三区| 日韩成人av影视| 亚洲成人免费在线| 亚洲午夜av在线| 亚洲一区二区三区免费视频| 亚洲一区二区三区四区不卡| 国产三区在线成人av| 精品日韩99亚洲| 91福利视频网站| 在线亚洲一区观看| 国产三区二区一区久久| aa级大片欧美三级| 国产一区二区三区久久久久久久久| 99re8在线精品视频免费播放| 激情丁香综合五月| 国产九色sp调教91| 成人性生交大片免费看视频在线| 蜜芽一区二区三区| 美女视频网站久久| 亚洲图片欧美一区| 天堂va蜜桃一区二区三区 | 国产精品88888| 成人高清视频在线观看|