自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Hadoop入門經(jīng)典

開發(fā) 架構(gòu) Hadoop
Hadoop你是否了解,還有它是如何運行的呢,本文向大家介紹Hadoop入門的內(nèi)容,希望通過本文的介紹大家能夠輕松掌握Hadoop的一些基礎(chǔ)知識。

本節(jié)接著上節(jié)繼續(xù)向大家介紹一下Hadoop入門方面的知識,主要內(nèi)容有如何運行Hadoop程序和它的效率問題,歡迎大家一起來學(xué)習(xí)Hadoop入門,首先我們先看一下Hadoop的概念。

Hadoop簡介

Hadoop一個分布式系統(tǒng)基礎(chǔ)架構(gòu),由Apache基金會開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運算和存儲。
  簡單地說來,Hadoop是一個可以更容易開發(fā)和運行處理大規(guī)模數(shù)據(jù)的軟件平臺。
  Hadoop實現(xiàn)了一個分布式文件系統(tǒng)(HadoopDistributedFileSystem),簡稱HDFS。HDFS有著高容錯性(fault-tolerent)的特點,并且設(shè)計用來部署在低廉的(low-cost)硬件上。而且它提供高傳輸率(highthroughput)來訪問應(yīng)用程序的數(shù)據(jù),適合那些有著超大數(shù)據(jù)集(largedataset)的應(yīng)用程序。HDFS放寬了(relax)POSIX的要求(requirements)這樣可以流的形式訪問(streamingaccess)文件系統(tǒng)中的數(shù)據(jù)。

一、運行Hadoop程序
Hadoop入門首先看一下如何運行Hadoop程序。Hadoop這方面的文檔寫得不全面,綜合參考GettingStartedWithHadoop與NutchHadoopTutorial兩篇后,再碰了很多釘子才終于完整的跑起來了,記錄如下:

1.1local運行模式

完全不進行任何分布式計算,不動用任何namenode,datanode的做法,適合一開始做調(diào)試代碼。
解壓hadoop,其中conf目錄是配置目錄,hadoop的配置文件在hadoop-default.xml,如果要修改配置,不是直接修改該文件,而是修改hadoop-site.xml,將該屬性在hadoop-site.xml里重新賦值。
hadoop-default.xml的默認(rèn)配置已經(jīng)是local運行,不用任何修改,配置目錄里唯一必須修改的是hadoop-env.sh里JAVA_HOME的位置。
將編譯好的HadoopGrep與RegMapper.class放入hadoop/build/classes/demo/hadoop/目錄找一個比較大的log文件放入一個目錄,然后運行hadoop/bin/hadoopdemo.hadoop.HadoopGreplog文件所在目錄任意的輸出目錄grep的字符串。查看輸出目錄的結(jié)果,查看hadoop/logs/里的運行日志。在重新運行前,先刪掉輸出目錄。我們看一下Hadoop入門中運行Hadoop程序的第二種模式。


1.2單機集群運行模式

現(xiàn)在來搞一下只有單機的集群.假設(shè)以完成3.1中的設(shè)置,本機名為hadoopserver

第1步.然后修改hadoop-site.xml,加入如下內(nèi)容: 

  1. <property> 
  2. <name>fs.default.name</name> 
  3. <value>hadoopserver:9000</value> 
  4. </property> 
  5. <property> 
  6. <name>mapred.job.tracker</name> 
  7. <value>hadoopserver:9001</value> 
  8. </property> 
  9. <property> 
  10. <name>dfs.replication</name> 
  11. <value>1</value> 
  12. </property> 

從此就將運行從local文件系統(tǒng)轉(zhuǎn)向了hadoop的hdfs系統(tǒng),mapreduce的jobtracker也從local的進程內(nèi)操作變成了分布式的任務(wù)系統(tǒng),9000,9001兩個端口號是隨便選擇的兩個空余端口號。
另外,如果你的/tmp目錄不夠大,可能還要修改hadoop.tmp.dir屬性。

第2步.增加ssh不輸入密碼即可登陸。
因為Hadoop需要不用輸入密碼的ssh來進行調(diào)度,在不su的狀態(tài)下,在自己的home目錄運行ssh-keygen-trsa,然后一路回車生成密鑰,再進入.ssh目錄,cpid_rsa.pubauthorized_keys
詳細(xì)可以man一下ssh,此時執(zhí)行sshhadoopserver,不需要輸入任何密碼就能進入了。

3.格式化namenode,執(zhí)行
bin/hadoopnamenode-format

