新四季網

一種事務處理方法與裝置製造方法

2023-10-08 13:57:09 2

一種事務處理方法與裝置製造方法
【專利摘要】本發明提供了一種應用於協調者,所述協調者和參與者通信連接,該方法包括:所述協調者向各個參與者發送查詢消息;所述協調者根據所述響應消息得出結論,所述協調者執行所述結論,並將所述結論發送給所述參與者,所述結論包括下述至少一種:如果任意一個響應消息中攜帶有第一信息,則結論為執行事務,其中,所述第一信息表示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所述對象在協調者中的變化信息相同;如果任意一個響應消息中攜帶有第二信息,則結論為終止事務,其中,所述第二信息表示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所述對象在協調者的變化信息不同。
【專利說明】一種事務處理方法與裝置
[0001] 本申請要求於2013年10月29日提交中國專利局、申請號為PCT/CN2013/086169、 發明名稱為"一種事務處理方法與裝置"的中國專利申請的優先權,其全部內容通過引用結 合在本申請中。

【技術領域】
[0002] 本發明涉及信息【技術領域】,特別涉及一種事務處理方法和裝置。

【背景技術】
[0003] 對象存儲系統(Object-Based Storage System)是一種分布式存儲系統,由多個 基於對象的存儲設備OSD (Object-based Storage Device)組成,0SD通過網絡互連,0SD也 可以稱為對象存儲系統中的節點。在對象存儲系統中,以對象(Object)作為最基本的被存 儲內容單元,對象中包含了數據以及數據的屬性信息。數據指的是對象中存儲的內容,例如 視頻文件,音樂文件等,數據的的屬性信息例如文件的大小,版本信息等。
[0004] 為了存儲的對象的可靠性,一般會將一個對象存儲到不同的0SD上,這樣,即使是 一部分0SD出現故障,也不影響對象的讀寫操作。這樣,就提升數據的可靠性。由於同一個 對象需要備份多份後存儲到不同節點,也就說對象是跨多個0SD節點來存儲,這些備份數 據也可以稱為副本。為了保證對象存儲的一致性要求,對象的寫操作需要通過事務來保證。 事務可以理解成是一組面向數據變更的操作,這組操中,除非所有操作都成功,否則不會對 數據進行變更。這樣就保證了同一個對象在不同0SD上的副本是相同的,避免了部分副本 進行了變更部分副本沒有變更。
[0005] 事務包含一系列操作集合,這些操作經常由多個節點並行執行,使分布在多個節 點的數據從一個一致狀態轉換到另一個一致狀態(在分布式對象存儲系統中,意味著多個 節點中的相同對象擁有相同的版本號),組成事務的一系列操作要麼全部執行,要麼全部不 執行,從而保持節點上數據狀態的一致性。在非存儲領域,也同樣存在需要使用事務的情 形。
[0006] 現有的兩階段提交協議(Two-phase Commitment Protocol,2PC),可以保證分布 式事務提交的原子性。它把分布式事務的某一個0SD指定為協調者(Coordinator),所有 其他0SD指定為參與者(Participants)。只有協調者才有掌握提交或撤銷事務的決定權, 並在做出提交或者撤銷事務的結論後,把結論發給參與者。如果結論是提交事務,就發送 Commit消息;如果結論是終止事務,就發送Abort消息。而各個參與者接收協調者的結論, 按照結論在其本地資料庫中執行操作;參與者還可以向協調者提出撤銷或提交子事務的意 向。
[0007] 在參與者等待協調者的結論時,如果協調者失效,參與者會長時間等待協調者的 結論。在等待期間,各個參與者的事務無法結束,也無法釋放佔用的資源,會造成了阻塞。為 了避免阻塞,現有技術提出了一種狀態確認技術,通過參與者查詢其他參與者的事務狀態, 確認自身是否需要執行事務,但是在這種方法中,參與者之間交互過程過多,造成系統性能 下降。
[0008] 即使協調者沒有失效,如何通過讀取參與者的信息來獲得事務的結論,也是一個 需要解決的問題。


【發明內容】

