hdfs是主從架構,適合儲存大檔案
example1 .1個檔案是130m,hdfs預設塊的大小是128m,問這個檔案分為幾個快,實際儲存容量?
answer:分為2個塊,128m+2m,實際儲存還是130m
example2.
dfs.blocksize 134217728=128m
1m=1024kb 1kb=1024位元組
hdfs小檔案儲存:2m 3m 5m 每乙個小檔案都要佔據乙個快,(檔案合併實際生產中需要)
example3:
hdfs的namenode類似windows系統中的檔案目錄名
一輛車128000ml的空間
乙個瓶子 是128ml的空間
每個瓶子只有3-5ml的水
儲存的實際內容:1000*3-5=3000~5000ml
瓶子有名稱,1000個瓶子*檔名稱位元組數
1000個瓶子*30個位元組=30000位元組
擴充套件:乙個中文漢字=2個位元組,繁體字=3個位元組,
小檔案過多的話對於namenode的壓力相當大
對於1個g的nn節點來說
namenode能夠維護多少萬個小檔名稱:1000*1024*1024 / 30=3495 2533.333個小檔案的檔名稱
我們最大維護3495 2533個小檔案 ,每個小檔案是1m,每個小檔案都會佔據block塊,
假設3495 2533m檔案合併成1個檔案?
34952533 / 128 = 273066 個塊
也就是只有乙個名稱
如何理解
1個檔名稱是30個位元組 –>nn 假設只有1000m空間
檔案大小是130m –>dn
小檔案合併成大檔案:
3495 2533個小檔案,每個小檔案是1m,名稱是30個位元組 = 1000m
3495 2533 個block
3495 2533m 壓縮成 乙個檔案128m的檔案:27 3067個檔案
27 3067個檔名稱*30個位元組 = 7.8m
nn維護壓力從1000m–>7.8m
nn:儲存檔名稱
dn:儲存資料塊和儲存資料塊校驗和
snn:每隔一小時將namenode裡的元資料、操作記錄、操作日誌(metadata(name,replicas,..)/home/foo/data,3…)把他們拉到snn節點再傳送給nn,可以理解為1小時的checkpoint(備份)
舉個例子:
nn 13:00
snn 13:00
fsimage:每小時生成的映象檔案
editlog:讀寫操作記錄
snn每隔一小時將fsimage和editlog打包成乙個新的映象傳送給nn
立個flag,過一段時間我還能看的懂
計算題(直接遞迴)
problem description 乙個簡單的計算,你需要計算f m,n 其定義如下 當m 1時,f m,n n 當n 1時,f m,n m 當m 1,n 1時,f m,n f m 1,n f m,n 1 input 第一行包含乙個整數t 1 t 100 表示下面的資料組數。以下t行,其中每組資...
專案管理 計算題
3.2動態投資 期 3.差額投資 期 四 線性規劃 五 非線性規劃 六 後悔值決策 七 概率問題 八 最短路徑 計畫評估和審查技術,program evaluation and review technique 預 幣值 expected monetary value emv 又稱風險暴露值 風險期...
OJ之函式計算題
time limit 1 sec memory limit 64 mb submit 276 solved 217 submit status web board description 乙個簡單的計算,你需要計算f m,n 其定義如下 當m 1時,f m,n n 當n 1時,f m,n m 當m ...