大數據學習(3)- 分布式文件系統HDFS

文章目錄

  • 目錄
    • 1.分布式文件系統
      • 1.1 計算機集群概念
      • 1.2 分布式文件系統結構
    • 2.HDFS簡介
      • 2.1 HDFS設計的目標
      • 2.2HDFS的局限性
      • 2.3 塊的概念
      • 2.4 HDFS主要組件及其功能
        • 2.4.1 名稱節點
        • 2.4.2 第二名稱節點
        • 2.4.3 數據節點
    • 3.HDFS體系結構
      • 3.1 HDFS體系結構介紹
      • 3.2 HDFS體系結構的局限性
    • 4.HDFS存儲原理
      • 4.1 冗余數據保存
      • 4.2 數據存取策略
      • 4.3 數據錯誤和恢復
        • 4.3.1 名稱節點出錯
        • 4.3.2 數據節點出錯
        • 4.3.3 數據出錯
    • 5.HDFS數據讀寫過程
      • 5.1 數據讀取過程
      • 5.2 數據存儲過程
      • 5.3 讀寫介紹![在這里插入圖片描述](https://img-blog.csdnimg.cn/20190329165747536.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aTExMTExMTEx,size_16,color_FFFFFF,t_70)
        • 5.3.1 讀數據過程
        • 5.3.2 寫數據過程
    • 6.HDFS編程實踐
      • 6.1 HDFS常用命令
      • 6.2 HDFS的web界面

目錄

1.分布式文件系統

1.1 計算機集群概念

在這里插入圖片描述

Hadoop的分布式文件存儲,使得文件的存儲不在依賴于計算機性能,普通的計算機也可以組件集群。

1.2 分布式文件系統結構

在這里插入圖片描述

2.HDFS簡介

2.1 HDFS設計的目標

  • 兼容廉價的硬件設備
  • 流數據的讀寫
  • 大數據集的存儲于管理
  • 簡單的文件模型
  • 強大的跨平臺性能

2.2HDFS的局限性

  • 不適合低延遲的數據訪問(HBASE支持實時訪問)
  • 無法高效的存儲大量的小文件(nameNode節點的存儲有限,如果小文件過多,元數據就多)
  • 不支持多用戶寫入及任意修改

2.3 塊的概念

在這里插入圖片描述

2.4 HDFS主要組件及其功能

在這里插入圖片描述

2.4.1 名稱節點

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

2.4.2 第二名稱節點

在這里插入圖片描述

2.4.3 數據節點

  • 數據節點是分布式文件系統HDFS的工作節點,負責數據的存儲和讀取,會根據客戶端或者是名稱節點的調度來進行數據的存儲和檢索,并且向名稱節點定期發送自己所存儲的塊的列表
  • 每個數據節點中的數據會被保存在各自節點的本地Linux文件系統中

3.HDFS體系結構

3.1 HDFS體系結構介紹

在這里插入圖片描述

  • HDFS的命名空間包含目錄、文件和塊
  • 在HDFS1.0體系結構中,在整個HDFS集群中只有一個命名空間,并且只有唯一一個名稱節點,該節點負責對這個命名空間進行管理
  • HDFS使用的是傳統的分級文件體系,因此,用戶可以像使用普通文件系統一樣,創建、刪除目錄和文件,在目錄間轉移文件,重命名文件等
    在這里插入圖片描述
    在這里插入圖片描述

3.2 HDFS體系結構的局限性

在這里插入圖片描述

4.HDFS存儲原理

4.1 冗余數據保存

在這里插入圖片描述

4.2 數據存取策略

在這里插入圖片描述
在這里插入圖片描述

4.3 數據錯誤和恢復

HDFS具有較高的容錯性,可以兼容廉價的硬件,它把硬件出錯看作一種常態,而不是異常,并設計了相應的機制檢測數據錯誤和進行自動恢復,主要包括以下幾種情形:名稱節點出錯、數據節點出錯和數據出錯。

4.3.1 名稱節點出錯

  • 名稱節點保存了所有的元數據信息,其中,最核心的兩大數據結構是FsImage和Editlog,如果這兩個文件發生損壞,那么整個HDFS實例將失效。因此,HDFS設置了備份機制,把這些核心文件同步復制到備份服務器SecondaryNameNode上。當名稱節點出錯時,就可以根據備份服務器SecondaryNameNode中的FsImage和Editlog數據進行恢復。

4.3.2 數據節點出錯

在這里插入圖片描述

4.3.3 數據出錯

  • 網絡傳輸和磁盤錯誤等因素,都會造成數據錯誤
  • 如何判斷數據出錯:HDFS在創建每個文件的時候,都默認給出了一個校驗碼,在讀取文件的時候,會比對校驗碼,如果校驗碼沒有錯,則數據沒有出錯。
  • 在文件被創建時,客戶端就會對每一個文件塊進行信息摘錄,并把這些信息寫入到同一個路徑的隱藏文件里面
  • 當客戶端讀取文件的時候,會先讀取該信息文件,然后,利用該信息文件對每個讀取的數據塊進行校驗,如果校驗出錯,客戶端就會請求到另外一個數據節點讀取該文件塊,并且向名稱節點報告這個文件塊有錯誤,名稱節點會定期檢查并且重新復制這個塊

5.HDFS數據讀寫過程

HDFS支持兩種方式的交互,我們可以自由的選擇shell和java的方式。

5.1 數據讀取過程

在這里插入圖片描述

5.2 數據存儲過程

在這里插入圖片描述

5.3 讀寫介紹在這里插入圖片描述

5.3.1 讀數據過程

在這里插入圖片描述

5.3.2 寫數據過程

在這里插入圖片描述

6.HDFS編程實踐

參考鏈接:http://dblab.xmu.edu.cn/blog/290-2/
在這里插入圖片描述
在這里插入圖片描述

6.1 HDFS常用命令

  • hadoop fs -ls :顯示指定的文件的詳細信息
  • hadoop fs -mkdir :創建指定的文件夾
  • hadoop fs -cat :將指定的文件的內容輸出到標準輸出(stdout)
  • hadoop fs -copyFromLocal :將本地源文件復制到路徑指定的文件或文件夾中

6.2 HDFS的web界面

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/445367.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/445367.shtml
英文地址,請注明出處:http://en.pswp.cn/news/445367.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python 圖片轉簡單字符畫

字符畫是一系列字符的組合,我們可以把字符看作是比較大塊的像素,一個字符能表現一種顏色(暫且這么理解吧),字符的種類越多,可以表現的顏色也越多,圖片也會更有層次感。 灰度值:指黑…

大數據學習(4)--分布式數據庫HBase

文章目錄目錄1.HBase概述1.1BigTable1.2 HBase簡介1.3 HBase和傳統的關系型數據庫之間的區別2.HBase訪問接口3.HBase數據模型3.1 數據模型概述3.2 數據模型相關概念3.3 數據坐標3.4 概念視圖3.5 物理視圖3.6 面向列的存儲4.HBase的實現原理4.1 HBase功能組件4.2 表和region4.3 …

servlet中的數據存儲

在servlet基礎中,我們: 用以下幾種方式實現數據存儲和共享: 1)在客戶端頁面和服務器端程序之間,用request中的getParameter()方法共享數據 2)在請求和請求之間,可以用get/setAttribute方法來共…

