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


1.Hadoop集群可以運行的3個模式?

  1. 單機(本地)模式
  2. 偽分布式模式
  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的推薦系統

 

轉自:http://shinepaopao.iteye.com/blog/2003620


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM