0.Mappereduce採用的是Master/Slaves模型java
1.Hadoop是一個開源軟件框架,支持支持大數據集的存儲和處理。Apache Hadoop是存儲和處理大數據的解決方案你是由於:node
(1)可擴展性。添加任意數量的節點來提升性能架構
(2)可靠。儘管機器出現故障,可是仍能可靠的存儲數據app
(3)高可用。儘管機器出現故障,可是Hadoop仍然可以存儲數據。若是機器硬件崩潰,能夠從另外一個路徑進行訪問。框架
(4)經濟。分佈式
2.Hadoop的核心組件是什麼?oop
Hadoop是一個開源軟件框架,用於分佈式存儲和處理大數據集。Apache Hadoop核心組件是HDFS,MapReduce和YARN性能
HDFS:Hadoop分佈式文件系統(HDFS)是Hadoop的主要存儲系統。工做原理:存儲少許的大文件而不是存儲大量的小文件,即便是在硬件故障的狀況下,HDFS也能夠可靠的存儲數據。經過並行訪問提供對應用程序的高吞吐量的訪問測試
MapReduce:是Hadoop的數據處理層。是可以處理存儲在HDFS中的大型結構化和非結構化數據的應用程序。MapReduce可以並行處理大量的數據。經過將做業劃分爲一組獨立的子任務來進行處理,MapReduce的工做階段能夠分爲Map階段和Reduce階段大數據
YARN:資源調度框架。提供資源管理並容許多個數據引擎處理。
3.Hadoop的特色。
(1)開源。
(2)分佈式處理:由於HDFS以分佈式的方式在整個集羣上存儲數據,因此MapReduce在集羣上是並行的處理數據
(3)可靠性:儘管機器出現故障,可是仍然可以在集羣上可靠的存儲數據
(4)高可用性:儘管硬件出現故障,咱們可以從另外一路徑訪問數據
(5)可擴展性:能夠將新硬件添加帶節點上
(6)經濟
(7)易於使用
4.比較Hadoop和RDBMS?
(1):架構,傳統RDBMS具備ACID的屬性。而Hadoop是一個計算框架,具備兩個主要的組件:分佈式文件系統(HDFS)和MapReduce
(2)數據接收。RDBMS僅能狗接收結構化的數據,而hadoop可以接收結構化數據和非結構數據
(3)傳統RDBMS支持OLTP(實時數據處理),而hadoop不支持的。
5.Hadoop的運行模式有哪些?
(1)本地模式:單節點非分佈式模式運行,做爲單個的java進程進行運行。
(2)爲分佈式
(3)徹底分佈式。
6.本地模式有哪些功能?
hadoop做爲單個java進程以單節點非分佈式模式來運行,使用本地文件系統進行相關的輸入和輸出。僅在測試和調試的時候比較有用
7.僞分佈模式有哪些特色?
等同於徹底分佈式,可是全部的節點都運行在一個節點上
配置core-site.xml文件:
<?xml version="1.0"?> <!-- core-site.xml --> <configuration> <property> <name>fs.defaultFS</name> //這個地方配置類默認的文件系統,若是是本地模式就是localhost,使用的主機名和端口,最經常使用的是9000 <value>hdfs://localhost/</value> </property> </configuration>
配置hddfs-site.xml文件
<?xml version="1.0"?> <!-- hdfs-site.xml --> <configuration> <property> <name>dfs.replication</name> <value>1</value> //查看配置的副本數 </property> </configuration>
配置mapreduce
<configuration> <property> <name>mapreduce.framework.name</name> //爲MapReduce指定框架名稱 <value>yarn</value> </property> </configuration>
配置shuffle以及資源管理器的地址
<configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
8.列舉出hadoop中定義的最經常使用的InputFormat哪一個是默認的