HDFS ErasureCode方案對比

2022-07-09 20:42:12 字數 692 閱讀 3100

hdfs目前儲存檔案的方案是將乙個檔案切分成多個block進行儲存,通常乙個block 64mb或者128mb,每個block有多個副本(replica),每個副本作為乙個整體儲存在乙個datanode上,這種方法在增加可用性的同時也增加了儲存成本。erasurecode通過將m個資料block進行編碼(reed-solomon,lrc),生成k個校驗(parity)block, 這m+k個block組成乙個block group,可以同時容忍k個block失敗,任何k個block都可以由其他m個block算出來. overhead是k/m.

以m=6,k=3為例,使用ec之前,假設block副本數為3,那麼6個block一共18個副本,overhead是200%,使用ec後,9個block,每個block只需乙個副本,一共9個副本,其中6個資料副本,3個校驗副本,overhead是3/6=50%.

讀操作,丟失block時,只需要讀9個datanode中任意6個datanode即可修復。修復過程需要讀多個datanode,耗費網路頻寬和磁碟io。xorbas在facebook的hdfs-raid基礎上增加了lrc實現,lrc修復資料需要讀的分片數更少,因此比reed-solomon修復資料更快,但是在儲存成本上高14%.

ecclient模組封裝了以上這些讀寫操作。

離線ec

hdfs-raid

erasure coding support inside hdfs

自動快取 對快取策略的補充方案

快取的目的都是為了減少跟資料庫的直接互動,提高可用性。常用的方法如,對熱點資料快取 對部分資料預載入 對頻繁操作的資料放到快取中操作等等。在開發的過程中,我嘗試了一種自動處理快取的方法,記錄下,以供參考。在業務 和orm之間,引入乙個模組 sasql 將對於資料庫的操作,分為單行操作 list操作,...

解決方案 解決方案 點膠機對針定位感測器解決方案

感測器的定位技術正在日新月異地變化著,而針對點膠機的定位解決方案也是越來越精準。點膠機大多運作於高強度的生產車間裡,在操作點膠機工作時需要注重於點膠針頭定位,針頭定位對精度影響十分明顯。本次介紹一下高精度的感測器解決方案。一般來說自動點膠機都會配備有點膠針頭定位功能,這種針頭定位方式又叫做對針,目前...

Jcs對大資料量的處理方案

jcs的原理是利用快取獲取使用者所需要的資料,減少對資料庫的訪問,從而提高儲存效率。實現該方案的需要解決兩個問題 1.快取的資料從哪來 2.快取的資料的有效性 1.快取的資料從哪來 從根源來講,快取的資料應當在查詢過資料後放入cache,通常使用者在進行業務流程時,查詢資料 放入快取。但是這樣存在乙...