資料節點中資料庫的儲存

2022-09-07 02:03:12 字數 1334 閱讀 6289

第一次啟動hdfs需對namenode(簡稱nn)格式化

bin/hadoop namenode -format
hdfs動態新增和刪除datanode(簡稱dn),dn無需格式化而是在第一次啟動時建立儲存目錄。dn可以管理多個目錄,配置$ = "/data/datanode,/data2/datanode"

該目錄一般有4個目錄和2個檔案。

其中in_use.lock檔案是在datanode節點啟動之後產生的,其中各個目錄的作用如下:

blocksbeingwritten:該資料夾儲存著當前正在」寫「的資料塊。

current:儲存著hdfs檔案系統中的資料塊,這些資料塊是成功提交到hdfs中的資料塊。detach:用於配合資料節點公升級,共資料塊分離操作儲存臨時工作檔案。

tmp:該資料夾儲存著當前正在」寫「的資料塊,和blockbeingwritten資料夾的區別是,blockbeingwritten中的資料塊寫操作由客戶端發起,tmp中的寫操作由資料塊複製引發,另乙個資料節點正在傳送資料到資料塊中。

storage:0.13版本以前的hadoop使用storage檔案作為資料塊的儲存目錄,和現在的目錄結構不相容,這個檔案用於防止過舊的hadoop版本在新的目錄結構上啟動,損壞系統。

in_use.lock:表明目錄已經被使用,停止資料節點,該檔案會消失,通過in_use.lock檔案,資料節點可以保證獨自占用該目錄,防止兩個資料節點示例共享乙個目錄,造成混亂。

current目錄是資料節點中最重要的乙個目錄,它用於存放資料塊,該目錄中既包含目錄,也包含檔案,其中檔案有兩種型別:

hdfs資料塊,儲存著hdfs檔案的內容;

current目錄如下圖所示:

在這個中,沒有目錄,是因為當前的資料節點中的檔案塊的數量較少,只有當目錄中儲存的資料塊增加到一定規模時,子目錄名以subdir為字首,然後後面加上目錄編號,資料節點會建立乙個新目錄,用於儲存新的塊及元資料。目錄中的資料塊數達到64時,便會建立子目錄,並形成乙個更寬的目錄結構,同時\統一父目錄下最多會建立64個子目錄,所以在預設配置下,乙個目錄下最多只有64個檔案塊(128個檔案)和64個子目錄。這種目錄管理方式既保證了目錄深度不會太深,而影響檢索檔案效能,同時也避免了目錄儲存大量資料塊,確保每個目錄中的檔案塊是可控的。

資料庫的資料儲存

資料庫的讀寫分離,mysql 完整資料 主庫是寫庫,從庫是讀庫 因為正常的產品,查詢的情況大於儲存的情況,寫入伺服器可以少加幾台,讀取的可以多加幾台,合理的適配資源,二八定則 如何實現session共享 因為分布式開發才存在session共享,乙個服務部署在多個伺服器上,session在伺服器內部記...

資料庫儲存

sqlite資料庫儲存 android 系統竟然是內建了資料庫的,sqlite 是散輕量級的關係型資料庫,它的運算速度非常快,古用資源很少,通常只需要幾百kb的記憶體就足夠了,因而特別適合在移動裝置上用。sqlite不僅支援標準的sol語法,還遵循了資料庫acid事務,所以只要你以前使用過其他的關係...

資料庫時間節點 vertica mysql db2

時間節點 vertica資料庫 select quarter today 當前所屬的季度 select now 當前的時間戳 select date part doy sysdate 當前在年裡第幾天 select date part dow sysdate 當周的第幾天 select date p...