關於大資料hadoop的45個科普小知識

關於大資料hadoop的45個科普小知識

時至今日,Hadoop已成為最流行的離線資料處理平臺,然而它的叢集配置起來並不簡單。如果你學習Hadoop不久,相信下面這45個問題會對你有所幫助。

大資料和架構師相關課程可以點選文章末尾“瞭解更多”

在工作生活中,有些問題非常簡單,但往往搜尋半天也找不到所需的答案,在Hadoop的學習與使用過程中同樣如此。這裡為大家分享Hadoop叢集設定中經常出現的一些問題,以下為譯文:

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被安裝在cd/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. 如何退出輸入模式?

退出輸入的方式有:1,按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的推薦系統。

需要大資料hadoop的相關資料可以按以下方式獲取

關於大資料hadoop的45個科普小知識