是什么是hadoop?
(1)?框架核心設(shè)計(jì): HDFS為海量的數(shù)據(jù)提供了存儲(chǔ)撤嫩,則MapReduce為海量的數(shù)據(jù)提供了計(jì)算
(2)思想 : 分布式,分而治之,并行結(jié)算 ,計(jì)算向數(shù)據(jù)移動(dòng)
(3)模塊:分布式文件存儲(chǔ)系統(tǒng)HDFS: 提供了高可擴(kuò)展性,高可靠性,和高吞吐率的數(shù)據(jù)存儲(chǔ)服務(wù) 分布式計(jì)算框架MapReduce: 計(jì)算向數(shù)據(jù)移動(dòng) 分布式資源框里框架YARN: 負(fù)責(zé)集群資源的管理和調(diào)度
(4)存儲(chǔ)模型:字節(jié)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- 文件線性切割成塊(Block):偏移量offset(byte)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- Block 分選存儲(chǔ)在集群節(jié)點(diǎn)中? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- 單一文件Block大小一致,文件和文件可以不一致? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- Block可以設(shè)置副本數(shù),副本分散在不同節(jié)點(diǎn)中? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- 文件上傳可以設(shè)置副Block大小和副本數(shù)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- 已上傳的文件Block副本數(shù)可以調(diào)整,大小不變? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- 只支持一次寫入,多次讀取,同一時(shí)刻還有一個(gè)寫入者,可以Append追加數(shù)據(jù)
(4)架構(gòu)模型? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- 文件元數(shù)據(jù)MetaData,文件數(shù)據(jù)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- (主) NameNode節(jié)點(diǎn)保存文件元數(shù)據(jù):單節(jié)點(diǎn)posix? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- (從) DateNode節(jié)點(diǎn)保存文件Block數(shù)據(jù):多節(jié)點(diǎn)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- DataNode和NameNode保持心跳,提交block列表? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- HdfsClient和NameNode交換元數(shù)據(jù)信息 HdfsClint和DataNode交換文件Block數(shù)據(jù)
(5)NameNode(NN)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? --? 基于內(nèi)存存儲(chǔ):不會(huì)和存盤發(fā)生交換? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- 主要功能 接受客戶端的讀寫,接受Namenode匯報(bào)的Block列表信息? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- NameNOde保存metadata信息包括 文件owership和permissions 文件大小,時(shí)間 (Block列表:Block偏移量),位置信息 Block每副本位置(有DatNode上報(bào))
(6)DataNode(DN)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- 本地磁盤目錄存儲(chǔ)數(shù)據(jù)(Block),文件形式? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? --? 同時(shí)存儲(chǔ)Block的元數(shù)據(jù)信息文件? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-- 啟動(dòng)DN時(shí)會(huì)向NN匯報(bào)block信息? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -- 通過(guò)向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN 10分鐘沒(méi)有收到DN的心跳,則認(rèn)為其已經(jīng)lost,并copy其上的Block到其他的DN
(7)SecondaryNameNode (SNN)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-不是NN的備份,但可以做備份,主要作用是幫助NN合并edits log,減少NN啟動(dòng)時(shí)間 --合并時(shí)機(jī) 根據(jù)配置文件設(shè)置的間隔時(shí)間fs.checkpoint.period 默認(rèn)3600秒 根據(jù)配置文件設(shè)置edits log大小 fs.checkpoint.size 規(guī)定edits文件的最大值默認(rèn)為是64MB
```java
Dim total as Integer = 10
Dim index as Integer = 1
Dim result as String = ""
For index = 1 to 10 step 1
result += " 傻瓜"
End For
Print(result)
```