chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

數(shù)據(jù)遷移和數(shù)據(jù)一致性的問(wèn)題

倩倩 ? 來(lái)源:juejin.cn ? 作者:juejin.cn ? 2022-09-26 10:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

通過(guò)對(duì)數(shù)據(jù)的垂直拆分或水平拆分后,我們解決了數(shù)據(jù)庫(kù)容量、性能等問(wèn)題,但是將會(huì)面臨數(shù)據(jù)遷移和數(shù)據(jù)一致性的問(wèn)題。

在數(shù)據(jù)遷移方面,需要考慮如何快速遷移、平滑遷移、不停機(jī)的遷移等。待數(shù)據(jù)遷移完畢后,還需要校驗(yàn)數(shù)據(jù)的完整性。

數(shù)據(jù)一致性方面,要根據(jù)的業(yè)務(wù)來(lái)判斷是否要必要引入分布式事務(wù),如果需要引入分布式事務(wù),需要斟酌是采用XA,還是基于BASE的柔性事務(wù)。

基于 Spring Boot + MyBatis Plus + Vue & Element 實(shí)現(xiàn)的后臺(tái)管理系統(tǒng) + 用戶(hù)小程序,支持 RBAC 動(dòng)態(tài)權(quán)限、多租戶(hù)、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

項(xiàng)目地址:https://gitee.com/zhijiantianya/ruoyi-vue-pro

視頻教程:https://doc.iocoder.cn/video/

數(shù)據(jù)遷移

數(shù)據(jù)遷移是很容易出故障的一個(gè)環(huán)節(jié),需要考慮怎么更加平滑的遷移舊數(shù)據(jù)到新的數(shù)據(jù)庫(kù)和系統(tǒng),以及達(dá)到數(shù)據(jù)準(zhǔn)確、快速遷移、減少停機(jī)、對(duì)業(yè)務(wù)的影響小等,特別是異構(gòu)的數(shù)據(jù)結(jié)構(gòu)情況下,難度更大。

全量

全量遷移的過(guò)程如下:

業(yè)務(wù)系統(tǒng)停機(jī)。

數(shù)據(jù)庫(kù)遷移,校驗(yàn)數(shù)據(jù)一致性。

然后業(yè)務(wù)系統(tǒng)升級(jí),接入新的數(shù)據(jù)庫(kù)。

缺點(diǎn):

需要業(yè)務(wù)系統(tǒng)停機(jī)

遷移時(shí)間較長(zhǎng),對(duì)業(yè)務(wù)影響較大。如果是異構(gòu)數(shù)據(jù)的話,需要使用程序來(lái)處理,遷移時(shí)間更長(zhǎng)。

全量+增量

全量+增量遷移的方式,需要依賴(lài)數(shù)據(jù)本身的創(chuàng)建時(shí)間,步驟如下:

先同步數(shù)據(jù)到最近的某個(gè)時(shí)間戳(創(chuàng)建時(shí)間)。

然后發(fā)布系統(tǒng)升級(jí)維護(hù)的通知。

然后同步最近一段時(shí)間變化的數(shù)據(jù)。

最后升級(jí)系統(tǒng),接入新的數(shù)據(jù)庫(kù)。

全量+增量的同步相比全量同步的方式,大大的減少了系統(tǒng)停機(jī)的時(shí)間,對(duì)業(yè)務(wù)影響較小。

binlog+全量+增量

binlog+全量+增量是通過(guò)從數(shù)據(jù)庫(kù)的主庫(kù)或者從庫(kù)解析和重新構(gòu)造數(shù)據(jù),實(shí)現(xiàn)復(fù)制。

通常情況下都需要中間件等工具的支持,一般需要中間件等工具的支持??梢詫?shí)現(xiàn)多線程、斷點(diǎn)續(xù)傳、全量和增量數(shù)據(jù)的同步,還可以實(shí)現(xiàn)自動(dòng)擴(kuò)容和縮容。

常見(jiàn)的工具有:Canal、ShardingSphere-scaling等

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實(shí)現(xiàn)的后臺(tái)管理系統(tǒng) + 用戶(hù)小程序,支持 RBAC 動(dòng)態(tài)權(quán)限、多租戶(hù)、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

項(xiàng)目地址:https://gitee.com/zhijiantianya/yudao-cloud

視頻教程:https://doc.iocoder.cn/video/

分布式事務(wù)

XA分布式事務(wù)