Linux(2)-tar,find,grep,xargs

常用命令1. 打包壓縮/解包解壓縮 tar1.1 打包 tar -czvf xxx.tar.gz xxx1.2 解壓 tar -xzvf xxx.tar.gz2.文件/目錄搜索2.1 find文件/目錄查找2.2 grep文本匹配3. 復合命令3.1 > 重定向3.2 | 管道.shutdown1. 打包壓縮/解包解壓縮 tar tar和gzip是對黃金搭檔:ta…

Event Recommendation Engine Challenge(基礎版)---代碼

第一步:統計user和event相關信息 #查看train_csv的數據 import pandas as pd df_train pd.read_csv(train.csv) df_train.head()usereventinvitedtimestampinterestednot_interested03044012191877122502012-10-02 15:53:05.75400000:000013044012150228424802012…

servlet——三兄弟的另外兩個:過濾器/監聽器

過濾器 我們寫多了servlet會發現,很多代碼和功能是重復的,比如:解決中文亂碼問題、權限驗證、日志的記錄等,他們的特點是:代碼相同或相似、分散在不同位置、不利于維護。 過濾器就是他們的解決辦法。 過濾器是請求到…

矩陣論-線性變換的特征值與特征變換

線性空間與線性變換綜述1.2 線性變換及其矩陣1.2.3 特征值與特征向量綜述 本系列博文主要總結學習矩陣論的心得筆記,參考數目《矩陣論》–張凱院;整個文章的整理體系參照行書過程。 1.2 線性變換及其矩陣 1.2.3 特征值與特征向量 本節討論如何選擇線…

