影音先锋男人资源av站_狠狠色综合激情丁香五月_爱爱爱爱看视频_在线播放免费人成视频在线观看_少妇人妻综合久久中文字幕_国产午夜无码精品免费看_久久久久久夜精品精品免费啦_男人女人午夜视频免费_日本xxxx裸体xxxx_丰满人妻熟妇乱又仑精品

電子科大論壇-非清水河畔

 找回密碼
 注冊(開放注冊)
查看: 7553|回復(fù): 0
打印 上一主題 下一主題

[應(yīng)用技術(shù)] 輕松掌握執(zhí)行計劃的高速緩存和重新使用

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2007-11-26 10:03:27 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
Microsoft® SQL Server™ 2000 有用于存儲執(zhí)行計劃和數(shù)據(jù)緩沖區(qū)的內(nèi)存池。池內(nèi)分配給執(zhí)行計劃或數(shù)據(jù)緩沖區(qū)的百分比隨系統(tǒng)狀態(tài)動態(tài)波動。內(nèi)存池中用于存儲執(zhí)行計劃的部分稱為過程高速緩存。 SQL Server 2000 執(zhí)行計劃包含下面兩個主要組件: ◆查詢計劃 執(zhí)行計劃的主體是一個重入的只讀數(shù)據(jù)結(jié)構(gòu),可由任意數(shù)量的用戶使用。這稱為查詢計劃。查詢計劃中不存儲用戶環(huán)境。查詢計劃在內(nèi)存中永遠不會有一個或兩個以上的復(fù)本:一個復(fù)本用于所有串行執(zhí)行,一個復(fù)本用于所有并行執(zhí)行。并行復(fù)本覆蓋所有的并行執(zhí)行,與并行執(zhí)行的并行度無關(guān)。 ◆執(zhí)行環(huán)境 每個正在執(zhí)行查詢的用戶都有一個包含其執(zhí)行專用數(shù)據(jù)(如參數(shù)值)的數(shù)據(jù)結(jié)構(gòu)。該數(shù)據(jù)結(jié)構(gòu)稱為執(zhí)行環(huán)境。執(zhí)行環(huán)境數(shù)據(jù)結(jié)構(gòu)可以重新使用。如果用戶執(zhí)行查詢而其中的一個結(jié)構(gòu)未使用,將會用新用戶的環(huán)境重新初始化該結(jié)構(gòu)。 在 SQL Server 2000 中執(zhí)行任何 SQL 語句時,關(guān)系引擎將首先查看過程高速緩存中是否有用于同一 SQL 語句的現(xiàn)有執(zhí)行計劃。SQL Server 2000 重新使用所找到的任何現(xiàn)有計劃以節(jié)省重新編譯 SQL 語句的開銷。如果沒有現(xiàn)有執(zhí)行計劃,則 SQL Server 2000 將為查詢生成新的執(zhí)行計劃。 SQL Server 2000 有一個高效的算法,可查找用于任何特定 SQL 語句的現(xiàn)有執(zhí)行計劃。在大多數(shù)系統(tǒng)中,這種掃描所使用的最小資源比通過重新使用現(xiàn)有計劃而不是編譯每個 SQL 語句所節(jié)省的資源要少。 該算法將新的 SQL 語句與高速緩存內(nèi)現(xiàn)有的未用執(zhí)行計劃相匹配,并要求所有的對象引用完全合法。例如,這兩個 SELECT 語句中的第一個語句與現(xiàn)有計劃不匹配,而第二個語句則匹配:
SELECT * FROM EmployeesSELECT * FROM Northwind.dbo.Employees
在 SQL Server 2000 實例中,個別執(zhí)行計劃重新使用的概率比在 SQL Server 6.5 或更早版本中高。 執(zhí)行計劃的老化 執(zhí)行計劃生成后便駐留在過程高速緩存中。只有當需要空間時,SQL Server 2000 才使舊的未用計劃從高速緩存老化掉。每個查詢計劃和執(zhí)行環(huán)境都有相關(guān)的成本因子,可表明編譯結(jié)構(gòu)所需的費用。這些數(shù)據(jù)結(jié)構(gòu)還有一個年齡字段。對象每由連接引用一次,其年齡字段便按編譯成本因子遞增。例如,如果一個查詢計劃的成本因子是 8 且被引用了兩次,它的年齡將變?yōu)?16。惰性寫入器進程定期掃描過程高速緩存內(nèi)的對象列表。惰性寫入器減少每個對象的年齡字段,每掃描一次減少 1。在本例中,查詢計劃的年齡經(jīng)過 16 次過程高速緩存掃描后減為 0,除非其他用戶引用了該計劃。如果滿足下面三個條件,惰性寫入器進程將釋放對象: 內(nèi)存管理器需要內(nèi)存且所有可用內(nèi)存都正在使用。 對象的年齡字段是 0。 對象在當前沒有被連接引用。 因為每次引用對象時其年齡字段都會增加,所以經(jīng)常被引用的對象的年齡字段不會減為 0,也不會從高速緩存老化掉。不經(jīng)常被引用的對象將很快滿足釋放條件,但是不會真被釋放,除非其它對象有內(nèi)存需求。

重新編譯執(zhí)行計劃 由于數(shù)據(jù)庫的新狀態(tài),數(shù)據(jù)庫內(nèi)的某些更改可能會導(dǎo)致執(zhí)行計劃效率低下或不再有效。SQL Server 檢測這些使執(zhí)行計劃無效的更改,并將計劃標記為無效。此后,必須為執(zhí)行查詢的下一個連接重新編譯新的計劃。導(dǎo)致計劃無效的情況包括: 對查詢所引用的表或視圖進行任何結(jié)構(gòu)更改(ALTER TABLE 和 ALTER VIEW)。 通過語句(如 UPDATE STATISTICS)顯式生成或者自動生成新的分發(fā)內(nèi)容統(tǒng)計。 除去執(zhí)行計劃所使用的索引。 顯式調(diào)用 sp_recompile。 對鍵的大量更改(其他用戶對由查詢引用的表使用 INSERT 或 DELETE 語句所產(chǎn)生的修改)。 對于帶觸發(fā)器的表,inserted 或 deleted 表內(nèi)的行數(shù)顯著增長。
來原:www
您需要登錄后才可以回帖 登錄 | 注冊(開放注冊)

本版積分規(guī)則

手機訪問本頁請
掃描左邊二維碼
本網(wǎng)站聲明
本網(wǎng)站所有內(nèi)容為網(wǎng)友上傳,若存在版權(quán)問題或是相關(guān)責(zé)任請聯(lián)系站長!
站長電話:0898-66661599    站長聯(lián)系QQ:12726567   
站長微信:hainanok
請掃描右邊二維碼
www.myujob.com

小黑屋|手機版|Archiver|電子科大論壇-非清水河畔 ( 瓊ICP備10001196號-2 )

GMT+8, 2025-11-6 20:23 , Processed in 0.062264 second(s), 14 queries .

Powered by 校園招聘信息

© 2001-2020 電子科大論壇-非清水河畔校園招聘

快速回復(fù) 返回頂部 返回列表