原文在此
讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國(guó)際域名空間、虛擬主機(jī)、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、軹城網(wǎng)站維護(hù)、網(wǎng)站推廣。https://hadoop.apache.org/docs/r1.2.1/hdfs_design.html
hadoop 兩大組件 mapreduce和hdfs
用HDFS的目標(biāo)
避免硬件故障
硬件故障是常態(tài),而不是例外。一個(gè)HDFS實(shí)例可能包括數(shù)百或數(shù)千個(gè)服務(wù)器,存儲(chǔ)文件系統(tǒng)的部分?jǐn)?shù)據(jù)。事實(shí)上,有大量的組件,每個(gè)組件都有一個(gè)非平凡的失效概率意味著HDFS的一些組件總是非功能。因此,故障的快速檢測(cè),從自動(dòng)的恢復(fù)是HDFS的一個(gè)核心構(gòu)架目標(biāo)。
流式數(shù)據(jù)訪問(wèn)
應(yīng)用程序運(yùn)行在HDFS需要流媒體訪問(wèn)他們的數(shù)據(jù)集。它們不是一般用途的文件系統(tǒng)上運(yùn)行的通用應(yīng)用程序。HDFS被設(shè)計(jì)為批處理,而不是由用戶(hù)交互使用。重點(diǎn)是高吞吐量的數(shù)據(jù)訪問(wèn),而不是低延遲的數(shù)據(jù)訪問(wèn)。POSIX的一些要求是不是有針對(duì)性的HDFS的應(yīng)用所需要的。在幾個(gè)關(guān)鍵的領(lǐng)域POSIX語(yǔ)義被交易來(lái)增加數(shù)據(jù)吞吐量。
大數(shù)據(jù)集
HDFS上運(yùn)行的應(yīng)用程序有大量的數(shù)據(jù)集。HDFS中典型的文件大小百萬(wàn)兆字節(jié)字節(jié)。因此,HDFS被調(diào)諧到支持大文件。它應(yīng)該為單個(gè)集群中的數(shù)百個(gè)節(jié)點(diǎn)提供高聚合數(shù)據(jù)帶寬和規(guī)模。它應(yīng)該在一個(gè)實(shí)例中支持?jǐn)?shù)以千萬(wàn)計(jì)的文件。
一致性模型
HDFS的應(yīng)用需要寫(xiě)一次讀文件的許多訪問(wèn)模型。創(chuàng)建、寫(xiě)入和關(guān)閉的文件不需要更改。這種假設(shè)簡(jiǎn)化了數(shù)據(jù)一致性問(wèn)題,并允許高吞吐量數(shù)據(jù)訪問(wèn)。MapReduce應(yīng)用程序或Web爬蟲(chóng)應(yīng)用程序非常適合這個(gè)模型。有一個(gè)計(jì)劃支持在將來(lái)追加對(duì)文件的寫(xiě)操作。
移動(dòng)計(jì)算比移動(dòng)數(shù)據(jù)便宜
應(yīng)用程序請(qǐng)求的計(jì)算如果在其所運(yùn)行的數(shù)據(jù)附近執(zhí)行,則效率要高得多。當(dāng)數(shù)據(jù)集的大小是巨大的時(shí),情況尤其如此。這減少了網(wǎng)絡(luò)擁塞,提高了系統(tǒng)的總體吞吐量。假設(shè)是,將計(jì)算遷移到數(shù)據(jù)位置的位置通常更好,而不是將數(shù)據(jù)移動(dòng)到應(yīng)用程序運(yùn)行的地方。HDFS提供的接口的應(yīng)用將更接近數(shù)據(jù)所在。
跨異構(gòu)硬件和軟件平臺(tái)的可移植性
HDFS被設(shè)計(jì)為可以很容易從一個(gè)平臺(tái)移植到另一個(gè)。這有利于廣泛采用HDFS作為一個(gè)大的應(yīng)用平臺(tái)的選擇。
節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn)
HDFS有主從式架構(gòu)。一個(gè)HDFS集群由一個(gè)單一的節(jié)點(diǎn),一個(gè)主服務(wù)器,管理文件系統(tǒng)的命名空間和調(diào)節(jié)客戶(hù)訪問(wèn)文件。此外,有多個(gè)數(shù)據(jù)節(jié)點(diǎn),通常每一個(gè)節(jié)點(diǎn)的集群,其中管理連接到節(jié)點(diǎn),它們運(yùn)行在存儲(chǔ)。HDFS文件系統(tǒng)命名空間暴露并允許用戶(hù)將數(shù)據(jù)存儲(chǔ)在文件中。在內(nèi)部,一個(gè)文件被分成一個(gè)或多個(gè)數(shù)據(jù)塊,這些塊存儲(chǔ)在一組數(shù)據(jù)節(jié)點(diǎn)。Namenode執(zhí)行文件系統(tǒng)的命名空間操作如打開(kāi),關(guān)閉,和重命名文件和目錄。這也決定了數(shù)據(jù)塊到數(shù)據(jù)節(jié)點(diǎn)的映射。數(shù)據(jù)節(jié)點(diǎn)負(fù)責(zé)為讀寫(xiě)文件系統(tǒng)的客戶(hù)端的請(qǐng)求。數(shù)據(jù)節(jié)點(diǎn)執(zhí)行創(chuàng)建,刪除,并從NameNode在指令復(fù)制。
原理圖
復(fù)制原理
HDFS的設(shè)計(jì)可靠地存儲(chǔ)非常大的文件在機(jī)器在一大簇。它將每個(gè)文件存儲(chǔ)成一組塊;除了最后一個(gè)塊之外,文件中的所有塊都是相同的大小。文件的塊被復(fù)制用于容錯(cuò)。塊大小和復(fù)制因子可配置為每個(gè)文件。應(yīng)用程序可以指定文件副本的個(gè)數(shù)。復(fù)制因子可以在文件創(chuàng)建時(shí)指定,以后可以更改。文件在HDFS寫(xiě)一次,隨時(shí)都有嚴(yán)格的作家。
對(duì)于復(fù)制塊的所有決定。它定期收到的心跳,從集群中的每個(gè)數(shù)據(jù)節(jié)點(diǎn)blockreport。一個(gè)心跳的收據(jù)表明DataNode運(yùn)行正常。一個(gè)blockreport列出所有在DataNode塊。
翻譯文,請(qǐng)笑納。。。。
FS Shell 文件操作
Action
Command
Create a directory named /foodir
bin/hadoop dfs -mkdir /foodir
Remove a directory named /foodir
bin/hadoop dfs -rmr /foodir
View the contents of a file named /foodir/myfile.txt
bin/hadoop dfs -cat /foodir/myfile.txt
FS shell is targeted for applications that need a scripting language to interact with the stored data.
DFSAdmin
The DFSAdmin command set is used for administering an HDFS cluster. These are commands that are used only by an HDFS administrator. Here are some sample action/command pairs:
Action
Command
Put the cluster in Safemode
bin/hadoop dfsadmin -safemode enter
Generate a list of DataNodes
bin/hadoop dfsadmin -report
Recommission or decommission DataNode(s)
bin/hadoop dfsadmin -refreshNodes
api的鏈接如下,可以用c或者java
http://hadoop.apache.org/docs/current/api/
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。