[0009] 本發明提供一種事務處理方法,可以通過讀取參與者的信息,獲得事務結論。
[0010] 第一方面,本發明實施例提供一種事務處理方法,應用於協調者,所述協調者和參 與者通信連接,事務操作的對象由多個子對象組成,其中,一個所述子對象位於所述協調者 中,其他所述子對象分別位於不同的所述參與者中,該方法包括:所述協調者向各個參與者 發送查詢消息,所述查詢消息中攜帶有事務ID、對象ID以及所述對象的變化信息,其中所 述事務ID用於標記所述事務,所述對象ID用於標記所述對象,所述變化信息與所述對象的 內容對應,不同所述變化信息的所述對象的內容不同;所述協調者接收各個參與者對所述 查詢消息的響應消息;所述協調者根據所述響應消息得出結論,所述協調者執行所述結論, 並將所述結論發送給所有所述參與者,所述結論包括下述至少一種:如果任意一個響應消 息中攜帶有第一信息,則結論為執行事務,其中,所述第一信息表示所述參與者不存在所述 事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所述對象在協調者中的變化 信息相同;或者,如果任意一個響應消息中攜帶有第二信息,則結論為終止事務,其中,所述 第二信息表示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變 化信息與所述對象在協調者的變化信息不同。
[0011] 在第一方面的第一種實現方式中,所述結論還包括下述至少一種:如果所有響應 消息中均攜帶有第三信息,則結論包括為執行事務,其中,所述第三信息表示所述參與者存 在所述事務ID ;如果任意一個響應消息中攜帶有第四信息,則結論為執行事務,其中,第四 信息表示所述參與者不存在所述事務ID,並且所述參與者不存在所述對象ID。
[0012] 第二方面,本發明實施例提供一種事務處理裝置,與參與者通信連接,事務操作的 對象由多個子對象組成,其中,一個所述子對象位於所述事務處理裝置中,其他所述子對象 分別位於不同的所述參與者中,該裝置包括:查詢模塊,用於向各個參與者發送查詢消息, 所述查詢消息中攜帶有事務ID、對象ID以及所述對象的變化信息,其中所述事務ID用於標 記所述事務,所述對象ID用於標記所述對象,所述變化信息與所述對象的內容對應,不同 所述變化信息的所述對象的內容不同;接收模塊,用於接收各個參與者對所述查詢消息的 響應消息;決策模塊,用於根據所述響應消息得出結論,並將所述結論發送給所有所述參與 者,所述結論包括下述至少一種:如果任意一個響應消息中攜帶有第一信息,則結論為執行 事務,其中,所述第一信息表示所述參與者存在所述事務ID,存在所述對象ID,所述對象在 參與者中的變化信息與所述對象在協調者中的變化信息相同;或者,如果任意一個響應消 息中攜帶有第二信息,則結論為終止事務,其中,所述第二信息表示所述參與者存在所述事 務ID,存在所述對象ID,所述對象在參與者中的變化信息與所述對象在協調者的變化信息 不同;執行模塊,用於執行所述決策模塊的結論。
[0013] 在第二方面的第一種實現方式中,所述結論還包括下述至少一種:如果所有響應 消息中均攜帶有第三信息,則結論包括為執行事務,其中,所述第三信息表示所述參與者存 在所述事務ID ;如果任意一個響應消息中攜帶有第四信息,則結論為執行事務,其中,第四 信息表示所述參與者不存在所述事務ID,並且所述參與者不存在所述對象ID。
[0014] 第三方面,本發明實施例提供一種事務處理方法,應用於協調者,所述協調者和參 與者通信連接,事務操作的對象由多個子對象組成,其中,一個所述子對象位於所述協調者 中,其他所述子對象分別位於不同的所述參與者中,該方法包括:所述協調者向各個參與者 發送查詢消息,所述查詢消息中攜帶有事務ID以及對象ID,其中所述事務ID用於標記所述 事務,所述對象ID用於標記所述對象,所述變化信息與所述對象的內容對應,不同所述變 化信息的所述對象的內容不同;所述協調者接收各個參與者對所述查詢消息的響應消息, 所述響應消息攜帶所述第五信息,所述第五消息表示所述參與者不存在所述事務ID,存在 所述對象ID,其中,所述第五信息中還攜帶有發出響應消息的參與者中所述對象變化信息; 所述協調者根據所述響應消息得出結論,所述協調者執行所述結論,並將所述結論發送給 所有所述參與者,所述結論包括下述至少一種:如果所述對象在參與者中的變化信息與所 述對象在協調者中的變化信息相同,則結論為執行事務;或者,如果所述對象在參與者中的 變化信息與所述對象在協調者中的變化信息不同,則結論為終止事務。
[0015] 在第三方面的第一種實現方式中,所述結論還包括下述至少一種:如果所有響應 消息中均攜帶有第三信息,則結論包括為執行事務,其中,所述第三信息表示所述參與者存 在所述事務ID ;如果任意一個響應消息中攜帶有第四信息,則結論為執行事務,其中,第四 信息表示所述參與者不存在所述事務ID,並且所述參與者不存在所述對象ID。
[0016] 第四方面,本發明實施例一種事務處理裝置,與參與者通信連接,事務操作的對象 由多個子對象組成,其中,一個所述子對象位於所述事務處理裝置中,其他所述子對象分別 位於不同的所述參與者中,該裝置包括:查詢模塊,用於向各個參與者發送查詢消息,所述 查詢消息中攜帶有所述查詢消息中攜帶有事務ID以及對象ID,其中所述事務ID用於標記 所述事務,所述對象ID用於標記所述對象;接收模塊,用於接收各個參與者對所述查詢消 息的響應消息,所述響應消息攜帶所述第五信息,所述表示所述參與者不存在所述事務ID, 存在所述對象ID,其中,所述第五信息中還攜帶有發出響應消息的參與者中所述對象變化 信息;決策模塊,根據所述響應消息得出結論,所述協調者執行所述結論,所述變化信息與 所述對象的內容對應,不同所述變化信息的所述對象的內容不同;並將所述結論發送給所 有所述參與者,所述結論包括下述至少一種:如果所述對象在參與者中的變化信息與所述 對象在協調者中的變化信息相同,則結論為執行事務;或者,如果所述對象在參與者中的變 化信息與所述對象在協調者中的變化信息不同,則結論為終止事務;執行模塊,用於執行所 述決策模塊的結論。
[0017] 在第四方面的第一種實現方式中,所述結論還包括下述至少一種:如果所有響應 消息中均攜帶有第三信息,則結論包括為執行事務,其中,所述第三信息表示所述參與者存 在所述事務ID ;如果任意一個響應消息中攜帶有第四信息,則結論為執行事務,其中,第四 信息表示所述參與者不存在所述事務ID,並且所述參與者不存在所述對象ID。
[0018] 上述各種方面中一種實現方式中,對象的變化信息可以是對象的版本號。
[0019] 應用本發明實施例提供的方法,通過檢測參與者的對象的變化信息,可以獲得事 務的結論,提高事務處理的效率。

【專利附圖】

【附圖說明】
[0020] 為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作簡單地介紹,下面描述中的附圖僅僅是本發明的一些實 施例,還可以根據這些附圖獲得其他的附圖。
[0021] 圖1是本發明實施例一種事務處理方法流程圖;
[0022] 圖2是本發明實施例一種事務處理方法流程圖;
[0023] 圖3是本發明實施例一種事務處理裝置示意圖;
[0024] 圖4是本發明實施例一種事務處理方法流程圖;
[0025] 圖5是本發明實施例一種協調者結構示意圖。

