日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hadoop入门进阶步步高(一)-环境准备

發布時間:2025/3/17 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hadoop入门进阶步步高(一)-环境准备 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

Hadoop從存儲上來說,是相似于冗余磁盤陣列(RAID)的存儲方式。將數據分散存儲并提供以提供吞吐量,它的存儲系統就是HDFSHadoop?Distuibute?Fils?System)。從計算上來說,它通過MapReduce模型,將大數據的計算分發到多臺計算機上完畢,再將結果合并,降低計算的時間。

Hadoop適合于:

1、超大數據的計算。

2、一次寫入、多次讀取的模式;

3、能夠跑在普通的硬件上。

?

Hadoop不適合:

1、低延遲的數據訪問。它是為高數據吞吐量應用優化的;

2、大量的小文件

Hadoopclient須要和namenode進行交互,而namenode中存放的是datanode的文件屬性,且都是在內存中,假設小文件過多。namenode是存放不了的;

3、多用戶寫入,隨意改動文件。

Hadoop適合于一次計算,多次讀取的場景,如搜索引擎,僅僅支持隨機讀取不支持隨機寫入,如HadoopLucene的集成就不能夠直接集成,由于Lucene支持隨機寫入。

?

本文將從使用的角度上談了怎樣搭建Hadoop、怎樣配置Hadoop、怎樣驗證Hadoop及在Hadoop上面運行計算。以及可能會遇到些什么樣的問題。

一、Hadoop環境搭建

由于Hadoop須要在Linux運行。而且Hadoop是基于Java的,在繼續進行以下的步驟之前,請確認你已經準備好Linux操作系統以及Java?6或以上版本號,而且已經正確的設置了JAVA_HOME。

?

1、下載Hadoop

搭建Hadpp的版本號為1.2.1?下載地址為:http://apache.fayea.com/apache-mirror/hadoop/common/hadoop-1.2.1/

?

2、安裝Hadoop

解壓縮Hadoop到隨意文件夾。我當前的Hadoop是將其解壓到文件夾/usr/local/hadoop-1.2.1,并在/etc/profile中設置好環境變量HADOOP_HOME(這個變量不是必須的,在1.2.1已經是Deprecated了,這里我之所以設置,還是為了方便)。以及將$HADOOP_HOME/bin文件夾添加到PATH中,這樣我們就能夠在隨意地方運行hadoop命令了,為了使用上的方便。再給”hadoop?fs”設一個名為hdfsalias方便使用,以下是我機器上/etc/profile添加的內容:

export?JAVA_HOME=/usr/local/jdk1.6.0_33

export?HADOOP_HOME=/usr/local/hadoop-1.2.1

export?CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin

#Alias?for?hadoop

alias?hdfs='hadoop?fs'

注:該文件的編輯須要root權限,改動完畢后,假設想馬上生效,須要通過source命令操作一下:

source?/etc/profile

否則就僅僅有退出又一次登陸才會生效。

?

3、準備ssh

Hadoop須要通過SSH和其他計算server進行溝通。所以首先要確定本機或者是其他Hadoop計算server。是否都已經安裝了ssh。

1)、確定系統是否安裝了sshssh-keygey

能夠通過which命令來確認

which?ssh

which?ssh-keygen

假設出現

/usr/bin/which:?no?ssh?in?(/usr/.....)則表示系統里面沒有安裝SSH服務。能夠通過www.openssh.com下載安裝

(2)、公布公鑰證書

運行例如以下命令:

ssh-keygen?-t?rsa?-P?''?-f?~/.ssh/id_rsa

~/.ssh/?文件夾會生成id_rsaid_rsa.pub兩個文件。將id_rsa.pub復制一份在~/.ssh/文件夾下,并重命名為authorized_keys,假設是單機搭建偽分布式。此時ssh的準備工作已經完畢了,假設使用全分布式環境,那么須要將authorized_keys(或authorized_keys中的內容追加到須要無password登陸的server的~/.ssh/authorized_keys文件里)及id_rsa(或id_rsa中的內容追加到須要無password登陸的server的~/.ssh/id_rsa文件里)兩個文件復制到各臺分布式slave機器的“~/.ssh文件夾中”中,這樣隨意兩臺機器之間互相通過ssh訪問。都不須要輸入password了。假設僅僅是復制到authorized_keysslave機器中,就僅僅能夠實現主到從的不輸password訪問。

注:假設須要遠程登陸的server上還沒有.ssh文件夾。那么就在登陸用戶的文件夾下新建.ssh文件夾,權限至少設置成744。假設.ssh文件夾下沒有authorized_keys文件。也新建該文件。并將其權限設置為644。

(3)測試登陸驗證

在本例中。採用的是在單機中搭建偽分布式系統,通過例如以下ssh命令嘗試登陸:

ssh?localhost

ssh?127.0.0.1

假設不再提示輸入password,直接登陸成功。那么SSH登陸就設置成功了。

總結

以上是生活随笔為你收集整理的Hadoop入门进阶步步高(一)-环境准备的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。