版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1/1分布式事務(wù)管理與一致性第一部分分布式事務(wù)概述 2第二部分ACID理論與分布式事務(wù) 4第三部分分布式一致性模型 6第四部分兩階段提交協(xié)議 10第五部分三階段提交協(xié)議 13第六部分Paxos協(xié)議 16第七部分RAFT協(xié)議 20第八部分基于Saga的補(bǔ)償機(jī)制 24
第一部分分布式事務(wù)概述分布式事務(wù)概述
背景
分布式系統(tǒng)由分布在多個(gè)節(jié)點(diǎn)上的組件組成,這些組件通過網(wǎng)絡(luò)進(jìn)行通信。這樣的系統(tǒng)面臨著協(xié)調(diào)多個(gè)節(jié)點(diǎn)上的事務(wù)以確保數(shù)據(jù)完整性的挑戰(zhàn)。傳統(tǒng)的單機(jī)事務(wù)管理不足以滿足分布式系統(tǒng)中并行、可擴(kuò)展和故障容錯(cuò)的需求。
分布式事務(wù)
分布式事務(wù)是一組原子操作,它們跨越多個(gè)參與者(節(jié)點(diǎn)、服務(wù)或資源),并保證以下ACID屬性:
*原子性(Atomicity):事務(wù)作為一個(gè)整體執(zhí)行,要么成功執(zhí)行所有操作,要么失敗回滾所有操作。
*一致性(Consistency):事務(wù)完成后,系統(tǒng)處于一致狀態(tài),滿足所有業(yè)務(wù)規(guī)則和完整性約束。
*隔離性(Isolation):事務(wù)之間互相隔離,不會(huì)相互干擾。
*持久性(Durability):一旦事務(wù)提交,其結(jié)果就會(huì)永久保存,即使發(fā)生系統(tǒng)故障。
分布式事務(wù)的挑戰(zhàn)
分布式事務(wù)管理面臨著以下挑戰(zhàn):
*兩階段提交(2PC):這是實(shí)現(xiàn)分布式原子性的經(jīng)典協(xié)議,但存在單點(diǎn)故障和死鎖風(fēng)險(xiǎn)。
*分布式鎖:協(xié)調(diào)跨多個(gè)參與者的并發(fā)訪問需要分布式鎖機(jī)制。
*數(shù)據(jù)復(fù)制:確保數(shù)據(jù)在分布式系統(tǒng)中的一致性,需要數(shù)據(jù)復(fù)制技術(shù)。
*故障恢復(fù):在系統(tǒng)故障期間或之后,恢復(fù)數(shù)據(jù)完整性至關(guān)重要。
分布式事務(wù)的解決方案
解決分布式事務(wù)挑戰(zhàn)的解決方案包括:
*分布式事務(wù)管理器(DTM):一個(gè)中央?yún)f(xié)調(diào)器,管理跨多個(gè)參與者的事務(wù)。
*SAGA模式:一種補(bǔ)償型事務(wù)模型,允許事務(wù)在失敗后回滾。
*CAP理論:分布式系統(tǒng)不可能同時(shí)滿足一致性、可用性和分區(qū)容錯(cuò)性的全部要求。
*最終一致性:一種數(shù)據(jù)一致性模型,其中數(shù)據(jù)最終將保持一致,但可能需要некоторое時(shí)間。
分布式事務(wù)的應(yīng)用
分布式事務(wù)在各種應(yīng)用中至關(guān)重要,包括:
*電子商務(wù):確保在線購買的完整性和一致性。
*金融服務(wù):協(xié)調(diào)跨多個(gè)賬戶的交易。
*社交網(wǎng)絡(luò):管理用戶數(shù)據(jù)的一致性。
結(jié)論
分布式事務(wù)管理是確保分布式系統(tǒng)中數(shù)據(jù)完整性和可靠性的一個(gè)關(guān)鍵方面。通過理解分布式事務(wù)的挑戰(zhàn)和解決方案,系統(tǒng)設(shè)計(jì)人員可以構(gòu)建可靠和可擴(kuò)展的分布式應(yīng)用。第二部分ACID理論與分布式事務(wù)關(guān)鍵詞關(guān)鍵要點(diǎn)【ACID理論保障分布式事務(wù)一致性】
1.ACID理論定義了分布式事務(wù)必須滿足的四個(gè)特性:原子性、一致性、隔離性和持久性。
2.原子性確保事務(wù)要么全部成功提交,要么全部回滾,不會(huì)出現(xiàn)中途失敗的情況。
3.一致性保證事務(wù)處理前后,數(shù)據(jù)庫的狀態(tài)符合業(yè)務(wù)規(guī)則,不會(huì)出現(xiàn)數(shù)據(jù)不一致的問題。
【分布式事務(wù)協(xié)調(diào)機(jī)制】
ACID理論與分布式事務(wù)
ACID理論
ACID理論是數(shù)據(jù)庫管理系統(tǒng)中用于確保數(shù)據(jù)完整性和一致性的基本特性。它由四個(gè)基本原則組成:
*原子性(Atomicity):事務(wù)中的所有操作要么全部成功完成,要么全部失敗回滾,不存在中間狀態(tài)。
*一致性(Consistency):事務(wù)執(zhí)行后,數(shù)據(jù)庫的狀態(tài)必須從一個(gè)一致狀態(tài)轉(zhuǎn)換到另一個(gè)一致狀態(tài),中間不會(huì)出現(xiàn)數(shù)據(jù)不一致的情況。
*隔離性(Isolation):一個(gè)事務(wù)中的操作與其他同時(shí)執(zhí)行的事務(wù)隔離,不會(huì)相互干擾。
*持久性(Durability):一旦事務(wù)提交,其對(duì)數(shù)據(jù)庫所做的更改就會(huì)永久保存,即使系統(tǒng)出現(xiàn)故障也不會(huì)丟失。
分布式事務(wù)
在分布式系統(tǒng)中,事務(wù)涉及多個(gè)獨(dú)立的數(shù)據(jù)庫或資源。分布式事務(wù)的管理變得更加復(fù)雜,因?yàn)樾枰S護(hù)所有參與節(jié)點(diǎn)之間的協(xié)調(diào)和一致性。
實(shí)現(xiàn)分布式事務(wù)一致性的方法有以下幾種:
*兩階段提交(2PC):協(xié)調(diào)器向所有參與者發(fā)送協(xié)調(diào)請(qǐng)求,如果所有參與者確認(rèn)可以提交,則提交事務(wù);否則,回滾事務(wù)。
*三階段提交(3PC):在2PC的基礎(chǔ)上增加了準(zhǔn)備階段,確保所有參與者在提交前都準(zhǔn)備好。
*Paxos:一種分布式共識(shí)算法,用于在分布式系統(tǒng)中達(dá)成一致性,可以應(yīng)用于實(shí)現(xiàn)分布式事務(wù)。
*分布式鎖:在分布式系統(tǒng)中獲取排他鎖,確保在同一時(shí)刻只有一個(gè)事務(wù)可以訪問共享資源。
ACID理論與分布式事務(wù)的挑戰(zhàn)
在分布式系統(tǒng)中實(shí)現(xiàn)ACID特性面臨以下挑戰(zhàn):
*網(wǎng)絡(luò)延遲和故障:網(wǎng)絡(luò)延遲或故障可能導(dǎo)致事務(wù)操作失敗或超時(shí),破壞原子性和一致性。
*多副本和分區(qū):分布式系統(tǒng)中的數(shù)據(jù)通常存儲(chǔ)在多個(gè)副本中,分區(qū)可能導(dǎo)致同一數(shù)據(jù)的不同副本出現(xiàn)不一致。
*死鎖和活鎖:分布式事務(wù)涉及多個(gè)資源,可能出現(xiàn)死鎖或活鎖,阻止事務(wù)完成。
實(shí)現(xiàn)分布式事務(wù)一致性的最佳實(shí)踐
為了實(shí)現(xiàn)分布式事務(wù)一致性,可以采取以下最佳實(shí)踐:
*選擇合適的一致性模型:根據(jù)應(yīng)用程序的需求,選擇適當(dāng)?shù)囊恢滦阅P?,如?qiáng)一致性、最終一致性或順序一致性。
*使用可靠的通信機(jī)制:確保事務(wù)操作之間的通信可靠且有界,以盡量減少網(wǎng)絡(luò)延遲和故障的影響。
*避免單點(diǎn)故障:設(shè)計(jì)分布式系統(tǒng)時(shí),避免創(chuàng)建單點(diǎn)故障,并確保所有組件都是冗余的。
*使用事務(wù)隔離機(jī)制:利用事務(wù)隔離機(jī)制,防止不同事務(wù)之間的相互干擾。
*實(shí)現(xiàn)補(bǔ)償機(jī)制:在分布式事務(wù)失敗時(shí),實(shí)現(xiàn)補(bǔ)償機(jī)制以將系統(tǒng)恢復(fù)到一致狀態(tài)。
通過遵循這些最佳實(shí)踐,可以提高分布式事務(wù)一致性的實(shí)現(xiàn),并確保應(yīng)用程序數(shù)據(jù)的高可用性和完整性。第三部分分布式一致性模型關(guān)鍵詞關(guān)鍵要點(diǎn)線性一致性模型
1.事務(wù)處理的順序與提交的順序相同,即遵循“先提交,先可見”的原則。
2.采用協(xié)調(diào)者或主-從復(fù)制等機(jī)制,確保各節(jié)點(diǎn)之間的數(shù)據(jù)一致性。
3.存在單點(diǎn)故障風(fēng)險(xiǎn),協(xié)調(diào)者失效可能會(huì)導(dǎo)致整個(gè)事務(wù)失敗。
順序一致性模型
1.事務(wù)之間提交的順序與可見的順序相同,但與提交的順序可能不同。
2.引入了“因果關(guān)系”,事務(wù)提交的先后不會(huì)影響其可見性。
3.適用于需要保證因果一致性,但對(duì)事務(wù)提交順序不敏感的場(chǎng)景。
快照隔離模型
1.每個(gè)事務(wù)執(zhí)行時(shí)看到的數(shù)據(jù)庫是一個(gè)過去某一時(shí)刻的快照,不受其他同時(shí)執(zhí)行的事務(wù)的影響。
2.實(shí)現(xiàn)了較高的并發(fā)性和吞吐率,但可能存在幻讀和不可重復(fù)讀等一致性問題。
3.適用于讀取密集型場(chǎng)景,對(duì)數(shù)據(jù)一致性要求不高的場(chǎng)景。
讀已提交隔離模型
1.事務(wù)只能看到其他事務(wù)已提交的數(shù)據(jù),避免了幻讀和不可重復(fù)讀問題。
2.性能低于快照隔離模型,但一致性更高。
3.適用于對(duì)數(shù)據(jù)一致性要求較高的場(chǎng)景,例如金融交易。
可串行化隔離模型
1.事務(wù)執(zhí)行的順序與串行執(zhí)行的結(jié)果相同,避免了一切一致性問題。
2.性能最低,但一致性最高。
3.適用于對(duì)數(shù)據(jù)一致性要求極高的場(chǎng)景,例如核心業(yè)務(wù)系統(tǒng)。
最終一致性模型
1.數(shù)據(jù)在分布式系統(tǒng)中最終會(huì)達(dá)到一致狀態(tài),但不保證在任何時(shí)刻都一致。
2.適用于對(duì)數(shù)據(jù)一致性要求較低,但對(duì)性能和可用性要求較高的場(chǎng)景。
3.采用數(shù)據(jù)復(fù)制、消息隊(duì)列等機(jī)制,最終實(shí)現(xiàn)數(shù)據(jù)一致性。分布式一致性模型
簡介
分布式系統(tǒng)中的一致性是指所有參與者對(duì)系統(tǒng)狀態(tài)保持一致的理解。為了實(shí)現(xiàn)分布式一致性,提出了多種一致性模型,它們定義了系統(tǒng)在處理并行操作和故障時(shí)的行為。
一、強(qiáng)一致性
*定義:任何時(shí)刻,所有副本都對(duì)所有事務(wù)執(zhí)行的結(jié)果達(dá)成共識(shí),即所有副本具有相同的值。
*優(yōu)點(diǎn):保證了所有副本始終保持完全一致,確保數(shù)據(jù)完整性和可用性。
*缺點(diǎn):在高并發(fā)的分布式系統(tǒng)中實(shí)現(xiàn)代價(jià)高昂,可能會(huì)導(dǎo)致性能下降和可用性問題。
二、弱一致性
*定義:在一段時(shí)間內(nèi),允許副本之間的暫時(shí)不一致,但最終會(huì)收斂到一致狀態(tài)。
*優(yōu)點(diǎn):提供了更好的性能和可用性,因?yàn)楦北究梢元?dú)立執(zhí)行操作,無需等待其他副本的響應(yīng)。
*缺點(diǎn):無法保證在所有情況下都實(shí)現(xiàn)一致性,可能會(huì)導(dǎo)致應(yīng)用程序錯(cuò)誤和數(shù)據(jù)不完整。
三、最終一致性
*定義:如果所有操作最終執(zhí)行完畢,并且系統(tǒng)不再發(fā)生故障,那么所有副本最終都會(huì)收斂到一致狀態(tài)。
*優(yōu)點(diǎn):提供了最強(qiáng)的可擴(kuò)展性和可用性,因?yàn)楦北究梢栽跊]有協(xié)調(diào)的情況下并行處理操作。
*缺點(diǎn):無法保證在任何給定時(shí)間點(diǎn)的嚴(yán)格一致性,可能會(huì)導(dǎo)致應(yīng)用程序延遲和不一致數(shù)據(jù)讀取。
四、順序一致性
*定義:任何兩個(gè)副本對(duì)同一序列中的操作達(dá)成相同的執(zhí)行順序。
*優(yōu)點(diǎn):保證了按操作順序執(zhí)行,消除了并發(fā)操作對(duì)執(zhí)行結(jié)果的影響。
*缺點(diǎn):需要更嚴(yán)格的鎖機(jī)制,可能降低性能和可擴(kuò)展性。
五、因果一致性
*定義:如果操作A因果先于操作B,那么所有觀察到A發(fā)生的所有副本也必須觀察到B發(fā)生。
*優(yōu)點(diǎn):提供了更好的并發(fā)控制,允許并行執(zhí)行因果相關(guān)的操作。
*缺點(diǎn):實(shí)現(xiàn)復(fù)雜,需要維護(hù)因果關(guān)系的記錄,可能會(huì)降低性能。
六、讀已提交一致性
*定義:任何讀操作都只能看到已經(jīng)提交的事務(wù)所做的修改。
*優(yōu)點(diǎn):保證了讀操作始終返回提交的事務(wù)結(jié)果,避免了臟讀的發(fā)生。
*缺點(diǎn):無法阻止幻讀和不可重復(fù)讀。
七、讀己提交一致性
*定義:任何讀操作都只能看到已經(jīng)提交并且在該事務(wù)啟動(dòng)前提交的事務(wù)所做的修改。
*優(yōu)點(diǎn):保證了讀操作始終返回提交的事務(wù)結(jié)果,避免了臟讀和幻讀的發(fā)生。
*缺點(diǎn):無法阻止不可重復(fù)讀。
八、串行化一致性
*定義:根據(jù)一個(gè)全局的總序?qū)λ胁僮髋判?,即使操作在并行?zhí)行,也表現(xiàn)得像串行執(zhí)行一樣。
*優(yōu)點(diǎn):提供了與單機(jī)系統(tǒng)相同的強(qiáng)一致性保證。
*缺點(diǎn):難以實(shí)現(xiàn),需要集中式協(xié)調(diào)器,可能會(huì)成為系統(tǒng)的瓶頸。
一致性模型的選擇
選擇適當(dāng)?shù)囊恢滦阅P腿Q于特定的應(yīng)用程序需求和對(duì)性能、可用性和一致性的權(quán)衡。對(duì)于要求嚴(yán)格一致性的應(yīng)用程序,可以考慮強(qiáng)一致性或順序一致性。對(duì)于對(duì)性能和可用性要求較高的應(yīng)用程序,可以考慮弱一致性、最終一致性或因果一致性。讀已提交一致性、讀己提交一致性和串行化一致性通常用于數(shù)據(jù)庫系統(tǒng)。第四部分兩階段提交協(xié)議關(guān)鍵詞關(guān)鍵要點(diǎn)兩階段提交協(xié)議
1.協(xié)議流程:
-第一階段:參與者接收協(xié)調(diào)者的提交請(qǐng)求,并對(duì)數(shù)據(jù)進(jìn)行預(yù)提交。
-第二階段:協(xié)調(diào)者收集參與者的預(yù)提交結(jié)果,若所有參與者均成功,則提交事務(wù);否則,回滾事務(wù)。
2.處理失?。?/p>
-協(xié)調(diào)者或參與者發(fā)生故障,協(xié)議可能會(huì)失敗。
-通過超時(shí)、心跳機(jī)制等方式檢測(cè)故障,并采取相應(yīng)的處理措施(如重新發(fā)送請(qǐng)求、切換協(xié)調(diào)者)。
3.保證一致性:
-確保所有參與者要么都提交事務(wù),要么都回滾事務(wù)。
-通過預(yù)提交階段的鎖機(jī)制和第二階段的投票機(jī)制來實(shí)現(xiàn)一致性。
兩階段提交協(xié)議的優(yōu)點(diǎn)
1.確保強(qiáng)一致性:
-即使在系統(tǒng)故障的情況下,也能保證分布式事務(wù)的原子性和一致性。
2.高可靠性:
-通過冗余機(jī)制和故障處理機(jī)制,提高了事務(wù)成功的概率。
3.擴(kuò)展性:
-可以輕松地?cái)U(kuò)展到更多的參與者,滿足高并發(fā)場(chǎng)景的需求。
兩階段提交協(xié)議的缺點(diǎn)
1.性能開銷:
-兩階段提交協(xié)議需要進(jìn)行多次網(wǎng)絡(luò)通信和投票,這可能會(huì)帶來一定的性能開銷。
2.阻塞:
-在第二階段,需要等待所有參與者響應(yīng),可能導(dǎo)致事務(wù)阻塞。
3.分布式鎖問題:
-預(yù)提交階段的鎖機(jī)制可能導(dǎo)致死鎖或饑餓問題,需要額外的機(jī)制來解決。分布式事務(wù)管理與一致性:兩階段提交協(xié)議
引言
在分布式系統(tǒng)中,確保多個(gè)參與者參與的事務(wù)的原子性和一致性至關(guān)重要。兩階段提交(2PC)協(xié)議是一種經(jīng)典的分布式事務(wù)管理協(xié)議,用于在分布式環(huán)境中維護(hù)數(shù)據(jù)一致性。
兩階段提交協(xié)議概述
2PC協(xié)議是一個(gè)兩階段過程,涉及以下參與者:
*事務(wù)協(xié)調(diào)器(TC):負(fù)責(zé)協(xié)調(diào)事務(wù)并確保其一致性。
*參與者(P):執(zhí)行事務(wù)操作并存儲(chǔ)數(shù)據(jù)。
階段1:準(zhǔn)備階段
1.TC向參與者P發(fā)送prepare消息,告知他們事務(wù)即將提交。
2.參與者P執(zhí)行事務(wù)操作并將結(jié)果寫??入其本地日志,但不會(huì)提交事務(wù)。
3.參與者P向TC發(fā)送準(zhǔn)備完成消息,表示已準(zhǔn)備好提交事務(wù)。
階段2:提交/中止階段
1.如果TC收到所有參與者的準(zhǔn)備完成消息,則向參與者發(fā)送提交消息。
2.參與者P在收到提交消息后提交事務(wù),使其永久化。
3.如果TC收到任何參與者的準(zhǔn)備失敗消息,則向參與者發(fā)送中止消息。
4.參與者P在收到中止消息后回滾事務(wù),撤消任何已執(zhí)行的操作。
優(yōu)點(diǎn)和缺點(diǎn)
優(yōu)點(diǎn):
*保證原子性:事務(wù)要么全部成功,要么全部失敗。
*一致性:所有參與者在完成事務(wù)后具有相同的數(shù)據(jù)視圖。
*持久性:一旦事務(wù)提交,其結(jié)果將是永久性的,即使系統(tǒng)發(fā)生故障。
缺點(diǎn):
*性能開銷:兩階段過程增加了事務(wù)的延遲。
*單點(diǎn)故障:TC故障可能會(huì)阻止事務(wù)完成或?qū)е聰?shù)據(jù)不一致。
*死鎖:參與者可能因等待其他參與者完成而相互鎖定,導(dǎo)致死鎖。
優(yōu)化和變體
為了提高2PC的性能和可靠性,已經(jīng)提出了多種優(yōu)化和變體,包括:
*三階段提交(3PC):引入一個(gè)額外的預(yù)提交階段,以減少TC故障導(dǎo)致的事務(wù)回滾的可能性。
*改進(jìn)的2PC(2PC+):使用投票方式來確定事務(wù)的提交或中止,減少死鎖的可能性。
*分布式兩階段提交(D2PC):將TC的職責(zé)分布到多個(gè)協(xié)調(diào)器,以提高可伸縮性和容錯(cuò)性。
應(yīng)用
2PC協(xié)議廣泛應(yīng)用于需要確保事務(wù)原子性、一致性和持久性的分布式系統(tǒng)中,包括:
*數(shù)據(jù)庫管理系統(tǒng)
*分布式文件系統(tǒng)
*電子商務(wù)系統(tǒng)
*金融交易平臺(tái)
結(jié)論
兩階段提交協(xié)議是一種強(qiáng)大且經(jīng)過驗(yàn)證的機(jī)制,用于在分布式系統(tǒng)中管理事務(wù)。雖然它確實(shí)存在一些缺點(diǎn),但通過優(yōu)化和變體,2PC仍然是確保數(shù)據(jù)一致性的寶貴工具。第五部分三階段提交協(xié)議關(guān)鍵詞關(guān)鍵要點(diǎn)三階段提交協(xié)議
*目的:保證分布式系統(tǒng)中多個(gè)參與者之間的交易的原子性、一致性、隔離性和持久性。
*過程:
1.準(zhǔn)備階段:協(xié)調(diào)者向參與者發(fā)送準(zhǔn)備請(qǐng)求,參與者準(zhǔn)備提交事務(wù),但不執(zhí)行。
2.提交階段:協(xié)調(diào)者向參與者發(fā)送提交請(qǐng)求,參與者執(zhí)行事務(wù)。
3.提交確認(rèn)階段:參與者向協(xié)調(diào)者發(fā)送提交確認(rèn)或回滾請(qǐng)求。
*優(yōu)點(diǎn):高可靠性,即使在參與者出現(xiàn)故障的情況下也能保證一致性。
協(xié)調(diào)者角色
*職責(zé):負(fù)責(zé)編排三階段提交過程,管理參與者。
*要求:高可用性和可靠性,以確保協(xié)議的正確執(zhí)行。
*故障處理:如果協(xié)調(diào)者故障,系統(tǒng)可以重新選舉一個(gè)新的協(xié)調(diào)者來繼續(xù)提交過程。
參與者角色
*職責(zé):執(zhí)行事務(wù),并向協(xié)調(diào)者報(bào)告其狀態(tài)。
*要求:執(zhí)行事務(wù)并保持其狀態(tài)的持久性,以確保一致性。
*故障處理:如果參與者故障,協(xié)調(diào)者將回滾事務(wù),直到所有參與者恢復(fù)為止。
投票和決議
*投票:參與者在準(zhǔn)備階段向協(xié)調(diào)者發(fā)出“準(zhǔn)備”或“不準(zhǔn)備”的投票。
*決議:協(xié)調(diào)者基于參與者的投票決定提交或回滾事務(wù)。
*超時(shí):如果協(xié)調(diào)者在一定時(shí)間內(nèi)收不到所有參與者的投票,則會(huì)超時(shí)并回滾事務(wù)。
補(bǔ)償機(jī)制
*目的:在事務(wù)回滾后恢復(fù)系統(tǒng)到一致狀態(tài)。
*類型:可以是前滾補(bǔ)償(執(zhí)行與原始事務(wù)相反的操作)或后滾補(bǔ)償(將系統(tǒng)恢復(fù)到原始狀態(tài))。
*重要性:確保即使事務(wù)失敗,系統(tǒng)也保持一致性。
分布式鎖
*目的:防止并發(fā)的事務(wù)對(duì)同一資源進(jìn)行修改,確保數(shù)據(jù)完整性。
*類型:可以是中央鎖(由一個(gè)單點(diǎn)管理)或分布式鎖(在多個(gè)節(jié)點(diǎn)之間協(xié)調(diào))。
*應(yīng)用:在三階段提交協(xié)議中,協(xié)調(diào)者可以使用分布式鎖來防止參與者在準(zhǔn)備階段修改數(shù)據(jù)。三階段提交協(xié)議
概述
三階段提交協(xié)議(3PC)是一種分布式事務(wù)管理協(xié)議,確保在分布式系統(tǒng)中執(zhí)行原子操作,即使節(jié)點(diǎn)發(fā)生故障。它通過三個(gè)階段協(xié)調(diào)參與者和參與節(jié)點(diǎn)之間的通信:準(zhǔn)備、預(yù)提交和提交。
階段1:準(zhǔn)備
*協(xié)調(diào)者向所有參與節(jié)點(diǎn)發(fā)送事務(wù)請(qǐng)求。
*參與節(jié)點(diǎn)對(duì)事務(wù)進(jìn)行本地計(jì)算并準(zhǔn)備提交。
*如果參與節(jié)點(diǎn)無法提交,則返回錯(cuò)誤。
*協(xié)調(diào)者收到所有參與節(jié)點(diǎn)的確認(rèn)后,進(jìn)入預(yù)提交階段。
階段2:預(yù)提交
*協(xié)調(diào)者將“準(zhǔn)備提交”消息發(fā)送給所有參與節(jié)點(diǎn)。
*參與節(jié)點(diǎn)進(jìn)入預(yù)提交狀態(tài),鎖定資源并等待提交指令。
*如果參與節(jié)點(diǎn)因故障而無法響應(yīng),則協(xié)調(diào)者將執(zhí)行回滾操作,將事務(wù)恢復(fù)到預(yù)提交前的狀態(tài)。
階段3:提交或回滾
*協(xié)調(diào)者根據(jù)階段2的結(jié)果執(zhí)行提交或回滾:
*提交:協(xié)調(diào)者將“提交”消息發(fā)送給所有參與節(jié)點(diǎn)。參與節(jié)點(diǎn)完成事務(wù)并釋放資源。
*回滾:協(xié)調(diào)者將“回滾”消息發(fā)送給所有參與節(jié)點(diǎn)。參與節(jié)點(diǎn)釋放所有鎖定的資源并丟棄對(duì)事務(wù)的更改。
優(yōu)點(diǎn)
*原子性:確保事務(wù)要么完全執(zhí)行,要么完全不執(zhí)行。
*一致性:保證所有參與節(jié)點(diǎn)在事務(wù)完成后處于相同狀態(tài)。
*隔離性:防止事務(wù)之間的干擾。
缺點(diǎn)
*性能開銷:三階段提交過程涉及大量的通信和協(xié)調(diào),這會(huì)降低性能。
*單點(diǎn)故障:協(xié)調(diào)者是單點(diǎn)故障,如果協(xié)調(diào)者發(fā)生故障,則事務(wù)可能無法完成。
*死鎖:如果兩個(gè)或多個(gè)參與節(jié)點(diǎn)相互等待,則可能會(huì)發(fā)生死鎖。
變體
*兩階段提交(2PC):省略了預(yù)提交階段。
*加強(qiáng)型三階段提交(3PC):增加了超時(shí)和檢查點(diǎn)機(jī)制,以提高吞吐量和魯棒性。
*崩潰恢復(fù)三階段提交(3PC-CR):允許參與節(jié)點(diǎn)在崩潰后恢復(fù)并重新加入事務(wù)。
應(yīng)用
*數(shù)據(jù)庫系統(tǒng)
*消息傳遞系統(tǒng)
*分布式文件系統(tǒng)
*金融交易第六部分Paxos協(xié)議關(guān)鍵詞關(guān)鍵要點(diǎn)Paxos協(xié)議概述
1.Paxos是一種分布式共識(shí)協(xié)議,用于在分布式系統(tǒng)中達(dá)成一致性。
2.Paxos協(xié)議由兩階段組成:準(zhǔn)備階段和提交階段。
3.在準(zhǔn)備階段,提案者向所有參與者發(fā)送提案。在提交階段,參與者投票決定是否接受提案。
Paxos階段
1.Paxos協(xié)議分為兩個(gè)階段:準(zhǔn)備階段和提交階段。
2.在準(zhǔn)備階段,提案者向所有參與者發(fā)送提案并等待他們的響應(yīng)。參與者可以接受或拒絕提案。
3.在提交階段,提案者收集所有參與者的響應(yīng)并決定是否提交提案。
Paxos消息
1.Paxos協(xié)議使用四種類型的消息:準(zhǔn)備消息、承諾消息、接受消息和拒絕消息。
2.準(zhǔn)備消息用于在準(zhǔn)備階段向參與者發(fā)送提案。
3.承諾消息用于在提交階段表明參與者接受提案。
4.接受消息用于在提交階段表明參與者已接受提案。
5.拒絕消息用于在提交階段表明參與者已拒絕提案。
Paxos選舉
1.Paxos協(xié)議使用選舉機(jī)制來選擇領(lǐng)導(dǎo)者。
2.領(lǐng)導(dǎo)者負(fù)責(zé)管理Paxos協(xié)議中的提案。
3.領(lǐng)導(dǎo)者通過使用Paxos協(xié)議來協(xié)調(diào)參與者并達(dá)成一致性。
Paxos故障容錯(cuò)
1.Paxos協(xié)議是故障容錯(cuò)的,這意味著即使一些參與者發(fā)生故障,它仍然可以正常工作。
2.Paxos協(xié)議使用冗余和容錯(cuò)機(jī)制來確保即使在故障情況下也能達(dá)成一致性。
3.Paxos協(xié)議還使用超時(shí)機(jī)制來處理參與者故障。
Paxos應(yīng)用
1.Paxos協(xié)議廣泛應(yīng)用于分布式數(shù)據(jù)庫、分布式存儲(chǔ)系統(tǒng)和分布式鎖服務(wù)等分布式系統(tǒng)中。
2.Paxos協(xié)議可以確保分布式系統(tǒng)中的數(shù)據(jù)一致性和可用性。
3.Paxos協(xié)議對(duì)于構(gòu)建可靠和可擴(kuò)展的分布式系統(tǒng)至關(guān)重要。Paxos協(xié)議
Paxos協(xié)議是一種分布式一致性算法,旨在解決分布式系統(tǒng)中復(fù)制狀態(tài)機(jī)的一致性問題。它通過多輪選舉過程確保系統(tǒng)中只有一個(gè)領(lǐng)導(dǎo)者,該領(lǐng)導(dǎo)者負(fù)責(zé)處理寫請(qǐng)求并維護(hù)一致性。
協(xié)議概述
Paxos協(xié)議包含以下階段:
*準(zhǔn)備階段:提議者向所有副本發(fā)送一個(gè)提議,其中包含要執(zhí)行的命令和提議的編號(hào)。
*接受階段:副本在接受提議之前,必須確保該提議具有更高的編號(hào),并且尚未接受其他更高的編號(hào)的提議。如果滿足這些條件,則副本接受該提議。
*提交階段:當(dāng)提議者收到來自大多數(shù)副本(即法定人數(shù))的接受回復(fù)時(shí),它向所有副本發(fā)送一個(gè)提交消息,其中包含該提議。
*執(zhí)行階段:副本收到提交消息后,執(zhí)行提議中的命令。
保證
Paxos協(xié)議提供了以下保證:
*安全性:每個(gè)提交的命令都會(huì)被所有副本執(zhí)行。
*一致性:所有副本都以相同的順序執(zhí)行相同的命令。
*可用性:只要大多數(shù)副本可用,系統(tǒng)就可以繼續(xù)操作。
工作原理
Paxos協(xié)議使用以下關(guān)鍵概念:
*提議編號(hào):一個(gè)遞增的編號(hào),用于標(biāo)識(shí)提議。
*法定人數(shù):副本總數(shù)的一半加一。
*領(lǐng)導(dǎo)者:負(fù)責(zé)發(fā)起提議并協(xié)調(diào)一致性過程的副本。
在正常情況下,系統(tǒng)中只有一個(gè)領(lǐng)導(dǎo)者,該領(lǐng)導(dǎo)者會(huì)按順序發(fā)出編號(hào)的提議。當(dāng)一個(gè)副本收到一個(gè)提議時(shí),它會(huì)檢查該提議的編號(hào)是否比它最近接受的提議編號(hào)更高。如果更高,則副本接受該提議并更新其狀態(tài)。
如果一個(gè)副本收到一個(gè)編號(hào)較低的提議,則它會(huì)拒絕該提議。這可以防止舊的提議覆蓋較新的提議。
如果一個(gè)提議者收到了來自大多數(shù)副本的接受回復(fù),則它向所有副本發(fā)送一個(gè)提交消息。收到提交消息后,副本會(huì)執(zhí)行提議中的命令。
容錯(cuò)
Paxos協(xié)議能夠容忍以下故障:
*副本故障:當(dāng)一個(gè)副本崩潰時(shí),系統(tǒng)可以繼續(xù)操作,只要大多數(shù)副本仍然可用。
*網(wǎng)絡(luò)分區(qū):當(dāng)副本之間無法通信時(shí),系統(tǒng)可以繼續(xù)操作,只要領(lǐng)導(dǎo)者與大多數(shù)副本保持連接。
*領(lǐng)導(dǎo)者更替:當(dāng)領(lǐng)導(dǎo)者崩潰時(shí),系統(tǒng)會(huì)選舉一個(gè)新的領(lǐng)導(dǎo)者以繼續(xù)一致性過程。
優(yōu)點(diǎn)
Paxos協(xié)議的優(yōu)點(diǎn)包括:
*高可用性:只要大多數(shù)副本可用,系統(tǒng)就可以繼續(xù)操作。
*強(qiáng)一致性:所有副本都以相同的順序執(zhí)行相同的命令。
*容錯(cuò)性:可以容忍各種故障,包括副本故障、網(wǎng)絡(luò)分區(qū)和領(lǐng)導(dǎo)者更替。
缺點(diǎn)
Paxos協(xié)議的缺點(diǎn)包括:
*開銷高:Paxos協(xié)議需要多個(gè)通信輪次才能完成一致性過程,這可能導(dǎo)致較高的開銷。
*復(fù)雜性:Paxos協(xié)議的實(shí)現(xiàn)和理解都比較復(fù)雜。
應(yīng)用
Paxos協(xié)議被廣泛用于分布式系統(tǒng)中,例如:
*分布式文件系統(tǒng)
*分布式數(shù)據(jù)庫
*分布式鎖服務(wù)
*分布式選舉服務(wù)第七部分RAFT協(xié)議關(guān)鍵詞關(guān)鍵要點(diǎn)RAFT算法概述
1.RAFT算法是一種分布式共識(shí)算法,用于在分布式系統(tǒng)中達(dá)成一致性的決議。
2.該算法遵循領(lǐng)導(dǎo)者和追隨者模型,其中一個(gè)節(jié)點(diǎn)在特定時(shí)間擔(dān)任領(lǐng)導(dǎo)者,而其他節(jié)點(diǎn)充當(dāng)追隨者。
3.領(lǐng)導(dǎo)者負(fù)責(zé)處理來自客戶端的請(qǐng)求并協(xié)調(diào)集群中的所有活動(dòng)。
RAFT選舉過程
1.當(dāng)領(lǐng)導(dǎo)者崩潰或不可用時(shí),系統(tǒng)會(huì)啟動(dòng)選舉過程以選擇新的領(lǐng)導(dǎo)者。
2.追隨者隨機(jī)啟動(dòng)計(jì)時(shí)器并向其他追隨者發(fā)送投票請(qǐng)求。
3.如果追隨者收到多數(shù)節(jié)點(diǎn)的投票,則會(huì)將其聲明為新領(lǐng)導(dǎo)者并向其他追隨者發(fā)送心跳信號(hào)。
RAFT日志復(fù)制
1.領(lǐng)導(dǎo)者負(fù)責(zé)將命令復(fù)制到追隨者的日志中。
2.追隨者將命令復(fù)制到自己的日志中,并向領(lǐng)導(dǎo)者發(fā)送確認(rèn)消息。
3.領(lǐng)導(dǎo)者收到多數(shù)追隨者的確認(rèn)后,將命令提交給應(yīng)用程序。
RAFT狀態(tài)機(jī)
1.每個(gè)節(jié)點(diǎn)都維護(hù)了一個(gè)狀態(tài)機(jī),該狀態(tài)機(jī)存儲(chǔ)了系統(tǒng)的當(dāng)前狀態(tài)。
2.領(lǐng)導(dǎo)者將命令應(yīng)用于其狀態(tài)機(jī),然后將更新的狀態(tài)復(fù)制到追隨者。
3.追隨者更新自己的狀態(tài)機(jī)以與領(lǐng)導(dǎo)者保持一致。
RAFT容錯(cuò)性
1.RAFT算法在大多數(shù)節(jié)點(diǎn)可用時(shí)提供容錯(cuò)性。
2.如果領(lǐng)導(dǎo)者崩潰,系統(tǒng)將啟動(dòng)選舉過程以選擇新領(lǐng)導(dǎo)者。
3.如果追隨者崩潰,領(lǐng)導(dǎo)者將繼續(xù)處理請(qǐng)求并復(fù)制命令到健康追隨者的日志中。
RAFT在工業(yè)中的應(yīng)用
1.RAFT算法已廣泛用于分布式數(shù)據(jù)庫系統(tǒng)中,如ApacheCassandra和MongoDB。
2.它還被用于分布式文件系統(tǒng)中,如ApacheHadoop分布式文件系統(tǒng)(HDFS)。
3.RAFT算法的可靠性和可擴(kuò)展性使其成為高可用性和容錯(cuò)分布式系統(tǒng)的理想選擇。分布式事務(wù)管理與一致性中的RAFT協(xié)議
#概述
分布式事務(wù)管理中,一致性至關(guān)重要,RAFT(一致性復(fù)制狀態(tài)機(jī))協(xié)議是一種用于在分布式系統(tǒng)中實(shí)現(xiàn)強(qiáng)一致性的共識(shí)算法。它以其高可用性、容錯(cuò)性和高性能而著稱。
RAFT協(xié)議由DiegoOngaro和JohnOusterhout于2013年在斯坦福大學(xué)開發(fā)。它以木筏船的運(yùn)動(dòng)為類比,其中領(lǐng)導(dǎo)者引領(lǐng)追隨者,追隨者復(fù)制領(lǐng)導(dǎo)者狀態(tài),從而確保系統(tǒng)的一致性。
#架構(gòu)和工作原理
RAFT協(xié)議的架構(gòu)包括:
*領(lǐng)導(dǎo)者(Leader):負(fù)責(zé)處理客戶端請(qǐng)求,并將狀態(tài)復(fù)制到追隨者。它通過選舉產(chǎn)生。
*追隨者(Follower):接收來自領(lǐng)導(dǎo)者的心跳消息并復(fù)制其狀態(tài)。追隨者作為備份,并在領(lǐng)導(dǎo)者發(fā)生故障時(shí)參與選舉。
*候選人(Candidate):在領(lǐng)導(dǎo)者故障時(shí)成為候選人,并主動(dòng)向追隨者發(fā)起投票請(qǐng)求。
RAFT協(xié)議的工作原理如下:
1.選舉:當(dāng)領(lǐng)導(dǎo)者發(fā)生故障時(shí),追隨者通過隨機(jī)時(shí)間間隔發(fā)起選舉。候選人向其他服務(wù)器發(fā)送投票請(qǐng)求。
2.投票:服務(wù)器要么投票給候選人,要么拒絕投票。如果候選人獲得大多數(shù)票數(shù),則成為領(lǐng)導(dǎo)者。
3.心跳:領(lǐng)導(dǎo)者定期向追隨者發(fā)送心跳消息。如果追隨者在一段時(shí)間內(nèi)未收到心跳消息,則認(rèn)為領(lǐng)導(dǎo)者已故障。
4.日志復(fù)制:領(lǐng)導(dǎo)者將客戶端請(qǐng)求附加到自己的日志中,并向追隨者廣播日志條目。追隨者在收到日志條目后將其附加到自己的日志中。
5.提交:當(dāng)日志條目在大多數(shù)服務(wù)器中復(fù)制后,領(lǐng)導(dǎo)者將其提交,并向客戶端返回響應(yīng)。
#特性
RAFT協(xié)議具有以下特性:
*強(qiáng)一致性:所有服務(wù)器始終處于相同的狀態(tài),并且客戶端始終讀取到相同的值。
*高可用性:如果少數(shù)服務(wù)器發(fā)生故障,系統(tǒng)仍能繼續(xù)運(yùn)行。
*高性能:RAFT協(xié)議允許并行復(fù)制,從而提高了性能。
*故障恢復(fù):當(dāng)領(lǐng)導(dǎo)者故障時(shí),系統(tǒng)可以通過選舉新領(lǐng)導(dǎo)者來恢復(fù)。
*可擴(kuò)展性:RAFT協(xié)議可擴(kuò)展到大量服務(wù)器,使其適用于大型分布式系統(tǒng)。
#應(yīng)用
RAFT協(xié)議廣泛應(yīng)用于分布式數(shù)據(jù)庫、分布式文件系統(tǒng)和分布式消息系統(tǒng)等需要強(qiáng)一致性的場(chǎng)景。
例如:
*谷歌Spanner:一個(gè)分布式關(guān)系數(shù)據(jù)庫,使用RAFT協(xié)議來確保數(shù)據(jù)一致性。
*ApacheCassandra:一個(gè)分布式NoSQL數(shù)據(jù)庫,使用RAFT協(xié)議來實(shí)現(xiàn)跨數(shù)據(jù)中心的強(qiáng)一致性。
*ApacheKafka:一個(gè)分布式消息系統(tǒng),使用RAFT協(xié)議來確保消息的順序性和一致性。
#優(yōu)點(diǎn)和缺點(diǎn)
優(yōu)點(diǎn):
*高一致性
*高可用性
*高性能
*易于理解和實(shí)現(xiàn)
缺點(diǎn):
*領(lǐng)導(dǎo)者故障可能會(huì)導(dǎo)致性能下降
*選舉過程可能會(huì)增加延遲
*不適用于不需要強(qiáng)一致性的場(chǎng)景
#結(jié)論
RAFT協(xié)議是一種用于在分布式系統(tǒng)中實(shí)現(xiàn)強(qiáng)一致性的共識(shí)算法。它具有高可用性、高性能和可擴(kuò)展性。RAFT協(xié)議廣泛應(yīng)用于需要強(qiáng)一致性的分布式系統(tǒng)中,如數(shù)據(jù)庫、文件系統(tǒng)和消息系統(tǒng)。第八部分基于Saga的補(bǔ)償機(jī)制基于Saga的補(bǔ)償機(jī)制
簡介
基于Saga的補(bǔ)償機(jī)制是一種分布式事務(wù)管理機(jī)制,用于解決跨多個(gè)參與者的事務(wù)的一致性問題。它基于Saga模式,該模式將事務(wù)分解為一系列順序執(zhí)行的局部事務(wù)(Saga)。
工作原理
1.啟動(dòng)事務(wù):
-事務(wù)協(xié)調(diào)器啟動(dòng)事務(wù),生成一個(gè)唯一的標(biāo)識(shí)符(tid)。
2.執(zhí)行局部事務(wù):
-Saga中的每個(gè)局部事務(wù)都由一個(gè)參與者執(zhí)行,該參與者負(fù)責(zé)執(zhí)行自己的數(shù)據(jù)庫操作。
-局部事務(wù)完成后,參與者向事務(wù)協(xié)調(diào)器報(bào)告其執(zhí)行狀態(tài)(成功或失?。?。
3.補(bǔ)償失敗的局部事務(wù):
-如果一個(gè)局部事務(wù)失敗,事務(wù)協(xié)調(diào)器將調(diào)用該局部事務(wù)的補(bǔ)償動(dòng)作。
-補(bǔ)償動(dòng)作是一個(gè)與局部事務(wù)相反的操作,用于回滾局部事務(wù)對(duì)數(shù)據(jù)庫的影響。
4.完成事務(wù):
-如果所有局部事務(wù)都成功完成,事務(wù)協(xié)調(diào)器將提交事務(wù)。
-如果任何局部事務(wù)失敗,事務(wù)協(xié)調(diào)器將調(diào)用所有已經(jīng)執(zhí)行的局部事務(wù)的補(bǔ)償動(dòng)作,以回滾事務(wù)對(duì)數(shù)據(jù)庫的影響。
優(yōu)點(diǎn)
*補(bǔ)償性:基于Saga的補(bǔ)償機(jī)制允許對(duì)失敗的局部事務(wù)進(jìn)行補(bǔ)償,從而確保事務(wù)的原子性。
*可擴(kuò)展性:Saga模式可以輕松擴(kuò)展到需要更多參與者的事務(wù)中。
*松散耦合:參與者可以松散耦合,因?yàn)樗麄冎恍枰c事務(wù)協(xié)調(diào)器通信。
*易于理解和實(shí)現(xiàn):Saga模式相對(duì)簡單,并且可以用多種編程語言輕松實(shí)現(xiàn)。
缺點(diǎn)
*延遲:由于補(bǔ)償動(dòng)作需要在局部事務(wù)失敗后執(zhí)行,因此基于Saga的補(bǔ)償機(jī)制可能會(huì)導(dǎo)致延遲。
*復(fù)雜性:對(duì)于涉及多個(gè)參與者的復(fù)雜事務(wù),實(shí)現(xiàn)和管理基于Saga的補(bǔ)償機(jī)制可能變得復(fù)雜。
*潛在的死鎖:如果補(bǔ)償動(dòng)作也失敗,則可能會(huì)導(dǎo)致死鎖,除非采取額外的預(yù)防措施。
應(yīng)用場(chǎng)景
基于Saga的補(bǔ)償機(jī)制適用于需要跨多個(gè)參與者協(xié)調(diào)一致性的分布式事務(wù),例如:
*訂單處理系統(tǒng)
*支付系統(tǒng)
*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 大學(xué)開學(xué)典禮
- 愚人節(jié)活動(dòng)策劃書(匯編15篇)
- 家用電器安全教育
- 高三化學(xué)一輪復(fù)習(xí)+專項(xiàng)強(qiáng)化訓(xùn)練-化學(xué)與環(huán)境保護(hù)
- 應(yīng)屆生面試自我介紹范文集合15篇
- 婚宴新娘致辭(資料15篇)
- 初級(jí)會(huì)計(jì)經(jīng)濟(jì)法基礎(chǔ)-2025初級(jí)會(huì)計(jì)《經(jīng)濟(jì)法基礎(chǔ)》模擬試卷242
- 2024年中國數(shù)字資產(chǎn)信貸融資行業(yè)市場(chǎng)發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告-智研咨詢重磅發(fā)布
- 基于無約束優(yōu)化的路側(cè)雷視聯(lián)合外參標(biāo)定方法研究
- 金融行業(yè)人事招聘工作
- 2024-2025學(xué)年廣東省深圳市南山區(qū)監(jiān)測(cè)數(shù)學(xué)三年級(jí)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
- 2024年衛(wèi)生專業(yè)技術(shù)資格考試衛(wèi)生檢驗(yàn)技術(shù)(初級(jí)(師)211)相關(guān)專業(yè)知識(shí)試題及答案指導(dǎo)
- 江蘇省南京鼓樓區(qū)2024年中考聯(lián)考英語試題含答案
- 15篇文章包含英語四級(jí)所有詞匯
- 王陽明心學(xué)完整版本
- 四年級(jí)上冊(cè)豎式計(jì)算300題及答案
- 課題研究實(shí)施方案 范例及課題研究方法及技術(shù)路線圖模板
- 牙髓炎中牙髓干細(xì)胞與神經(jīng)支配的相互作用
- 【2022屆高考英語讀后續(xù)寫】主題升華積累講義及高級(jí)句型積累
- 西方法律思想史ppt
- 世界古代史-對(duì)接選擇性必修 高考?xì)v史一輪復(fù)習(xí)
評(píng)論
0/150
提交評(píng)論