4.啟動Hadoop
執(zhí)行hadoop/bin/start-all.sh,在本機啟動namenode,datanode,jobtracker,tasktracker

5.現(xiàn)在將待查找的log文件放入hdfs,。
執(zhí)行hadoop/bin/hadoopdfs可以看到它所支持的文件操作指令。
執(zhí)行hadoop/bin/hadoopdfsputlog文件所在目錄in,則log文件目錄已放入hdfs的/user/user-name/in目錄中

6.現(xiàn)在來執(zhí)行Grep操作
hadoop/bin/hadoopdemo.hadoop.HadoopGrepinout
查看hadoop/logs/里的運行日志,重新執(zhí)行前。運行hadoop/bin/hadoopdfsrmrout刪除out目錄。

7.運行hadoop/bin/stop-all.sh結(jié)束。單機集群運行模式介紹完畢,我們看一下Hadoop入門中運行Hadoop程序的第三種集群運行模式。

1.3集群運行模式
假設(shè)已執(zhí)行完3.2的配置,假設(shè)第2臺機器名是hadoopserver2

1.創(chuàng)建與hadoopserver同樣的執(zhí)行用戶,將hadoop解壓到相同的目錄。

2.同樣的修改haoop-env.sh中的JAVA_HOME及修改與3.2同樣的hadoop-site.xml

3.將hadoopserver中的/home/username/.ssh/authorized_keys復(fù)制到hadoopserver2,保證hadoopserver可以無需密碼登陸hadoopserver2
scp/home/username/.ssh/authorized_keysusername@hadoopserver2:/home/username/.ssh/authorized_keys

4.修改hadoop-server的hadoop/conf/slaves文件,增加集群的節(jié)點,將localhost改為
hadoop-server
hadoop-server2

5.在hadoop-server執(zhí)行hadoop/bin/start-all.sh
將會在hadoop-server啟動namenode,datanode,jobtracker,tasktracker
在hadoop-server2啟動datanode和tasktracker

6.現(xiàn)在來執(zhí)行Grep操作
hadoop/bin/hadoopdemo.hadoop.HadoopGrepinout
重新執(zhí)行前,運行hadoop/bin/hadoopdfsrmrout刪除out目錄

7.運行hadoop/bin/stop-all.sh結(jié)束。


二、效率
經(jīng)測試,Hadoop并不是萬用靈丹,很取決于文件的大小和數(shù)量,處理的復(fù)雜度以及群集機器的數(shù)量,相連的帶寬,當(dāng)以上四者并不大時,hadoop優(yōu)勢并不明顯。
比如,不用hadoop用java寫的簡單grep函數(shù)處理100M的log文件只要4秒,用了hadooplocal的方式運行是14秒,用了hadoop單機集群的方式是30秒,用雙機集群10M網(wǎng)口的話更慢,慢到不好意思說出來的地步。本節(jié)關(guān)于Hadoop入門方面的內(nèi)容就介紹到這里。

【編輯推薦】

  1. Hadoop起源及其四大特性詳解
  2. Hadoop開源已經(jīng)實現(xiàn)
  3. Hadoop集群與Hadoop性能優(yōu)化
  4. Hadoop 從Yahoo向Google的技術(shù)轉(zhuǎn)折
  5. Yahoo公布Hadoop的源代碼
責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-05-27 17:17:37

Subversion入

2010-06-07 17:24:44

UML

2010-06-11 14:42:01

IS-IS路由協(xié)議

2010-08-06 09:06:26

FlexBuilder

2010-06-03 10:22:17

Hadoop入門

2010-05-21 12:50:45

Subversion快

2010-08-16 16:17:21

2025-03-21 14:31:14

NumPyPython數(shù)組

2010-08-04 09:51:05

Flex學(xué)習(xí)

2018-07-11 13:33:43

大數(shù)據(jù)人工智能Hadoop

2016-12-02 19:19:35

大數(shù)據(jù)Hadoop

2024-12-06 10:51:10

Hadoop大數(shù)據(jù)框架

2012-06-07 15:02:42

惠普激光打印機

2010-06-04 17:21:48

2021-07-27 11:39:40

鴻蒙HarmonyOS應(yīng)用

2021-07-29 09:55:59

鴻蒙HarmonyOS應(yīng)用

2022-09-27 12:00:58

HadoopK8S開源

2019-11-05 09:35:26

HDFSHadoopRAID

2013-10-15 10:18:17

2021-07-21 15:33:03

鴻蒙HarmonyOS應(yīng)用
點贊
收藏

51CTO技術(shù)棧公眾號