欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Replication的犄角旮旯(七)-- 一個DDL引發(fā)的

系統(tǒng) 2169 0
原文: Replication的犄角旮旯(七)-- 一個DDL引發(fā)的血案(下)(聊聊logreader的延遲)

?

?

《Replication的犄角旮旯》系列導讀

Replication的犄角旮旯(一)--變更訂閱端表名的應用場景

Replication的犄角旮旯(二)--尋找訂閱端丟失的記錄

Replication的犄角旮旯(三)--聊聊@bitmap

Replication的犄角旮旯(四)--關(guān)于事務復制的監(jiān)控

Replication的犄角旮旯(五)--關(guān)于復制identity列

Replication的犄角旮旯(六)-- 一個DDL引發(fā)的血案(上)(如何近似估算DDL操作進度)

Replication的犄角旮旯(七)-- 一個DDL引發(fā)的血案(下)(聊聊logreader的延遲)

Replication的犄角旮旯(八)-- 訂閱與發(fā)布異構(gòu)的問題

Replication的犄角旮旯(九)-- sp_setsubscriptionxactseqno,賦予訂閱活力的工具

---------------------------------------華麗麗的分割線--------------------------------------------

?

前言:這是昨天剛剛發(fā)生的案例,盡管事件的起因只是一個簡單的DDL操作,但影響面和影響時間可以說是大大超出了預期;我們將在描述本案例的前因后果之后,聊聊如何近似估算DDL的操作進度,以及關(guān)于logreader延遲的問題;

前一篇文章《Replication的犄角旮旯(六)-- 一個DDL引發(fā)的血案(上)(如何近似估算DDL操作進度)》

http://www.cnblogs.com/diabloxl/p/3844205.html

前因簡述:

一個復制節(jié)點(即使上級的訂閱,又是下級的分發(fā))需要對一個表進行DDL操作,由于需要修改主鍵,因此將這個表從publication中刪除,然后就開始了漫長的DDL操作……

本來需要進行DDL操作的表已經(jīng)從replication中摘除了,以為不會影響到其他article的復制,結(jié)果慘劇還是發(fā)生了,原因依舊是VLF對logreader的影響,但這次的問題和以往又有些不同……

?

=====================華麗麗的分割線=====================

先說說之前遇到的logreader延遲的情況:

1、發(fā)布表的寫操作

  這里又分為兩種情況

  a)大量并發(fā)寫操作:指大量的小DML操作,特點是事務小、并發(fā)多

  b)大事務寫操作:指有單個大事務操作,特點是事務大、并發(fā)少

2、非發(fā)布表的寫操作

  指有寫操作的表并不是需要復制的表,這里將上述a\b兩種情況合并在一起說,這次遇到的是b這個類型;

?

檢查logreader的延遲的利器——sp_replcounters

MSDN上關(guān)于這個存儲過程的解釋:

http://msdn.microsoft.com/zh-cn/LIBRARY/ms190486

無論對于上述哪種情況,如果 Replicated transactions 持續(xù)增加,那就是logreader延遲了,初步的現(xiàn)象就是這個發(fā)布下所有的訂閱都在延遲;

那上述3種情況的差異呢?

  對于1a)?

Replicated transactions 快速增加,replbiginlsn和replnextlsn都會較慢速度的變化;(這里的慢速是相對與正常速度而言,受實際業(yè)務環(huán)境影響,下同)

  這是由于大量的小DML操作都會快速的提交,但由于大量的日志寫入,導致存在大量的活動VLF,因而日志不能被截斷;同時,盡管logreader根據(jù)replnextlsn去定位下一個要復制的lsn,但由于效率下降,且后面涌入的新事務也在增長,導致惡性循環(huán),從而引起logreader的延遲;

  對于1b)

Replicated transactions 慢速 增加,replbiginlsn不變、replnextlsn不變;

  雖然事務并發(fā)量很小,但由于單個提交的事務很大,仍然導致大量的活動VLF,從而引起logreader效率下降;

  對于2

Replicated transactions 快速增加,replbiginlsn不變、replnextlsn慢速變化;

  由于非復制的表也需要寫日志,且占用了大量VLF,因此logreader需要從大量的VLF中獲取需要復制的日志信息,這也同樣影響到它的執(zhí)行效率;

?

那我們該如何應對呢?

  硬件當然是最有效的手段之一,升級內(nèi)存、磁盤換成IO卡等可以解決根本問題,但這又不是絕對,一個SQL跑死服務器的情況也絕非不可能;

  1、對于1a的情況,建議有頻繁寫操作的表,還是能分就分,或者分到多個庫中,或者分到多個實例下,原則就是不要讓logreader干太多活,畢竟的是個單線程的任務,穿少了也cool,喝多了也吐。

  2、對于1b的情況,本身單個大事務就不是OLTP環(huán)境中提倡的,不光是復制延遲,光一堆鎖估計機器也受不了;建議拆成多個事務來跑;

  3、對于2來說,盡管要搞的表和復制沒有任何關(guān)系,但不能忽略VLF對logreader的影響,既然在一個庫中,公用日志序列,還是小心為妙;如果是大表的DDL的操作,還是通過停寫、建新表、導數(shù)據(jù)的方法實現(xiàn),bulk insert的方式或許是對日志影響最小的;

  但bulk insert的方式一般要求停寫,而受業(yè)務的制約,可能不允許長時間的停寫,這該怎么破?

  可以看看我之前的文章《 Replication的犄角旮旯(一)--變更訂閱端表名的應用場景 》,復制回路可以說是為這種需求量身定做的~

?

Replication的犄角旮旯(七)-- 一個DDL引發(fā)的血案(下)(聊聊logreader的延遲)


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 夜精品A片观看无码一区二区 | 在线观看亚洲专区 | 欧美无遮挡一区二区三区 | 九九热视频精品在线观看 | 国产欧美日韩视频在线观看 | 久久er精品| 日本粉嫩一区二区三区视频 | www.yw193.com| 2021国产精品视频一区 | 成人黄色在线视频 | 亚洲成人免费网站 | 波多野结衣办公室在线 | 国产一区二区三区日韩欧美 | 亚洲成人精品 | 欧美精品在线观看视频 | 全部三片在线观看直播 | 成人三区四区 | 国内外成人免费视频 | 亚洲成人午夜在线 | 一本大道久久a久久精二百 日韩三级中文 | 日韩免费黄色片 | 九九热精 | 久久99热这里只频精品6中文字幕 | 波多野结衣xfplay在线观看 | 国产成人91精品 | 青青青青久久久久国产的 | 欧美精品一区二区三区在线播放 | 国产黄色在线观看 | 成人免费观看网欧美片 | 亚洲视频在线观看一区 | 丰满年轻岳中文字幕一区二区 | 婷婷丁香综合 | 欧美日韩精品一区二区 | 午夜资源在线 | 成人午夜亚洲影视在线观看 | 深夜福利网站 | 国产欧美一级二级三级在线视频 | www国产视频 | jizzjizz日本人 | 秋霞激情| 亚洲特一级毛片 |