hadoop學習筆記1 概述

2021-10-19 18:07:14 字數 2445 閱讀 8013

hdfs負責儲存  yarn負責排程和資源管理  mapreduce基於yarn

分布式儲存+計算  

hadoop可以儲存海量資料,並且對資料進行統計分析,比如通過hive sql(類似於普通sql)

hadoop生態圈是很大的,想學好大資料,要學的東西特別多,目前從它三大元件開始

(別的軟體圖示都是動物,只有zookeeper是人,看起來zookeeper像動物管理員)

核心元件1:hdfs分布式檔案儲存系統,多副本 多個datanode  把檔案儲存到多個datanode上

特點:擴充套件性  容錯性:多副本,掛了幾台機器都沒關係,只要有一台還在就對整體沒影響   海量資料儲存

為什麼能處理海量資料:將大任務分解成小任務 , 一塊磁碟分解成多個磁碟。對多個磁碟上的檔案進行管理, 就是分布式檔案管理系統—hdfs

每個檔案有多個資料塊,每個資料塊有多個副本,多個副本儲存在不同的datanode上

比如把乙個檔案拆成兩個部分,每個部分有三個副本,就算有乙個副本所在機器掛了也不會讓整個檔案出現問題

核心元件2:yarn資源排程系統,

特點:擴充套件性  容錯性:出錯時,可以進行一定次數的重試   多框架資源統一排程

多框架資源統一排程:可以排程hbase,hive,spark等多種大資料所需框架

核心元件3:mapreduce分布式計算框架

特點:擴充套件性  容錯性   海量資料的離線處理

海量資料的離線處理:之所以離線處理,因為資料量太大,所以延時性大

(目前在我使用過程中發現mapreduce本身也很慢,怪不得大家都用spark,不知道是不是我沒做優化)

hadoop優勢

1.可靠性

1.1副本形式儲存,不容易丟失資料

1.2發生錯誤後重新計算

2.擴充套件性

2.1儲存空間不夠,可以增加節點便於擴充套件

2.2乙個集群可以包含數以千計的節點

3.其他

3.1成熟

3.2可以放在廉價機器上

1.狹義hadoop包括hdfs,yarn,mapreduce

2.廣義hadoop包括範圍很廣,是hadoop生態圈,他們整個組成hadoop

3.其他大資料所需要的東西

3.1.flume 收集日誌

3.2.sqoop 理解為sql to hadoop的簡寫  當然它也可以從hadoop to sql 資料交換工具

3.3.hbase 資料庫  可以儲存大量資料

4.版本選擇

apache原生的  但是當hive hbase等hadoop生態圈這些東西一起使用時,會有版本衝突問題

商業版   沒有版本衝突

5.spark替換mapreduce

5.1 mapreduce是有預設排序的,但是很多應用場景都不需要排序,而且排序很消耗效能和時間

可以通過同為分布式計算框架的spark解決mapreduce的問題

5.2 spark也是apache下的

spark相當於給hadoop插上了翅膀,可見執行速度非常快

5.3spark是乙個計算引擎,它並不關注你的資料存到**了

5.4 spark能不能替換mapreduce?

網上看到的答案

兩個的側重點不一樣,

mapreduce適合對實時性要求不高的計算(計算時中間結果溢寫到磁碟),io消耗大,

spark是基於記憶體的計算框架,計算速度是很快的。乙個是 時間換空間 另乙個是 空間換時間。

我的想法:既然mapreduce還有人維護,沒有被apache拋棄,說明還是有它用武之地的。

spark的原始碼是用scala寫的(雖然我也不知道scala是什麼)

5.5spark特點

1.speed

2.easy to use

3.通用

hadoop學習筆記1

hadoop是什麼?是乙個開源的分布式計算平台。解決兩個問題 1 海量資料的儲存 hdfs 分布式檔案系統 2 海量資料的分析 mapreduce 平行計算框架,離線 hadoop生態圈 hadoop ecosystem map hadoop核心 hdfs,mapreduce,yarn yet an...

Hadoop學習筆記(1)

doug cutting lucene 索引引擎 nutch 搜尋data抓取 hadoop 1997 lucene 2003 gfs 2004 ndfs mapreduce nutch 2006 yahoo facebook newyorktimes hadoop 2008 hbase zooke...

Hadoop學習筆記1 初識Hadoop

資料越來越多,資料的增長越來越快,儲存和分析這些資料成為挑戰!當資料量逐漸變大時,單個磁碟的讀寫速度成為瓶頸。解決辦法是,將資料分散儲存,通過並行讀取提高讀寫資料。要達到這種目的,面臨的2個問題 hadoop的hdfs和mapreduce為這兩個問題提供了解決方案。為什麼不能用關係型資料庫 更多磁碟...