青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Prayer

在一般中尋求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

繼續,對讀操作進行提交

Posted on 2009-08-06 19:47 Prayer 閱讀(407) 評論(0)  編輯 收藏 引用 所屬分類: DB2

2003 年 1 月 01 日

在只讀情況下進行 COMMIT 時釋放鎖并釋放應用程序。

簡介

許多正在使用 DB2 for z/OS 或 DB2 for OS/390 的人都認為對只讀訪問使用 COMMIT 是沒有必要的。這些人認為,因為他們沒有更改任何數據,所以沒有必要使用 COMMIT 。但是 COMMIT 不僅應用更改, 它還釋放鎖和聲明(claim), 所以 COMMIT 會影響應用程序可用性。

我要解釋在將 COMMIT 引入到進行只讀訪問的應用程序時要注意的可用性考慮事項以及聲明和放棄(drain)的概念。我將使用的示例特定于只讀環境;這些示例并不旨在討論有關更新活動的 COMMIT 考慮事項。本文的范圍限于在以下環境中對只讀應用程序進行 COMMIT 操作:可能在該環境中執行進行更新的實用程序和其它應用程序。本文中,我將使用術語“應用程序可用性”來表示關于允許讀訪問的可用性。





回頁首


獲得聲明

如果您熟悉 DB2,那么您可能對于對象(例如行、頁面、表或表空間)上的不兼容鎖(例如 X 和 S)會降低并發性有相當的了解。但如果您將只讀程序與 ISOLATION Un COMMIT ted Read(UR)聯編在一起,會怎么樣呢?這樣做意味著您的只讀程序可能不會獲得任何鎖。要牢記的是,如果涉及到大量刪除,則與 ISOLATION UR 聯編的程序確實會獲得針對表或表空間的 MASS DELETE 鎖。如果表空間使用工作文件數據庫,則還會獲得針對它的 IX 鎖。但是,本文討論只讀方案。

所以問題是,在以 ISOLATION UR 隔離級別綁定進行只讀訪問的應用程序中使用 COMMIT 會對整個應用程序的可用性產生任何影響嗎?

回答是:會產生影響。

盡管以 ISOLATION UR 隔離級別進行綁定時,進行只讀訪問的應用程序沒有獲得鎖,但它確實聲明了這個對象。而正如我將在本文稍后解釋的,聲明可能就是導致可用性降低的原因。正如我前面提到的, COMMIT 釋放了聲明。

現在,在應用程序可用性極其重要的環境中,當更新活動很少時,最好安排數據庫維護作業(諸如 REORGIMAGE COPIES )。這樣做增加了 REORG 作業與長時間運行的只讀批處理作業并發運行的可能性 — 這就是可用性成為問題的原因所在。

REORG 類似于其它實用程序,(在某個階段)需要一個針對對象的 drain 鎖,它會一直等待,直到能獲得一個這樣的鎖為止。放棄是一種用于接管對象并序列化對它的訪問的機制。當釋放了對象上的所有聲明,而且預先不存在 drain 鎖時,就可以獲得 drain 鎖。Drain 請求器防止實用程序獲得已放棄對象上的任何新聲明。

從應用程序觀點來看,您可能對可用性問題是如何結束的感到疑惑。REORG 作業將一直等待,直到應用程序的作業完成為止嗎?如果在 REORG 實用程序可以請求放棄之前,應用程序獲取了聲明,則它會一直等待。但是如果 REORG 先請求放棄,那么它就不會等待。

當然,在啟動 REORG 實用程序之前可以初始化應用程序的作業,以確保 REORG 會等待批處理作業。但是,如果還有另一個批處理作業或在線事務,那么它將會進入等待,因為它不能獲取對象的聲明。(新作業或事務必需獲取聲明,但是 Drain 請求器 REORG 會阻止該對象的任何聲明。)

作為準備執行的只讀程序和 REORG 實用程序(我將解釋這兩個程序可能會也可能不會同時執行)的結果所產生的應用程序非可用性程度取決于:

  • REORG 上指定的 SHRLEVEL OPTION
  • REORG 并發執行的批處理作業的 COMMIT 頻率。

 

