大資料 HDFS的定義 使用場景 優缺點 組成架構

2021-10-10 21:30:00 字數 878 閱讀 8173

hdfs(hadoop destributed file system)是乙個分布式的檔案系統,用於儲存檔案,通過目錄樹來定位檔案

適合一次寫入,多次讀取的場景,不支援檔案的修改

高容錯性

資料自動儲存多個副本。它通過增加副本的形式提高容錯性

某乙個副本丟失後,它可以自動恢復

適合處理大資料

資料規模:能夠處理資料規模達到gb、tb、甚至pb級別的資料

檔案規模:能夠處理百萬規模以上的檔案數量

可構建在廉價機器上,通過多副本機制,提高可靠性

不適合低延時資料訪問,比如毫秒級的儲存資料是做不到的

無法高效的對大量小檔案進行儲存

原因:儲存大量小檔案會占用namenode大量的記憶體來儲存檔案目錄和塊資訊

小檔案儲存的定址時間會超過讀取時間

管理hdfs的命名空間

配置副本策略

管理資料塊(block)對映資訊

處理客戶端讀寫請求

儲存實際的資料塊

執行資料塊的讀寫操作

檔案切分,檔案上傳hdfs的時候,client將檔案切分成乙個乙個的block,然後上傳

與namenode互動,獲取檔案的位置資訊

與datanode互動,讀取或寫入資料

client提供一些命令來管理hdfs,比如namenode格式化

client可以通過一些命令來訪問hdfs,比如對hdfs增刪改查操作

輔助namenode,分擔其工作量,比如定期合併fsimage和edits,並推送給namenode

在緊急情況下,可輔助恢復namenode

socket的定義與使用場景

socket的定義 使用場景 一 socket的使用場景 如 瀏覽器程序與web伺服器程序通訊 如 qq程序與好友的qq程序通訊 二 本地的程序通訊 網路上的程序通訊 1 本地的程序通訊 本地的程序間通訊 ipc 有很多種方式,但可以總結為下面3類 1.訊息傳遞 管道 fifo 訊息佇列 2.同步 ...

Redis五大資料型別使用場景

共享session 出於負載均衡的考慮,分布式服務會將使用者資訊的訪問均衡到不同伺服器上,使用者重新整理一次訪問可能會需要重新登入,為避免這個問題可以用redis將使用者session集中管理,在這種模式下只要保證redis的高可用和擴充套件性的,每次獲取使用者更新或查詢登入資訊 都直接從redis...

redis使用場景之位操作(大資料處理)

在學習redis的過程了,看到了redis還能用於大資料處理,具體場景如下 原理是 redis內構建乙個足夠長的陣列,每個陣列元素只能是0和1兩個值,然後這個陣列的下標index用來表示我們上面例子裡面的使用者id 必須是數字哈 那麼很顯然,這個幾億長的大陣列就能通過下標和元素值 0和1 來構建乙個...