新四季網

一種基於元數據保存存儲信息及統計管理數據的方法

2023-05-30 10:16:31

一種基於元數據保存存儲信息及統計管理數據的方法【專利摘要】本發明公開了一種基於元數據保存存儲信息及統計管理數據的方法,其特徵在於,具體包括步驟如下:步驟一、客戶端向存儲伺服器發送保存數據請求;步驟二、用戶保存數據的請求到達伺服器後,伺服器將數據保存在數據倉儲中,客戶端根據待發送數據量大小將數據拆分為多個數據塊,逐個發送到存儲伺服器;步驟三、伺服器從數據中抽取出需要的統計信息與其基本信息組成元數據,並把元數據保存在元數據倉儲中;步驟四、伺服器返回保存數據成功信息到客戶端。本專利通過對元數據中基本信息的處理,實現對存儲數據的統計管理,並達到簡化操作減少資源浪費的目標。【專利說明】一種基於元數據保存存儲信息及統計管理數據的方法【
技術領域:
】[0001]本發明屬於存儲【
技術領域:
】,具體涉及一種基於元數據保存存儲信息及統計管理數據的方法。[0002]【
背景技術:
】[0003]隨著現代IT系統的發展及公司業務的擴展,數據的規模越來越龐大,並且增速也越來越快,因此傳統的資料庫系統遇到了前所未有的挑戰,並在以後有可能成為系統發展及業務擴展的瓶頸。目前,為了應對海量數據的存儲和管理及控制、減少存儲成本,已經有很多公司和組織開始使用數據存儲。因此,數據存儲在業界得到了越來越廣泛的使用。[0004]在使用數據存儲的時候,如果只提供單純的數據存儲和讀取功能,那麼對於所存儲數據的統計和查詢功能(各種類型數據所佔空間容量、各種類型數據增加趨勢等功能需求),就需要依次取出所有數據,進行分類計算,然後進行數據統計。這樣每次都要把所有數據取出並進行計算,如果有2個TB的數據,那麼每次計算都要遍歷這2個TB的數據,並對這些數據進行計算,將會導致算法複雜度的提升及系統資源浪費。[0005]於是人們提出了元數據(描述數據及其環境的數據)的概念,在保存數據的同時統計好該數據的相關信息,並放入元數據中,當需要統計信息時,只需要取出這些元數據進行計算而不是整個數據進行計算,這樣就簡化了算法並節約成本。這時候元數據應該放在那裡?如何放?就成了需要解決的問題。[0006]在數據存儲領域,專利「一種適用於雲存儲系統的元數據分布式存儲方法」(申請號:201210236195.0)提出的方法主要為:將數據和元數據組成混合數據塊保存在數據存儲上,使得元數據及數據塊混合存儲,並具備與數據塊有相同的冗餘度。[0007]該方法存在如下問題:1、當需要對元數據進行擴展時,由於元數據借用了數據塊的地址,附加在數據塊後面,需要修改數據和元數據的混合數據塊,如果修改錯誤,則會造成整條數據不可用;2、不支持大數據(數據量很大,需要拆分為多個數據塊),即一條記錄多個數據塊的情況。[0008]【
發明內容】[0009]為了解決存儲領域中對於元數據的存儲所帶來的以上兩個問題,本專利提供了一種基於元數據保存存儲信息及統計管理數據的方法,通過對元數據中基本信息的處理,實現對存儲數據的統計管理,並達到簡化操作減少資源浪費的目標。[0010]本專利提供的具體技術方案如下:一種基於元數據保存存儲信息及統計管理數據的方法,包括具體步驟如下:步驟1:客戶端向存儲伺服器發送保存數據請求;步驟2:用戶保存數據的請求到達伺服器後,伺服器將數據保存在數據倉儲中。[0011]如果待發送數據量很大,客戶端會將大數據拆分為多個數據塊,逐個發送到存儲伺服器,其中,此處設置了4種數據塊大小的標準:1M、2M、3M、5M,根據傳遞數據的不同,選擇相應的數據塊大小的標準。[0012]步驟3:伺服器從數據中抽取出需要的統計信息(如:數據大小)與其基本信息(如:用戶輸入的key、上傳圖片的應用的database、圖片所在的表標識等)組成元數據,並把元數據保存在元數據倉儲中。元數據組成部分包括:partiton、database、table、key、blocklndex、lastblockflag、dataSize。步驟2與步驟3屬於一個原子操作;其中,在本處理過程中包含2部分數據操作:I)為每個數據塊創建一個塊元數據(blockmeta)信息,保存在元數據倉儲中。[0013]2)為每條數據記錄創建一個記錄元數據(recordmeta),當上傳新的該數據的數據塊時,更新recordmeta信息中保存的相關信息。[0014]保存時,以元數據字符串保存為B樹結構。在查找時,以前面的數據基本信息作為查找索引,可以方便快捷的找出需要的數據。其中,B樹結構是一種適用於外查找的樹,它是一種平衡的多叉樹,稱為B樹(或B-樹、B_樹)。[0015]步驟4:伺服器返回保存數據成功信息到客戶端。[0016]當用戶需要進行數據統計時,不再需要遍歷保存在伺服器的數據塊而是遍曆元數據倉儲就可以解決問題;具體過程如下:步驟1:遍曆元數據存儲的B樹結構,取出元數據對應的數據統計信息,進行統計計算,並返回計算的統計結果步驟2:整個集群所有伺服器的統計結果返回後,統一計算,進行分類統計,得到最終結果。[0017]當需要擴展數據塊相關的基本信息或統計信息時,可以不用修改數據塊而是修改對應的元數據,這樣就減小了修改錯誤對於原數據的影響。具體過程如下:步驟1:當需要修改數據塊相關的基本信息,比如添加一個保存時間,以方便以後按時間統計數據,並且可以得到某一類數據的增長趨勢等需求時,修改每個數據對應的元數據即可。修改元數據的組成,在原來組成的基礎上,即元數據包含信息:partiton、database、table、key、blocklndex、lastblockflag、dataSize中,添加一個保存時間time,如修改兀數據為partiton、database、table、key、time、blocklndex、lastblockflag、dataSize。[0018]步驟2:當需要查看添加時間時,只需要查找該元數據即可。由於修改不涉及到數據塊的更改,所以不會影響該數據的正確性和有效性。[0019]刪除操作在一個原子操作下刪除數據的同時刪除其元數據。具體過程如下:步驟1:當用戶發起刪除數據操作時,請求到達伺服器。[0020]步驟2:伺服器在一個事務中同時做刪除數據和其元數據操作。如果操作都成功則數據及元數據一起刪除,如果其中一個操作失敗,則事務回滾,刪除操作撤銷。[0021]通過對元數據的統計,可以得知數據切分為多個數據塊以及數據是否完備。[0022]本發明與現有技術相比,其顯著優點:1)通過遍歷某個數據伺服器的元數據database,可以很方便的取得該伺服器的存儲統計信息,減少了系統複雜度及資源浪費;2)當需要對數據塊的基本信息修改時,只需要修改對應的元數據就可以達到目標,減少了可能出錯的概率;3)使用B樹形結構,在數據遷移時,如果需要把某個分片遷移到集群中另一個存儲上時,可以直接將該分片的子樹整個遷移過去,達到方便數據遷移的目的;4)不需要專門的元數據伺服器,因此運行可靠並且降低了伺服器成本;5)元數據保存在數據集群中,方便以後的擴展。[0023]【專利附圖】【附圖說明】[0024]圖1為本發明數據塊和塊元數據(blockmeta)在同一數據伺服器上的存儲策略。[0025]圖2為本發明數據和記錄元數據(recordmeta)在同一數據伺服器上的存儲策略。[0026]圖3為本發明元數據寫入過程流程圖。[0027]圖4為本發明元數據統計讀取過程圖。[0028]圖5為本發明數據塊存儲結構圖。[0029]圖6為本發明元數據存儲結構圖。[0030]【具體實施方式】[0031]為了使本發明的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對本發明進行詳細描述。[0032]術語解釋數據倉儲:依照某種數據模型,組織並存放數據的集合。[0033]元數據倉儲:依照某種數據模型,組織並存放元數據的集合。[0034]原子操作:指的是這個操作所處層的更高層不能發現其內部實現與結構。其不會被線程調度機制打斷的操作;這種操作一旦開始,就一直運行到結束,中間不會有任何contextswitch(切換到另一個線程)。[0035]如圖1所示,為本發明的數據塊存儲策略。數據塊及其元數據存儲在一個數據伺服器的不同倉儲上,使得元數據與數據塊有著相同的冗餘度與擴展性。[0036]如圖2所示,為本發明的數據存儲策略。為每條用戶上傳的完整數據記錄單獨創建保存一個元數據(recordmeta),用於記錄該數據記錄的統計信息。一個完整的數據記錄保存在一個存儲伺服器上,當數據量很大時,可以認為存儲集群數據是均勻分布的。[0037]如圖1與2所示,一個數據記錄對應一個數據記錄元數據(recordmeta),—個數據記錄可能會拆分為多個數據塊,每個數據塊對應一個塊元數據(blockmeta);數據保存在數據倉儲中,元數據(包括記錄元數據和塊元數據)保存在元數據倉儲中。[0038]圖3示出了本發明實例提供的數據存儲方法實現流程,具體如下:步驟1:假設客戶端上傳項目projectl所屬表tablel的數據,key為keyl。客戶端向存儲伺服器發送保存數據請求。[0039]如果數據較大,則拆分為多個數據塊,逐個發送;其中,此處設置了4種數據塊大小的標準:1M、2M、3M、5M,根據傳遞數據的不同,選擇相應的數據塊大小的標準,例如發送圖標數據時,因為圖標數據普遍較小,就選擇IM的數據塊的標準;如果發送flash格式的文件時,因為這類文件一般來說比較大,那麼可以適當選擇3M的數據塊標準;如果發送視頻文件時,而視頻文件的大小比flash文件一般更大,就適當選擇5M的數據塊標準。[0040]步驟2:用戶保存數據的請求到達伺服器後,伺服器將數據以B樹的存儲結構保存在數據倉儲中,方便以後的數據查找;步驟3:伺服器從數據塊中抽取出需要的統計信息與其基本信息組成元數據為partiton、database、table、key、time、blocklndex、lastblockflag、dataSize,並把兀數據也以B樹的存儲結構保存在元數據倉儲中,步驟2與步驟3屬於一個原子操作。[0041]其中,在本處理過程中包含兩部分數據操作:I)為每個數據塊創建一個塊元數據(blockmeta)信息(具體包含:1、元數據的基本信息;2、數據dataSize),保存在元數據倉儲中,具體參見圖1。[0042]2)為每條數據創建一個記錄元數據(recordmeta)(具體包含:1、元數據基本信息;2元數據對應數據的統計信息),當上傳新的該數據的數據塊時,更新recordmeta信息中保存的相關信息,具體參見圖2。[0043]步驟4:伺服器返回保存的結果到客戶端。[0044]圖4示出了本發明統計一個數據伺服器的存儲信息流程圖。其流程包括以下步驟:步驟1:假設用戶需要統計每個項目的存儲數據量,向存儲伺服器發送統計請求。[0045]步驟2:伺服器接受到請求後,如果元數據不在內存,則將元數據放入內存,對內存中的元數據遍歷其B樹結構。[0046]步驟3:按項目進行分類,從而方便對每個項目的中包含的元數據進行統計處理,把元數據中保存的存儲量數據進行歸類計算。[0047]步驟4:計算完統計信息後,返回結果給客戶端。[0048]如圖5所示,為本發明的數據塊存儲結構。數據塊按照B樹存儲結構保存在數據倉儲中,在數據查找時,可以根據保存數據的信息按順序對B樹進行遍歷,比如通過key計算出數據屬於哪個分片,找到對應分片的partiton節點,然後繼續通過數據屬於哪個project、table、key找到對應葉子節點的數據Block,從而很容易的到需要的數據。[0049]按圖5所示的樹形結構,在數據遷移時,如果需要把某個分片遷移到集群中另一個存儲上時,可以直接將該partition子樹整個遷移過去,達到方便數據遷移的目的。[0050]如圖6所示,為本發明的元數據存儲結構。元數據按照B樹存儲結構保存在元數據倉儲中。在數據查找時,可以通過B樹很容易的找到需要的元數據。查找同圖5所述,當找到對應的元數據信息後,可以通過計算所找到的元數據相關信息,例如統計數據量大小、存儲時間等,得到需要的統計信息,比如計算keyl數據的總數據量,可以將keyl下所有葉子節點的元數據中的數據量信息進行累加,從而得到該keyl總數據量。[0051]如果不使用元數據,那麼每次都需要取出該數據的所有的數據進行計算,這樣將浪費大量的系統資源。[0052]以上所述僅為本發明專利的一種實施例而已,並不用以限制本發明專利,凡在本發明專利的精神和原則之內所作的任何修改、等同替換和改進等,均以包含在本發明專利的保護範圍之內。【權利要求】1.一種基於元數據保存存儲信息及統計管理數據的方法,其特徵在於,具體包括步驟如下:步驟一、客戶端向存儲伺服器發送保存數據請求;步驟二、用戶保存數據的請求到達伺服器後,伺服器將數據保存在數據倉儲中,客戶端根據待發送數據量大小將數據拆分為多個數據塊,逐個發送到存儲伺服器;步驟三、伺服器從數據中抽取出需要的統計信息與其基本信息組成元數據,並把元數據保存在元數據倉儲中;步驟四、伺服器返回保存數據成功信息到客戶端。2.根據權利要求1所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於:步驟三中,元數據組成部分包括:partiton、database、table、key、blocklndex、lastblockflag、dataSize。3.根據權利要求1所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於:步驟二與步驟三屬於一個原子操作。4.根據權利要求1所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於,步驟三的處理過程中包含兩部分數據操作:1)為每個數據塊創建一個塊元數據(blockmeta)信息,保存在元數據倉儲中;2)為每條數據記錄創建一個記錄元數據(recordmeta),當上傳新的該數據的數據塊時,更新記錄元數據(recordmeta)信息中保存的相關信息;保存時,以元數據字符串保存為B樹結構;查找時,以前面的數據基本信息作為查找索引,能夠方便快捷的找出需要的數據。5.根據權利要求1至4之一所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於,當用戶需要進行數據統計時,不需要遍歷保存在伺服器的數據塊而是僅需遍曆元數據倉儲即可,具體步驟為:步驟1:遍曆元數據存儲的B樹結構,取出元數據對應的數據統計信息,進行統計計算,並返回計算的統計結果;步驟2:整個集群所有伺服器的統計結果返回後,統一計算,進行分類統計,得到最終結果。6.根據權利要求1至4之一所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於,當需要擴展數據塊相關的基本信息或統計信息時,不用修改數據塊而是僅修改對應的元數據,具體步驟為:步驟1:當需要修改數據塊相關的基本信息,比如添加一個保存時間,以方便以後按時間統計數據,並且可以得到某一類數據的增長趨勢等需求時,修改每個數據對應的元數據即可;修改元數據的組成,在原來組成的基礎上,即元數據包含信息:partiton、database、table、key、blocklndex、lastblockflag、dataSize中,添加一個保存時間time,如修改兀數據為partiton、database、table、key、time、blocklndex、lastblockflag、dataSize;步驟2:當需要查看添加時間時,只需要查找該元數據即可;由於修改不涉及到數據塊的更改,所以不會影響該數據的正確性和有效性。7.根據權利要求1至4之一所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於,刪除操作在一個原子操作下刪除數據的同時刪除其元數據,具體步驟為:步驟1:當用戶發起刪除數據操作時,請求到達伺服器;步驟2:伺服器在一個事務中同時做刪除數據和其元數據操作;如果操作都成功則數據及元數據一起刪除,如果其中一個操作失敗,則事務回滾,刪除操作撤銷。8.根據權利要求5所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於:通過對元數據的統計,能夠得知數據切分為多個數據塊以及數據是否完備。9.根據權利要求1所述的基於元數據保存存儲信息及統計管理數據的方法,其特徵在於:步驟五、用戶需要統計每個項目的存儲數據量,向存儲伺服器發送統計請求;步驟六、伺服器接受到請求後,如果元數據不在內存,則將元數據放入內存,對內存中的元數據遍歷其B樹結構;步驟七、按項目進行分類,從而方便對每個項目的中包含的元數據進行統計處理,把元數據中保存的存儲量數據進行歸類計算;步驟八、計算完統計信息後,返回結果給客戶端。【文檔編號】G06F17/30GK103795811SQ201410078821【公開日】2014年5月14日申請日期:2014年3月6日優先權日:2014年3月6日【發明者】何學勇,梁峰,許諾申請人:焦點科技股份有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