赵丽颖固然漂亮,可这份Hadoop核心教程也不差呀
阿里巴巴采用了 15 個(gè)節(jié)點(diǎn)組成的 Hadoop 集群,用于處理從數(shù)據(jù)庫中導(dǎo)出的商業(yè)數(shù)據(jù)的排序和組合。
***Ebay ***使用了 32 個(gè)節(jié)點(diǎn)組成的集群,包括 8 * 532 個(gè)計(jì)算核心以及 5.3 PB 的存儲(chǔ)。該公司大量使用了 Java 編寫的 MapReduce 應(yīng)用,以及 Pig 、 Hive 和 HBase 的組合應(yīng)用以研究搜索優(yōu)化。
***Facebook ***主要使用 Hadoop 來存儲(chǔ)內(nèi)部日志和結(jié)構(gòu)化數(shù)據(jù)源的副本,并且將其作為數(shù)據(jù)報(bào)告、數(shù)據(jù)分析和機(jī)器學(xué)習(xí)的數(shù)據(jù)源。
什么是Hadoop?
Apache Hadoop 是一款支持?jǐn)?shù)據(jù)密集型分布式應(yīng)用并以 Apache 2.0 許可協(xié)議發(fā)布的開源軟件框架。
Hadoop 框架透明地為應(yīng)用提供可靠性和數(shù)據(jù)移動(dòng)。它實(shí)現(xiàn)了名為 MapReduce 的編程范式:應(yīng)用程序被分割成許多小部分,而每個(gè)部分都能在集群中的任意節(jié)點(diǎn)上執(zhí)行或重新執(zhí)行。
此外,Hadoop 還提供了分布式文件系統(tǒng),用以存儲(chǔ)所有計(jì)算節(jié)點(diǎn)的數(shù)據(jù),這為整個(gè)集群帶來了非常高的帶寬。
核心概念
Hadoop 項(xiàng)目主要包含了以下四個(gè)模塊:
1. Hadoop 通用模塊(Hadoop Common): 為其他 Hadoop 模塊提供支持的公共實(shí)用程序。
2. Hadoop 分布式文件系統(tǒng)(HDFS, Hadoop Distributed File System):提供對(duì)應(yīng)用程序數(shù)據(jù)的高吞吐量訪問的分布式文件系統(tǒng)。
3. Hadoop YARN:任務(wù)調(diào)度和集群資源管理框架。
4. Hadoop MapReduce: 基于 YARN 的大規(guī)模數(shù)據(jù)集并行計(jì)算框架。
對(duì)于初次學(xué)習(xí) Hadoop 的用戶而言,應(yīng)重點(diǎn)關(guān)注 HDFS 和 MapReduce。作為一個(gè)分布式計(jì)算框架,HDFS 承載了該框架對(duì)于數(shù)據(jù)的存儲(chǔ)需求,而 MapReduce 滿足了該框架對(duì)于數(shù)據(jù)的計(jì)算需求。
下圖是 Hadoop 集群的基本架構(gòu):
Hadoop 生態(tài)體系
如同 Facebook 在 Hadoop 的基礎(chǔ)上衍生了 Hive 數(shù)據(jù)倉庫一樣,社區(qū)中還有大量與之相關(guān)的開源項(xiàng)目,下面列出了一些近期比較活躍的項(xiàng)目:
**HBase:**一個(gè)可伸縮的、支持大表的結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)的分布式數(shù)據(jù)庫。
**Hive:**提供數(shù)據(jù)匯總和臨時(shí)查詢的數(shù)據(jù)倉庫基礎(chǔ)框架。
**Pig:**用于并行計(jì)算的高級(jí)數(shù)據(jù)流語言和執(zhí)行框架。
**ZooKeeper:**適用于分布式應(yīng)用的高性能協(xié)調(diào)服務(wù)。
**Spark:**一個(gè)快速通用的 Hadoop 數(shù)據(jù)計(jì)算引擎,具有簡單和富有表達(dá)力的編程模型,支持?jǐn)?shù)據(jù) ETL(提取、轉(zhuǎn)換和加載)、機(jī)器學(xué)習(xí)、流處理和圖形計(jì)算等方面的應(yīng)用。
值得特別關(guān)注的是,Spark 這一分布式內(nèi)存計(jì)算框架就是脫胎于 Hadoop 體系的,它對(duì) HDFS 、YARN 等組件有了良好的繼承,同時(shí)也改進(jìn)了 Hadoop 現(xiàn)存的一些不足。部分學(xué)習(xí)者可能會(huì)對(duì) Hadoop 和 Spark 的使用場景重疊產(chǎn)生疑問,但學(xué)習(xí) Hadoop 的工作模式和編程模型,將有利于加深對(duì) Spark 框架的理解,這也是本系列課程首先學(xué)習(xí) Hadoop 的原因。
部署 Hadoop
Hadoop 主要有以下三種部署模式:
**單機(jī)模式:**在單臺(tái)計(jì)算機(jī)上以單個(gè)進(jìn)程的模式運(yùn)行。
**偽分布式模式:**在單臺(tái)計(jì)算機(jī)上以多個(gè)進(jìn)程的模式運(yùn)行。該模式可以在單節(jié)點(diǎn)下模擬“多節(jié)點(diǎn)”的場景。
**完全分布式模式:**在多臺(tái)計(jì)算機(jī)上分別以單個(gè)進(jìn)程的模式運(yùn)行。
具體的部署步驟以及詳細(xì)的教程大家可以 點(diǎn)擊我 進(jìn)行學(xué)習(xí),因?yàn)閮?nèi)容還是比較廣泛和充實(shí)的:
-
實(shí)驗(yàn)1:Hadoop 簡介與安裝部署
-
挑戰(zhàn)1:Hadoop 系統(tǒng)部署
-
實(shí)驗(yàn)2:HDFS 架構(gòu)與操作
-
實(shí)驗(yàn)3:MapReduce 原理與實(shí)踐
-
挑戰(zhàn)2:使用 MapReduce 進(jìn)行日志分析
-
實(shí)驗(yàn)4:YARN 架構(gòu)
-
挑戰(zhàn)3:用 Hadoop 計(jì)算圓周率
-
實(shí)驗(yàn)5:HBase 基礎(chǔ)
-
挑戰(zhàn)4:HBase 數(shù)據(jù)導(dǎo)入
-
實(shí)驗(yàn)6:Sqoop 數(shù)據(jù)遷移
-
挑戰(zhàn)5:HBase 實(shí)現(xiàn) Web 日志場景數(shù)據(jù)處理
-
實(shí)驗(yàn)7:Solr 基礎(chǔ)實(shí)戰(zhàn)
-
實(shí)驗(yàn)8:Hive 基礎(chǔ)實(shí)戰(zhàn)
-
挑戰(zhàn)6:導(dǎo)入數(shù)據(jù)到 Hive
-
實(shí)驗(yàn)9:Flume 基礎(chǔ)實(shí)戰(zhàn)
-
實(shí)驗(yàn)10:Flume、HDFS 和 Hive 實(shí)現(xiàn)日志收集和分析
-
挑戰(zhàn)7:用 Flume 和 MapReduce 進(jìn)行日志分析
-
實(shí)驗(yàn)11:Kafka 基礎(chǔ)實(shí)戰(zhàn)
-
挑戰(zhàn)8:按需部署 Kafka
-
實(shí)驗(yàn)12:使用 Flume 和 Kafka 實(shí)現(xiàn)實(shí)時(shí)日志收集
-
實(shí)驗(yàn)13:Pig 基礎(chǔ)實(shí)戰(zhàn)
只要是你有一定的計(jì)算機(jī)基礎(chǔ)和 Java 基礎(chǔ),并且對(duì) Hadoop 感興趣,相信都是可以完整地學(xué)下來的,大家加油!
相關(guān)閱讀
8個(gè)爽滑的Windows小軟件,不好用你拿王思蔥砸死我
60人,42天,死磕機(jī)器學(xué)習(xí),結(jié)果如下。
武俠版編程語言…Java像張無忌還是令狐沖?
大量機(jī)器學(xué)習(xí)&深度學(xué)習(xí)資料
技術(shù)變現(xiàn),到底怎么變?
總結(jié)
以上是生活随笔為你收集整理的赵丽颖固然漂亮,可这份Hadoop核心教程也不差呀的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常用Git命令清单。
- 下一篇: 一份以太坊入门完全指南(非程序员免进)。