【具體實施方式】
[0026] 下面將結合本發明實施例中的附圖,對本發明的技術方案進行清楚、完整地描述, 顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的 實施例所獲得的所有其他實施例,都屬於本發明保護的範圍。
[0027] 事務是一系列操作的一個集合,事務可以包含多個操作,但是其包含的所有操作 都是不可分割的,要麼在執行所有操作,要麼不執行任何操作。可以把對N+M個節點的操作 作為一個事務,對任意一個或者多個節點進行操作,那麼其他節點也需要執行同樣類型的 操作。
[0028] 事務由協調者和參與者共同執行,協調者通過決策產生結論,參與者執行協調者 的結論,參與者還可以為協調者提供決策依據。
[0029] 兩階段提交協議中,系統一般包含兩類節點:一類為協調者(Coordinator),通常 一個事務中只有一個;另一類為參與者(Participants),可以有多個。每個節點都可以記 錄寫前日誌(Write-ahead Log)並持久性存儲,即使節點發生故障日誌也不會丟失。一種 可行的事務協商方法步驟如下:(1)協調者發送操作請求給各個參與者,操作請求可以是 同意執行事務或者不同意執行事務,這個操作請求用於與參與者進行協商,並不需要被參 與者執行;(2)參與者收到協調者操作請求後,返迴響應消息,響應消息中攜帶各個參與者 是否贊同協調者的操作請求,例如響應消息可以是同意協調者的操作請求、或者拒絕協調 者的操作請求,並且參與者進入等待階段,等待協調者的決策;(3)協調者匯總各個參與者 的響應消息進行決策,得出結論,並把結論發給各個參與者;(4)各個參與者收到結論後執 行這個結論,然後釋放事務佔用的資源。
[0030] 在上述事務的協商處理過程中,有可能發生意外情況,例如步驟(4)也可能是協 調者發生故障,導致發往一部分參與者的結論沒有成功發出,或者參與者自身故障沒有接 收到結論,或者其他原因導致部分參與者沒有收到結論。這些導致部分參與者沒有收到結 論的情況,我們統稱為協調者失效。協調者失效,導致部分參與者執行了事務的結論;另一 部分參與者沒有執行事務的結論。這些沒有收到結論的參與者會一直停留在等待階段,或 者稱為準備(Prepared)狀態,事務佔用的資源無法及時釋放,這種現象我們稱為阻塞。
[0031] 現有技術中,為了避免阻塞,參與者在收到協調者的決策結論後,不能釋放事務佔 用的資源。上述步驟(4)替換為(5)和(6),其中:(5)參與者執行結論後,還需要用日誌的 方式把自己收到的結論記錄下來,然後向其他參與者發送消息,以通知其他參與者自己已 經收到了結論;以及¢)當某個參與者收到其他所有參與者的結論後,證明沒有意外發生, 因此可以釋放事務佔用的資源,並且再次記錄操作日誌。
[0032] 現有技術雖然可以一定程度上解決阻塞的問題,但為了避免發生意外時系統阻 塞,不論是否發生意外,每次執行事務都要執行(5) (6)中的協商、記錄日誌的操作,對系統 資源造成了耗費。
[0033] 為了方便理解,本發明實施例以存儲系統,尤其是一種分布式對象存儲系統進行 舉例,但本發明不限於分布式存儲,也同樣適用於其他需要使用事務的【技術領域】。在存儲領 域中,事務可以是寫入數據、刪除數據或者修改數據。對象是事務操作的目標,例如一段數 據。這個數據可以用文件名、流水號、路徑、邏輯地址、物理地址進行標記。例如"新建"的 事務,可以把新數據寫入目標數據中;"刪除"事務可以刪除目標數據。
[0034] 需要說明的是,對象存儲是分布式存儲的一種,本發明實施例可以應用在對象存 儲中,也可以應用在其他分布式存儲中,本發明實施例中的對象並不用於將本發明實施例 限制在對象存儲的領域。在分布式存儲中,被存儲的數據都可以稱為對象,例如可以是文 件、文字、圖片、數據流以及計算機代碼中的某一種或者某一種的一部分。本發明實施例中, 對象是可以被事務所操作的數據。本發明實施例可以把一個數據拆分成多個子數據塊,每 個子數據塊存儲到一個存儲節點中。存儲節點可以是物理上分離的,也可以是邏輯上分離 的,存儲節點例如可以是存儲集群、存儲伺服器、硬碟、硬碟分區、文件夾等。
[0035] 本發明實施例中,對象的版本號可以標記對象是否發生變化,對象的版本號用在 組成對象的各個子對象中。例如創建或者修改了一個對象,對象會擁有一個新的版本號,對 象的子對象版本號也會相應更新。版本號可以標記對象中子對象的一致性。
[0036] 在其他實施例中,除了版本號,還可以用其他信息來標記對象是否發生變化,例如 對象的名稱、對象佔用存儲空間的大小、對象的屬性。可以記錄所述對象的內容是否發生改 變的信息,統稱為對象的變化信息,所述變化信息與所述對象的內容對應,不同變化信息的 所述對象的內容不同。任意子對象發生改變,則相當於整個對象的內容發生改變,相應的, 整個對象的變化信息都需要更新。本發明實施例中,為了方便說明,以對象的版本號為例介 紹對象的變化信息。
[0037] 將一個數據文件對象劃分為N個等長的業務數據塊,不足的部分可以使用0來補 齊。對這N個數據塊進行編碼計算生成Μ個校驗數據塊,將這個N+M個數據塊存放到N+M 個不同的節點上,其中,Ν和Μ都是自然數。任意Μ份數據故障,都可以利用剩餘的Ν份數 據計算出來發生故障的數據,這種數據恢復技術可以稱為糾錯碼(Erasure Code,EC)。我 們可以把N+M個數據組成的集合稱為對象,N+M個數據中的任意一個稱為子對象。
[0038] 這N+M個子對象是相互關聯的,任意一個進行了更新,餘下的所有子對象也需要 更新,以保持子對象之間的一致性。這N+M個子對象的一致性可以通過事務來保證。在把 對象拆分成N個子對象之前,可以為這個對象分配版本號,這個對象的版本號會記錄到他 生成的N+M個子對象中。因此通過對象的版本號來標識一致性,如果N+M個子對象是一致 的,則他們擁有相同的版本號;如果部分節點上的數據與其他節點上的數據的版本號不同, 則意味著數據不一致。
[0039] 造成版本號不同的原因有很多,例如某個節點出現了一段時間的故障,在故障期 間這個節點錯過了一些寫入子對象的操作,那麼這個發生過故障的節點上的子對象,就會 和其他沒有做過寫操做的節點上的子對象不一致,並且版本號不同。客戶端從分布式存儲 系統中讀取這些子對象時,可以發現這些不一致的子對象,可以利用N份版本一致的子對 象通過錯誤校驗的方式對不一致的子對象進行恢復,恢復出與這N份子對象一致的子對 象。
[0040] 應用本發明實施例提供的方法,當原協調者失效後,從參與者中重新選出新的協 調者,新的協調者通過檢測其他參與者的對象的變化信息,可以得出事務的結論。而現有技 術中,為了應對協調者失效時出現阻塞,不論協調者是否失效,都採用同樣的處理流程來獲 得事務的結論。而這個流程比本申請中事務沒有失效時,所採用的事務處理技術更加複雜。 因此本申請的總體效率更高,通過提供一種異常(例如協調者失效)處理機制,簡化了沒有 發生異常時,事務處理的流程。
[0041] 即使原協調者沒有失效,本申請方案也提出了一種新的協商機制,可以通過協商 得出事務結論。實施例一
[0042] 本發明實施例提供一種事務處理方法,應用於協調者,所述協調者和參與者通信 連接,事務操作的對象由多個子對象組成,其中,一個所述子對象位於所述協調者中,其他 所述子對象分別位於不同的所述參與者中,該方法包括:所述協調者向各個參與者發送查 詢消息,所述查詢消息中攜帶有事務ID、對象ID以及所述對象的版本號,其中所述事務ID 用於標記所述事務,所述對象ID用於標記所述對象;所述協調者接收各個參與者對所述查 詢消息的響應消息;所述協調者根據所述響應消息得出結論,所述協調者執行所述結論,並 將所述結論發送給所有所述參與者。
[0043] 所述結論包括下述至少一種:如果任意一個響應消息中攜帶有第一信息,則結論 為執行事務,其中,所述第一信息表示所述參與者不存在所述事務ID,存在所述對象ID,所 述對象在參與者中的版本號與所述對象在協調者中的版本號相同;或者,如果任意一個響 應消息中攜帶有第二信息,則結論為終止事務,其中,所述第二信息表示所述參與者不存在 所述事務ID,存在所述對象ID,所述對象在參與者中的版本號與所述對象在協調者的版本 號不同。
[0044] 所述結論還包括下述至少一種:如果所有響應消息中均攜帶有第三信息,則結論 包括為執行事務,其中,所述第三信息表示所述參與者存在所述事務ID ;如果任意一個響 應消息中攜帶有第四信息,則結論為執行事務,其中,第四信息表示所述參與者不存在所述 事務ID,並且所述參與者不存在所述對象ID。
[0045] 協調者可以同時具有檢測第一信息以及第二信息是否存在,並根據檢測結果得出 結論的功能。也可以同時具有檢測第一信息、第二信息、第三信息以及第四信息是否存在, 並根據檢測結果得出結論的功能。也可以僅具檢測第一信息、第二信息、第三信息以及第四 信息中任意一種是否存在,並根據檢測結果得出結論的功能。
[0046] 參見圖1是本發明實施例一種事務執行方法實施例的具體實現步驟。應用於協調 者和多個參與者組成的事務處理系統中,事務操作的對象由多個子對象組成,其中,協調者 中可以不存儲子對象,協調者對事務進行協調;所述子對象分別位於不同的所述參與者中。 參與者例如可以是0SD。事務的執行可以包括以下步驟。
[0047] 步驟11,協調者發送操作請求給各個參與者,操作請求中攜帶有事務ID、操作類 型、協調者中記錄的對象版本號Ver Si〇n_T。如果事務的操作類型是寫數據,操作請求中還 可以攜帶待寫數據。
[0048] 所述操作請求可以通知參與者準備為對象進行操作。事務ID標記一個事務,這個 被標記的事務與事務所操作的對象關聯。
[0049] 例如發送寫(Write)命令給N+M個參與者,寫命令中攜帶事務ID,操作類型,協調 者中記錄的對象版本號Ver Si〇n_T,操作類型例如是寫入、刪除。當操作類型是寫入時,還可 以在寫命令中攜帶準備寫入各個子對象的待寫數據。
[0050] 步驟12,協調者發送準備(Prepare)命令給各個參與者,Prepare命令中攜帶事務 ID、對象ID、協調者中記錄的對象的版本號,以及參與者清單。
[0051] 其中,對象ID是事務ID標記的事務所操作的對象的ID,對象的版本號是對象ID 所標記的對象的版本號,參與者清單中記錄了所有參與者。
[0052] 步驟13,參與者收到協調者的準備(Prepare)命令後,存儲參與者清單,並且為事 務分配資源。參與者分配完資源後,發送準備完成(Prepared)消息給協調者,參與者進入 Prepared階段。在其他實施例中,如果參與者沒有找到這個事務ID或者不符合執行事務的 條件,會發送消息告知協調者。
[0053] 步驟14,協調者進行決策,並發送決策獲得到的結論給各個參與者。例如,當所有 參與者都反饋Prepared消息時,決策結論是執行事務,並發送這個結論給各個參與者。當 結論是執行事務時,這個結論可以用Commit消息來表示。在其他情況下,結論也可能是終 止事務。
[0054] 步驟15,收到決策者的結論的參與者,執行結論。然後釋放事務佔用的資源。
[0055] 現有技術的非阻塞式事務處理方法和步驟11 一步驟14不同。例如,步驟(1)不會 發送本次事務對象ID,操作類型,版本號Version_T中的任意一個。
[0056] 應用本發明實施例,減少了節點之間的信息交互,並且減少了需要記錄的日誌。相 較於現有技術佔用系統資源更少,處理事務耗費的時間更短。
[0057] 下面以協調者發生故障為例,介紹一種當出現意外時一種事務處理實施例。需要 特別說明的是,由於協調者失效後,會從參與者中選出一個作為新的協調者,為了區分失效 的協調者和新選出的協調者,除非特別說明,在步驟21-步驟29及其他相關實施例中,把失 效的協調者稱為原協調者,原協調者在失效前可以正常工作;把新選出的協調者稱為協調 者。也就是說,步驟11-步驟15中的協調者,在步驟21-步驟29以及步驟37、38中,被稱 為原協調者。
[0058] 實施例二
[0059] 本發明實施例中,當協調者發生故障時,可以通過參與者之間查詢事務狀態和當 前版本號來保證數據的一致性。本發明實施例中,隨著版本的更新,版本號可以採用遞增規 律,也可以採用遞減的規律。在其他實施例中,可以使用例如字母等非數值作為版本號,只 要版本號具有唯一性,並且參與者和協調者約定好伴隨著版本的更新,版本號的變化規則 即可。為了方便介紹,後續以隨著版本的更新,版本號的數值遞增進行舉例。每次寫操作 導致對象版本遞增,並且新版本的內容對舊版本的內容有替代關係,一個新版本的子對象 可以與它的舊版本的子對象寫到同一個0SD中,並且覆蓋舊版本的子對象。事務操作可以 針對一個對象的所有子對象的操作,這些子對象分布在不同的0SD中。0SD可以包括控制 器和存儲介質,控制器用於管理,存儲介質用於存儲數據,例如硬碟(Hard Disk)、固態硬碟 (SSD)或者磁帶(Magnetic Tap)。0SD也可以是存儲伺服器或者個人電腦。
[0060] 步驟21,分布式存儲系統中的原協調者失效後,從參與者中選出一個作為新的協 調者。步驟21可以在步驟13或者步驟14之後執行,例如在執行完步驟14後,參與者在預 設的時間內沒有收到協調者的結論,開始執行步驟21。步驟21是可選步驟。
[0061] 新的協調者可以通過選舉產生,具體選舉辦法可以有多種,例如可以直接指定一 個參與者作為協調者,也可以選擇編號最小的參與者作為協調者,或者性能最強的參與者 作為協調者。需要說明的是,這個選舉出的協調者存儲有子對象,因此兼有參與者的部分功 能。除非特別說明,後續步驟中提到的協調者都是指新選出的協調者。
[0062] 本發明實施例中,參與者存儲有參與者清單,可以從參與者清單所記錄的參與者 中,選舉出參與者作為協調者,參與者清單中記錄有一個對象的所有子對象所在的0SD,本 步驟從這N+M個參與者中選出一個新的協調者。
[0063] 本發明實施例中,協調者失效是一種泛指,指參與者沒有收到協調者發送的結論, 例如可以是協調者無法正常工作、協調者與參與者之間通信中斷、或者參與者發生故障。故 障原因可能是軟體故障或者硬體故障,在其他實施例中,也可能沒有發生物理或者軟體故 障,而是由管理員指令選舉新的對協調者進行更改。
[0064] 步驟22,協調者向系統中的參與者發送查詢消息,查詢消息中記錄有需要查詢的 事務的:事務ID、對象ID以及對象的目標版本號Version_T。
[0065] 事務ID用於標記本次事務的操作,不同事務的事務ID不同,擁有相同事務ID的 所有操作是屬於同一個事務的操作。本發明實施例中,這些操作由N+M個0SD分別執行。對 象ID用於標記事務ID所操作的對象,例如可以用對象的文件名作為對象ID,對象的目標版 本號是所述對象ID所標記的對象的目標版本號。如果事務結論是執行事務,則參與者和協 調者上存儲的子對象的版本都躍遷到這個目標版本號,或者說對象的版本會躍遷到這個目 標版本號。除了文件名,也可以用其他方式標記對象ID,存儲系統可以使用2K字節的數據 量來記錄這個標記。查詢消息的接收者是參與者清單中,除協調者之外的所有參與者。 [0066] 參與者收到查詢消息後,可以查找自身是否有相同事務ID並且相同對象ID的事 務,如果有,則進一步判定參與者的子對象的當前版本號和所述目標版本號是否相同,用版 本的一致性來推理事務的結論。
[0067] 目標版本號可以來自原協調者,例如步驟11。
[0068] 步驟23,接收到查詢消息的參與者,根據查詢消息中的事務ID,確認本地是否存 在相同的事務。其具體確認方法是是查找本地的事務ID中,是否存在相同的事務ID。如果 存在,則進入步驟24 ;如果不存在,則進入步驟25。
[0069] 步驟24,接收到查詢消息的參與者,返回攜帶有"存在相同事務"信息的響應消息 給協調者,本實施例中,這個響應消息中攜帶的信息稱為第三信息。
[0070] 這個響應消息是在參與者查找到本地存在相同的事務ID後發出,如果在本地沒 有查找到具有相同事務ID,不發這個響應消息。響應消息可以告訴決策者,自己已經收到查 詢消息,並且成功應答。還可以告訴決策者,自己不知道決策結果,處於等待決策的階段。
[0071] 步驟25,接收到查詢消息的參與者,查找本地是否存在這個對象,也就是確認在所 有本地的對象ID中,是否存在與查詢消息中相同的對象ID。如果存在,則進入步驟27 ;如 果不存在,則進入步驟26。
[0072] 步驟26,接收到查詢消息的參與者返迴響應消息給協調者,告知協調者本地不存 在該事務也不存在該對象,這個信息可以用"不存在該對象"或者"不存在該事務、也不存在 該對象"表示,這個信息可以稱為第四信息。
[0073] 步驟27,接收到查詢消息的參與者,讀取對象ID所標記對象的版本號Version_C, 比較Version_T與Version_C是否相同,並把比較結果作為查詢消息的響應消息反饋給協 調者。
[0074] 以版本越新版本號的數值越大為例。⑴如果Version_C>Version_T,則返回給協 調者的信息中攜帶有"本參與者的對象的版本號比目標版本號更加新"的信息,該消息後文 簡稱為"版本更新"消息,⑵如果Ver Si〇n_C = VerSi〇n_T,則返回給協調者的信息中攜帶 有"本參與者的對象的版本號與目標版本號相同"的信息,該消息後文用"版本相同"表示; (3)如果Ver Si〇n_C〈Versi〇n_T ;則返回給協調者的信息中攜帶有""本參與者的對象的版 本比目標版本號更加日"的信息,該消息可以用"版本更舊"表示。
[0075] 在其他實施例中,由於在後續步驟中"版本更新"和"版本更舊"的處理方式相同, 因此這兩種情況可以合併,反饋"版本不同"的消息。也就是說,在本步驟中,可以不用比較 Version_C與Version_T之間的大小,比較版本是否相同即可,返回的響應消息是"版本相 同"或者"版本不同"。
[0076] 也就是說,本步驟中參與者發送的響應消息可能攜帶第一信息或者第二信息。第 一信息是"版本相同"的信息,信息內容也可以是"Equal";第一信息可以是參與者經過事務 ID判斷、對象ID判斷、版本號判斷後得出;第一信息可以表示所述參與者不存在所述事務 ID,存在所述對象ID,所述參與者中的對象版本號與所述目標版本號相同。第二信息是"版 本不同"的信息,信息內容也可以"Unequal",;第二信息可以是參與者經過事務ID判斷、對 象ID判斷、版本號判斷後得出;第二信息可以表示所述參與者不存在所述事務ID,存在所 述對象ID,所述對象在參與者中的對象版本號與所述目標版本號不同。
[0077] 步驟28,協調者接收到參與者的響應消息後,響應消息攜帶第一信息、第二信息、 第三信息、第四信息中的一個,根據響應消息的內容得出結論。這個結論需要協調者與參與 者執行。協調者執行結論,並發送結論給系統中的參與者,釋放事務在協調者上佔用的資 源。協調者和參與者共同執行這個結論,可以保證事務的一致性。
[0078] 結論是終止事務或者執行事務。如果是終止事務,則發出Abort的消息,如果結論 是執行事務,則發出Commit的消息。如果結論是終止事務,執行方式是終止事務。如果結 論是執行事務,則參與者對參與者上的子對象執行事務的一系列操作。
[0079] 需要說明的是,對一些實施例而言,參與者會分別進行事務ID、對象ID、版本號的 判斷,因此有可能發出第一信息、第二信息、第三信息、第四信息中的任意一個。但是在其他 實施例中,參與者只其中一項進行檢測,例如只檢測是不是存在第一信息,因此返回給協調 者的響應消息是第一信息,不包括第二信息、第三信息或者第四信息,相應的,協調者也不 對產生第二信息、第三信息或者第四信息的事務結論。在其他實施例中,也可以檢測第一信 息以及第二信息。
[0080] 表1介紹協調者收到參與者反饋的響應消息後,如何根據響應消息攜帶的信息決 策得到結論,結論是終止事務或者執行事務,終止事務可以用Abort命令表示,執行事務可 以用Commit命令表示。在決策時還可以考慮事務的操作類型,操作類型可以包括新建、修 改以及刪除,其中新建和修改都屬於寫(Write)。操作類型可以來自於原協調者,存儲在協 調者、參與者中,例如通過步驟11發送給協調者、參與者。協調者發給參與者的查詢消息中 也可以攜帶事務的操作類型。
[0081] 對操作類型是新建或者修改的事務而言,可以有以下規則中的一個或多個:(a) 如果任一參與者返回"版本相同"的信息,也就是第一信息,說明返回消息的參與者已經執 行了事務,按照事務"同進同退"的原則,則結論是執行事務;(b)如果任一參與者返回"版 本不同"的信息,也就是第二信息,說明已經有參與者進行了 Abort動作,按照事務"同進同 退"的原則,則結論是終止事務;(c)如果所有參與者返回存在該事務的信息,也就是第三信 息,說明協調者並沒有給出事務的決策結果,此時所有參與者都處於Prepared狀態,雖然 沒有參與者完成事務執行,但都已經做好了執行事務的準備,處於能夠正常執行事務的狀 態,則結論是執行事務;(d)如果任一參與者返回"沒有該事務且沒有該對象"的信息,也就 是第四信息,則結論是終止事務。
[0082] 對操作類型是刪除的事務而言,可以有以下結論中的一個或多個:(a)如果任一 參與者返回"版本不同"的信息,也就是第二信息,說明該參與者已經執行了 Abort動作,則 結論是終止事務;(b)如果所有參與者返回存在該事務的信息,也就是第三信息,說明該參 與者已經執行了刪除操作,說明協調者並沒有給出事務的決策結果,此時所有參與者都處 於Prepared狀態,雖然沒有參與者完成事務執行,但都已經做好了執行事務的準備,則結 論是執行事務;(c)如果任一參與者返回"沒有該事務且沒有該對象"的信息,也就是第四 信息,則結論是執行事務。當操作類型是刪除時,參與者不會反饋第一信息,因為如果版本 相同,對象和事務都會刪除,參與者無法查找到對象ID、事務ID,所以實際返回的是沒有這 個事務且沒有這個對象的信息,也就是第四信息。
[0083] 需要說明的是,操作不同時,對於某些信息的可能得出相同的結論。對這些操作信 息,可以不需要判斷操作類型,直接根據響應消息攜帶的信息得出結論。例如,只要任一參 與者返回的響應消息攜帶有"版本不同"的信息,事務的結論就可以確定為Abort,得出這個 Abort的結論,並不需要知道事務的操作類型。此外,如果任一參與者返回"版本相同"的信 息,也不需要判斷操作類型,就可以得出Commit的結論。
[0084] 協調者得出的結論示例參見表1。
[0085]

