女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

hadoop環境的基本概念和部署方法

汽車玩家 ? 來源:今日頭條 ? 作者:不一樣的程序猿 ? 2020-03-15 17:14 ? 次閱讀

1概述

1.1目的

初步了解hadoop,初步掌握hadoop環境的部署方法。

1.2基本概念

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

HDFS是分布式文件系統,用于分布式存儲海量數據。

MapReduce是分布式數據處理模型,本質是并行處理

2基本概念

2.1HDFS

2.1.1HDFS是什么?

HADOOP DISTRIBUTED FILE SYSTEM,簡稱HDFS,是一個分布式文件系統。它是谷歌的GFS提出之后出現的另外一種文件系統。它有一定高度的容錯性,而且提供了高吞吐量的數據訪問,非常適合大規模數據集上的應用。HDFS 提供了一個高度容錯性和高吞吐量的海量數據存儲解決方案。

在最初,HADOOP是作為Apache Nutch搜索引擎項目的基礎架構而開發的,后來由于它獨有的特性,讓它成為HADOOP CORE項目的一部分。

2.1.2HDFS的設計思路?

是什么提供它高吞吐量的數據訪問和適合大規模數據集的應用的特性呢,這就要說一下它的設計思路。

首先HDFS的設計之初就是針對超大文件的存儲的,小文件不會提高訪問和存儲速度,反而會降低;其次它采用了最高效的訪問模式,也就是經常所說的流式數據訪問,特點就是一次寫入多次讀取;再有就是它運行在普通的硬件之上的,即使硬件故障,也就通過容錯來保證數據的高可用。

2.1.3HDFS的一些概念

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

Namenode:主要負責存儲一些metadata信息,主要包括文件目錄、block和文件對應關系,以及block和datanote的對應關系

Datanode:負責存儲數據,上面我們所說的高度的容錯性大部分在datanode上實現的[還有一部分容錯性是體現在namenode和secondname,還有jobtracker的容錯等]。

2.1.4HDFS的基礎架構圖

hadoop環境的基本概念和部署方法

HDFS的基礎架構圖

2.1.5解析HDFS帶來的好處

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

高容錯性:上面簡單的介紹了一下高度容錯。系統故障是不可避免的,如何做到故障之后的數據恢復和容錯處理是至關重要的。HDFS通過多方面保證數據的可靠性,多分復制并且分布到物理位置的不同服務器上,數據校驗功能、后臺的連續自檢數據一致性功能,都為高容錯提供了可能。

容量擴充:因為HDFS的block信息存放到namenode上,文件的block分布到datanode上,當擴充的時候,僅僅添加datanode數量,系統可以在不停止服務的情況下做擴充,不需要人工干預。

2.2MapReduce

從它名字上來看就大致可以看出個緣由,兩個動詞Map和Reduce。

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

2.2.1MapReduce原理

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

2.2.2Map的過程

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

當此task結束之前,所有的spill文件被合并為一個整的被partition的而且排好序的文件。reducer可以通過http協議請求map的輸出文件,tracker.http.threads可以設置http服務線程數。

2.2.3Reduce的過程

