freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

全文搜索引擎的設(shè)計(jì)與實(shí)現(xiàn)-外文翻譯-其他專業(yè)-wenkub.com

2025-01-15 07:30 本頁面
   

【正文】 當(dāng)一個(gè) Datanode 啟動時(shí),它會掃描本地文件系統(tǒng),產(chǎn)生一個(gè)這些本地文件對應(yīng)的所有 HDFS 數(shù)據(jù)塊的列表,然后作為報(bào)告發(fā)送到 Namenode,這個(gè)報(bào)告就是塊狀態(tài)報(bào)告。 Datanode 將 HDFS 數(shù)據(jù)以文件的形式存儲在本地的文件系統(tǒng)中,它并不知道有關(guān) HDFS 文件的信息。這個(gè)關(guān)鍵的元數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)得很緊湊,因而一個(gè)有 4G 內(nèi)存的 Namenode 足夠支撐大量的文件和目錄。例如,在HDFS 中創(chuàng)建一個(gè)文件, Namenode 就會在 Editlog 中插入一條記錄來表示;同樣地,修改文件的副本系數(shù)也將往 Editlog 插入一條記錄。當(dāng) Namenode 檢測確認(rèn)某個(gè)數(shù)據(jù)塊的副本數(shù)目達(dá)到這個(gè)最小值,那么該數(shù)據(jù)塊就會被認(rèn)為是副本安全 (safely replicated)的;在一定百分比(這個(gè)參數(shù)可配置)的數(shù)據(jù)塊被 Namenode 檢測確認(rèn)是安全之后(加上一個(gè)額外的 30 秒等待時(shí)間), Namenode 將退出安全模式狀態(tài)。處于安全模式的Namenode 是不會進(jìn)行數(shù)據(jù)塊的復(fù)制的。 副本選擇 為了降低整體的帶寬消耗和讀取延時(shí), HDFS 會盡量讓讀取程序讀取離它最近的副本。于此同時(shí),因?yàn)閿?shù)據(jù)塊只放在兩個(gè)(不是三個(gè))不同的機(jī)架上,所以此策略減少了讀取數(shù)據(jù)時(shí)需要的網(wǎng)絡(luò)傳輸總帶寬。但是,因?yàn)檫@種策略的一個(gè)寫操作需要傳輸數(shù)據(jù)塊到多個(gè)機(jī)架,這增加了寫的代價(jià)。 通過一個(gè)機(jī)架感知的過程, Namenode可以確定每個(gè) Datanode所屬的機(jī)架 id。目前實(shí)現(xiàn)的副本存放策略只是在這個(gè)方向上的第一步。 副本存放 : 最最開始的一步 副本的 存放是 HDFS 可靠性和性能的關(guān)鍵。 HDFS 中的文件都是一次性寫入的,并且嚴(yán)格要求在任何時(shí)候只能有一個(gè)寫入者。為了容錯,文件的所有數(shù)據(jù) 塊都會有副本。應(yīng)用程序可以設(shè)置 HDFS 保存的文件的副本數(shù)目。文件系統(tǒng)名字空間的層次結(jié)構(gòu)和大多數(shù)現(xiàn)有的文件系統(tǒng)類似:用戶可以創(chuàng)建、刪除、移動或重命名文件。 集群中單一 Namenode 的結(jié)構(gòu)大大簡化了系統(tǒng)的架構(gòu)。 HDFS采用 Java語言開發(fā),因此任何支持 Java的機(jī)器都可以部署 Namenode 或 Datanode。 Datanode 負(fù)責(zé)處理文件系統(tǒng)客戶端的讀寫請求。 HDFS 暴露了文件系統(tǒng)的名字空間,用戶能夠以文件的形式在上面存儲數(shù)據(jù)。 三、 Namenode 和 Datanode HDFS 采用 master/slave 架構(gòu)。將計(jì)算移動到數(shù)據(jù)附近,比之將數(shù)據(jù)移動到應(yīng)用所在顯然更好。 Map/Reduce 應(yīng)用或者網(wǎng)絡(luò)爬蟲應(yīng)用都非常適合這個(gè)模型。一個(gè)單一的 HDFS實(shí)例應(yīng)該能支撐數(shù)以千萬計(jì)的文件。 大規(guī)模數(shù)據(jù)集 運(yùn)行在 HDFS 上的應(yīng)用具有很大的數(shù)據(jù)集。 HDFS的設(shè)計(jì)中更多的考慮到了數(shù)據(jù)批處理,而不是用戶交互處理。 HDFS 可能由成百上千的服務(wù)器所構(gòu)成,每個(gè)服務(wù)器上存儲著文件系統(tǒng)的部分?jǐn)?shù)據(jù)。 HDFS 放寬了一部分 POSIX 約 束,來實(shí)現(xiàn)流式讀取文件系統(tǒng)數(shù)據(jù)的目的。它和現(xiàn)有的分布式文件系統(tǒng)有很多共同點(diǎn)。 any machine that supports Java can run the NameNode or the DataNode software. Usage of the highly portable Java language means that HDFS can be deployed on a wide range of machines. A typical deployment has a dedicated machine that runs only the NameNode software. Each of the other machines in the cluster runs one instance of the DataNode software. The architecture does not preclude running multiple DataNodes on the same machine but in a real deployment that is rarely the case. The existence of a single NameNode in a cluster greatly simplifies the architecture of the system. The NameNode is the arbitrator and repository for all HDFS metadata. The system is designed in such a way that user data never flows through the NameNode. The File System Namespace HDFS supports a traditional hierarchical file anization. A user or an application can create directories and store files inside these directories. The file system namespace hierarchy is similar to most other existing file systems。 one can create and remove files, move a file from one directory to another, or rename a file. HDFS does not yet implement user quotas or access permissions. HDFS does not support hard links or soft links. However, the HDFS architecture does not preclude implementing these features. The NameNode maintains the file system namespace. Any change to the file system namespace or its properties is recorded by the NameNode. An application can specify the number of replicas of a file that should be maintained by HDFS. The number of copies of a file is called the replication factor of that file. This information is stored by the NameNode. Data Replication HDFS is designed to reliably store very large files across machines in a large cluster. It stores each file as a sequence of blocks。但同時(shí),它和其他的分布式文件系統(tǒng)的區(qū)別也是很明顯的。 HDFS 在最開始是作為 Apache Nutch 搜索引擎項(xiàng)目的基礎(chǔ)架構(gòu)而開發(fā)的。我們面對的現(xiàn)實(shí)是構(gòu)成系統(tǒng)的組件數(shù)目是巨大的,而且任一組件都有可能失效,這意味著總是有一部分 HDFS 的組件是不工 作的。比之?dāng)?shù)據(jù)訪問的低延遲問題,更關(guān)鍵的在于數(shù)據(jù)訪問的高吞吐量。 HDFS 上的一個(gè)典型文件大小一般都在 G 字節(jié)至 T 字節(jié)。 簡單的一致性模型 HDFS 應(yīng)用需要一個(gè)“一次寫入多次讀取”的文件訪問模型。目前還有計(jì)劃在將來擴(kuò)充這個(gè)模型,使之支持文件的附加寫操作。 HDFS 為應(yīng)用提供了將它們自己移動到數(shù)據(jù)附近的接口。一個(gè) HDFS 集群是 由一個(gè) Namenode 和一定數(shù)目的 Datanodes 組成。從內(nèi)部看,一個(gè)文件其實(shí)被分成一個(gè)或多個(gè)數(shù)據(jù)塊,這些塊存儲在一組 Datanode 上。在 Namenode 的統(tǒng)一調(diào)度下進(jìn)行數(shù)據(jù)塊的創(chuàng)建、刪除和復(fù)制。由于采用了可移植性極強(qiáng)的 Java 語言,使得 HDFS 可以部署到多種類型的機(jī)器上。 Namenode 是所有 HDFS元數(shù)據(jù)的仲裁者和管理者,這樣,用戶數(shù)據(jù)永遠(yuǎn)不會流過 Namenode。當(dāng)前, HDFS 不支持用戶磁盤配額和訪問權(quán)限控制,也不支持硬鏈接和軟鏈接。文件副本的數(shù)目稱為文件的副本系數(shù),這個(gè)信息也是由 Namenode 保存的。每個(gè)文件的數(shù)據(jù)塊大小和副本系數(shù)都是可配置的。 Namenode 全權(quán)管理數(shù)據(jù)塊的復(fù)制,它周期性地從集群中的每個(gè) Datanode 接收心跳信號和塊狀態(tài)報(bào)告 (Blockreport)。優(yōu)化的副本存放策略是 HDFS 區(qū)分于其他大部分分布式文件系統(tǒng)的重要特性。實(shí)現(xiàn)這個(gè)策略的短期目標(biāo)是驗(yàn)證它在生產(chǎn)環(huán)境下的有效性,觀察它的行為,為實(shí)現(xiàn)更先進(jìn)的策略打下測試和研究的基礎(chǔ)。一個(gè)簡單但沒有優(yōu)化的策略就是將副本存放在不同的機(jī)架上。 在大多數(shù)情況下,副本系數(shù)是 3, HDFS 的存放策 略是將一個(gè)副本存放在本地機(jī)架的節(jié)點(diǎn)上,一個(gè)副本放在同一機(jī)架的另一個(gè)節(jié)點(diǎn)上,最后一個(gè)副本放在不同機(jī)架的節(jié)點(diǎn)上。在這種策略下,副本并不是均勻分布在不同的機(jī)架上。如果在讀取程序的同一個(gè)機(jī)架上有一個(gè)副本,那么就讀取該副本。 Namenode 從所有的 Datanode 接收心跳信號和塊狀 態(tài)報(bào)告。接下來它會確定還有哪些數(shù)據(jù)塊的副本沒有達(dá)到指定數(shù)目,并將這些數(shù)據(jù)塊復(fù)制到其他Datanode 上。 Namenode 在本地操作系統(tǒng)的文件系統(tǒng)中存儲這個(gè) Editlog。當(dāng) Namenode 啟動時(shí),它從硬盤中讀取Editlog 和 FsImage,將所有 Editlog 中的事務(wù)作用在內(nèi)存中的 FsImage 上,并將這個(gè)新版本的 FsImage 從內(nèi)存中保存到本地磁盤上,然后刪除舊的 Editlog,因?yàn)檫@個(gè)舊的 Editlog 的事務(wù)都已經(jīng)作用在 FsImage 上了。它把每個(gè) HDFS 數(shù)據(jù)塊存儲在本地文件系統(tǒng)的一個(gè)單獨(dú)的文件中。 七、通訊協(xié)議 所有的 HDFS 通訊協(xié)議都是建立在 TCP/IP 協(xié)議之上。在同一個(gè)目錄中創(chuàng)建所有的本地文件并不是最優(yōu)的選擇,這是因?yàn)楸镜匚募到y(tǒng)可能無法高效地在單個(gè)目錄中支持大量的文件。在當(dāng)前實(shí)現(xiàn)中,檢查點(diǎn)只發(fā)生在 Namenode 啟動時(shí),在不久的將來將實(shí)現(xiàn)支持周期性的檢查點(diǎn)。 Namenode 在內(nèi)存中保存著整個(gè)文件系統(tǒng)的名字空間和文件數(shù)據(jù)塊映射(Blockmap)的映像。對于任何對文件系統(tǒng)元數(shù)據(jù)產(chǎn)生修改的操作, Namenode 都會使用一種稱為 EditLog 的事務(wù)日志記錄下來。每個(gè)數(shù)據(jù)塊都有一個(gè)指定的最小副本數(shù)。 安全模式 Namenode 啟動后會進(jìn)入一個(gè)稱為安全模式的特殊狀態(tài)。 當(dāng)前,這里介紹的默認(rèn)副本存放策略正在開發(fā)的過程中。機(jī)架的錯誤遠(yuǎn)遠(yuǎn)比節(jié)點(diǎn)的錯誤少,所以這個(gè)策略不會影響到數(shù)據(jù)的可靠性和可用性。這種策略設(shè)置可以將副本均勻分布在集群中,有利于當(dāng)組件失效情況下的負(fù)載均衡。在大多數(shù)情況下,同一個(gè)機(jī)架內(nèi)的兩臺機(jī)器間的帶寬會比不同機(jī)架的兩臺機(jī)器間的帶寬大。 HDFS 采用一種稱為機(jī)架感知 (rackaware)的策略來改進(jìn)數(shù)據(jù)的可靠性、可用性和網(wǎng)絡(luò)帶寬的利用率。塊狀態(tài)報(bào)告包含了一個(gè)該 Datanode 上所有數(shù)據(jù)塊的列表。副本系數(shù)可以在文件創(chuàng)建的時(shí)候指定,也可以在之后改變。它將每個(gè)文件存儲成一系列的數(shù)據(jù)塊,除了最后一個(gè),所有的數(shù)據(jù)塊都是同樣大小的。 Namenode 負(fù)責(zé)維護(hù)文件系統(tǒng)的名字空間,任何對文件系統(tǒng)名字空間或?qū)傩缘男薷亩紝⒈?Namenode 記錄下來。用戶或者應(yīng)用程序可以創(chuàng)建目錄,然后將文件保存在這些目錄里。這種架構(gòu)并不排斥在一臺機(jī)器上運(yùn)行多個(gè) Datanode,只不過這樣的情況比較少見。這些機(jī)器一般運(yùn)行著 GNU/Linux操作系統(tǒng) (OS)。它也負(fù)責(zé)確定數(shù)據(jù)塊到具體 Datanode節(jié)點(diǎn)的 映射。集群中的 Datanode 一般是一個(gè)節(jié)點(diǎn)一個(gè),負(fù)責(zé)管理它所在節(jié)點(diǎn)上的存儲。這種特性方便了 HDFS 作為大規(guī)模數(shù)據(jù)應(yīng)用平臺的推廣。因?yàn)檫@樣就能降低網(wǎng)絡(luò)阻塞的影響,提高系統(tǒng)數(shù)據(jù)的吞吐量。這一假設(shè)簡化了數(shù)據(jù)一致性問題,并且使高吞吐量的數(shù)據(jù)訪問成為可能。它應(yīng)該能提供整體上高的數(shù)據(jù)傳輸帶寬,能在一個(gè)集群里擴(kuò)展到數(shù)百個(gè)節(jié)點(diǎn)。為了提高數(shù)據(jù)的吞吐量,在一些關(guān)鍵方面對 POSIX的語義做了一些修改。 流式數(shù)據(jù)訪問 運(yùn)行在 HDFS 上的應(yīng)用和普通的應(yīng)用不同,需要流式訪問它們的數(shù)據(jù)集。這個(gè)項(xiàng)目的地址是 二、前提和設(shè)計(jì)目標(biāo) 硬件錯誤 硬件錯誤是常態(tài)而不是異常。 HDFS 能提供高吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。 this policy does not impact data reliability and availability guarantees. However, it does reduce the aggregate work bandwidth used when reading data since a block is placed in only two unique racks rather than three. With this policy, the replicas of a file do not evenly dist
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1