国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

數據遷移和數據一致性的問題

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

掃碼添加小助手

加入工程師交流群

前言

通過對數據的垂直拆分或水平拆分后,我們解決了數據庫容量、性能等問題,但是將會面臨數據遷移和數據一致性的問題。

在數據遷移方面,需要考慮如何快速遷移、平滑遷移、不停機的遷移等。待數據遷移完畢后,還需要校驗數據的完整性。

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

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

項目地址:https://gitee.com/zhijiantianya/ruoyi-vue-pro

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

數據遷移

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

全量

全量遷移的過程如下:

業(yè)務系統(tǒng)停機。

數據庫遷移,校驗數據一致性。

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

缺點:

需要業(yè)務系統(tǒng)停機

遷移時間較長,對業(yè)務影響較大。如果是異構數據的話,需要使用程序來處理,遷移時間更長。

全量+增量

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

先同步數據到最近的某個時間戳(創(chuàng)建時間)。

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

然后同步最近一段時間變化的數據。

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

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

binlog+全量+增量

binlog+全量+增量是通過從數據庫的主庫或者從庫解析和重新構造數據,實現(xiàn)復制。

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

常見的工具有:Canal、ShardingSphere-scaling等

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

項目地址:https://gitee.com/zhijiantianya/yudao-cloud

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

分布式事務

XA分布式事務

XA分布式事務,是數據庫本身支持的協(xié)議,具備強一致性。

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

XA分布式事務的組件:

應用程序(Application Program, 簡稱AP): 用于定義事務邊界,即事務的開始和結束,并且在事務邊界內對資源進行操作。

資源管理器(Resource Manager, 簡稱RM): 如數據庫、文件系統(tǒng),并且提供訪問資源的方式。

事務管理器(Transaction Manager, 簡稱TM): 負責分配事務唯一標識,監(jiān)控事務的執(zhí)行進度,并且負責事務的提交、回滾等。

XA接口:

xa_start 負責開啟或者恢復一個事務分支

xa_end 負責取消當前線程與事務分支的關聯(lián)

xa_prepare 詢問RM是否準備好提交事務分支

xa_commit 通知RM提交事務分支

xa_rollback 通知RM回滾事務分支

xa_recover 需要恢復的XA事務

MySQL從5.0.3開始支持InnoDB引擎的XA分布式事務。

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

完整的XA事務處理流程如下:

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

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

XA分布式事務存在的問題:

同步阻塞:全局事務包含了多個獨立的事務分支,這一組事務分支要么都不成功,要不都失敗,各個分支的ACID特性共同構成了全局事務的ACID特性。如果對讀操作很敏感,需要將數據庫的隔離級別設置為SERIALIZABLE,性能特別的差。

單點故障:TM存在單點故障,需要考慮TM高可用性。

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

柔性事務

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

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

柔性狀態(tài)(Soft state), 允許系統(tǒng)狀態(tài)更新有一定的延遲,出現(xiàn)一些中間狀態(tài),這個延遲對客戶來說不一定能夠察覺。

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

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

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

BASE柔性事務常見模式

TCC: 通過手動補償處理

AT: 通過自動補償處理

TCC介紹

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

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

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

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

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

TCC模型實際是通過業(yè)務分解來實現(xiàn)分布式事務,對業(yè)務有較強的侵入性。

TCC模型需要注意的地方:

允許空回滾,即try沒有完成資源預留,允許短路操作。

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

冥等性設計,即需要保證confirm和cancel需要保證冥等性,防止網絡因素導致數據混亂。

AT

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

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

Seata框架對AT的支持如下:

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

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

第二階段,提交異步化,非??焖俚耐瓿?,回滾的話通過一階段的回滾日志進行反向補償。

柔性事務下的事務特性

原子性:正常情況下保證

一致性:某個時間點,數據存在不一致,但是最終是一致的。

隔離性:某個時間點,A能讀到B事務未提交的結果,即會臟讀現(xiàn)象。

持久性:和本地事務一樣,只要commit則數據就會被持久化。

總結

分布式事務主要目的是解決數據一致性問題,XA強一致,但是吞吐量太低,不利于高并發(fā)場景。柔性事務不保證強一致性,但是通過補償實現(xiàn)最終一致性,常見的補償有重試補償、調度補償、人工補償等。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數據庫
    +關注

    關注

    7

    文章

    4020

    瀏覽量

    68353
  • 數據遷移
    +關注

    關注

    0

    文章

    89

    瀏覽量

    7257

原文標題:分庫分表后,數據庫數據一致性問題如何解決?

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

    比斯特通用分選機四線制測試技術保障電芯性能一致性

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

    以太網一致性測試全解析:保障高性能網絡的關鍵技術

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

    儲能電池一致性,已成核心競爭力

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

    比斯特1810B自動分選機實現(xiàn)電池性能一致性的保障設備

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

    有關100M、1000M以太網一致性測試問題探討交流

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

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

    、技術本質:定義與量化指標 相位一致性描述的是多通道電纜組件在相同頻率與輸入信號下,各通道輸出信號相位差的穩(wěn)定程度。核心衡量指標包括: 相位偏差 :單通道相位的波動范圍 通道間相位差 :多通道之間
    的頭像 發(fā)表于 11-27 13:41 ?316次閱讀
    電纜組件相位<b class='flag-5'>一致性</b>的意義

    請教大家下DP一致性測試問題

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

    解決鋰電池一致性難題!景鋰新能源電池均衡儀為儲能安全/電動車續(xù)航保駕護航

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

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

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

    鏡頭不一致的問題原因分析

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

    優(yōu)化導航系統(tǒng)中的MEMS IMU數據一致性和時序

    新興技術,以便幫助應對其當前PNT策略的脆弱。自動駕駛汽車(AV)的制導與導航控制(GNC)系統(tǒng)就屬于這類技術,它必須能夠識別與PNT服務丟失或受損相關的系列復雜威脅。
    的頭像 發(fā)表于 07-11 15:49 ?1747次閱讀

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

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

    堆焊熔池輪廓實時監(jiān)控,實現(xiàn)工藝穩(wěn)定性與焊縫一致性

    及稀釋程度等關鍵參數對焊層質量有直接影響,實時監(jiān)控熔池輪廓和溫度分布可及時預警缺陷并指導參數優(yōu)化,以保證焊層一致性與工藝穩(wěn)定性。今天起了解堆焊熔池輪廓實時監(jiān)控,實現(xiàn)工藝穩(wěn)定性與焊縫一致性。 堆焊簡介 堆焊,又
    的頭像 發(fā)表于 04-24 17:15 ?666次閱讀
    堆焊熔池輪廓實時監(jiān)控,實現(xiàn)工藝穩(wěn)定性與焊縫<b class='flag-5'>一致性</b>

    一致性校正與邊緣融合拼接

    電子發(fā)燒友網站提供《差一致性校正與邊緣融合拼接.pdf》資料免費下載
    發(fā)表于 04-10 18:02 ?0次下載