回覆列表
  • 1 # 程式猿灬小光

    hadoop可以說是大資料領域最早的處理框架了,起初僅包含了海量資料的儲存HDFS,海量資料的處理MapReduce,分別是基於谷歌的兩篇論文實現的,可以說hadoop是大資料開發的基礎。其底層一些設計思想也影響後來幾代大資料開發框架,像Spark就是為了解決Hadoop的MapReduce執行速度而誕生的,要想學習Spark、Flink,首先也是要學習Hadoop體系的。另外Hadoop體系的HDFS、Yarn等也在Spark叢集、Flink叢集有著廣泛的應用。

  • 2 # 全棧開發訓練營

    首先呢?要知道什麼是大資料

    Hadoop是由java語言編寫的,在分散式伺服器叢集上儲存海量資料並執行分散式分析應用的開源框架,其核心部件是HDFS與MapReduce。

    HDFS是一個分散式檔案系統:引入存放檔案元資料資訊的伺服器Namenode和實際存放資料的伺服器Datanode,對資料進行分散式儲存和讀取。

      MapReduce是一個分散式計算框架:MapReduce的核心思想是把計算任務分配給叢集內的伺服器裡執行。透過對計算任務的拆分(Map計算/Reduce計算)再根據任務排程器(JobTracker)對任務進行分散式計算。

    我講了這麼多,Hadoop就是處理大資料其中的技術

  • 3 # 加米穀大資料

    大資料是一系列技術的統稱,經過多年的發展,大資料已經形成了從資料採集、整理、傳輸、儲存、安全、分析、呈現和應用等一系列環節。

    Hadoop是一個由Apache基金會所開發的分散式系統基礎架構,是用Java語言開發的一個開源分散式計算平臺,適合大資料的分散式儲存和計算平臺。

    Hadoop是目前被廣泛使用的大資料平臺,本身就是大資料平臺研發人員的工作成果,Hadoop是目前比較常見的大資料支撐性平臺。

    由於Hadoop是一個開源的大資料系統平臺,所以你們聽得最多。除了Hadoop平臺外,還有其他系統平臺。

    所以,大資料不等於Hadoop,大資料與Hadoop也不是包含關係。

    大資料和Hadoop什麼關係?

    https://www.toutiao.com/i6694512130898526734/

  • 4 # 麼麼茶加糖

    大資料是一系列技術的統稱,經過多年的發展,大資料已經形成了從資料採集、整理、傳輸、儲存、安全、分析、呈現和應用等一系列環節,這些環節涉及到諸多大資料工作崗位,這些工作崗位與物聯網、雲計算也都有密切的聯絡。

    Hadoop是一個由Apache基金會所開發的分散式系統基礎架構,是用Java語言開發的一個開源分散式計算平臺,適合大資料的分散式儲存和計算平臺。

    廣義上講,大資料是時代發展和技術進步的產物。Hadoop只是一種處理大資料的技術手段。

  • 5 # IT人劉俊明

    這是一個非常好的問題,作為一名IT從業者,我來回答一下這個問題。

    首先,大資料本身涉及到一個龐大的技術體系,從學科的角度來看,涉及到數學、統計學和計算機三大學科,同時還涉及到社會學、經濟學、醫學等學科,所以大資料本身的知識量還是非常大的。

    從當前大資料領域的產業鏈來看,大資料領域涉及到資料採集、資料儲存、資料分析和資料應用等環節,不同的環節需要採用不同的技術,但是這些環節往往都要依賴於大資料平臺,而Hadoop則是當前比較流行的大資料平臺之一。

    Hadoop平臺經過多年的發展已經形成了一個比較完善的生態體系,而且由於Hadoop平臺是開源的,所以很多商用的大資料平臺也是基於Hadoop搭建的,所以對於初學大資料的技術人員來說,從Hadoop開始學起是不錯的選擇。

    當前Hadoop平臺的功能正在不斷得到完善,不僅涉及到資料儲存,同時也涉及到資料分析和資料應用,所以對於當前大資料應用開發人員來說,整體的知識結構往往都是圍繞大資料平臺來組織的。隨著大資料平臺逐漸開始落地到傳統行業領域,大資料技術人員對於大資料平臺的依賴程度會越來越高。

    當前從事大資料開發的崗位可以分為兩大類,一類是大資料平臺開發,這一類崗位往往是研發級崗位,不僅崗位附加值比較高,未來的發展空間也比較大,但是大資料平臺開發對於從業者的要求比較高,當前有不少研究生在畢業後會從事大資料平臺開發崗位。

    另一類是大資料應用開發崗位,這類崗位的工作任務就是基於大資料平臺(Hadoop等)來進行行業應用開發,在工業網際網路時代,大資料應用開發崗位的數量還是比較多的,而且大資料應用開發崗位對於從業者的要求也相對比較低。

  • 6 # 萌聲日語

    1、 hadoop開源,更容易拿到原始碼等,微軟等相關產品都是閉源的。Hadoop和微軟就好比安卓和ios。市面上華為,小米,三星基本上都在Google開源Android的基礎上二次開發成自己的rom

    2、 大資料現在是中國的十三五國家戰略,大資料火啊,而Apache hadoop現在已經發展成一個龐大的生態圈。全球各地的開發者都在貢獻者自己的程式碼。各個分支也是相當火爆,例如spark。

    3、 現在普遍認為,大資料狹義的代表就是hadoop,其實並不是這樣,現在大資料公司有很多:

    有做大資料基礎平臺的,例如星環科技,MapR,Hortonwork,Cloudera,這四家應該是現在全球頂尖top4了,3家美國矽谷的,一家中國上海的。這四家都是基於開源hadoop發展起來的。有MPP架構的DW產品,例如Teredata,GP,IBM等有做上層資料應用的,這類公司非常多,很多需要賣人力工時。也有現在賣資料的公司,這種公司也非常多。

    下面給個圖大家隨便看看

    Hadoop生態系統

    當今的Hadoop已經成長為一個龐大的體系,只要有和海量資料相關的領域。都有Hadoop的身影。

    Hadoop生態系統圖譜

    大家知道,Hadoop的兩大核心就是HDFS和MapReduce,而整個Hadoop的體系結構主要是透過HDFS的分散式儲存作為底層資料支援的。並且會透過MapReduce來進行計算分析。

    Hadoop1.x的核心:

    1. Hadoop Common

    2. Hadoop Distributed File System(HDFS)

    3. Hadoop MapReduce

    Hadoop2.x的核心:

    1. Hadoop Common

    2. Hadoop Distributed File System(HDFS)

    3. Hadoop MapReduce

    4. Hadoop YARN

    Hadoop1.x 生態系統圖Hadoop2.x 生態系統圖1. HDFS

    分散式檔案系統,將一個檔案分成多個塊,分別儲存(複製)到不同的節點上.它是Hadoop體系中資料儲存管理的基礎。它是一個高度容錯的系統,能檢測和應對硬體故障,用於在低成本的通用硬體上執行。HDFS簡化了檔案的一致性模型,透過流式資料訪問,提供高吞吐量應用程式資料訪問功能,適合帶有大型資料集的應用程式。

    2. MapReduce

    分散式計算框架,它是一種分散式計算處理模型和執行環境,用於進行大資料量的計算。共包括Map和Reduce部分。其中Map接受一個鍵值對(key-value),產生一組中間鍵值對。MapReduce框架會將map函式產生的中間鍵值對裡鍵相同的值傳遞給一個reduce函式。Reduce函式:接受一個鍵,以及相關的一組值,將這組值進行合併產生一組規模更小的值(通常只有一個或零個值)。

    3. hive

    基於Hadoop的資料倉庫工具,可以將結構化的資料檔案對映為一張資料庫表,並提供類似SQL一樣的查詢語言HiveQL來管理這些資料。Hive定義了一種類似SQL的查詢語言(HQL),將SQL轉化為MapReduce任務在Hadoop上執行。通常用於離線分析。

    4. Pig

    Pig是一個基於Hadoop的大資料分析平臺,它提供了一個叫PigLatin的高階語言來表達大資料分析程式,將指令碼轉換為MapReduce任務在Hadoop上執行。通常用於進行離線分析。

    5. Mahout

    資料探勘演算法庫,Mahout起源於2008年,最初是Apache Lucent的子專案,它在極短的時間內取得了長足的發展,現在是Apache的頂級專案。Mahout的主要目標是建立一些可擴充套件的機器學習領域經典演算法的實現,旨在幫助開發人員更加方便快捷地建立智慧應用程式。Mahout現在已經包含了聚類、分類、推薦引擎(協同過濾)和頻繁集挖掘等廣泛使用的資料探勘方法。除了演算法,Mahout還包含資料的輸入/輸出工具、與其他儲存系統(如資料庫、MongoDB 或Cassandra)整合等資料探勘支援架構。

    6. ZooKeeper

    分散式協作服務,是一個針對大型分散式系統的可靠協調系統,提供包括配置維護,名字服務,分散式同步和組服務等功能。Hadoop的管理就是用的ZooKeeper

    7. HBase

    HBase是一個分散式列存資料庫,它基於Hadoop之上提供了類似BigTable的功能。HBase是一個針對結構化資料的可伸縮、高可靠、高效能、分散式和麵向列的動態模式資料庫。和傳統關係資料庫不同,HBase採用了BigTable的資料模型:增強的稀疏排序對映表(Key/Value),其中,鍵由行關鍵字、列關鍵字和時間戳構成。HBase提供了對大規模資料的隨機、實時讀寫訪問,同時,HBase中儲存的資料可以使用MapReduce來處理,它將資料儲存和平行計算完美地結合在一起。

    8. Sqoop

    資料同步工具,SQL-to-Hadoop的縮寫。Sqoop是一個Hadoop和關係型資料庫之間的資料轉移工具。可將關係型資料庫中的資料匯入到Hadoop的HDFS中,也可將HDFS中的資料導進到關係型資料庫中主要用於傳統資料庫和Hadoop之前傳輸資料。資料的匯入和匯出本質上是Mapreduce程式,充分利用了MR的並行化和容錯性。

    9. Flume

    日誌收集工具,Cloudera開源的日誌收集系統,具有分散式、高可靠、高容錯、易於定製和擴充套件的特點。它將資料從產生、傳輸、處理並最終寫入目標的路徑的過程抽象為資料流,在具體的資料流中,資料來源支援在Flume中定製資料傳送方,從而支援收集各種不同協議資料。同時,Flume資料流提供對日誌資料進行簡單處理的能力,如過濾、格式轉換等。此外,Flume還具有能夠將日誌寫往各種資料目標(可定製)的能力。總的來說,Flume是一個可擴充套件、適合複雜環境的海量日誌收集系統。

    10. Ambari

    是一個對Hadoop叢集進行監控和管理的基於Web的系統。目前已經支援HDFS,MapReduce,Hive,HCatalog,HBase,ZooKeeper,Oozie,Pig和Sqoop等元件。

    11.Apache Spark:Apache Spark是提供大資料集上快速進行資料分析的計算引擎。它建立在HDFS之上,卻繞過了MapReduce使用自己的資料處理框架。Spark常用於實時查詢、流處理、迭代演算法、複雜操作運算和機器學習。

    現在hadoop發展很快,也有很多新的技術,以上也有很多技術不是那麼火爆了,有更優的選擇,不過我覺得如果你想學習大資料,作為技術宅,這些元件還是都需要了解的。

  • 中秋節和大豐收的關聯?
  • 不在原有的宅基地上建房是否違章?