一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

hadoop環(huán)境的基本概念和部署方法

汽車玩家 ? 來源:今日頭條 ? 作者:不一樣的程序猿 ? 2020-03-15 17:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1概述

1.1目的

初步了解hadoop,初步掌握hadoop環(huán)境的部署方法。

1.2基本概念

hadoop的核心主要包含:HDFS和MapReduce

HDFS是分布式文件系統(tǒng),用于分布式存儲(chǔ)海量數(shù)據(jù)。

MapReduce是分布式數(shù)據(jù)處理模型,本質(zhì)是并行處理

2基本概念

2.1HDFS

2.1.1HDFS是什么?

HADOOP DISTRIBUTED FILE SYSTEM,簡稱HDFS,是一個(gè)分布式文件系統(tǒng)。它是谷歌的GFS提出之后出現(xiàn)的另外一種文件系統(tǒng)。它有一定高度的容錯(cuò)性,而且提供了高吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。HDFS 提供了一個(gè)高度容錯(cuò)性和高吞吐量的海量數(shù)據(jù)存儲(chǔ)解決方案。

在最初,HADOOP是作為Apache Nutch搜索引擎項(xiàng)目的基礎(chǔ)架構(gòu)而開發(fā)的,后來由于它獨(dú)有的特性,讓它成為HADOOP CORE項(xiàng)目的一部分。

2.1.2HDFS的設(shè)計(jì)思路?

是什么提供它高吞吐量的數(shù)據(jù)訪問和適合大規(guī)模數(shù)據(jù)集的應(yīng)用的特性呢,這就要說一下它的設(shè)計(jì)思路。

首先HDFS的設(shè)計(jì)之初就是針對超大文件的存儲(chǔ)的,小文件不會(huì)提高訪問和存儲(chǔ)速度,反而會(huì)降低;其次它采用了最高效的訪問模式,也就是經(jīng)常所說的流式數(shù)據(jù)訪問,特點(diǎn)就是一次寫入多次讀?。辉儆芯褪撬\(yùn)行在普通的硬件之上的,即使硬件故障,也就通過容錯(cuò)來保證數(shù)據(jù)的高可用。

2.1.3HDFS的一些概念

Block:大文件的存儲(chǔ)會(huì)被分割為多個(gè)block進(jìn)行存儲(chǔ)。默認(rèn)為64MB,每一個(gè)blok會(huì)在多個(gè)datanode上存儲(chǔ)多份副本,默認(rèn)為3份。[這些設(shè)置都能夠通過配置文件進(jìn)行更改]

Namenode:主要負(fù)責(zé)存儲(chǔ)一些metadata信息,主要包括文件目錄、block和文件對應(yīng)關(guān)系,以及block和datanote的對應(yīng)關(guān)系

Datanode:負(fù)責(zé)存儲(chǔ)數(shù)據(jù),上面我們所說的高度的容錯(cuò)性大部分在datanode上實(shí)現(xiàn)的[還有一部分容錯(cuò)性是體現(xiàn)在namenode和secondname,還有jobtracker的容錯(cuò)等]。

2.1.4HDFS的基礎(chǔ)架構(gòu)圖

hadoop環(huán)境的基本概念和部署方法

HDFS的基礎(chǔ)架構(gòu)圖

2.1.5解析HDFS帶來的好處

高吞吐量訪問:HDFS的每個(gè)block分布在不同的rack上,在用戶訪問時(shí),HDFS會(huì)計(jì)算使用最近和訪問量最小的服務(wù)器給用戶提供。由于block在不同的rack上都有備份,所以不再是單數(shù)據(jù)訪問,所以速度和效率是非??斓?。另外HDFS可以并行從服務(wù)器集群中讀寫,增加了文件讀寫的訪問帶寬。

高容錯(cuò)性:上面簡單的介紹了一下高度容錯(cuò)。系統(tǒng)故障是不可避免的,如何做到故障之后的數(shù)據(jù)恢復(fù)和容錯(cuò)處理是至關(guān)重要的。HDFS通過多方面保證數(shù)據(jù)的可靠性,多分復(fù)制并且分布到物理位置的不同服務(wù)器上,數(shù)據(jù)校驗(yàn)功能、后臺(tái)的連續(xù)自檢數(shù)據(jù)一致性功能,都為高容錯(cuò)提供了可能。