XA分布式事務(wù),是數(shù)據(jù)庫(kù)本身支持的協(xié)議,具備強(qiáng)一致性。

96aab1ce-3d3f-11ed-9e49-dac502259ad0.jpg

XA分布式事務(wù)的組件:

應(yīng)用程序(Application Program, 簡(jiǎn)稱(chēng)AP): 用于定義事務(wù)邊界,即事務(wù)的開(kāi)始和結(jié)束,并且在事務(wù)邊界內(nèi)對(duì)資源進(jìn)行操作。

資源管理器(Resource Manager, 簡(jiǎn)稱(chēng)RM): 如數(shù)據(jù)庫(kù)、文件系統(tǒng),并且提供訪問(wèn)資源的方式。

事務(wù)管理器(Transaction Manager, 簡(jiǎn)稱(chēng)TM): 負(fù)責(zé)分配事務(wù)唯一標(biāo)識(shí),監(jiān)控事務(wù)的執(zhí)行進(jìn)度,并且負(fù)責(zé)事務(wù)的提交、回滾等。

XA接口:

xa_start 負(fù)責(zé)開(kāi)啟或者恢復(fù)一個(gè)事務(wù)分支

xa_end 負(fù)責(zé)取消當(dāng)前線程與事務(wù)分支的關(guān)聯(lián)

xa_prepare 詢(xún)問(wèn)RM是否準(zhǔn)備好提交事務(wù)分支

xa_commit 通知RM提交事務(wù)分支

xa_rollback 通知RM回滾事務(wù)分支

xa_recover 需要恢復(fù)的XA事務(wù)

MySQL從5.0.3開(kāi)始支持InnoDB引擎的XA分布式事務(wù)。

96c5614a-3d3f-11ed-9e49-dac502259ad0.jpg

完整的XA事務(wù)處理流程如下:

96ee0b2c-3d3f-11ed-9e49-dac502259ad0.jpg

主流的XA框架有:Atomikos、Narayana、Seata

XA分布式事務(wù)存在的問(wèn)題:

同步阻塞:全局事務(wù)包含了多個(gè)獨(dú)立的事務(wù)分支,這一組事務(wù)分支要么都不成功,要不都失敗,各個(gè)分支的ACID特性共同構(gòu)成了全局事務(wù)的ACID特性。如果對(duì)讀操作很敏感,需要將數(shù)據(jù)庫(kù)的隔離級(jí)別設(shè)置為SERIALIZABLE,性能特別的差。

單點(diǎn)故障:TM存在單點(diǎn)故障,需要考慮TM高可用性。

數(shù)據(jù)不一致:極端情況下,會(huì)出現(xiàn)事務(wù)失敗問(wèn)題,需要監(jiān)控和人工處理。即二階段commit請(qǐng)求后,發(fā)送網(wǎng)絡(luò)故障,只有一部分RM收到請(qǐng)求,其他節(jié)點(diǎn)沒(méi)有收到Commit請(qǐng)求的情況。

柔性事務(wù)

BASE的核心在于,保證系統(tǒng)基本可用的前提下,通過(guò)利用柔性狀態(tài)(支付操作后不是支付成功,而是支付中狀態(tài)),實(shí)現(xiàn)數(shù)據(jù)的最終一致性,如下:

基本可用(Basically available),分布式事務(wù)參與方不一定同時(shí)在線。

柔性狀態(tài)(Soft state), 允許系統(tǒng)狀態(tài)更新有一定的延遲,出現(xiàn)一些中間狀態(tài),這個(gè)延遲對(duì)客戶(hù)來(lái)說(shuō)不一定能夠察覺(jué)。

最終一致性(Eventually consistent),通常是通過(guò)消息傳遞的方式保證系統(tǒng)的最終一致性。

柔性事務(wù)核心理念是通過(guò)業(yè)務(wù)邏輯將互斥鎖操作從RM層上升到業(yè)務(wù)層,通過(guò)放寬對(duì)強(qiáng)一致性的要求,來(lái)?yè)Q取系統(tǒng)吞吐量的提升。

9729c7ca-3d3f-11ed-9e49-dac502259ad0.jpg

BASE柔性事務(wù)常見(jiàn)模式

TCC: 通過(guò)手動(dòng)補(bǔ)償處理

AT: 通過(guò)自動(dòng)補(bǔ)償處理

TCC介紹