Python(1)-源起、設計目標、設計哲學、特點

python簡介1. python的起源2. 解釋器3. python 語言的設計目標4. python 語言的設計哲學5. Python 特點人生苦短,我用python–吉多范羅蘇姆(Guido van Rossum)1. python的起源 1989年吉多在圣誕節想寫一個新的解釋程序作為ABC語言的繼承者。…

kaggle(05)---Event Recommendation Engine Challenge(基礎版)

文章目錄目錄1.比賽相關介紹1.1 比賽介紹1.2 數據集介紹1.3 評價標準介紹1.4 個人理解2. 解決方案2.1 統計用戶和event信息2.2 計算用戶相似度2.3 用戶社交關系信息處理2.4 構建event和event相似度數據2.5 活躍度/event熱度數據2.6 構建特征2.7 模型構建和預測3. 遇到的問題4. …

多校一道KMP+DP的題

難啊,多校當時根本不會做 題目描述 White Cloud has a rectangle carpet of n*m. Grid (i,j) has a color colorA[i][j] and a cost costA[i][j]. White Rabbit will choose a subrectangle B of p*q from A and the color of each grid is colorB[0...p-1][0..…

Python(2)-第一個python程序、執行python程序三種方式

第一個Python 程序1. 第一個Python 程序2. 常用兩Python個版本3. 程序執行的三種方式3.1 解釋器3.2 交互式運行Python程序3.3 IDE(集成開發環境)-pycharm1. 第一個Python 程序 Python 源程序就是一個特殊格式的文本文件,所以可以采用任意的文…

推薦算法---FM,協同過濾

文章目錄目錄1.FM算法產生背景2.FM算法模型3.FM算法VS其他算法4.推薦算法總結目錄 1.FM算法產生背景 在傳統的線性模型如LR中,每個特征都是獨立的,如果需要考慮特征與特征直接的交互作用,可能需要人工對特征進行交叉組合;非線性…

借助桶排序思想完成的一道題

問題: 數組排序之后的相鄰數的最大差值; 嗯,你可以排序,然后找相鄰的最大差值。 但是你覺得這么簡單我寫他干啥。 最優解:時間復雜度O(N),空間O(1) 那我們開始說這種方法: 1)遍…

Python(3)-Pycharm基本使用技巧

初識Pycharm1.界面2.恢復初始設置3.第一次打開Pycharm4.打開一個項目5.設置解釋器的版本。6.新建項目7.編輯器、控制臺的字體設置Pycharm–適合于開發管理大型項目,項目是用以解決復雜功能的軟件。1.界面 導航區–主要有什么文件 編輯區–編輯具體的文件 控制臺窗口…

推薦算法概述(01)

1.什么是推薦系統 用戶沒有明確的需求,你需要的是一個自動化的工具,它可以分析你的歷史興趣,從龐大的電影庫中找到幾部符合你興趣的電影供你選擇。這個工具就是個性化推薦系統。 推薦系統的主要任務 推薦系統的任務就是聯系用戶和信息&…

CSDN-Markdown編輯器使用小技巧

Markdown編輯器使用小技巧1.圖片無法顯示1.圖片無法顯示 1.檢查圖片的命名格式是否正確,數字不能作為圖片名稱開頭,雖然window操作系統下能夠識別,但是導入圖片的時候會造成無法顯示的錯誤。

何為布隆過濾器

問題的提出 我們有一個不安全網頁的黑名單,包含了100億個黑名單網頁的URL,每個網頁URL最多占用64B.。 現在我們要設計一個網頁過濾系統,這個系統要判斷該網頁是否在黑名單里,但是我們的空間有限,只有30GB. 允許有萬分之一的判斷…

推薦算法--利用用戶行為數據(02)

文章目錄目錄1.什么是用戶行為數據?1.1用戶行為分類2.用戶行為數據如何使用?2.1 用戶活躍度和物品流行度的分布2.2 用戶活躍度和物品流行度的關系2.3 協同過濾算法3.實驗設計和算法評測4.基于鄰域的的推薦算法4.1 基于用戶的協同過濾算法4.2 基于物品的協…

《Head First設計模式》第九章(2)組合模式

組合模式 ? 基于前一篇迭代模式的案例進行需求更新,餐廳的菜單管理系統需要有煎餅屋菜單和披薩菜單。現在希望在披薩菜單中能夠加上一份餐后甜點的子菜單。 在迭代模式中,披薩菜單是用數組維護的,我們需要讓披薩菜單持有一份子菜單&#xf…