當map task結束后,其通知TaskTracker,TaskTracker通知JobTracker。對于一個job,JobTracker知道TaskTracer和map輸出的對應關系。reducer中一個線程周期性的向JobTracker請求map輸出的位置,直到其取得了所有的map輸出。reduce task需要其對應的partition的所有的map輸出。reduce task中的copy過程即當每個map task結束的時候就開始拷貝輸出,因為不同的map task完成時間不同。reduce task中有多個copy線程,可以并行拷貝map輸出。當很多map輸出拷貝到reduce task后,一個背景線程將其合并為一個大的排好序的文件。當所有的map輸出都拷貝到reduce task后,進入sort過程,將所有的map輸出合并為大的排好序的文件。最后進入reduce過程,調用reducer的reduce函數,處理排好序的輸出的每個key,最后的結果寫入HDFS。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Hadoop
    +關注

    關注

    1

    文章

    90

    瀏覽量

    16351
  • HDFS
    +關注

    關注

    1

    文章

    31

    瀏覽量

    9830
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    第十三章 通訊的基本概念

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

    了解虛擬電廠的基本概念

    虛擬電廠的基本概念: 虛擬電廠是一種基于現代信息技術和能源互聯網的能源管理模式,它將分散的、可再生能源和儲能設備通過虛擬化技術進行集成和管理,形成一個具有集中調度、統一運營和優化控制的虛擬化電力系統
    的頭像 發表于 12-24 17:12 ?782次閱讀
    了解虛擬電廠的<b class='flag-5'>基本概念</b>

    地線基本概念、分類及在應用中的設計與處理方法

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

    Linux應用編程的基本概念

    Linux應用編程涉及到在Linux環境下開發和運行應用程序的一系列概念。以下是一些涵蓋Linux應用編程的基本概念
    的頭像 發表于 10-24 17:19 ?570次閱讀

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

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

    紋波電壓的基本概念、產生原因及測量方法

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

    時序邏輯電路的基本概念、組成、分類及設計方法

    時序邏輯電路是數字電路中的一種重要類型,它不僅在計算機、通信、控制等領域有著廣泛的應用,而且對于理解和設計現代電子系統具有重要意義。 1. 時序邏輯電路的基本概念 時序邏輯電路(Sequential
    的頭像 發表于 08-28 11:45 ?3778次閱讀

    伺服系統基本概念和與變頻的關系

    伺服系統的基本概念是準確、精確、快速定位。這一概念貫穿于伺服系統的設計理念和運行機制中。為了實現這一目標,伺服系統采用了多種先進的控制策略和技術手段。其中,變頻技術是伺服控制的一個必不可少的內部環節
    的頭像 發表于 08-27 15:59 ?783次閱讀

    socket的基本概念和原理

    的通信。它是一個抽象的概念,用于表示網絡中的一個通信實體。在計算機網絡中,Socket允許應用程序通過網絡發送和接收數據。Socket的概念最早由UNIX操作系統引入,后來被廣泛應用于各種操作系統和編程語言中。 2. Socket的基本
    的頭像 發表于 08-16 10:51 ?3308次閱讀

    BP網絡的基本概念和訓練原理

    )的多層前饋神經網絡。BP網絡自1985年提出以來,因其強大的學習和適應能力,在機器學習、數據挖掘、模式識別等領域得到了廣泛應用。以下將對BP網絡的基本概念、訓練原理及其優缺點進行詳細闡述。
    的頭像 發表于 07-19 17:24 ?2827次閱讀

    卷積神經網絡的基本概念、原理及特點

    基本概念、原理、特點以及在不同領域的應用情況。 一、卷積神經網絡的基本概念 卷積神經網絡是一種深度學習算法,它由多層卷積層和池化層堆疊而成。卷積層負責提取圖像中的局部特征,而池化層則負責降低特征的空間維度,同時增加對圖像位移的不變性。通過這種方式,CNN能夠自
    的頭像 發表于 07-11 14:38 ?2248次閱讀

    遷移學習的基本概念和實現方法

    遷移學習(Transfer Learning)是機器學習領域中的一個重要概念,其核心思想是利用在一個任務或領域中學到的知識來加速或改進另一個相關任務或領域的學習過程。這種方法在數據稀缺或領域遷移的情況下尤為有效,因為它能夠顯著減少對大量標記數據的需求,提高模型的學習效率和
    的頭像 發表于 07-04 17:30 ?3228次閱讀

    循環神經網絡的基本概念

    循環神經網絡的基本概念、循環機制、長短時記憶網絡(LSTM)、門控循環單元(GRU)等方面進行介紹。 循環神經網絡的基本概念 循環神經網絡是一種時間序列模型,其基本思想是將序列數據中的每個元素(例如,單詞、時間點等)作為輸入,通過循環結構將前一個時間步的
    的頭像 發表于 07-04 14:31 ?1201次閱讀

    組合邏輯控制器的基本概念、實現原理及設計方法

    廣泛應用于計算機、通信、控制等領域。 本文將詳細介紹組合邏輯控制器的基本概念、實現原理、設計方法、應用場景等方面的內容,以幫助讀者全面了解組合邏輯控制器。 基本概念 1.1 組合邏輯 組合邏輯(Combinatorial Log
    的頭像 發表于 06-30 10:26 ?3150次閱讀

    串口通信的基本概念

    串口通信(Serial Communications)的基本概念可以歸納為以下幾個方面:
    的頭像 發表于 06-12 09:28 ?1358次閱讀
    串口通信的<b class='flag-5'>基本概念</b>