1. Hadoop 數(shù)據(jù)管理
Hadoop 的數(shù)據(jù)管理玖详,主要包括 Hadoop 的分布式文件系統(tǒng) HDFS、分布式數(shù)據(jù)庫(kù) HBase 和數(shù)據(jù)倉(cāng)庫(kù)工具 Hive。
(1)HDFS 的數(shù)據(jù)管理
HDFS 通過(guò)三個(gè)重要的角色來(lái)進(jìn)行文件系統(tǒng)的管理:NameNode轧邪、 DataNode 和 Clien
NameNode 可以看做是分布式文件系統(tǒng)中的管理者寇荧,主要負(fù)責(zé)管理文件系統(tǒng)的命名空間举庶、集群配置信息和存儲(chǔ)塊的復(fù)制等。 ? ? ? ?? NameNode 會(huì)將文件系統(tǒng)的 Metadata 存儲(chǔ)在內(nèi)存中揩抡,這些信 息主要包括文件信息户侥、每一個(gè)文件對(duì)應(yīng)的文件塊的信息和每一個(gè)文件塊在 DataNode 中的信息等
DataNode 是文件存儲(chǔ)的基本單元,它將 文件(Block)存儲(chǔ)在本地文件系統(tǒng)中峦嗤,保存了所有 Block 的Metadata蕊唐,同時(shí)周期性地將所有存在的 Block 信息發(fā)送給 NameNode。
Client 就是需要獲取分布式文件系統(tǒng)文件的應(yīng)用程序烁设。
文件寫(xiě)入
1)Client 向 NameNode 發(fā)起文件寫(xiě)入的請(qǐng)求替梨。
2)NameNode 根據(jù)文件大小和文件塊配置情況,返回給 Client 所管理的 DataNode 的信息
3)Client 將文件劃分為多個(gè) Block装黑,根據(jù) DataNode 的地址信息副瀑,按順序?qū)⑵鋵?xiě)入到每一個(gè) DataNode 塊中。
文件讀取
1)Client 向 NameNode 發(fā)起文件讀取的請(qǐng)求恋谭。
2)NameNode 返回文件存儲(chǔ)的 DataNode 信息糠睡。
3)Client 讀取文件信息。
文件塊(Block)復(fù)制
1)NameNode 發(fā)現(xiàn)部分文件的 Block 不符合最小復(fù)制數(shù)這一要求或部分 DataNode 失效箕别。
2)通知 DataNode 相互復(fù)制 Block铜幽。
3)DataNode 開(kāi)始直接相互復(fù)制。