天天看點

Hadoop科普文—常見的45個問題解答

1.Hadoop叢集可以運作的3個模式?

單機(本地)模式

僞分布式模式

全分布式模式  

2.  單機(本地)模式中的注意點?

在單機模式(standalone)中不會存在守護程序,所有東西都運作在一個JVM上。這裡同樣沒有DFS,使用的是本地檔案系統。單機模式适用于開發過程中運作MapReduce程式,這也是最少使用的一個模式。

3.  僞分布模式中的注意點?

僞分布式(Pseudo)适用于開發和測試環境,在這個模式中,所有守護程序都在同一台機器上運作。

4.  VM是否可以稱為Pseudo?

不是,兩個事物,同時Pseudo隻針對Hadoop。

5.  全分布模式又有什麼注意點?

全分布模式通常被用于生産環境,這裡我們使用N台主機組成一個Hadoop叢集,Hadoop守護程序運作在每台主機之上。這裡會存在Namenode運作的主機,Datanode運作的主機,以及task tracker運作的主機。在分布式環境下,主節點和從節點會分開。

6.  Hadoop是否遵循UNIX模式?

是的,在UNIX用例下,Hadoop還擁有“conf”目錄。

7.  Hadoop安裝在什麼目錄下?

Cloudera和Apache使用相同的目錄結構,Hadoop被安裝在/usr/lib/hadoop-0.20/。

8.  Namenode、Job tracker和task tracker的端口号是?

Namenode,70;Job tracker,30;Task tracker,60。

9.  Hadoop的核心配置是什麼?

Hadoop的核心配置通過兩個xml檔案來完成:1,hadoop-default.xml;2,hadoop-site.xml。這些檔案都使用xml格式,是以每個xml中都有一些屬性,包括名稱和值,但是當下這些檔案都已不複存在。

10.  那當下又該如何配置?

Hadoop現在擁有3個配置檔案:1,core-site.xml;2,hdfs-site.xml;3,mapred-site.xml。這些檔案都儲存在conf/子目錄下。

11.  RAM的溢出因子是?

溢出因子(Spill factor)是臨時檔案中儲存檔案的大小,也就是Hadoop-temp目錄。

12.  fs.mapr.working.dir隻是單一的目錄?

fs.mapr.working.dir隻是一個目錄。

13.  hdfs-site.xml的3個主要屬性?

dfs.name.dir決定的是中繼資料存儲的路徑以及DFS的存儲方式(磁盤或是遠端) dfs.data.dir決定的是資料存儲的路徑 fs.checkpoint.dir用于第二Namenode  

14.  如何退出輸入模式?

按ESC;2,鍵入:q(如果你沒有輸入任何當下)

鍵入:wq(如果你已經輸入當下),并且按下Enter

15.  當你輸入hadoopfsck /造成“connection refused java exception’”時,系統究竟發生了什麼?

這意味着Namenode沒有運作在你的VM之上。

16.  我們使用Ubuntu及Cloudera,那麼我們該去哪裡下載下傳Hadoop,或者是預設就與Ubuntu一起安裝?

這個屬于Hadoop的預設配置,你必須從Cloudera或者Edureka的dropbox下載下傳,然後在你的系統上運作。當然,你也可以自己配置,但是你需要一個Linux box,Ubuntu或者是Red Hat。在Cloudera網站或者是Edureka的Dropbox中有安裝步驟。

17.  “jps”指令的用處?

這個指令可以檢查Namenode、Datanode、Task Tracker、 Job Tracker是否正常工作。

18.  如何重新開機Namenode?

點選stop-all.sh,再點選start-all.sh。 鍵入sudo hdfs(Enter),su-hdfs (Enter),/etc/init.d/ha(Enter),及/etc/init.d/hadoop-0.20-namenode start(Enter)。  

19.  Fsck的全名? 全名是:File System Check。

20.  如何檢查Namenode是否正常運作?

如果要檢查Namenode是否正常工作,使用指令/etc/init.d/hadoop-0.20-namenode status或者就是簡單的jps。  

