給Hadoop初學者的一些建議

?我們介紹了新手學習hadoop的入門注意事項。這篇來談談hadoop核心知識學習。?
hadoop核心知識學習:?
hadoop分為hadoop1.X和hadoop2.X,并且還有hadoop生態系統。這里只能慢慢介紹了。一口也吃不成胖子。

那么下面我們以hadoop2.x為例進行詳細介紹:

Hadoop的核心是mapreduce和hdfs。?
Mapreduce:mapreduce是很多人都需要邁過去的檻,它比較難以理解,我們有時候即使寫出了mapreduce程序,但是還是摸不著頭腦。我們都知道mapreduce是一種編程模型,那么它能干什么,對我有什么用。它的原理是什么,為什么我們編寫了map函數,reduce函數就可以在多臺機器上運行,這些問題或許都給初學者帶來了困擾。

那么我們就要了解:

  • 什么是mapreduce?
  • Mapreduce的工作原理是什么?
  • Mapreduce的工作流程是什么?
  • Mapreduce的編程模型是什么?
  • shuffle是什么?
  • partition是什么?
  • combiner是什麼?
  • 他們三者之間的關系是什么?
  • map的個數由誰來決定,如何計算?
  • reduce個數由誰來決定,如何計算?

mapreduce熟悉了,還有一些問題困擾著初學者,雖然有了Java基礎,但是我們需要搭建開發環境,該如何搭建開發環境?

那么就需要我們學習Windows上如何使用Eclipse遠程連接Hadoop并進行程序開發

因為在操作mapredcue過程中伴隨著操作hdfs,就像我們傳統開發,編程是離不開數據庫一樣。hdfs可以理解為傳統編程的數據庫,但是其實他不是,真正的數據庫是hadoop data base,也就是hbase。好了下面,我們開始講如何學習hdfs:

HDFS:我們至少應該學習以下內容

  • 什么是HDFS及HDFS架構設計?
  • HDFS體系結構簡介及優缺點?
  • Hdfs如何存儲數據?
  • Hdfs如何讀取數據?
  • Hdfs如何寫入文件?
  • Hdfs的副本存放策略?
  • 如何訪問hdfs?
  • Hdfs數據如何復制?
  • Namenode的熱備?

hadoop生態系統內容還是比較多的,但是最常用的是hive,hbase。?
Hive是初學者進入大數據(hadoop)行業最好的選擇入口,因為它提供了簡單的類sql語句,使得不懂得mapreduce程序編寫的學員也能夠很輕松的進入大數據行業。所以建議大家(尤其是零基礎的學員)在學習hadoop的過程中,可以著重加強對hive的學習,尤其是hive語句的熟練操作。當然對于有數據庫基礎的學員學習hive就更容易一些。

Hbase是一種nosql數據庫,只有當數據量非常大時,比如TB、PB級,hbase才能發揮出很好的效果,所以對于致力于加入大公司的學員,可以深入學習hbase,尤其是hbase表的設計,rowkey的設計,hbase性能的調優,hbase和hive、impala的結合等。

Yarn是分布式集群資源管理框架,也是hadoop2.x和hadoop1.x明顯不同的地方,所以我們還是有必要對yarn的原理、框架、組成部分進行詳細的了解的。

對于hadoop其他的組件:比如海量日志收集工具flume,數據導入導出工具sqoop,應用程序協調服務zookeeper,學員可以結合實戰項目學習其原理,如何使用即可。

對于想從事數據挖掘的學員,可以深入學習mahout、機器學習、算法等相關知識,根據學員自己的職業選擇和興趣愛好自主選擇,建議零基礎的學員最好是先從hive入手。

Storm是一種基于流的計算框架,spark是基于內存的計算框架,它們是不同于mapreduce的計算框架,但作用都是對數據的處理和分析,建議初學者在學習好mapreduce的前提下,可以對storm和spark進行深入的學習,切記貪多嚼不爛。通而不精。

如果想更加深入的學習,豐富自己的知識,可以選擇性的學習一下shell、python腳本語言,Redis、MongoDB等nosql數據庫,如果想做hadoop運維的,也可以學習ganglia和nagios等監控工具。

最后建議大家在學習過程中一定要由淺入深、從簡單到復雜、理論和實踐相結合,由于hadoop生態系統的工具比較多,每個工具有不同的側重點,所以再次提醒大家切記貪多、切記浮躁、只有基礎扎實了,后續的學習才會更輕松、更快速、更高效。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/387862.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/387862.shtml
英文地址,請注明出處:http://en.pswp.cn/news/387862.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Guide AHOI2017 洛谷P3720

Description 農場主John最近在網上買了一輛新車,在購買汽車配件時,John不小心點了兩次“提交”按鈕。導致汽車上安裝了兩套GPS系統,更糟糕的是John在使用GPS導航時,兩套系統常常給出不同的路線。從地圖上看,John居住的…

穩坐視頻云行業第一,阿里云將用邊緣計算開辟新賽道

“CDN競爭的上半場已結束,中國視頻云市場格局已定,邊緣計算將成為下半場發展的新賽道。” 4月10日,阿里云視頻云總經理、邊緣計算負責人朱照遠在第七屆“亞太內容分發大會”暨CDN峰會表示。朱照遠認為,阿里云依靠齊全的產品矩陣、…

愛因斯坦提出的邏輯性問題_提出正確問題的重要性

愛因斯坦提出的邏輯性問題We live in a world that values answers. We were taught in school to learn how to answer questions in exams, we were conditioned to go to work knowing that we need to have the answers and our society, by and large, focuses on finding…

python安裝包

