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

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>
            亚洲国产日韩一区| av成人动漫| 在线免费高清一区二区三区| 午夜精品久久久久久久蜜桃app| 亚洲专区欧美专区| 亚洲黄色成人久久久| 欧美激情精品久久久| 你懂的一区二区| 欧美激情欧美激情在线五月| 亚洲高清在线观看| 最近中文字幕日韩精品| 亚洲国产欧美在线人成| 亚洲免费观看高清完整版在线观看熊| 欧美国产乱视频| 91久久午夜| 亚洲香蕉成视频在线观看| 蜜桃av噜噜一区| 亚洲福利视频免费观看| 亚洲国产欧美一区二区三区同亚洲| 在线播放国产一区中文字幕剧情欧美| 国产日产欧美a一级在线| 国内精品亚洲| 日韩视频精品在线| 香蕉国产精品偷在线观看不卡| 校园春色综合网| 欧美+亚洲+精品+三区| 亚洲人久久久| 欧美一区二区国产| 欧美日本精品一区二区三区| 国产日韩一区在线| 日韩一区二区精品在线观看| 久久精品麻豆| 亚洲精品在线观看视频| 久久国产精品一区二区三区| 欧美精品一级| 国内精品视频在线观看| 制服丝袜亚洲播放| 麻豆成人在线播放| 亚洲视频一区二区| 欧美r片在线| 国产日本欧美一区二区三区| 一区二区精品在线| 欧美18av| 久久久久91| 国产区亚洲区欧美区| 一本大道久久a久久综合婷婷| 先锋影音一区二区三区| 亚洲精品一区二区三区av| 一色屋精品视频免费看| 亚洲一区二区av电影| 日韩视频精品在线| 亚洲制服欧美中文字幕中文字幕| 亚洲一区中文| 欧美日韩一区二区在线| 亚洲国产成人av在线 | 国产精品女主播| 欧美一区二区三区四区在线观看| 国产毛片一区二区| 亚洲午夜av在线| 欧美成人自拍| 欧美在线视频在线播放完整版免费观看| 欧美日韩国产成人在线91| 亚洲国产小视频| 久久综合狠狠综合久久激情| 亚洲激情一区二区三区| 久久乐国产精品| 亚洲欧美日韩精品久久久久| 欧美日韩在线高清| 在线视频欧美日韩精品| 亚洲人成在线播放| 欧美精品1区| 亚洲人在线视频| 亚洲欧洲日产国码二区| 欧美精品国产| 亚洲夜间福利| 一区二区三区三区在线| 欧美日韩国语| 亚洲视屏在线播放| 亚洲一区国产视频| 国产亚洲人成a一在线v站 | 久久国产精彩视频| 黄色成人在线免费| 欧美成人免费播放| 免费在线日韩av| 亚洲伦理久久| 99综合电影在线视频| 国产精品一区免费视频| 欧美与欧洲交xxxx免费观看 | 亚洲激情成人在线| 亚洲欧洲日韩在线| 国产精品久久久久久久午夜| 久久狠狠婷婷| 欧美成人久久| 亚洲一区二区三区在线| 午夜精品国产精品大乳美女| 精品成人a区在线观看| 亚洲国产精品尤物yw在线观看 | 夜夜狂射影院欧美极品| 性xx色xx综合久久久xx| 日韩西西人体444www| 亚洲激情一区二区| 久久久.com| 久久综合九色综合久99| 欧美日韩免费在线观看| 亚洲美女区一区| 99国内精品| 欧美精品一区在线观看| 欧美一区二区精美| 精品91视频| 亚洲国产精品视频| 国产精品久久久久久久午夜| 欧美国产欧美亚洲国产日韩mv天天看完整 | 国产乱码精品一区二区三区不卡 | 午夜精品久久久久久久久久久久久 | 欧美日韩一区二区欧美激情| 久久国产一区二区| 欧美精品一区视频| 久久五月激情| 国产精品毛片在线| 亚洲精品久久久久久下一站| 一区在线免费| 香蕉久久夜色精品国产| 亚洲午夜在线观看| 欧美激情一区二区三区四区| 久热国产精品视频| 国产深夜精品福利| 亚洲午夜高清视频| 亚洲视频香蕉人妖| 欧美黄网免费在线观看| 蜜桃av噜噜一区| 黄色综合网站| 欧美一区二区视频网站| 亚洲在线成人精品| 国模私拍一区二区三区| 久久国产精彩视频| 久久米奇亚洲| 一区二区免费看| 影音国产精品| 一区视频在线| 国产婷婷一区二区| 国产精品免费区二区三区观看| 欧美电影在线播放| 久久综合中文色婷婷| 欧美日韩一区二区三区四区在线观看| 久久另类ts人妖一区二区| 欧美色欧美亚洲高清在线视频| 亚洲国产精品视频| 亚洲狼人精品一区二区三区| 老司机成人网| 亚洲综合三区| 一本色道久久综合精品竹菊| 宅男噜噜噜66国产日韩在线观看| 欧美国产精品一区| 亚洲精品国久久99热| 一区二区不卡在线视频 午夜欧美不卡'| 久久久97精品| 欧美激情一区二区三区在线视频观看 | 免费av成人在线| 亚洲福利视频网| 免费在线亚洲欧美| 亚洲三级国产| 亚洲欧美激情一区| 国产精品入口日韩视频大尺度| 亚洲一区二区av电影| 欧美在线视频导航| 亚洲第一偷拍| 欧美日韩一二三四五区| 亚洲欧美国产制服动漫| 久久另类ts人妖一区二区| 亚洲精品久久久久| 欧美午夜免费| 久久精品国产2020观看福利| 亚洲国产精品传媒在线观看 | 久久综合精品一区| 日韩视频在线观看一区二区| 国产精品v片在线观看不卡| 性色av香蕉一区二区| 欧美顶级艳妇交换群宴| 亚洲一区国产精品| 永久555www成人免费| 欧美日韩天堂| 久久国产免费| 一本色道久久综合狠狠躁篇的优点| 久久久精品国产免大香伊| 日韩午夜电影av| 国产亚洲一区二区在线观看| 欧美激情一区二区三区在线视频观看 | 亚洲成人在线免费| 国产精品啊v在线| 久久人人精品| 亚洲尤物在线视频观看| 欧美mv日韩mv国产网站| 亚洲欧美日韩国产综合| 亚洲美女视频| 在线免费观看一区二区三区| 国产精品日韩专区| 欧美精品二区三区四区免费看视频| 欧美一区二区免费观在线| 一本一本久久| 亚洲欧洲综合另类|