REORG 實用程序在終止之前,需要放棄所有聲明類。如果 REORG 在執行時使用 SHRLEVEL REFERENCESHRLEVEL CHANGE ,那么會在 SWITCH 階段發生這個放棄,如果該實用程序執行時使用 SHRLEVEL NONE ,那么會在 RELOAD 階段發生這個放棄。

長時間運行的進程的 COMMIT 頻率也會影響可用性。通過引入 COMMIT 就可以釋放對象上的聲明。注:如果批處理作業正在使用用 WITH HOLD 定義的游標,那么在經過 COMMIT 點之后仍會保留聲明。在所有其它情況下,在 COMMIT 時都釋放對象的聲明。對象聲明的持續時間并不取決于計劃或包的 BIND 過程中指定的 RELEASE 參數( COMMITDEALLOCATE )。

表 1 演示了 REORG SHRLEVEL 參數和 COMMIT 頻率對應用程序可用性的的影響。為簡單起見,我們假設采用一個未分區的表空間。該表還假設批處理作業正在執行,并且在 T1 時間觸發 REORG 作業。讓我們研究該表中顯示的各種情況。

表 1:比較使用 COMMIT 和不使用 COMMIT 時的進程
表 1

情況 1. 進程執行時不使用任何中間 COMMIT 。使用 SHRLEVEL NONEREORG 作業在 T1 時間啟動。

情況 2. 進程執行時不使用任何中間 COMMIT 。使用 SHRLEVEL REFERENCECHANGEREORG 作業在 T1 時間啟動。

情況 3. 進程執行時,在 T3 時間進行中間 COMMIT 。使用 SHRLEVEL NONEREORG 作業在 T1 時間啟動。

情況 4. 進程執行時,在 T3 時間進行中間 COMMIT 。使用 SHRLEVEL REFERENCECHANGEREORG 作業在 T1 時間啟動。

情況 5. 進程執行時,不包含任何中間 COMMIT ,但與情況 2 相比,執行完成所花的時間比較長。

情況 6. 進程執行時,在 T3 時間進行中間 COMMIT ,但與情況 4 相比,執行完成所花的時間比較長。

從表 1 您可以得出如下結論:

  • 不進行中間 COMMIT 的批處理作業在與 REORGSHRLEVEL NONE )作業并發執行時所產生的非可用性持續的時間最長。非可用性程度取決于進程(最可能的是批處理作業)的持續時間和正在被重組的表空間大小。
  • 從情況 2 和情況 4 中可以看出,當 REORG 與不考慮 COMMIT 頻率的批處理作業并發執行時,非可用性時間看起來相同;但是事實并非如此。如果情況 2 中的進程執行的時間更長,它會導致 REORG 等待的時間更長,從而增加應用程序非可用性時間。如果情況 4 中也出現類似的情況,它導致很少的進程等待時間( T5 時間),而 REORG 實用程序在切換(switch)階段執行并在該階段終止。但是,不會增加非可用性時間(請參閱情況 5 和情況 6)。
  • 如果進程的等待時間超過了 DSNZPARM 中的 IRLMRWT 值,那么進程將以 -911 (超時)終止。如果應用程序中這種情況很常見,那么請考慮提高 IRLMRWT 值,或將重試邏輯合并到程序中。
  • 如果實用程序的等待時間超過了實用程序的超時時間,那么實用程序就超時。通過使 UTIMOUTIRLMRWT 相乘可以確定實用程序超時時間。您可能有興趣通過提高這兩個參數中任一個或同時提高這兩個參數來提高該實用程序的超時時間。但請謹慎使用這個方法。注:在所有情況中,每當 REORG 作業轉至等待狀態(等待獲得 drain 鎖),它會導致應用程序的非可用性。因此,當您在提高實用程序超時值時應該小心,因為它將對可用性產生直接影響。

 





回頁首


解決方案