由于Google、YouTube等大型公司的推廣,Python編程語言越來越受歡迎,很多編程愛好者,也將Python做為了首先的編程語言。 今天我們就來講一下,學習的第一步,安裝Python IDLE編輯器,也它的調試和使用。 第一步…

104 權限 sudo 解壓縮

主要內容:https://www.cnblogs.com/pyyu/articles/9355477.html 1 查看系統版本信息: #查看系統版本信息 cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) #查看內核版本號 uname -r 3.10.0-693.el7.x86_64 #查看系統多少位 uname -m x86_64 #查看內核所有信息…

Cloud Native 介紹

為什么80%的碼農都做不了架構師?>>> 背景 Cloud Native表面看起來比較容易理解,但是細思好像又有些模糊不清:Cloud Native和Cloud關系是啥?它用來解決什么問題?它是一個新技術還是一個新的方法&#xff1f…

餐廳數據分析報告_如何使用數據科學選擇理想的餐廳設計場所

餐廳數據分析報告空間數據科學 (Spatial Data Science) Designing any product requires a lot of analysis and research. It is also true for designing any building. Before we begin to design any building, we collect information about the location where we are de…

P2P原理及UDP穿透簡單說明

本文章出自cnntec.com的AZ貓著,如需要轉發,請注明來自cnntec.com Peer-To-Peer縮寫P2P 中文稱之為對等聯網。 用途于交流,比如QQ,MSN等等。 文件傳輸、分布式數據計算等等。 這里我們主要是是簡單講解一下UDP實現NAT的穿透&…

PCB genesis 大孔擴孔(不用G84命令)實現方法

PCB鉆孔時,當鉆刀>6.3mm時,超出鉆孔范圍,鉆孔工序是沒有這么大的鉆刀,當這種情況,工程CAM會都采用G84命令用小孔擴孔的方式制作, 在這里介紹一種如果不用G84命令,用程序實現將大孔生成小孔鉆孔達到擴孔的目的。 一.我們先了解一下G84命令擴孔 孔尺寸大小 孔密度 連一篇文章有…

一年沒做出量化策略_量化信念:如何做出更好的決定

一年沒做出量化策略By Stuart George, Executive Director of Design Technology at MethodMethod設計技術執行總監Stuart George When Andrew Mason, founder of Groupon, wanted to improve his email conversion metrics, he turned to data analysis. His team tested the…

Android Jetpack組件之數據庫Room詳解(二)

本文涉及Library的版本如下: androidx.room:room-runtime:2.1.0-alpha03androidx.room:room-compiler:2.1.0-alpha03(注解編譯器)回顧一下安卓的SQLiteOpenHelper相關類 首先放一個關于安卓數據庫的類圖: SQLiteOpenHelper是一個抽象類,通常自己實現數據…

圖像識別中的深度學習

來源:《中國計算機學會通訊》第8期《專題》 作者:王曉剛 深度學習發展歷史 深度學習是近十年來人工智能領域取得的重要突破。它在語音識別、自然語言處理、計算機視覺、圖像與視頻分析、多媒體等諸多領域的應用取得了巨大成功。現有的深度學習模型屬于神…

多個css樣式合并到一個“目錄”css文件中

執行訪問jsp后發現沒有效果 同樣的代碼,在html中效果對比如下: 具體原因:不清楚,暫時記著~~~在jsp中不支持import這種css樣式的引用 轉載于:https://www.cnblogs.com/mangwusuozhi/p/10050108.html

Git 學習筆記之 merge

Merge: 1、Fast-forward(快進式) 2、recursice strategy (策略合并,三方合并) Fast-forward 策略合并 //創建一個文件夾,并初始化 Git mkdir GitDemo cd GitDemo git init//初次提交,創建 master 分支 touch master.tx…

熊貓直播 使用什么sdk_沒什么可花的-但是16項基本操作才能讓您開始使用熊貓

熊貓直播 使用什么sdkPython has become the go-to programming language for many data scientists and machine learning researchers. One essential data processing tool for them to make this choice is the pandas library. For sure, the pandas library is so versat…

萌新一手包App前后端開發日記(一)

從事Android移動端也有些日子了,還記得一開始選擇這份工作,是憧憬著有朝一日能讓親朋好友用上自己開發的軟件,但日子久了才發現,并不是所有的公司,所有的項目的適用群體都是“親朋好友”,/無奈臉 攤手。當…

方差,協方差 、統計學的基本概念

一、統計學的基本概念 統計學里最基本的概念就是樣本的均值、方差、標準差。首先,我們給定一個含有n個樣本的集合,下面給出這些概念的公式描述: 均值: 標準差: 方差: 均值描述的是樣本集合的中間點&#xf…

關系型數據庫的核心單元是_核中的數據關系

關系型數據庫的核心單元是Nucleoid is an open source (Apache 2.0), a runtime environment that provides logical integrity in declarative programming, and at the same time, it stores declarative statements so that it doesn’t require external database, in shor…

MongoDB第二天

集合的操作: db.表名稱 show tables / collection db.表名.drop() 文檔的操作: 插入數據 db.表名.insert({"name":"jerry"}) db.insertMany([{"name":"sb",...}]) var ul {"name":"sb"} db.sb.insert(ul) db.sb.…

Python 主成分分析PCA

Python 主成分分析PCA 主成分分析&#xff08;PCA&#xff09;是一種基于變量協方差矩陣對數據進行壓縮降維、去噪的有效方法&#xff0c;PCA的思想是將n維特征映射到k維上&#xff08;k<n&#xff09;&#xff0c;這k維特征稱為主元&#xff0c;是舊特征的線性組合&#xf…