TCC模式即將每個(gè)服務(wù)業(yè)務(wù)操作分成兩個(gè)階段,第一個(gè)階段檢查并預(yù)留相關(guān)資源,第二個(gè)階段根據(jù)所有服務(wù)業(yè)務(wù)的try狀態(tài)來(lái)操作,如果都成功,則進(jìn)行Confirm操作,如果任意一個(gè)Try發(fā)送錯(cuò)誤,則全部Cancel。

Try:準(zhǔn)備操作,完成所有的業(yè)務(wù)檢查,預(yù)留業(yè)務(wù)資源。

Confirm:真正執(zhí)行的業(yè)務(wù)邏輯,不做任意的業(yè)務(wù)檢查,只使用Try階段預(yù)留的業(yè)務(wù)資源。因此Try操作成功,Confirm必須能成功。同時(shí),Confirm操作必須保證冥等性,保證一筆分布式事務(wù)能切只能成功一次。

Cancel:釋放Try階段預(yù)留的業(yè)務(wù)資源,同樣Cancel操作也必須滿(mǎn)足冥等性。

977a8fca-3d3f-11ed-9e49-dac502259ad0.jpg

TCC模型實(shí)際是通過(guò)業(yè)務(wù)分解來(lái)實(shí)現(xiàn)分布式事務(wù),對(duì)業(yè)務(wù)有較強(qiáng)的侵入性。

TCC模型需要注意的地方:

允許空回滾,即try沒(méi)有完成資源預(yù)留,允許短路操作。

防懸掛控制,即需要保證,cancel必須在try之后才執(zhí)行。

冥等性設(shè)計(jì),即需要保證confirm和cancel需要保證冥等性,防止網(wǎng)絡(luò)因素導(dǎo)致數(shù)據(jù)混亂。

AT

AT模式就是兩階段提交,自動(dòng)生成反向SQL,當(dāng)發(fā)生異常的時(shí)候,通過(guò)反向SQL回滾數(shù)據(jù)。

97cd1362-3d3f-11ed-9e49-dac502259ad0.jpg

Seata框架對(duì)AT的支持如下:

97eb13d0-3d3f-11ed-9e49-dac502259ad0.jpg

第一階段,業(yè)務(wù)數(shù)據(jù)和回滾日志記錄在同一個(gè)本地事務(wù)中提交,釋放本地鎖和連接資源。

第二階段,提交異步化,非常快速的完成,回滾的話通過(guò)一階段的回滾日志進(jìn)行反向補(bǔ)償。

柔性事務(wù)下的事務(wù)特性

原子性:正常情況下保證

一致性:某個(gè)時(shí)間點(diǎn),數(shù)據(jù)存在不一致,但是最終是一致的。

隔離性:某個(gè)時(shí)間點(diǎn),A能讀到B事務(wù)未提交的結(jié)果,即會(huì)臟讀現(xiàn)象。

持久性:和本地事務(wù)一樣,只要commit則數(shù)據(jù)就會(huì)被持久化。

總結(jié)

分布式事務(wù)主要目的是解決數(shù)據(jù)一致性問(wèn)題,XA強(qiáng)一致,但是吞吐量太低,不利于高并發(fā)場(chǎng)景。柔性事務(wù)不保證強(qiáng)一致性,但是通過(guò)補(bǔ)償實(shí)現(xiàn)最終一致性,常見(jiàn)的補(bǔ)償有重試補(bǔ)償、調(diào)度補(bǔ)償、人工補(bǔ)償?shù)取?/p>

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:分庫(kù)分表后,數(shù)據(jù)庫(kù)數(shù)據(jù)一致性問(wèn)題如何解決?