SHRLEVEL REFERENCE (允許并發的讀操作)或用 SHRLEVEL CHANGE (允許并發的更改操作)方式執行 REORG 實用程序以及使長時間運行的進程發出中間 COMMIT 是解決可用性問題的優秀方案。決定 COMMIT 頻率的關鍵因素是非可用性最大容許量以及 DSNZPARM 中定義的實用程序超時值。 COMMIT 頻率應該小于非可用性最大容許度。如果大于或等于的話,從本文中您已經了解到,它會導致可能的非可用性(當 REORG 在等待放棄所有聲明時,禁止任何新的聲明)。

即使 COMMIT 頻率低于非可用性最大容許度,但使用 DB2 V6(或更低版本)時,已分區表空間的 SWITCH 階段也可能會花相當一段時間(以便 IDCAMS 進行重命名),從而導致非可用性。使用 DB2 V7,通過使用 FASTSWITCH YES (缺省值)會緩解該問題。如果 COMMIT 頻率大于實用程序超時值,那么它就可能使 REORG 實用程序未完成任何工作就超時了。DB2 V7 引入了兩個新選項: DRAIN WAIT (指定覆蓋實用程序超時值的時間)和 RETRY (在發出超時之前進行重試的次數),以防止 REORG 超時。





回頁首


做就是了

雖然在引入中間 COMMIT 時會產生與之相關的額外開銷(至少需要一個額外的數據庫調用),但是通過仔細規劃,用相當低的投資(CPU 開銷)獲得相當好的回報(應用程序可用性)是可能的。





回頁首


參考資料

DB2 for z/OS and OS/390
ibm.com/software/ db2zos



關于作者

 

Pranav Sampat 是 Cognizant Technology Solutions 的顧問。他是數據庫設計、性能、恢復和可用性方面的 IBM 認證的 DB2 DBA。可以通過 spranav@email.cognizant.com與他聯系。