容量擴(kuò)充:因?yàn)镠DFS的block信息存放到namenode上,文件的block分布到datanode上,當(dāng)擴(kuò)充的時(shí)候,僅僅添加datanode數(shù)量,系統(tǒng)可以在不停止服務(wù)的情況下做擴(kuò)充,不需要人工干預(yù)。

2.2MapReduce

從它名字上來看就大致可以看出個(gè)緣由,兩個(gè)動(dòng)詞Map和Reduce。

Map(展開)就是將一個(gè)任務(wù)分解成為多個(gè)任務(wù),Reduce就是將分解后多任務(wù)處理的結(jié)果匯總起來,得出最后的分析結(jié)果。

2.2.1MapReduce原理

在Hadoop中,每個(gè)MapReduce任務(wù)都被初始化為一個(gè)Job,每個(gè)Job又可以分為兩種階段:map階段和reduce階段。這兩個(gè)階段分別用兩個(gè)函數(shù)表示,即map函數(shù)和reduce函數(shù)。map函數(shù)接收一個(gè)形式的輸入,然后同樣產(chǎn)生一個(gè)形式的中間輸出,Hadoop函數(shù)接收一個(gè)如形式的輸入,然后對這個(gè)value集合進(jìn)行處理,每個(gè)reduce產(chǎn)生0或1個(gè)輸出,reduce的輸出也是形式的。

2.2.2Map的過程

MapRunnable從input split中讀取一個(gè)個(gè)的record,然后依次調(diào)用Mapper的map函數(shù),將結(jié)果輸出。map的輸出并不是直接寫入硬盤,而是將其寫入緩存memory buffer。當(dāng)buffer中數(shù)據(jù)的到達(dá)一定的大小,一個(gè)背景線程將數(shù)據(jù)開始寫入硬盤。在寫入硬盤之前,內(nèi)存中的數(shù)據(jù)通過partitioner分成多個(gè)partition。在同一個(gè)partition中,背景線程會(huì)將數(shù)據(jù)按照key在內(nèi)存中排序。每次從內(nèi)存向硬盤flush數(shù)據(jù),都生成一個(gè)新的spill文件。

當(dāng)此task結(jié)束之前,所有的spill文件被合并為一個(gè)整的被partition的而且排好序的文件。reducer可以通過http協(xié)議請求map的輸出文件,tracker.http.threads可以設(shè)置http服務(wù)線程數(shù)。

2.2.3Reduce的過程

