❶ 大數據與Hadoop之間的關系
大數據開發人員可復以制通過Hadoop提供的系統級服務支持從而幫助企業完成大數據改造,對於開發人員來說,只需要關注於具體的服務實現就可以了,系統級功能已經由Hadoop提供了實現。所以,Hadoop是大數據開發人員的重要基礎。
由於Hadoop對硬體的要求並不高,所以很多初學者(有Ja-va基礎)都是從Hadoop開始學習大數據的,目前很多商用大數據平台也是基於Hadoop的。
❷ 如何刪除 hadoop spark 歷史application
hadoop 添加刪除datanode及tasktracker
首先:
建議datanode和tasktracker分開寫獨立的exclude文件,因為一個節點即可以同時是datanode和tasktracker,也可以單獨是datanode或tasktracker。
1、刪除datanode
修改namenode上的hdfs-site.xml
<property>
<name>dfs.hosts</name>
<value>/usr/local/hadoop/conf/datanode-allow-list</value>
</property>
<property>
<name>dfs.hosts.exclude</name>
<value>/usr/local/hadoop/conf/datanode-deny-list</value>
</property>
其中dfs.host列出了連入namenode的節點,如果為空,則所有的datanode都可以連入namenode。如果不為空,則文件中存在的datanode可以連入。
dfs.hosts.exclude列出了禁止連入namenode的節點。
如果一個節點同時存在於dfs.hosts和dfs.hosts.exclude,則禁止連入。
具體步驟
(1)將要刪除的datanode加入到dfs.hosts.exclude指定的文件中。(最好使用主機名,IP有時可能不生效)
(2)動態刷新配置,不需要重啟namenode
hadoop dfsadmin -refreshNodes
(3)通過hadoop dfsadmin -report或webui,可以看到,該datanode的狀態為Decommissioning
(4)等待一段時間,該節點為dead狀態。
(5)刪除dfs.hosts文件中該節點 即下架目標機器後,再次編輯dfs.hosts.exclude,把剛才下架的機器的ip或機器名移走
(6)
hadoop dfsadmin -refreshNodes
註:按照上面的操作後,如果你想要重新啟用該節點為datanode,從dfs.hosts.exclude中刪除該節點,refreshNodes,然後,到該節點上,重啟啟動該datanode:
/usr/local/hadoop/bin/hadoop-daemon.sh stop datanode
/usr/local/hadoop/bin/hadoop-daemon.sh start datanode
注:正確的刪除datanode的方法應該是按照上面的方法,使用exclude文件,而不應該直接去datanode上去sotp datanode,這樣會造出數據丟失,而且stop以後,webui和hadoop dfsadmin -report都仍然顯示該datanode節點。除非重新啟動namenode。
之所以重新啟用exclude的節點時可以stop datanode,因為此時該datanode不包含在cluster中,所以,stop後不會造成數據丟失。
2、添加datanode
如果存在dfs.hosts文件,且不為空,則添加新的datanode到該文件中,refreshNodes。
到新節點上,啟動即可
/usr/local/hadoop/bin/hadoop-daemon.sh start datanode
如果不存在dfs.hosts文件,或文件為空,直接啟動新節點即可。
3、刪除tasktracker
原理和步驟與刪除datanode一樣。
<property>
<name>mapred.hosts</name>
<value>/usr/local/hadoop/conf/tasktracker-allow-list</value>
</property>
<property>
<name>mapred.hosts.exclude</name>
<value>/usr/local/hadoop/conf/tasktracker-deny-list</value>
</property>
動態刷新配置的命令為:
hadoop mradmin -refreshNodes
立刻生效,可以在webui中看到,nodes節點數量的變化,以及Excluded Nodes節點的變化。
具體的步驟參考上面的刪除datanode的步驟
註:按照上面的操作後,如果你想要重新啟用該節點為tasktracker,從mapred.hosts.exclude中刪除該節點,refreshNodes,然後,到該節點上,重啟啟動該tasktracker:
/usr/local/hadoop/bin/hadoop-daemon.sh stop tasktracker
/usr/local/hadoop/bin/hadoop-daemon.sh start tasktracker
注:正確的刪除tasktracker的方法應該是按照上面的方法,使用exclude文件,而不應該直接去tasktracker上去sotp tasktracker,這樣會造成job失敗,而且stop以後,webui上仍然顯示該tasktracker節點。除非重新啟動jobtracker。
我遇到的一個問題:
在exclude文件中,我使用了IP,發現tasktracker仍然參與計算。
在webui中發現,Excluded Nodes中存在該IP,Nodes中仍然存在該tasktracker的hostname。
解決的辦法就是,在exclude中使用hostname而不使用IP。
判斷是否真正生效:如果exclued文件中正確的填寫了要失效的node,則總得nodes數量應該減小。
4、添加tasktracker
如果存在mapred.hosts文件,且不為空,則添加新的tasktracker到該文件中,refreshNodes。
到新節點上,啟動即可
/usr/local/hadoop/bin/hadoop-daemon.sh start tasktracker
如果不存在mapred.hosts文件,或文件為空,直接啟動新節點即可。
6、添加或刪除datanode後,平衡磁碟利用率
運行bin/start-balancer.sh,這個會很耗時間
備註:
如果不balance,那麼cluster會把新的數據都存放在新的node上,這樣會降低mr的工作效率;
/usr/local/hadoop/bin/start-balancer.sh -threshold 0.1
7下架目標機器後,再次編輯mapred.hosts.exclude,把剛才下架的機器的ip或機器名移走
threshold 是平衡閾值,默認是10%,值越低各節點越平衡,但消耗時間也更長。
balancer也可以在有mr job的cluster上運行,默認dfs.balance.bandwidthPerSec很低,為1M/s。在沒有mr job時,可以提高該設置加快負載均衡時間。
在namenode的hdfs-site.xml中增加設置balance的帶寬,默認只有1M:
<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>10485760</value><description>Specifies themaximum bandwidth that each datanode can utilize for the balancing purpose interm of the number of bytes per second.</description>
</property>
❸ Hadoop,Hive,Spark 之間是什麼關系
歷史上存在復的原理制,以前都是使用hive來構建數據倉庫,所以存在大量對hive所管理的數據查詢的需求。而hive、shark、sparlSQL都可以進行hive的數據查詢。shark是使用了hive的sql語法解析器和優化器,修改了執行器,使之物理執行過程是跑在spark上;而sparkSQL是使用了自身的語法解析器、優化器和執行器,同時sparkSQL還擴展了介面,不單單支持hive數據的查詢,可以進行多種數據源的數據查詢。大講台為您解答,希望可以幫助到你
❹ 如何學習hadoop
推薦一些Hadoop家族系列文章,主要介紹Hadoop家族產品,常用的項目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的項目包括,, Hcatalog, Oozie, Cassandra, Hama, Whirr, Flume, Bigtop, Crunch, Hue等。
一、學習路線圖
Hadoop家族學習路線圖 開篇必讀
Hive學習路線圖
Mahout學習路線圖
二、編程實踐
Hadoop歷史版本安裝
用Maven構建Hadoop項目
Hadoop編程調用HDFS
用Maven構建Mahout項目
Mahout推薦演算法API詳解
用MapRece實現矩陣乘法
從源代碼剖析Mahout推薦引擎
Mahout分步式程序開發 基於物品的協同過濾ItemCF
Mahout分步式程序開發 聚類Kmeans
PageRank演算法並行實現
三、案例分析
海量Web日誌分析 用Hadoop提取KPI統計指標
用Hadoop構建電影推薦系統
用Mahout構建職位推薦引擎
Mahout構建圖書推薦系統
PeopleRank從社交網路中發現個體價值
❺ 如何架構大數據系統 hadoop
大數據數量龐大,格式多樣化。大量數據由家庭、製造工廠和辦公場所的各種設備、互聯網事務交易、社交網路的活動、自動化感測器、移動設備以及科研儀器等生成。它的爆炸式增長已超出了傳統IT基礎架構的處理能力,給企業和社會帶來嚴峻的數據管理問題。因此必須開發新的數據架構,圍繞「數據收集、數據管理、數據分析、知識形成、智慧行動」的全過程,開發使用這些數據,釋放出更多數據的隱藏價值。
一、大數據建設思路
1)數據的獲得
四、總結
基於分布式技術構建的大數據平台能夠有效降低數據存儲成本,提升數據分析處理效率,並具備海量數據、高並發場景的支撐能力,可大幅縮短數據查詢響應時間,滿足企業各上層應用的數據需求。
❻ 大數據時代發展歷程是什麼
可按照時間點劃分大數據的發展歷程。
❼ hadoop的歷史日誌如何查看
hadoop的日誌主要是MapRece程序,運行過程中,產生的一些數據日誌,除了系統的日誌外專,還包含一屬些我們自己在測試時候,或者線上環境輸出的日誌,這部分日誌通常會被放在userlogs這個文件夾下面,我們可以在mapred-site.xml裡面配置運。
❽ 如何清理hadoop過期歷史數據
hadoop過期歷史數據?指的是任務日誌以及任務記錄文件嗎?直接刪除就好了吧
❾ 有hadoop 還需要歷史拉鏈表嗎
1.採集當日全量數據存儲到 ND(當日) 表中。
2.可從歷史表中取出昨日全量數據存儲到 OD(上日數據)表中。
3.用ND-OD為當日新增和變化的數據(即日增量數據)。
❿ hadoop操作命令記錄在哪
Hadoop自身是否有記錄不清楚,但Hadoop是部署在linux上的,可以通過linux的歷史命令查看。
1、專history
2、fc -l
可以用grep過濾,例如:
history |屬 grep 'hadoop'
或history | grep 'hdfs'