21.  mapred.job.tracker指令的作用?

可以讓你知道哪個節點是Job Tracker。

22.  /etc /init.d指令的作用是?

/etc /init.d說明了守護程序(服務)的位置或狀态,其實是LINUX特性,和Hadoop關系不大。

23.  如何在浏覽器中查找Namenode?

如果你确實需要在浏覽器中查找Namenode,你不再需要localhost:8021,Namenode的端口号是50070。

24.  如何從SU轉到Cloudera?

從SU轉到Cloudera隻需要鍵入exit。

25.  啟動和關閉指令會用到哪些檔案?

Slaves及Masters。

26.  Slaves由什麼組成?

Slaves由主機的清單組成,每台1行,用于說明資料節點。

27.  Masters由什麼組成?

Masters同樣是主機的清單組成,每台一行,用于說明第二Namenode伺服器。

28.  hadoop-env.sh是用于做什麼的?

hadoop-env.sh提供了Hadoop中. JAVA_HOME的運作環境。

29.  Master檔案是否提供了多個入口?

是的,可以擁有多個Master檔案接口。

30.  hadoop-env.sh檔案當下的位置?

hadoop-env.sh現在位于conf。

31.  在Hadoop_PID_DIR中,PID代表了什麼?

PID代表了“Process ID”。

32.  /var/hadoop/pids用于做什麼?

/var/hadoop/pids用來存儲PID。

33.  hadoop-metrics.properties檔案的作用是?

hadoop-metrics.properties被用做“Reporting”,控制Hadoop報告,初始狀态是“not to report”。

34.  Hadoop需求什麼樣的網絡?

Hadoop核心使用Shell(SSH)來驅動從節點上的伺服器程序,并在主節點和從節點之間使用password-less SSH連接配接。

35.  全分布式環境下為什麼需求password-less SSH?

這主要因為叢集中通信過于頻繁,Job Tracker需要盡可能快的給Task Tracker釋出任務。

36.  這會導緻安全問題嗎?

完全不用擔心。Hadoop叢集是完全隔離的,通常情況下無法從網際網路進行操作。與衆不同的配置,是以我們完全不需要在意這種級别的安全漏洞,比如說通過網際網路侵入等等。Hadoop為機器之間的連接配接提供了一個相對安全的方式。

37.  SSH工作的端口号是?

SSH工作的端口号是NO.22,當然可以通過它來配置,22是預設的端口号。

38.  SSH中的注意點還包括?

SSH隻是個安全的shell通信,可以把它當做NO.22上的一種協定,隻需要配置一個密碼就可以安全的通路。

39.  為什麼SSH本地主機需要密碼?

在SSH中使用密碼主要是增加安全性,在某些情況下也根本不會設定密碼通信。

40.  如果在SSH中添加key,是否還需要設定密碼?

是的,即使在SSH中添加了key,還是需要設定密碼。

41.  假如Namenode中沒有資料會怎麼樣?

沒有資料的Namenode就不能稱之為Namenode,通常情況下,Namenode肯定會有資料。

42.  當Job Tracker宕掉時,Namenode會發生什麼?

當Job Tracker失敗時,叢集仍然可以正常工作,隻要Namenode沒問題。

43.  是用戶端還是Namenode決定輸入的分片?

這并不是用戶端決定的,在配置檔案中以及決定分片細則。

44.  是否可以自行搭建Hadoop叢集?

是的,隻要對Hadoop環境足夠熟悉,你完全可以這麼做。

45.  是否可以在Windows上運作Hadoop?

你最好不要這麼做,Red Hat Linux或者是Ubuntu才是Hadoop的最佳作業系統。在Hadoop安裝中,Windows通常不會被使用,因為會出現各種各樣的問題。是以,Windows絕對不是Hadoop的推薦系統

本文轉自jihite部落格園部落格,原文連結:http://www.cnblogs.com/kaituorensheng/p/3519810.html,如需轉載請自行聯系原作者

繼續閱讀