【權利要求】
1. 一種事務處理方法,應用於協調者,所述協調者和參與者通信連接,事務操作的對象 由多個子對象組成,其中,一個所述子對象位於所述協調者中,其他所述子對象分別位於不 同的所述參與者中,其特徵在於,該方法包括: 所述協調者向各個參與者發送查詢消息,所述查詢消息中攜帶有事務ID、對象ID以及 所述對象的變化信息,其中,所述事務ID用於標記所述事務,所述對象ID用於標記所述對 象,所述變化信息與所述對象的內容對應,不同所述變化信息的所述對象的內容不同; 所述協調者接收各個參與者對所述查詢消息的響應消息; 所述協調者根據所述響應消息得出結論,所述協調者執行所述結論,並將所述結論發 送給所述參與者,所述結論包括下述至少一種: 如果任意一個響應消息中攜帶有第一信息,則結論為執行事務,其中,所述第一信息表 示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所 述對象在協調者中的變化信息相同;或者 如果任意一個響應消息中攜帶有第二信息,則結論為終止事務,其中,所述第二信息表 示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所 述對象在協調者的變化信息不同。
2. 根據權利要求1所述的方法,其特徵在於: 所述協調者、參與者都是對象存儲設備OSD,所述事務是對所有所述子對象進行讀取、 對所有所述子對象刪除或者對所有所述子對象寫入。
3. 根據權利要求1所述的方法,其特徵在於,所述對象在參與者中的變化信息與所述 對象在協調者的變化信息不同,具體是: 所述對象在參與者中的版本比所述對象在協調者的版本新;或者 所述對象在參與者中的版本比所述對象在協調者的版本舊。
4. 根據權利要求1、2或3所述的方法,其特徵在於,所述協調者、所述參與者均與原協 調者通信連接,所述原協調者無子對象,所述方法之前進一步包括: 原協調者失效後,選擇原參與者中的一個作為所述協調者。
5. 根據權利要求4所述的方法,其特徵在於,原協調者失效之前,所述方法進一步包 括: 所述協調者接收原協調者發送所述事務ID、對象ID、對象目標變化信息以及參與者清 單。
6. 根據權利要求4所述的方法,其特徵在於,原協調者失效之前,所述方法進一步包 括: 所述原協調者發送操作請求給各個參與者,所述操作請求中攜帶有所述對象ID,操作 類型、協調者中記錄的對象變化信息以及參與者清單,所述參與者清單中記錄有所述原參 與者。 所述協調者發送準備命令給各個參與者,命令中攜帶事務ID、對象ID、協調者中記錄 的對象的變化信息,以及參與者清單,以使各個所述原參與者接收存儲參與者清單,並為事 務分配資源。
7. 根據權利要求1-6中任一所述的方法,其特徵在於: 所述對象的變化信息是對象的版本號。
8. -種事務處理裝置,與參與者通信連接,事務操作的對象由多個子對象組成,其中, 一個所述子對象位於所述事務處理裝置中,其他所述子對象分別位於不同的所述參與者 中,其特徵在於,該裝置包括: 查詢模塊,用於向各個參與者發送查詢消息,所述查詢消息中攜帶有事務ID、對象ID 以及所述對象的變化信息,其中所述事務ID用於標記所述事務,所述對象ID用於標記所述 對象,所述變化信息與所述對象的內容對應,不同所述變化信息的所述對象的內容不同; 接收模塊,用於接收各個參與者對所述查詢消息的響應消息; 決策模塊,用於根據所述響應消息得出結論,並將所述結論發送給所述參與者,所述結 論包括下述至少一種: 如果任意一個響應消息中攜帶有第一信息,則結論為執行事務,其中,所述第一信息表 示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所 述對象在協調者中的變化信息相同;或者 如果任意一個響應消息中攜帶有第二信息,則結論為終止事務,其中,所述第二信息表 示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所 述對象在協調者的變化信息不同; 執行模塊,用於執行所述決策模塊的結論。
9. 根據權利要求8所述的事務處理裝置,其特徵在於: 所述協調者、參與者都是對象存儲設備OSD,所述事務是對所有所述子對象進行讀取、 對所有所述子對象刪除或者對所有所述子對象寫入。
10. 根據權利要求8或9所述的事務處理裝置,其特徵在於,所述協調者、所述參與者均 與原協調者通信連接,所述原協調者無子對象,所述接收模塊進一步包括: 接收原協調發送的所述事務ID、對象ID、對象變化信息以及參與者清單給各個參與 者。
11. 根據權利要求8-10任一所述的事務處理裝置,其特徵在於: 所述對象的變化信息是對象的版本號。
12. -種協調者,和參與者通信連接,事務操作的對象由多個子對象組成,其中,一個所 述子對象位於所述協調者中,其他所述子對象分別位於不同的所述參與者中,所述協調者 包括處理器以及與處理器通信的存儲器,所述存儲器用於存儲程序指令,所述處理器用於 執行程序指令,該程序指令用於: 向各個參與者發送查詢消息,所述查詢消息中攜帶有事務ID、對象ID以及所述對象的 變化信息,其中所述事務ID用於標記所述事務,所述對象ID用於標記所述對象,所述變化 信息與所述對象的內容對應,不同所述變化信息的所述對象的內容不同; 接收各個參與者對所述查詢消息的響應消息; 根據所述響應消息得出結論,執行所述結論,並將所述結論發送給所述參與者,所述結 論包括下述至少一種: 如果任意一個響應消息中攜帶有第一信息,則結論為執行事務,其中,所述第一信息表 示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所 述對象在協調者中的變化信息相同;或者 如果任意一個響應消息中攜帶有第二信息,則結論為終止事務,其中,所述第二信息表 示所述參與者不存在所述事務ID,存在所述對象ID,所述對象在參與者中的變化信息與所 述對象在協調者的變化信息不同。
13. 根據權利要求12所述的協調者,其特徵在於: 所述協調者、參與者都是對象存儲設備OSD,所述事務是對所有所述子對象進行讀取、 對所有所述子對象刪除或者對所有所述子對象寫入。
14. 根據權利要求12所述的協調者,其特徵在於,所述程序指令還用於: 接收原協調者發送的所述事務ID、對象ID、對象變化信息以及參與者清單。
15. 根據權利要求12任一所述的協調者,其特徵在於: 所述對象的變化信息是對象的版本號。
16. -種事務處理方法,應用於協調者,所述協調者和參與者通信連接,事務操作的對 象由多個子對象組成,其中,一個所述子對象位於所述協調者中,其他所述子對象分別位於 不同的所述參與者中,其特徵在於,該方法包括: 所述協調者向各個參與者發送查詢消息,所述查詢消息中攜帶有事務ID以及對象ID, 其中所述事務ID用於標記所述事務,所述對象ID用於標記所述對象,所述變化信息與所述 對象的內容對應,不同所述變化信息的所述對象的內容不同; 所述協調者接收各個參與者對所述查詢消息的響應消息,所述響應消息攜帶所述第五 信息,所述第五消息表示所述參與者不存在所述事務ID,存在所述對象ID,其中,所述第五 信息中還攜帶有發出響應消息的參與者中所述對象變化信息; 所述協調者根據所述響應消息得出結論,所述協調者執行所述結論,並將所述結論發 送給所述參與者,所述結論包括下述至少一種: 如果所述對象在參與者中的變化信息與所述對象在協調者中的變化信息相同,則結論 為執行事務;或者 如果所述對象在參與者中的變化信息與所述對象在協調者中的變化信息不同,則結論 為終止事務。
17. 根據權利要求16所述的方法,其特徵在於: 所述協調者、參與者都是對象存儲設備OSD,所述事務是對所有所述子對象進行讀取、 對所有所述子對象刪除或者對所有所述子對象寫入。
18. 根據權利要求16所述的方法,其特徵在於,所述對象在參與者中的變化信息與所 述對象在協調者的變化信息不同,具體是: 所述對象在參與者中的版本比所述對象在協調者的版本新;或者 所述對象在參與者中的版本比所述對象在協調者的版本舊。
19. 根據權利要求16、17或18所述的方法,其特徵在於,所述協調者、所述參與者均與 原協調者通信連接,所述原協調者無子對象,所述方法之前進一步包括: 原協調者失效後,選擇原參與者中的一個作為所述協調者。
20. 根據權利要求19所述的方法,其特徵在於,原協調者失效之前,所述方法進一步包 括: 所述協調者接收原協調者發送的所述事務ID、對象ID、對象變化信息以及參與者清 單。
21. 根據權利要求20所述的方法,其特徵在於,原協調者失效之前,所述方法進一步包 括: 所述原協調者發送操作請求給各個參與者,所述操作請求中攜帶有所述對象ID,操作 類型、協調者中記錄的對象變化信息以及參與者清單,所述參與者清單中記錄有所述原參 與者。 所述協調者發送準備命令給各個參與者,命令中攜帶事務ID、對象ID、協調者中記錄 的對象的變化信息,以及參與者清單,以使各個所述原參與者接收存儲參與者清單,並為事 務分配資源。
22. 根據權利要求16-21任一所述的方法,其特徵在於: 所述對象的變化信息是對象的版本號。
23. -種事務處理裝置,與參與者通信連接,事務操作的對象由多個子對象組成,其中, 一個所述子對象位於所述事務處理裝置中,其他所述子對象分別位於不同的所述參與者 中,其特徵在於,該裝置包括: 查詢模塊,用於向各個參與者發送查詢消息,所述查詢消息中攜帶有所述查詢消息中 攜帶有事務ID以及對象ID,其中所述事務ID用於標記所述事務,所述對象ID用於標記 所述對象,所述變化信息與所述對象的內容對應,不同所述變化信息的所述對象的內容不 同; 接收模塊,用於接收各個參與者對所述查詢消息的響應消息,所述響應消息攜帶所述 第五信息,所述表示所述參與者不存在所述事務ID,存在所述對象ID,其中,所述第五信息 中還攜帶有發出響應消息的參與者中所述對象變化信息; 決策模塊,根據所述響應消息得出結論,所述協調者執行所述結論,並將所述結論發送 給所述參與者,所述結論包括下述至少一種: 如果所述對象在參與者中的變化信息與所述對象在協調者中的變化信息相同,則結論 為執行事務;或者 如果所述對象在參與者中的變化信息與所述對象在協調者中的變化信息不同,則結論 為終止事務; 執行模塊,用於執行所述決策模塊的結論。
24. 根據權利要求23所述的事務處理裝置,其特徵在於: 所述協調者、參與者都是對象存儲設備OSD,所述事務是對所有所述子對象進行讀取、 對所有所述子對象刪除或者對所有所述子對象寫入。
25. 根據權利要求23或24所述的事務處理裝置,其特徵在於,所述協調者、所述參與者 均與原協調者通信連接,所述原協調者無子對象,所述接收模塊進一步用於: 接收原協調發送的所述事務ID、對象ID、對象變化信息以及參與者清單給各個參與 者。
26. 根據權利要求23-25任一所述的事務處理裝置,其特徵在於: 所述對象的變化信息是對象的版本號。
27. -種協調者,和參與者通信連接,事務操作的對象由多個子對象組成,其中,一個所 述子對象位於所述協調者中,其他所述子對象分別位於不同的所述參與者中,所述協調者 包括處理器以及與處理器通信的存儲器,所述存儲器用於存儲程序指令,所述處理器用於 執行程序指令,該程序指令用於: 向各個參與者發送查詢消息,所述查詢消息中攜帶有事務ID以及對象ID,其中所述事 務ID用於標記所述事務,所述對象ID用於標記所述對象,所述變化信息與所述對象的內容 對應,不同所述變化信息的所述對象的內容不同; 接收各個參與者對所述查詢消息的響應消息,所述響應消息攜帶所述第五信息,所述 表示所述參與者不存在所述事務ID,存在所述對象ID,其中,所述第五信息中還攜帶有發 出響應消息的參與者中所述對象變化信息; 根據所述響應消息得出結論,所述協調者執行所述結論,並將所述結論發送給所述參 與者,所述結論包括下述至少一種: 如果所述對象在參與者中的變化信息與所述對象在協調者中的變化信息相同,則結論 為執行事務;或者 如果所述對象在參與者中的變化信息與所述對象在協調者中的變化信息不同,則結論 為終止事務。
28. 根據權利要求27所述的協調者,其特徵在於: 所述協調者、參與者都是對象存儲設備OSD,所述事務是對所有所述子對象進行讀取、 對所有所述子對象刪除或者對所有所述子對象寫入。
29. 根據權利要求27所述的協調者,其特徵在於,所述程序指令還用於: 接收原協調者發送的所述事務ID、對象ID、對象變化信息以及參與者清單。
30. 根據權利要求27任一所述的協調者,其特徵在於: 所述對象的變化信息是對象的版本號。
【文檔編號】G06F9/44GK104220982SQ201380002529
【公開日】2014年12月17日 申請日期:2013年11月5日 優先權日:2013年10月29日
【發明者】方新 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