回覆列表
  • 1 # 尚學堂大資料學院

    2008年,Hadoop擊敗了超級計算機,成為地球上處理分析TB級資料最快的系統

    Hadoop是一個開源軟體框架,用於儲存和處理大小從千兆位元組PB的大型資料集。Hadoop是由Apache Software Foundation開發的。

    Hadoop擊敗了超級計算機,極大降低了成本

    支援一個十億頁索引的系統的硬體成本約為500,000美元,每月執行成本為30,000美元,可以說成本很高,Hadoop分散式系統完美解決了這個問題。

    在2008年4月,Hadoop透過對整個TB資料進行排序,擊敗了超級計算機,併成為地球上最快的系統。

    2008年11月,Google報告其Mapreduce實施在68秒內排序了1 TB。

    2009年4月,雅虎團隊使用Hadoop在62秒內對1 TB位元組進行了排序,擊敗了Google MapReduce實施。

    Hadoop是一種以分散式方式將大量資料集儲存在廉價機器叢集中的技術Hadoop 是開源的,Hadoop生態系統包含許多元件,例如MapReduce,Hive,HBase,Zookeeper,Apache Pig等。

    這些元件能夠為各種應用程式提供服務。我們可以使用Map-Reduce對大資料執行彙總和彙總。Hive是頂級HDFS上的資料倉庫專案。它透過類似SQL的介面提供資料查詢和分析。HBase是NoSQL資料庫。它可以對大型資料集進行實時讀寫。它與Hadoop本機整合。Pig是與Hadoop一起使用的高階指令碼語言。它將資料分析問題描述為資料流。使用Pig可以完成其中的所有資料操作。Zookeeper是一個開源伺服器,可以在各種分散式程序之間進行協調。分散式應用程式使用Zookeeper來儲存和傳達對重要配置資訊的更新。

  • 2 # 讓全世界人都知我低調

    古人云:分久必合,合久必分。處理大量甚至更多的資料,兩種方法,一是單臺機器增加計算與儲存能力,二是把資料分成小份,在更多的普通機器上執行,顯然第二種方法更經濟,但是需要增加程式碼去分開計算,網路節點之間也需要傳輸資料,分開的資料也是需要最後彙總統計等等

  • 3 # Yan142040965

    兩點:

    1. 分散式,把大量資料分割成小量資料,遞交給整個資料叢集來處理。

    2. Replication,多個副本分散在叢集,保證資料完整與災難恢復。

    事實上,Hadoop正在逐步衰落,Spark已經可以在Kubernetes上執行。AWS S3也已支援Spark。

  • 4 # 繁星落石

    因為傳統儲存方式對大資料量儲存並不友好,寫入和讀出速度都很慢,而且因為沒有冗餘備份的話,大量資料的讀寫容易導致硬碟出現故障,資料容易丟失。

    Hadoop系統在保證了系統儲存速度快速高效的前提下,自動形成冗餘備份,即便丟失一部分副本,也可以透過剩餘的副本恢復資料,而且因為副本的存在,不需要再進行額外的容災工作。

    Hadoop提供了良好的函式封裝,開發者實際上只需要實現map和reduce函式就可以了,不需要過度關心底層如何實現,提高開發速度,降低難度。

  • 5 # Lake說科技

    當資料量很大時,單臺機器已經不能夠在儲存和計算這麼大量的資料,需要引用到分散式技術來處理這些資料。Hadoop 作為一種大資料處理系統,包括分散式檔案儲存、分散式計算、以及資源管理,使用 Hadoop,可以解決大資料量的儲存和計算的問題。

    同時 Hadoop 是一款開源大資料元件,很多公司直接使用 Hadoop 技術,就可以滿足公司內部的離線業務需求,技術成本很低。

    Hadoop 檔案系統將資料量大的檔案分散式儲存在不同機器,解決資料量大不能儲存問題

    Hadoop 中 HDFS 分散式檔案系統,透過對資料體量非常大的檔案進行分塊,每個塊預設 256 兆,將其分成資料量較小的多個塊,然後對每個資料塊在進行資料備份儲存,一個數據塊有三個資料副本,冗餘的儲存在叢集上,透過資料冗餘解決資料容錯問題。

    打個比方,你的一個檔案大小為 1 TB 大小,單臺機器磁碟 500 G 存不下。此時你將檔案儲存在 HDFS 檔案系統上,那麼該檔案最終會按照 256 兆一個數據塊,劃分成 4000塊,分散式的儲存在 Hadoop 叢集上面,每臺機器都會儲存這個檔案的一個數據子集,這樣就解決了資料量大單機不能儲存的問題。

    Hadoop MapReduce 分散式計算框架,解決單臺機器不能計算問題

    Hadoop MapReduce 計算框架包含兩個步驟:Map階段和Reduce階段。由於 HDFS 檔案系統將資料按照塊進行儲存,當在 Map 階段的時候,會對每一個塊進行計算,相當於對一個數據量大的檔案,平行計算,每個 Map 任務處理的就是該檔案的一個數據子集。

    Reduce 階段就是對 Map 任務產生的資料,在做一個彙總計算。打個比方,就比如 Hadoop 中 WordCount 場景,Map 階段只是計算這個 Map 任務輸入檔案的中的每個單詞的數量,但是多個 Map 任務中key有可能相同,所以最終還需要在 Reduce 任務中再進行一次彙總。

    Map1 任務計算的單詞 A 有 3 個,Map2 任務計算的單詞 A 有 2 個,最後透過 Reduce 任務彙總,單詞 A 個數就有 5 個。

    個人想法

    Hadoop 由於其開源特性,任何公司都可以使用其作為公司的大資料處理計算框架,所以 Hadoop 在國內使用的範圍還是非常廣的。同時有很多其他大資料元件最底層或多或少都需要使用到 Hadoop ,比如 HBase 資料庫、Flink 實時計算引擎的狀態儲存等等,Hadoop 生態是非常廣的,所以很多公司還在使用 Hadoop。

  • 6 # 閒談架構

    處理海量資料時,為什麼傳統資料庫不靈了,為什麼hadoop可以?下面分別闡述:

    為什麼傳統資料庫不靈了——傳統資料庫的極限

    傳統資料庫的極限是單個機器所能達到的極限,都受限於單臺伺服器的極限。

    CPU/記憶體/磁碟空間不是無限擴容的;隨著越來越接近極限,升級單位效能所花費用越大,價效比越低;備份恢復等需要單獨維護,如果要達到高可靠,維護成本高;為什麼hadoop可以——hadoop的優勢1. 儲存突破單機極限,且價效比高由於它可以由多個廉價的小型機組成,因此它的儲存空間是可以無限擴充套件的;同時由於小型機的廉價,由它們組成的分散式Hadoop系統也是價效比極高的。

    2. 計算突破單機極限

    1.在Hadoop 出現之前,高效能計算和網格計算一直是處理大資料問題主要的使用方法和工具,它們主要採用訊息傳遞介面(Message Passing Interface,MPI)提供的API 來處理大資料。

    2.高效能計算的思想是將計算作業分散到叢集機器上,叢集計算節點訪問儲存區域網路SAN 構成的共享檔案系統獲取資料,這種設計比較適合計算密集型作業。當需要訪問像PB級別的資料的時候,由於儲存裝置網路頻寬的限制,很多叢集計算節點只能空閒等待資料。

    3.而Hadoop卻不存在這種問題,由於Hadoop 使用專門為分散式計算設計的檔案系統HDFS,計算的時候只需要將計算程式碼推送到儲存節點上,即可在儲存節點上完成資料本地化計算,Hadoop 中的叢集儲存節點也是計算節點。

    3. Hadoop是易於實現高可靠的

    Hadoop將檔案拆分成小檔案,分不同的機器進行儲存,且每一份檔案都會存放3個副本。因此Hadoop是高可靠的。

    總結

    綜上所述,傳統資料庫在面對海量資料的時候,是有瓶頸的,它的瓶頸就是單機極限。而基於分散式系統的Hadoop是突破了單機極限,達到了無限擴容。所以在資料儲存與計算方面的效能極限理論上是無限的,且由於Hadoop可部署於多個小型機上,價效比很高。

  • 中秋節和大豐收的關聯?
  • 生完孩子後,停業在家全職帶娃如何來維持夫妻之間的感情呢?