Hadoop之本地執行模式詳解
Hadoop的執行模式分為3種:本地執行模式,偽分佈執行模式,叢集執行模式,相應概念如下:
1、獨立模式即本地執行模式(standalone或local mode)
無需執行任何守護程序(daemon),所有程式都在單個JVM上執行。由於在本機模式下測試和除錯MapReduce程式較為方便,因此,這種模式適宜用在開發階段。2、偽分佈執行模式
偽分佈:如果hadoop對應的Java程序都執行在一個物理機器上,稱為偽分佈執行模式,如下圖所示:- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
3、叢集模式
如果Hadoop對應的Java程序執行在多臺物理機器上,稱為叢集模式.[叢集就是有主有從] ,如下圖所示:- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 1
- 2
- 3
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
注意:偽分佈模式就是在一臺伺服器上面模擬叢集環境,但僅僅是機器數量少,其通訊機制與執行過程與真正的叢集模式是一樣的,hadoop的偽分佈執行模式可以看做是叢集執行模式的特殊情況。
為了方便文章的後續說明,先介紹一下hadoop的體系結構:
從Hadoop的體系結構可以看出,HDFS與MapReduce分別是Hadoop的標配檔案系統與標配計算框架,但是呢?–我們完全可以選擇別的檔案系統(如Windows的NTFS,Linux的ext4)與別的計算框架(如Spark、storm等)為Hadoop所服務,這恰恰說明了hadoop的鬆耦合性。在hadoop的配置檔案中,我們是通過core-site.xml這個配置檔案指定所用的檔案系統的。
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
下面將基於linux與Windows兩種開發環境詳細說明hadoop的本地執行模式,其中核心知識點如下:
Hadoop的本地執行模式:
1、在windows的eclipse裡面直接執行main方法,就會將job提交給本地執行器localjobrunner執行
—-輸入輸出資料可以放在本地路徑下(c:/wc/srcdata/)
—-輸入輸出資料也可以放在hdfs中(hdfs://hadoop20:9000/dir)
2、在linux的eclipse裡面直接執行main方法,但是不要新增yarn相關的配置,也會提交給localjobrunner執行
—-輸入輸出資料可以放在本地路徑下(/usr/local/)
—-輸入輸出資料也可以放在hdfs中(hdfs://hadoop20:9000/dir)
首先先基於Linux的開發環境進行介紹:
以WordCount程式為例,輸入輸出檔案都放在本地路徑下,程式碼如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
在程式的執行過程中,相應的java程序如下:
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
下面我們在本地檢視執行結果:
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
接下來我們將輸入路徑選擇HDFS檔案系統中的路徑,輸出路徑還是本地linux檔案系統,首先我們在linux上面啟動HDFS分散式檔案系統。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-
相關推薦
Hadoop之本地執行模式詳解
Hadoop的執行模式分為3種:本地執行模式,偽分佈執行模式,叢集執行模式,相應概念如下: 1、獨立模式即本地執行模式(standalone或local mode) 無需執行任何守護程序(daemon),所有程式都在單個JVM上執行。由於在本機模式下測試和
設計模式之觀察者模式詳解
http 通知 stat 發布-訂閱 () class arraylist nag .cn 觀察者模式又稱為發布-訂閱模式,涉及的角色有: ● 抽象主題 ● 具體主題 ● 抽象觀察者 ● 具體觀察者 案例演示:公司發放工資的時候通知所有觀察者工資已發
設計模式之 簡單工廠模式詳解
技術分享 接口 create [] 幫助 cut 小蘿莉 filter 類之間的關系 定義:從設計模式的類型上來說,簡單工廠模式是屬於創建型模式,又叫做靜態工廠方法(Static Factory Method)模式,但不屬於23種GOF設計模式之一。簡單工廠模式是由一個工廠
( 轉 ) MySQL高級 之 explain執行計劃詳解
ont dex 常見 fulltext lte name system details 無法 使用explain關鍵字可以模擬優化器執行SQL查詢語句,從而知道MySQL是如何處理你的SQL語句的,分析你的查詢語句或是表結構的性能瓶頸。 explain執行計劃包含的信息
面試題之——多執行緒詳解
多執行緒作為Java中很重要的一個知識點,在此還是有必要總結一下的。 一.執行緒的生命週期及五種基本狀態 關於Java中執行緒的生命週期,首先看一下下面這張較為經典的圖: 上圖中基本上囊括了Java中多執行緒各重要知識點。掌握了上圖中的各知識點,Java中的多執行緒也就基本上掌握了。主
Mysql之Expain執行計劃詳解
使用explain關鍵字可以模擬優化器執行SQL查詢語句,從而知道MySQL是如何處理你的SQL語句的,分析你的查詢語句或是表結構的效能瓶頸。 explain執行計劃包含的資訊 其中最重要的欄位為:id、type、key、rows、Extra
設計模式之單例模式詳解
單例模式寫法大全,也許有你不知道的寫法 導航 引言 什麼是單例? 單例模式作用 單例模式的實現方法 引言 單例模式想必是大家接觸的比較多的一種模式了,就算沒用過但是肯定聽過他的鼎鼎大名了。在我初入程式設計界時聽到最多的就是單例模式,工廠模式,觀察者模式了。特別是觀察者模
設計模式(建立型):Java常用23種設計模式之單例模式詳解以及Java程式碼實現
可以說單例模式是所有設計模式中最簡單的一種。 單例模式就是說系統中對於某類的只能有一個物件,不可能出來第二個。 單例模式也是23中設計模式中在面試時少數幾個會要求寫程式碼的模式之一。主要考察的是多執行緒下面單例模式的執行緒安全性問題。 1.多執行緒安全單例模式例項一(不使用同步鎖)
hadoop[11]-本地執行模式
每次除錯都打包上傳到伺服器,效率很低,所以可以在本地模擬執行,以第9節的程式碼為例,設定要處理的文字和輸出目錄為本地目錄: //設定要處理的文字資料存放路徑 FileInputFormat.setInputPaths(wordCountJob, "d:/wordcount/srcdata"); //設
MySQL高階 之 explain執行計劃詳解
使用explain關鍵字可以模擬優化器執行SQL查詢語句,從而知道MySQL是如何處理你的SQL語句的,分析你的查詢語句或是表結構的效能瓶頸。 explain執行計劃包含的資訊 其中最重要的欄位為:id、type、key、rows、Extra 各欄位詳解 id
Spark執行模式詳解
Spark執行模式 Local模式 Local[n] 本地模式 啟動n個執行緒 Local模式通常用於測試用,直接bin/spark-shell啟動即可。 Standalone模式 Standalone是Spark自帶的資源管理器,無需依賴任何其他資源管理系統 配置
javascript中設計模式之橋接模式詳解(Bridge design)
一、橋接模式 1、橋接模式是一種既能把倆個物件連線在一起,又能避免二者間的強耦合的方法。通過“橋”把彼此聯絡起來,同時又允許他們各自獨立變化 2、橋接模式主要作用就是將抽象與其實現隔離開來,以便二者獨
Java與模式之建造者模式詳解
建造模式是物件的建立模式。建造模式可以將一個產品的內部表象與產品的生成過程分割開來,從而可以使一個建造過程生成具有不同的內部表象的產品物件。 產品的內部表象 一個產品常有不同的組成成分作為產品的零件,這些零件有可能是物件,也有可能不是物件,它們通常又叫做產品的內部表象。不同
Hadoop之HDFS容錯機制詳解
一、HDFS容錯機制 1.1、故障型別(三類故障) 1)節點失敗 2)網路故障 3)資料損壞(髒資料) 1.2、故障檢測機制 1)節點失敗檢測機制 2)通訊故障檢測機制 3)資料錯誤檢
MySQL系列-優化之explain執行計劃詳解
1.id介紹 這個id不是主鍵的意思,他是用來標識select查詢的序列號,包含一組數字,表示查詢中執行select子句或者操作表的順序。 會出現以下情況: id相同:按從上到下順序執行 id不同:id值越大,優先順序越高,越先被執行 id相同不同的同時存在:優先執
大資料基礎課之Hadoop MapReduce執行過程詳解
述一下mapreduce的流程(shuffle的sort,partitions,group) 首先是 Mapreduce經過SplitInput 輸入分片 決定map的個數在用Record記錄 key value。然後分為以下三個流程: Map: 輸入 key
javascript設計模式詳解之命令模式
這一 clas 例子 別了 logs 操作 book 技術 概念 每種設計模式的出現都是為了彌補語言在某方面的不足,解決特定環境下的問題。思想是相通的。只不過不同的設計語言有其特定的實現。對javascript這種動態語言來說,弱類型的特性,與生俱來的多態性,導致某些設
javascript運行機制之執行順序詳解
onload 預編譯 c# step 而且 () 我們 術語 aaa JavaScript是一種描述型腳本語言,它不同於java或C#等編譯性語言,它不需要進行編譯成中間語言,而是由瀏覽器進行動態地解析與執行。那麽JavaScript是怎麽來進行解析的嗎?它的執行順序又是如
Hadoop本地執行模式下執行官方案例(Grep和WordCount)
官方Grep案例 #1,在hadoop-2.7.2檔案下建立input資料夾 [[email protected] hadoop-2.7.2]$ mkdir input [[email protected] hadoop-2.7.2]$ ll 總用量 56 drwx
Jmater (十七) 命令列(非GUI)模式詳解(二) 執行代理設定
閒話少述,接 上文繼續。。。 5、設定代理 jmeter -n -t Jmeter分散式測試示例.jmx -H 20.9.215.90 -P 9999 -1 report\01-result.csv -j report\01-log.log 注意:-H 20.9.215.9