[發明專利]分布式存儲系統及其時間戳的實現方法有效
| 申請號: | 201110151514.3 | 申請日: | 2011-06-07 |
| 公開(公告)號: | CN102821114B | 公開(公告)日: | 2017-02-08 |
| 發明(設計)人: | 胡歡歡;郭斌;陳典強;韓銀俊 | 申請(專利權)人: | 南京中興新軟件有限責任公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 北京安信方達知識產權代理有限公司11262 | 代理人: | 龍洪 |
| 地址: | 210012 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 分布式 存儲系統 及其 時間 實現 方法 | ||
技術領域
本發明涉及云計算技術領域,尤其涉及一種分布式存儲系統及其時間戳的實現方法。
背景技術
云計算(Cloud?Computing)是網格計算(Grid?Computing)、分布式計算(Distributed?Computing)、并行計算(Parallel?Computing)、效用計算(Utility?Computing)網絡存儲(Network?Storage?Technologies)、虛擬化(Virtualization)、負載均衡(Load?Balance)等傳統計算機技術和網絡技術發展融合的產物。它旨在通過網絡把多個成本相對較低的計算實體整合成一個具有強大計算能力的系統。分布式存儲系統是云計算范疇中的一個領域,其作用是提供海量數據的分布式存儲服務以及高速讀寫訪問的能力。
在分布式存儲系統中,時間戳的實現是比較難以解決的關鍵問題。分布式存儲系統是由若干服務器節點和客戶端互相連接構成的;服務器節點負責數據的存儲,客戶端可以對服務器做數據的寫入、讀取、更新、刪除等操作。
一般來說寫入的數據不可能只保存在單個服務器節點上,而是在多臺服務器節點上保存同一個數據的副本,互為備份。當網絡偶然瞬間故障或者硬件、軟件故障,或者用戶對同一個數據頻繁、交叉地進行不同的操作,例如,更新、刪除等,則系統內不同服務器節點上的數據副本會有不同的值。當用戶再次獲取該數據時,會發生取得的數據不是其最后更新后的值,背離了用戶的需求。
為了保障在分布式存儲系統中,用戶取得的數據是其最后更新的數據,即保障分布式存儲系統中數據的一致性,每個數據在實際存儲時,還要加上一些屬性信息。例如,時間戳。這樣用戶在獲取數據的時候,可以根據時間戳的大小,返回一個最大時間戳的數據給用戶。所謂分布式存儲系統中的時間戳是指系統中每個服務器節點都維持的一個反應該分布式存儲系統存活時間的數據。在任一時刻,系統中每個服務器節點的時間戳必須相同,而且隨著實際時間的增加,逐步遞增。
在現有的分布式存儲系統中,時間戳的實現有以下幾種方法:
方法一:在系統中選定一個服務器節點作為時間服務器,由該時間服務器周期性地向系統中的其它服務器節點廣播其維護的時間戳,其它服務器節點收到攜帶有時間戳的數據包后,更新其本地時間戳。這種方法是一個中心化的解決方法,其可靠性依賴于系統中的時間服務器的可靠性,如果時間服務器宕機,則影響到整個系統的時間戳;而且,普通服務器節點中更新的時間戳,是沒有計算數據包在網絡中傳輸的時間的,也就是說,普通服務器節點的時間戳與時間服務器的時間戳之間存在微小的時差。另外,這種方法一旦時間服務器發送故障,則整個系統將無法正確更新時間戳。
方法二:由系統中的每個服務器節點從Internet中的網絡時間協議(Network?Time?Protocol,NTP)時間服務器獲取權威的時間作為本節點的本地時間戳。這種方法依賴于外界的服務,一般很少采用。
發明內容
本發明的目的是,提供一種分布式存儲系統及其時間戳的實現方法,以解決現有基于中心化的實現方法可靠性不高的問題。
本發明提供了一種分布式存儲系統時間戳的實現方法,包括以下步驟:
上述系統的每個服務器節點均維護一個本地時間戳;
上述每個服務器節點周期性向系統中的其他服務器節點發送攜帶有本地維護的當前時間戳的數據包;
上述每個服務器節點根據收到的數據包,更新本地時間戳。
優選地,上述每個服務器節點的本地維護的時間戳的初始值為0,從上述系統第一次運行起,每秒自增1。
優選地,上述每個服務器節點根據收到的數據包,更新本地時間戳步驟具體包括:
解析收到的數據包,得到時間戳和校驗位;
判斷上述校驗位是否正確,若不正確,則不更新本地時間戳,并丟棄上述時間戳;若正確,則
保存上述時間戳;
判斷上述時間戳的值與上一次保存的時間戳的值之差是否在預設的校驗閾值范圍內,若上述差值不在上述校驗閾值范圍內,則不更新本地時間戳;若上述差值在上述校驗閾值范圍內,則
判斷上述時間戳的值是否大于本地當前時間戳的值,若是,則用上述時間戳更新本地時間戳;否則,不更新本地時間戳。
優選地,上述系統中的服務器節點每隔1秒,將本地時間戳持久化到本地存儲的文件中。
優選地,若上述系統異常終止后又恢復正常運行,則上述每個服務器節點的本地時間戳從其終止前持久化的時間戳處繼續計時。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京中興新軟件有限責任公司,未經南京中興新軟件有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110151514.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:可拆裝絕緣隔板的斷路器
- 下一篇:磁保持繼電器





