日本国产欧美大码a视频,亚洲美女久久,人人爱人人搞,亚洲18在线观看,aaa少妇高潮大片免费下载,日日干夜夜草,99免费在线观看

一種數(shù)據(jù)變更處理方法及裝置與流程

文檔序號(hào):42300814發(fā)布日期:2025-06-27 18:43閱讀:10來源:國(guó)知局

本發(fā)明涉及數(shù)據(jù)處理,具體涉及一種數(shù)據(jù)變更處理方法及裝置。


背景技術(shù):

1、在分布式系統(tǒng)架構(gòu)即分布式框架中,隨著業(yè)務(wù)規(guī)模和數(shù)據(jù)訪問量的增長(zhǎng),緩存技術(shù)逐漸成為提升系統(tǒng)性能的核心手段。其中維持緩存數(shù)據(jù)與數(shù)據(jù)庫(kù)持久化數(shù)據(jù)的一致性,是緩存框架的一個(gè)重要評(píng)價(jià)指標(biāo)。

2、傳統(tǒng)本地緩存框架(如ehcache、guavacache等)通過在內(nèi)存中直接訪問緩存數(shù)據(jù)實(shí)現(xiàn)了極低延遲響應(yīng),在緩存一致性的實(shí)現(xiàn)上容易達(dá)到單節(jié)點(diǎn)緩存強(qiáng)一致性。其單節(jié)點(diǎn)特性導(dǎo)致在分布式環(huán)境下存在數(shù)據(jù)孤島問題,無法實(shí)現(xiàn)跨節(jié)點(diǎn)緩存一致性。

3、主流集中式緩存系統(tǒng)(如redis、memcached等)通過集中存儲(chǔ)能部分解決緩存數(shù)據(jù)的一致性問題。但是額外的網(wǎng)絡(luò)通信開銷顯著增加了系統(tǒng)響應(yīng)時(shí)間。


技術(shù)實(shí)現(xiàn)思路

1、針對(duì)現(xiàn)有技術(shù)中的問題,本發(fā)明實(shí)施例提供一種數(shù)據(jù)變更處理方法及裝置,能夠至少部分地解決現(xiàn)有技術(shù)中存在的問題。

2、一方面,本發(fā)明提出一種數(shù)據(jù)變更處理方法,所述數(shù)據(jù)變更處理方法應(yīng)用于分布式框架;所述分布式框架包括與各業(yè)務(wù)服務(wù)分別對(duì)應(yīng)的服務(wù)節(jié)點(diǎn),每個(gè)服務(wù)節(jié)點(diǎn)和與集中緩存服務(wù)對(duì)應(yīng)的緩存節(jié)點(diǎn)相連接,每個(gè)服務(wù)節(jié)點(diǎn)和與數(shù)據(jù)庫(kù)服務(wù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)節(jié)點(diǎn)相連接;所述數(shù)據(jù)變更處理方法包括:

3、在修改數(shù)據(jù)過程中修改數(shù)據(jù)節(jié)點(diǎn)向所述緩存節(jié)點(diǎn)發(fā)布變更記錄,更新所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中的數(shù)據(jù)庫(kù)存儲(chǔ)表,并等待所述緩存節(jié)點(diǎn)發(fā)出變更開始通知消息;

4、其中,所述修改數(shù)據(jù)節(jié)點(diǎn)為執(zhí)行修改處理過程的服務(wù)節(jié)點(diǎn),所述緩存節(jié)點(diǎn)為所有服務(wù)節(jié)點(diǎn)在本地緩存的要修改的數(shù)據(jù)所屬的表的節(jié)點(diǎn);

5、所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,緩存數(shù)據(jù)處理后的變更記錄,并向所述修改數(shù)據(jù)節(jié)點(diǎn)發(fā)送除所述修改數(shù)據(jù)節(jié)點(diǎn)外每個(gè)其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息;

6、所述修改數(shù)據(jù)節(jié)點(diǎn)若接收到所有其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息,則提交數(shù)據(jù)修改事務(wù)并向所述緩存節(jié)點(diǎn)發(fā)布變更完成消息;

7、所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理。

8、其中,所述變更記錄包括新增數(shù)據(jù)記錄、修改數(shù)據(jù)記錄和刪除數(shù)據(jù)記錄;相應(yīng)的,所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,包括:

9、對(duì)所述新增數(shù)據(jù)記錄,若確定同一個(gè)主鍵收到多個(gè)新增數(shù)據(jù)記錄,則對(duì)所述多個(gè)新增數(shù)據(jù)記錄進(jìn)行平級(jí)存放;

