国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

分布式文件系統:HDFS基礎與應用

2019-11-06 06:18:19
字體:
來源:轉載
供稿:網友

第一:HDFS概述

1. hdfs的優點

高容錯性適合大數據處理構建在廉價機器上

2. hdfs的缺點

不適用低延遲高吞吐 1. 比如毫秒級 2. 低延遲和高吞吐率 - 不適用存儲小文件小文件 1. 占用namenode大量內存 2. 尋道時間超過存儲時間 3. namenode的block塊有限制 - 不能并發寫入,隨機修改 1. 一次寫入,多次讀取,一個文件只能有一個寫者 2. 僅支持append

第二:HDFS基礎架構與原理

1. 基礎架構

namenode active namenode 主Master,只有一個,保存元數據信息standby namenode 備份namenode。定期合并fsimage和editsHA+Federation HA解決高可用,Federation解決單namenode資源不夠datanode 實際存放的數據塊。每個block默認為128Mclient 文件切割,namenode交互,datanode交互,管理和訪問HDFS

2.原理

文件被分成若干個block。每個block默認128M每個block默認復制三份block存放在datanode第一個block存放在與client同節點上。第二個block存放在不同機架上。第三個block存放在第二個block同機架不同節點上CRC校驗文件,Datanode定期向Namenode發送heartbeat,主備namenode。fsimage保存內存,同時備份fsimage+edit

第三:HDFS程序設計方法

基于Shell

文件命令操作bin/hdfs dfs -mkdir /homebin/hdfs dfs -ls /bin/hdfs dfs -put localfile /home管理命令bin/hdfs dfsadmin bin/hdfs fsck examplefile -files -locations -blocks均衡器balancebin/start-balancer.sh -threshold < percentage of disk capacity設置目錄配額bin/hadoop dfsadmin -setSpaceQuota 1t /home/hadoop增加或移除節點 增加節點 將已存在的datanode安裝包(包括配置文件)拷貝到新datanode上啟動新datanode sbin/hadoop-deamon.sh start datanode 刪除節點將datanode加入黑名單,并更新黑名單移除datanode bin/hadoop dfsadmin -refreshNodes

基于javaApi

將本地文件拷貝到hdfs上Configuration conf = new Configuration();FileSystem fs = FileSystem.get(conf);Path srcPath = new Path(srcFile);Path dstPath = new Path(dstFile);fs.copyFromLocalFile(srcPath,dstPath);創建hdfs文件Configruation conf = new Configuration();FileSystem fs = FileSystem.get(conf);Path path = new Path(fileName);FSFileDataOutputStream outputstream = hdfs.create(path);outputstream.write(buff,0,buff.length);

第四:HDFS優化小技巧

原始日志存儲格式選擇 文本文件 不便于壓縮,選擇合適的壓縮算法很重要不建議將日志文件直接存儲為文本格式SequenceFile 二進制格式,便于壓縮,壓縮格式作為元信息存到文件中建議采用該格式存儲原始日志小文件優化 合并成大文件 Sequence FileHadoop Archive存在key/value系統中 HBaseTFS壓縮與歸檔

第五:項目實踐


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广州市| 黄石市| 溧阳市| 铜梁县| 荃湾区| 武穴市| 青龙| 菏泽市| 新源县| 射阳县| 远安县| 巩留县| 丰宁| 保山市| 青河县| 绵竹市| 邛崃市| 龙井市| 浮梁县| 莲花县| 宜川县| 当阳市| 习水县| 砚山县| 沅江市| 龙山县| 宁海县| 和政县| 塔河县| 华坪县| 志丹县| 中阳县| 丹寨县| 河池市| 石棉县| 土默特左旗| 平定县| 兖州市| 通许县| 盐津县| 渝中区|