久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

        手機(jī)站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時隨地免費(fèi)學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機(jī)站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時隨地免費(fèi)學(xué)習(xí)課程

        當(dāng)前位置:首頁  >  技術(shù)干貨  > 什么是全表掃描-有哪些使用場景

        什么是全表掃描-有哪些使用場景

        來源:千鋒教育
        發(fā)布人:xqq
        時間: 2023-12-04 19:47:26 1701690446

        什么是全表掃描?全表掃描是一種“萬能”的查詢方式。任何對數(shù)據(jù)的訪問需求,都可以通過全表掃描的方式解決。

        在邏輯上,這種方式會讀取表中的所有行,然后檢查每一行是否滿足語句的限制條件。物理上,這種方式會批量讀取高水位線下的每個數(shù)據(jù)塊。這里注意兩點(diǎn),一是批量讀取,二是高水位線。批量讀取的目的是為了減少I/O次數(shù),提高系統(tǒng)的吞吐能力。

        一個多塊讀操作可以使一次I/O能讀取多塊數(shù)據(jù)塊(db_block_multiblock_read_count參數(shù)設(shè)定),而不是只讀取一個數(shù)據(jù)塊,這極大地減少了I/O總次數(shù),提高了系統(tǒng)的吞吐量。所以利用多塊讀的方法可以十分高效地實(shí)現(xiàn)全表掃描,而且只有在全表掃描的情況下才能使用多塊讀操作。

        高水位線,在前面已經(jīng)提到過了,它標(biāo)識著數(shù)據(jù)存放的最高點(diǎn)。常見的DELETE操作不會影響高水位線,只有使用TRUNCATE才會將高水位置為零。在10g以后的版本,可以通過shrink命令人工收縮高水位線。

        一般情況下,全表掃描得到的數(shù)據(jù)庫將放入緩沖區(qū)LRU鏈表的LRU端,也就是盡快被淘汰出的部分。因?yàn)镺racle認(rèn)為全表掃描得到的數(shù)據(jù)應(yīng)該是臨時訪問的,不應(yīng)長期占用緩沖區(qū)。

        在11g之后的版本,Oracle提供了一種新的方式來處理全表掃描,稱為直接路徑讀取。這種方式的獨(dú)特之處在于,數(shù)據(jù)塊將不保存在緩沖區(qū)中,這將大大減少栓鎖的使用,避免對緩沖區(qū)的沖擊。當(dāng)然這種方式也不是完全沒有問題,因此很多系統(tǒng)從10g升級到11g的時候,要特別注意這個問題。

        在優(yōu)化器選擇掃描方式時實(shí)際是在尋求一個平衡,即尋找表掃描和索引掃描的損益分界點(diǎn)。對于數(shù)據(jù)量比較少的表而言,全表掃描與索引掃描的損益分界點(diǎn)為15%。對于數(shù)據(jù)量比較多的表而言,全表掃描與索引掃描的損益分界點(diǎn)可能會小于5%。

        而對于存儲著海量數(shù)據(jù)的表而言,全表掃描與索引掃描的損益分界點(diǎn)可能是1%。這里的1%是指即使通過索引掃描來從表中讀取1%的數(shù)據(jù),也沒有直接通過全表掃描讀取數(shù)據(jù)有效。當(dāng)然上面這些數(shù)字都經(jīng)驗(yàn)值,實(shí)際都以成本為最終考察因素。

        此外,隨著磁盤技術(shù)的不斷發(fā)展,特別是閃存技術(shù)的不斷成熟,隨機(jī)讀取的開銷減少了很多,換句話說索引訪問的成本大大下降了,優(yōu)化器會更加傾向于使用索引掃描方式。

        全表掃描有哪些使用場景??下面來看看常見的使用全表掃描的場景:

        大范圍數(shù)據(jù)讀取的情況:這里的大范圍是個相對的概念。一般來說,如果訪問表中的大部分?jǐn)?shù)據(jù),用表掃描效率較高;如果訪問表中的小部分?jǐn)?shù)據(jù),則使用索引訪問的效率較高。

        這里就涉及一個“損益點(diǎn)”的概念,當(dāng)小于損益點(diǎn)時,索引訪問效率高;當(dāng)高于損益點(diǎn)是,表訪問效率低。這不是一個具體比例,常見的經(jīng)驗(yàn)在1%~10%之間。具體還是取決于當(dāng)時的成本評估。

        從小數(shù)據(jù)表中讀取數(shù)據(jù)的情況:如果訪問的數(shù)據(jù)規(guī)模較小,則優(yōu)化器傾向于通過全表掃描的方式訪問整個表。因?yàn)槿頀呙枋褂昧硕鄩K讀的機(jī)制,往往效率是很高的。當(dāng)然,如何界定小表是個問題,后面會專門介紹這個問題。

        按照并行處理方式讀取數(shù)據(jù)的情況:在并行處理的情況下,全表掃描的執(zhí)行速度會在更大程度上得到提高。

        使用FULL提示的情況:這個提示告訴優(yōu)化器,使用全表掃描訪問表。

        ?

        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
        請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
        免費(fèi)領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        嵌入式培訓(xùn)課程:探索技術(shù)的無限可能

        近年來,嵌入式系統(tǒng)的廣泛應(yīng)用已經(jīng)深刻改變了我們的生活方式。從智能手機(jī)到智能家居,從汽車到醫(yī)療設(shè)備,嵌入式技術(shù)已經(jīng)成為現(xiàn)代社會不可或缺的...詳情>>

        2023-12-12 11:02:35
        嵌入式開發(fā):Linux網(wǎng)絡(luò)編程的探索與實(shí)踐

        在當(dāng)今的科技世界中,嵌入式系統(tǒng)已經(jīng)滲透到我們生活的方方面面,從智能手機(jī)、電視、汽車到醫(yī)療設(shè)備等。而在這些設(shè)備中,Linux網(wǎng)絡(luò)編程扮演著至...詳情>>

        2023-12-12 09:55:55
        Java游戲項(xiàng)目開發(fā):技術(shù)概覽與實(shí)踐

        在數(shù)字化世界中,游戲已經(jīng)成為了人們休閑娛樂的重要方式之一。隨著科技的不斷進(jìn)步,游戲開發(fā)行業(yè)也在不斷發(fā)展,而Java作為一門廣泛使用的編程語...詳情>>

        2023-12-12 08:49:15
        Web前端的基石:HTML

        在數(shù)字化的時代,網(wǎng)頁設(shè)計已經(jīng)成為了一個重要的領(lǐng)域。而在這個領(lǐng)域中,HTML(HyperTextMarkupLanguage)無疑是最基礎(chǔ)、最重要的一環(huán)。它是構(gòu)建...詳情>>

        2023-12-12 08:15:55
        嵌入式開發(fā):內(nèi)存分配的方式

        嵌入式系統(tǒng)開發(fā)中,內(nèi)存分配是一個至關(guān)重要的話題。嵌入式系統(tǒng)通常具有有限的內(nèi)存資源,因此合理的內(nèi)存分配方式對系統(tǒng)的性能和穩(wěn)定性至關(guān)重要。...詳情>>

        2023-12-12 06:35:55
        快速通道
        白城市| 抚宁县| 资兴市| 望城县| 洱源县| 高唐县| 易门县| 沅江市| 长宁县| 横山县| 西宁市| 威信县| 延吉市| 西青区| 宣汉县| 浙江省| 布拖县| 信丰县| 米易县| 延寿县| 荣昌县| 阿图什市| 盘锦市| 温州市| 安溪县| 兴山县| 册亨县| 确山县| 武隆县| 芜湖市| 策勒县| 华蓥市| 扶沟县| 通州区| 新乡县| 万荣县| 长顺县| 兴隆县| 灵山县| 镇平县| 南阳市|