10、對(duì)所述修改數(shù)據(jù)記錄,將所述本地緩存中滿足修改條件的緩存記錄轉(zhuǎn)換成變更記錄放到變更記錄列表中;

11、對(duì)所述刪除數(shù)據(jù)記錄,將所述本地緩存中滿足刪除條件的緩存記錄轉(zhuǎn)換成變更記錄放到變更記錄列表中。

12、其中,所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理,包括:

13、根據(jù)所述變更記錄計(jì)算得到所述本地緩存要更新的范圍,根據(jù)所述范圍從所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中讀取數(shù)據(jù)并更新到所述本地緩存。

14、其中,所述數(shù)據(jù)變更處理方法還包括:

15、根據(jù)所述變更記錄加入到變更記錄列表中的時(shí)間計(jì)算出已超時(shí)的目標(biāo)變更記錄;

16、若遍歷完成所有目標(biāo)變更記錄的變更記錄檢查過程,則完成變更記錄檢查。

17、其中,所述數(shù)據(jù)變更處理方法還包括:

18、每完成一條目標(biāo)變更記錄檢查,根據(jù)完成檢查的目標(biāo)變更記錄更新本地緩存,完成變更處理。

19、其中,所述數(shù)據(jù)變更處理方法還包括:

20、在查詢數(shù)據(jù)過程中若確定查詢條件存在于所述本地緩存中的變更記錄中,則查詢數(shù)據(jù)庫(kù)行版本;

21、若確定所述數(shù)據(jù)庫(kù)行版本與所述本地緩存中的行版本不一致,則以kv方式查詢數(shù)據(jù)庫(kù),并根據(jù)查詢結(jié)果更新所述本地緩存。

22、一方面,本發(fā)明提出一種數(shù)據(jù)變更處理裝置,所述數(shù)據(jù)變更處理裝置應(yīng)用于分布式框架;所述分布式框架包括與各業(yè)務(wù)服務(wù)分別對(duì)應(yīng)的服務(wù)節(jié)點(diǎn),每個(gè)服務(wù)節(jié)點(diǎn)和與集中緩存服務(wù)對(duì)應(yīng)的緩存節(jié)點(diǎn)相連接,每個(gè)服務(wù)節(jié)點(diǎn)和與數(shù)據(jù)庫(kù)服務(wù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)節(jié)點(diǎn)相連接;所述數(shù)據(jù)變更處理裝置包括:

23、發(fā)布單元,用于通過在修改數(shù)據(jù)過程中修改數(shù)據(jù)節(jié)點(diǎn)向所述緩存節(jié)點(diǎn)發(fā)布變更記錄,更新所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中的數(shù)據(jù)庫(kù)存儲(chǔ)表,并等待所述緩存節(jié)點(diǎn)發(fā)出變更開始通知消息;

24、其中,所述修改數(shù)據(jù)節(jié)點(diǎn)為執(zhí)行修改處理過程的服務(wù)節(jié)點(diǎn),所述緩存節(jié)點(diǎn)為所有服務(wù)節(jié)點(diǎn)在本地緩存的要修改的數(shù)據(jù)所屬的表的節(jié)點(diǎn);

25、緩存單元,用于通過所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,緩存數(shù)據(jù)處理后的變更記錄,并向所述修改數(shù)據(jù)節(jié)點(diǎn)發(fā)送除所述修改數(shù)據(jù)節(jié)點(diǎn)外每個(gè)其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息;

26、提交單元,用于若通過所述修改數(shù)據(jù)節(jié)點(diǎn)接收到所有其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息,則提交數(shù)據(jù)修改事務(wù)并向所述緩存節(jié)點(diǎn)發(fā)布變更完成消息;

27、更新單元,用于通過所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理。

28、再一方面,?本發(fā)明實(shí)施例提供一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如下方法:

29、在修改數(shù)據(jù)過程中修改數(shù)據(jù)節(jié)點(diǎn)向所述緩存節(jié)點(diǎn)發(fā)布變更記錄,更新所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中的數(shù)據(jù)庫(kù)存儲(chǔ)表,并等待所述緩存節(jié)點(diǎn)發(fā)出變更開始通知消息;

30、其中,所述修改數(shù)據(jù)節(jié)點(diǎn)為執(zhí)行修改處理過程的服務(wù)節(jié)點(diǎn),所述緩存節(jié)點(diǎn)為所有服務(wù)節(jié)點(diǎn)在本地緩存的要修改的數(shù)據(jù)所屬的表的節(jié)點(diǎn);

31、所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,緩存數(shù)據(jù)處理后的變更記錄,并向所述修改數(shù)據(jù)節(jié)點(diǎn)發(fā)送除所述修改數(shù)據(jù)節(jié)點(diǎn)外每個(gè)其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息;