文章出處:【微信號(hào):芋道源碼,微信公眾號(hào):芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【生產(chǎn)制造】從元器件到成品,尼賽拉體化設(shè)計(jì)打造高一致性傳感器

    在電子元器件領(lǐng)域,產(chǎn)品一致性是批量生產(chǎn)與電路集成的核心要求,電流傳感器作為精密檢測(cè)器件,其一致性直接影響電子設(shè)備的批量生產(chǎn)良率與性能穩(wěn)定性。尼賽拉憑借“從霍爾元件、磁芯等核心元器件到傳感器成品
    的頭像 發(fā)表于 04-08 11:31 ?108次閱讀
    【生產(chǎn)制造】從元器件到成品,尼賽拉<b class='flag-5'>一</b>體化設(shè)計(jì)打造高<b class='flag-5'>一致性</b>傳感器

    是德科技推出全新GDDR7發(fā)射端一致性測(cè)試解決方案

    是德科技(NYSE: KEYS )宣布推出全新GDDR7發(fā)射端一致性解決方案,該方案可加速圖形與人工智能(AI)應(yīng)用領(lǐng)域遵循JEDEC標(biāo)準(zhǔn)的驗(yàn)證進(jìn)程。
    的頭像 發(fā)表于 03-02 11:05 ?538次閱讀
    是德科技推出全新GDDR7發(fā)射端<b class='flag-5'>一致性</b>測(cè)試解決方案

    比斯特通用分選機(jī)四線制測(cè)試技術(shù)保障電芯性能一致性

    電芯的性能一致性直接決定了終端產(chǎn)品的安全、續(xù)航能力與使用壽命,然而,受制于原材料差異、制造工藝波動(dòng)等因素,即使是同批次生產(chǎn)的電芯,其電壓、內(nèi)阻等關(guān)鍵參數(shù)仍存在微小偏差。深圳比斯特自動(dòng)化設(shè)備
    的頭像 發(fā)表于 01-29 16:20 ?302次閱讀
    比斯特通用分選機(jī)四線制測(cè)試技術(shù)保障電芯性能<b class='flag-5'>一致性</b>

    以太網(wǎng)一致性測(cè)試全解析:保障高性能網(wǎng)絡(luò)的關(guān)鍵技術(shù)

    在高速網(wǎng)絡(luò)設(shè)備的設(shè)計(jì)與制造中,以太網(wǎng)一致性測(cè)試是確保產(chǎn)品性能穩(wěn)定、符合行業(yè)標(biāo)準(zhǔn)的關(guān)鍵環(huán)節(jié)。我們能夠?yàn)榭蛻?hù)提供從測(cè)試標(biāo)準(zhǔn)解讀到實(shí)際問(wèn)題排查的全方位支持。本文將以100Base-TX和1000Base-T為例,系統(tǒng)介紹以太網(wǎng)一致性測(cè)試的核心內(nèi)容與標(biāo)準(zhǔn)依據(jù),幫助客戶(hù)理解測(cè)試的重
    的頭像 發(fā)表于 01-20 17:42 ?1298次閱讀
    以太網(wǎng)<b class='flag-5'>一致性</b>測(cè)試全解析:保障高性能網(wǎng)絡(luò)的關(guān)鍵技術(shù)

    儲(chǔ)能電池一致性,已成核心競(jìng)爭(zhēng)力

    電子發(fā)燒友網(wǎng)報(bào)道(文/黃山明)隨著新型儲(chǔ)能以及長(zhǎng)時(shí)儲(chǔ)能在儲(chǔ)能中占比越來(lái)越多,儲(chǔ)能電池的一致性問(wèn)題開(kāi)始凸顯。而所謂的一致性,是指同規(guī)格型號(hào)的電池在容量、內(nèi)阻、電壓、自放電率、溫度特性和衰減速度等關(guān)鍵
    的頭像 發(fā)表于 01-08 16:37 ?7372次閱讀

    比斯特1810B自動(dòng)分選機(jī)實(shí)現(xiàn)電池性能一致性的保障設(shè)備

    在動(dòng)力電池和儲(chǔ)能系統(tǒng)快速發(fā)展的當(dāng)下,電池性能一致性已成為衡量產(chǎn)品質(zhì)量的關(guān)鍵指標(biāo)。一致性將直接影響電池組的整體性能發(fā)揮,更關(guān)乎產(chǎn)品的安全可靠和使用壽命。深圳比斯特自動(dòng)化設(shè)備有限公司推出的1810B
    的頭像 發(fā)表于 01-06 17:06 ?652次閱讀
    比斯特1810B自動(dòng)分選機(jī)實(shí)現(xiàn)電池性能<b class='flag-5'>一致性</b>的保障設(shè)備

    有關(guān)100M、1000M以太網(wǎng)一致性測(cè)試問(wèn)題探討交流

    100M、1000M以太網(wǎng)一致性測(cè)試
    的頭像 發(fā)表于 12-14 10:42 ?807次閱讀
    有關(guān)100M、1000M以太網(wǎng)<b class='flag-5'>一致性</b>測(cè)試問(wèn)題探討交流

    電纜組件相位一致性的意義

    、技術(shù)本質(zhì):定義與量化指標(biāo) 相位一致性描述的是多通道電纜組件在相同頻率與輸入信號(hào)下,各通道輸出信號(hào)相位差的穩(wěn)定程度。核心衡量指標(biāo)包括: 相位偏差 :?jiǎn)瓮ǖ老辔坏牟▌?dòng)范圍 通道間相位差 :多通道之間
    的頭像 發(fā)表于 11-27 13:41 ?506次閱讀
    電纜組件相位<b class='flag-5'>一致性</b>的意義

    請(qǐng)教大家下DP一致性測(cè)試問(wèn)題

    請(qǐng)教大家下,DP的Vbios中已經(jīng)固定了預(yù)加重和Swing的值,DP的TX信號(hào)一致性測(cè)試項(xiàng)中Non Pre-Emphasis Level Test(Swing2/Swing0)-PLTPAT,這個(gè)測(cè)試項(xiàng)意思是Swing2與Swing0偏差嗎?已經(jīng)固定了Swing中,這
    發(fā)表于 11-12 15:57

    解決鋰電池一致性難題!景鋰新能源電池均衡儀為儲(chǔ)能安全/電動(dòng)車(chē)?yán)m(xù)航保駕護(hù)航

    解決鋰電池一致性難題!景鋰新能源電池均衡儀為儲(chǔ)能/電動(dòng)車(chē)電池續(xù)航保駕護(hù)航
    的頭像 發(fā)表于 11-06 11:00 ?893次閱讀

    直播回顧 | 深度解讀CAN總線一致性測(cè)試的四大層級(jí)與實(shí)戰(zhàn)方法,虹科技術(shù)直播助您破解汽車(chē)通信穩(wěn)定性的關(guān)鍵

    ?直播主題CAN總線一致性測(cè)試“一致性測(cè)試是保障總線系統(tǒng)穩(wěn)定、兼容、可靠運(yùn)行的核心環(huán)節(jié)。”隨著整車(chē)電子電氣架構(gòu)日益復(fù)雜,ECU數(shù)量增多、通信負(fù)載加大,CAN節(jié)點(diǎn)之間若存在電氣特性不匹配、時(shí)序偏差
    的頭像 發(fā)表于 10-30 17:34 ?2611次閱讀
    直播回顧 |  深度解讀CAN總線<b class='flag-5'>一致性</b>測(cè)試的四大層級(jí)與實(shí)戰(zhàn)方法,虹科技術(shù)直播助您破解汽車(chē)通信穩(wěn)定性的關(guān)鍵

    鏡頭不一致的問(wèn)題原因分析

    在機(jī)器視覺(jué)系統(tǒng)的視界,鏡頭一致性猶如維系整個(gè)生態(tài)的隱形生命線,貫穿于光學(xué)成像、圖像處理到智能決策的全鏈路,其細(xì)微波動(dòng)足以顛覆整個(gè)檢測(cè)系統(tǒng)的可靠。當(dāng)工業(yè)界熱衷于討論算法精度與算力突破時(shí),鏡頭這基礎(chǔ)光學(xué)元件的
    的頭像 發(fā)表于 09-11 09:45 ?1472次閱讀

    優(yōu)化導(dǎo)航系統(tǒng)中的MEMS IMU數(shù)據(jù)一致性和時(shí)序

    新興技術(shù),以便幫助應(yīng)對(duì)其當(dāng)前PNT策略的脆弱。自動(dòng)駕駛汽車(chē)(AV)的制導(dǎo)與導(dǎo)航控制(GNC)系統(tǒng)就屬于這類(lèi)技術(shù),它必須能夠識(shí)別與PNT服務(wù)丟失或受損相關(guān)的系列復(fù)雜威脅。
    的頭像 發(fā)表于 07-11 15:49 ?1880次閱讀

    LED材料一致性比對(duì)(導(dǎo)熱塑料開(kāi)裂案例分享)

    不斷地侵蝕著我們,面對(duì)這些劣質(zhì)產(chǎn)品,可能個(gè)細(xì)小的失誤就可能給企業(yè)造成巨大的財(cái)產(chǎn)損失或斷送了前程。材料一致性比對(duì)的應(yīng)用領(lǐng)域來(lái)料檢驗(yàn):由供應(yīng)商未通知客戶(hù)擅自改換原材料
    的頭像 發(fā)表于 06-19 14:14 ?759次閱讀
    LED材料<b class='flag-5'>一致性</b>比對(duì)(導(dǎo)熱塑料開(kāi)裂案例分享)

    車(chē)用鋰離子電池機(jī)理建模與并聯(lián)模組不一致性研究

    車(chē)用鋰離子電池機(jī)理建模與并聯(lián)模組不一致性研究
    發(fā)表于 05-16 21:02