當(dāng)map task結(jié)束后,其通知TaskTracker,TaskTracker通知JobTracker。對于一個(gè)job,JobTracker知道TaskTracer和map輸出的對應(yīng)關(guān)系。reducer中一個(gè)線程周期性的向JobTracker請求map輸出的位置,直到其取得了所有的map輸出。reduce task需要其對應(yīng)的partition的所有的map輸出。reduce task中的copy過程即當(dāng)每個(gè)map task結(jié)束的時(shí)候就開始拷貝輸出,因?yàn)椴煌膍ap task完成時(shí)間不同。reduce task中有多個(gè)copy線程,可以并行拷貝map輸出。當(dāng)很多map輸出拷貝到reduce task后,一個(gè)背景線程將其合并為一個(gè)大的排好序的文件。當(dāng)所有的map輸出都拷貝到reduce task后,進(jìn)入sort過程,將所有的map輸出合并為大的排好序的文件。最后進(jìn)入reduce過程,調(diào)用reducer的reduce函數(shù),處理排好序的輸出的每個(gè)key,最后的結(jié)果寫入HDFS。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Hadoop
    +關(guān)注

    關(guān)注

    1

    文章

    90

    瀏覽量

    16470
  • HDFS
    +關(guān)注

    關(guān)注

    1

    文章

    31

    瀏覽量

    9886
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    第十三章 通訊的基本概念

    本章介紹通訊基本概念,包括串行/并行、全雙工/半雙工/單工、同步/異步通訊,還提及通訊速率中比特率與波特率的概念。
    的頭像 發(fā)表于 05-22 17:29 ?1226次閱讀
    第十三章 通訊的<b class='flag-5'>基本概念</b>

    了解虛擬電廠的基本概念

    虛擬電廠的基本概念: 虛擬電廠是一種基于現(xiàn)代信息技術(shù)和能源互聯(lián)網(wǎng)的能源管理模式,它將分散的、可再生能源和儲(chǔ)能設(shè)備通過虛擬化技術(shù)進(jìn)行集成和管理,形成一個(gè)具有集中調(diào)度、統(tǒng)一運(yùn)營和優(yōu)化控制的虛擬化電力系統(tǒng)
    的頭像 發(fā)表于 12-24 17:12 ?958次閱讀
    了解虛擬電廠的<b class='flag-5'>基本概念</b>

    地線基本概念、分類及在應(yīng)用中的設(shè)計(jì)與處理方法

    地線在電氣系統(tǒng)中的作用常被忽略,但它卻是保障設(shè)備運(yùn)行和人身安全的重要組成部分。本文將帶您深入了解地線的基本概念、分類及其在實(shí)際應(yīng)用中的設(shè)計(jì)與處理方法。 一、地線的主要作用 地線的核心功能是當(dāng)電器發(fā)生
    的頭像 發(fā)表于 12-03 09:55 ?2462次閱讀

    Linux應(yīng)用編程的基本概念

    Linux應(yīng)用編程涉及到在Linux環(huán)境下開發(fā)和運(yùn)行應(yīng)用程序的一系列概念。以下是一些涵蓋Linux應(yīng)用編程的基本概念
    的頭像 發(fā)表于 10-24 17:19 ?655次閱讀

    X電容和Y電容的基本概念

    在電子電路中,電容器是一種至關(guān)重要的元件,它用于儲(chǔ)存電荷并在電路中釋放能量。而在眾多的電容器中,X電容和Y電容作為安規(guī)電容,因其特定的應(yīng)用場景和安全性能而受到廣泛關(guān)注。本文將對X電容和Y電容的基本概念、工作原理、應(yīng)用場景以及選擇和維護(hù)等方面進(jìn)行詳細(xì)介紹。
    的頭像 發(fā)表于 10-21 16:43 ?5623次閱讀

    集電極開路的基本概念與原理

    在集成電路的廣闊領(lǐng)域中,集電極開路作為一種獨(dú)特的輸出形式,扮演著舉足輕重的角色。它如同一個(gè)精密控制的開關(guān),既能實(shí)現(xiàn)電路的通斷,又能靈活應(yīng)對不同的電流需求。 集電極開路的基本概念與原理 集電極開路
    的頭像 發(fā)表于 09-19 10:19 ?1186次閱讀
    集電極開路的<b class='flag-5'>基本概念</b>與原理

    DDR4的基本概念和特性

    里程碑。自2011年面世以來,DDR4憑借其顯著的性能提升和能效優(yōu)化,迅速成為市場主流。以下將從DDR4的基本概念、技術(shù)特性、性能優(yōu)勢以及市場應(yīng)用等方面進(jìn)行詳細(xì)闡述。
    的頭像 發(fā)表于 09-04 11:43 ?5944次閱讀

    紋波電壓的基本概念、產(chǎn)生原因及測量方法

    ,因此對紋波電壓的研究具有重要的實(shí)際意義。 紋波電壓的基本概念 2.1 紋波電壓的定義 紋波電壓是指在直流電源或信號(hào)中疊加的周期性波動(dòng)電壓。紋波電壓通常表現(xiàn)為正弦波形,其頻率與電源或信號(hào)的頻率相同。紋波電壓的大小通常用
    的頭像 發(fā)表于 08-29 09:34 ?4190次閱讀

    時(shí)序邏輯電路的基本概念、組成、分類及設(shè)計(jì)方法

    時(shí)序邏輯電路是數(shù)字電路中的一種重要類型,它不僅在計(jì)算機(jī)、通信、控制等領(lǐng)域有著廣泛的應(yīng)用,而且對于理解和設(shè)計(jì)現(xiàn)代電子系統(tǒng)具有重要意義。 1. 時(shí)序邏輯電路的基本概念 時(shí)序邏輯電路(Sequential
    的頭像 發(fā)表于 08-28 11:45 ?4280次閱讀

    伺服系統(tǒng)基本概念和與變頻的關(guān)系

    伺服系統(tǒng)的基本概念是準(zhǔn)確、精確、快速定位。這一概念貫穿于伺服系統(tǒng)的設(shè)計(jì)理念和運(yùn)行機(jī)制中。為了實(shí)現(xiàn)這一目標(biāo),伺服系統(tǒng)采用了多種先進(jìn)的控制策略和技術(shù)手段。其中,變頻技術(shù)是伺服控制的一個(gè)必不可少的內(nèi)部環(huán)節(jié)
    的頭像 發(fā)表于 08-27 15:59 ?891次閱讀

    勵(lì)磁電阻的基本概念、影響因素及測量方法

    勵(lì)磁電阻是發(fā)電機(jī)、變壓器等電氣設(shè)備中的一個(gè)重要參數(shù),它對設(shè)備的運(yùn)行性能和穩(wěn)定性有著重要的影響。 一、勵(lì)磁電阻的基本概念 1.1 勵(lì)磁電阻的定義 勵(lì)磁電阻是指在發(fā)電機(jī)、變壓器等電氣設(shè)備中,由于勵(lì)磁電
    的頭像 發(fā)表于 08-26 11:12 ?5216次閱讀

    陷波濾波器的工作原理、設(shè)計(jì)方法基本概念

    陷波濾波器是一種特殊類型的濾波器,用于抑制特定頻率的信號(hào),同時(shí)允許其他頻率的信號(hào)通過。在許多應(yīng)用中,如音頻處理、通信系統(tǒng)和電力電子設(shè)備中,陷波濾波器起著至關(guān)重要的作用。 陷波濾波器的基本概念 1.1
    的頭像 發(fā)表于 08-21 11:20 ?5660次閱讀

    socket的基本概念和原理

    的通信。它是一個(gè)抽象的概念,用于表示網(wǎng)絡(luò)中的一個(gè)通信實(shí)體。在計(jì)算機(jī)網(wǎng)絡(luò)中,Socket允許應(yīng)用程序通過網(wǎng)絡(luò)發(fā)送和接收數(shù)據(jù)。Socket的概念最早由UNIX操作系統(tǒng)引入,后來被廣泛應(yīng)用于各種操作系統(tǒng)和編程語言中。 2. Socket的基本
    的頭像 發(fā)表于 08-16 10:51 ?4685次閱讀

    組合邏輯電路的基本概念、組成及設(shè)計(jì)方法

    組合邏輯電路是一種數(shù)字電路,其輸出狀態(tài)完全取決于當(dāng)前輸入狀態(tài)。這種電路沒有記憶功能,即不包含存儲(chǔ)元件。組合邏輯電路廣泛應(yīng)用于數(shù)字系統(tǒng)中,如計(jì)算機(jī)、通信設(shè)備和控制系統(tǒng)等。 組合邏輯電路的基本概念
    的頭像 發(fā)表于 08-11 11:22 ?3388次閱讀

    BP網(wǎng)絡(luò)的基本概念和訓(xùn)練原理

    )的多層前饋神經(jīng)網(wǎng)絡(luò)。BP網(wǎng)絡(luò)自1985年提出以來,因其強(qiáng)大的學(xué)習(xí)和適應(yīng)能力,在機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘、模式識(shí)別等領(lǐng)域得到了廣泛應(yīng)用。以下將對BP網(wǎng)絡(luò)的基本概念、訓(xùn)練原理及其優(yōu)缺點(diǎn)進(jìn)行詳細(xì)闡述。
    的頭像 發(fā)表于 07-19 17:24 ?3209次閱讀