32、所述修改數(shù)據(jù)節(jié)點(diǎn)若接收到所有其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息,則提交數(shù)據(jù)修改事務(wù)并向所述緩存節(jié)點(diǎn)發(fā)布變更完成消息;

33、所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理。

34、本發(fā)明實(shí)施例提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括:

35、所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如下方法:

36、在修改數(shù)據(jù)過程中修改數(shù)據(jù)節(jié)點(diǎn)向所述緩存節(jié)點(diǎn)發(fā)布變更記錄,更新所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中的數(shù)據(jù)庫(kù)存儲(chǔ)表,并等待所述緩存節(jié)點(diǎn)發(fā)出變更開始通知消息;

37、其中,所述修改數(shù)據(jù)節(jié)點(diǎn)為執(zhí)行修改處理過程的服務(wù)節(jié)點(diǎn),所述緩存節(jié)點(diǎn)為所有服務(wù)節(jié)點(diǎn)在本地緩存的要修改的數(shù)據(jù)所屬的表的節(jié)點(diǎn);

38、所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,緩存數(shù)據(jù)處理后的變更記錄,并向所述修改數(shù)據(jù)節(jié)點(diǎn)發(fā)送除所述修改數(shù)據(jù)節(jié)點(diǎn)外每個(gè)其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息;

39、所述修改數(shù)據(jù)節(jié)點(diǎn)若接收到所有其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息,則提交數(shù)據(jù)修改事務(wù)并向所述緩存節(jié)點(diǎn)發(fā)布變更完成消息;

40、所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理。

41、本發(fā)明實(shí)施例還提供一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如下方法:

42、在修改數(shù)據(jù)過程中修改數(shù)據(jù)節(jié)點(diǎn)向所述緩存節(jié)點(diǎn)發(fā)布變更記錄,更新所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中的數(shù)據(jù)庫(kù)存儲(chǔ)表,并等待所述緩存節(jié)點(diǎn)發(fā)出變更開始通知消息;

43、其中,所述修改數(shù)據(jù)節(jié)點(diǎn)為執(zhí)行修改處理過程的服務(wù)節(jié)點(diǎn),所述緩存節(jié)點(diǎn)為所有服務(wù)節(jié)點(diǎn)在本地緩存的要修改的數(shù)據(jù)所屬的表的節(jié)點(diǎn);

44、所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,緩存數(shù)據(jù)處理后的變更記錄,并向所述修改數(shù)據(jù)節(jié)點(diǎn)發(fā)送除所述修改數(shù)據(jù)節(jié)點(diǎn)外每個(gè)其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息;

45、所述修改數(shù)據(jù)節(jié)點(diǎn)若接收到所有其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息,則提交數(shù)據(jù)修改事務(wù)并向所述緩存節(jié)點(diǎn)發(fā)布變更完成消息;

46、所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理。

47、本發(fā)明實(shí)施例提供的數(shù)據(jù)變更處理方法及裝置,在修改數(shù)據(jù)過程中修改數(shù)據(jù)節(jié)點(diǎn)向所述緩存節(jié)點(diǎn)發(fā)布變更記錄,更新所述數(shù)據(jù)庫(kù)節(jié)點(diǎn)中的數(shù)據(jù)庫(kù)存儲(chǔ)表,并等待所述緩存節(jié)點(diǎn)發(fā)出變更開始通知消息;其中,所述修改數(shù)據(jù)節(jié)點(diǎn)為執(zhí)行修改處理過程的服務(wù)節(jié)點(diǎn),所述緩存節(jié)點(diǎn)為所有服務(wù)節(jié)點(diǎn)在本地緩存的要修改的數(shù)據(jù)所屬的表的節(jié)點(diǎn);所述緩存節(jié)點(diǎn)根據(jù)所述變更記錄進(jìn)行數(shù)據(jù)處理,緩存數(shù)據(jù)處理后的變更記錄,并向所述修改數(shù)據(jù)節(jié)點(diǎn)發(fā)送除所述修改數(shù)據(jù)節(jié)點(diǎn)外每個(gè)其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息;所述修改數(shù)據(jù)節(jié)點(diǎn)若接收到所有其他服務(wù)節(jié)點(diǎn)分別對(duì)應(yīng)的變更開始通知消息,則提交數(shù)據(jù)修改事務(wù)并向所述緩存節(jié)點(diǎn)發(fā)布變更完成消息;所述緩存節(jié)點(diǎn)根據(jù)所述變更完成消息和所述變更記錄更新本地緩存,完成變更處理,能夠保證本地緩存與數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致性,并降低數(shù)據(jù)變更處理響應(yīng)時(shí)間。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1