http://www.ibm.com/developerworks/cn/data/library/techarticles/mag_0211sampat/0211sampat.html
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            美女在线一区二区| 亚洲一区二区三区在线观看视频 | 欧美 日韩 国产一区二区在线视频 | 久久精品在线| 欧美性生交xxxxx久久久| 91久久久在线| 亚洲午夜羞羞片| 欧美成人免费在线观看| 亚洲福利视频三区| 欧美国产一区二区三区激情无套| 香港久久久电影| 日韩视频一区二区三区在线播放| 女生裸体视频一区二区三区| 99在线精品观看| 亚洲区欧美区| 国产在线观看一区| 亚洲高清资源综合久久精品| 欧美精品久久久久久久免费观看| 一区二区欧美日韩| 久久嫩草精品久久久精品一| 亚洲精选一区二区| 久久精品欧美日韩| 一区二区三区|亚洲午夜| 亚洲免费视频成人| 亚洲欧洲精品一区二区三区| 亚洲午夜性刺激影院| 亚洲精品中文在线| 久久久久久久久久看片| 亚洲影视九九影院在线观看| 欧美在线地址| 久久av一区| 欧美日本中文| 亚洲精品国产欧美| 欧美影院视频| 亚洲香蕉成视频在线观看| 久久久噜噜噜久久狠狠50岁| 亚洲欧美日韩国产成人| 麻豆九一精品爱看视频在线观看免费| 欧美在线视频免费观看| 欧美网站在线观看| 中文av一区二区| 欧美不卡在线视频| 亚洲图片欧美午夜| 欧美午夜电影网| 亚洲一区二区三区四区中文| 亚洲淫片在线视频| 欧美日韩精品一区二区天天拍小说| 欧美黑人在线播放| 亚洲福利视频网站| 欧美国产免费| 亚洲免费在线观看| 你懂的视频一区二区| 亚洲国产成人av| 欧美.www| 亚洲一级影院| 久久精品国产欧美亚洲人人爽| 国产精品国产三级国产专播精品人 | 久久av二区| 亚洲激情一区二区三区| 欧美日韩精品免费观看视一区二区| 欧美mv日韩mv国产网站app| 亚洲高清资源综合久久精品| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲美女在线观看| 国产精品福利在线| 久久久久久精| 亚洲人体大胆视频| 欧美美女操人视频| 久久米奇亚洲| 亚洲一级在线观看| 另类亚洲自拍| 欧美一级视频一区二区| 欧美一站二站| 最新亚洲视频| 男女激情久久| 久久激情五月丁香伊人| 日韩一区二区福利| 91久久精品国产91性色tv| 欧美日韩极品在线观看一区| 久久高清国产| 午夜影视日本亚洲欧洲精品| 亚洲综合日韩在线| 一区二区国产在线观看| 亚洲人妖在线| 一区二区三区产品免费精品久久75 | 夜夜爽av福利精品导航| 亚洲精品之草原avav久久| 久久影院午夜片一区| 亚洲欧美日韩在线综合| 亚洲天堂免费观看| 午夜一区不卡| 久久国产高清| 美女黄网久久| 亚洲国产精品成人一区二区| 可以免费看不卡的av网站| 久久躁狠狠躁夜夜爽| 欧美黑人一区二区三区| 99精品国产99久久久久久福利| 欧美国产大片| 日韩一级网站| 欧美一区日韩一区| 蜜桃av噜噜一区| 欧美日韩你懂的| 国际精品欧美精品| 国产亚洲精品v| 99精品99| 久久久久免费观看| 国精品一区二区| 亚洲美女视频| 久久久亚洲国产美女国产盗摄| 久久av一区| 亚洲国产高清在线| 欧美在线视频导航| 亚洲欧美激情四射在线日| 亚洲婷婷免费| 免费观看成人| 亚洲娇小video精品| 国产日韩欧美在线看| 亚洲手机视频| 黑人一区二区| 狠狠色狠狠色综合日日91app| 欧美紧缚bdsm在线视频| 欧美午夜一区二区福利视频| 国产精品午夜在线| 久久成人精品无人区| 欧美顶级大胆免费视频| 亚洲欧美日韩高清| 国产视频久久久久| 国产麻豆一精品一av一免费| 亚洲日韩欧美视频一区| 久久久欧美一区二区| 久久精品一区四区| 性色av一区二区三区红粉影视| 国产精品久久久久久久午夜片| 欧美激情第3页| 久久男人资源视频| 欧美一区二区三区在线观看视频| 亚洲欧美资源在线| 欧美亚洲视频| 欧美**人妖| 久久一区免费| 欧美午夜免费影院| 每日更新成人在线视频| 蜜臀av一级做a爰片久久| 免费在线观看一区二区| 欧美在线91| 欧美日本中文字幕| 韩国在线视频一区| 一区二区三区蜜桃网| 一本大道久久a久久精品综合 | 中国成人黄色视屏| 欧美一级淫片播放口| 激情综合网址| 女主播福利一区| 亚洲欧美久久| 亚洲国产日韩在线| 日韩视频不卡| 99re6热只有精品免费观看 | 国产一区二区三区四区三区四| 欧美日韩综合在线| 国产精品黄色| 在线免费高清一区二区三区| 欧美一区三区二区在线观看| 亚洲国产高清在线| 麻豆成人在线播放| 亚洲理论电影网| 久久久国产亚洲精品| 亚洲自拍三区| 欧美激情视频网站| 99riav1国产精品视频| 欧美日韩精品一区二区| 亚洲区免费影片| 精品av久久707| 亚洲高清网站| 午夜久久久久久久久久一区二区| 另类图片国产| 亚洲自拍偷拍福利| 亚洲综合精品| 欧美黑人多人双交| 亚洲国产视频一区二区| 欧美一区二区三区的| 亚洲欧洲av一区二区三区久久| 欧美性猛交99久久久久99按摩| 亚洲七七久久综合桃花剧情介绍| 日韩一区二区精品| 国产欧美日韩专区发布| 久久综合伊人| 欧美一级电影久久| 亚洲女性喷水在线观看一区| 中文成人激情娱乐网| 一本不卡影院| 蘑菇福利视频一区播放| 亚洲国产成人一区| 在线一区二区视频| 亚洲经典三级| 香蕉av福利精品导航| 亚洲欧美日产图| 亚洲欧美日韩成人| 欧美激情1区2区3区| 久久精品国产清自在天天线|