好程式設計師淺談大資料與Hadoop有什麼關係

好程式設計師發表於2020-10-16

  好程式設計師淺談大資料與Hadoop 有什麼關係, 隨著資訊化技術的日漸普及、寬頻網路的快速興起,以及雲端計算、移動互聯和物聯網等新一代資訊科技的廣泛應用,全球資料的增長速度進一步加快。與此同時,一批資料收集、儲存、處理技術和應用快速發展並逐漸匯聚,那麼下面 給大家介紹一下吧。

   1 、認識大資料

   所謂大資料,就是從各種型別的資料中,快速獲得有價值資訊的能力。大資料是需要新處理模式才能具有更強的決策力、洞察力和流程最佳化能力的海量、高增長率和多樣化的資訊資產。它是對那些超出正常處理範圍和大小、迫使使用者採用非傳統處理方法的資料集所下的定義。

   區別於過去的海量資料,大資料的特點可以概況為4 V Volume Variety Value Velocity ,即大量、多樣、價值密度低、快速。

   第一,資料體量大。大資料一般指在10TB(1TB=1024GB) 規模以上的資料量,目前正在躍升到 PB(1PB=1024TB) 級別。不僅儲存量大,計算量也大。

   第二,資料型別多。除了數值資料,還有文字、聲音、影片等,包括網路日誌、影片、圖片、地理位置資訊等多種型別的格式。由於資料來自多種資料來源,資料種類和格式日漸豐富,已衝破了以前所限定的結構化資料範疇,囊括了半結構化和非結構化資料。

   第三,價值密度低。以影片為例,不間斷監控影片中,有價值的資料可能僅有一兩秒。找到有價值的資訊有如沙裡淘金,其價值卻又彌足珍貴。

   第四,處理速度快。在資料量非常龐大的情況下,也能做到資料的實時處理。這一點和傳統的資料探勘技術有著本質的不同。

   大資料技術是指從各種型別的大體量資料中快速獲得有價值資訊的技術。這是大資料的核心問題。目前所說的大資料不僅指資料本身的規模,也包括採集資料的工具、平臺和資料分析系統。大資料研發的目的是發展大資料技術並將其應用到相關領域,透過解決大體量資料處理問題促進其突破性發展。因此,大資料時代帶來的挑戰不僅體現在如何處理大體量資料並從中獲取有價值的資訊,也體現在如何加強大資料技術研發。大資料所涉及的關鍵技術大致包括6 個方面:資料採集與資料管理、分散式儲存和平行計算、大資料應用開發、資料分析與挖掘、大資料前端應用、資料服務和展現。

   2 、大資料與 Hadoop

   大資料技術正在向各行各業滲透。Hadoop 作為資料分散式處理系統的典型代表,已經成為該領域事實的標準。但 Hadoop 並不等於大資料,它只是一個成功的處理離線資料的分散式系統,大資料領域還存在眾多其他型別的處理系統。

   伴隨大資料技術的普及,Hadoop 因其開源的特點和卓越的效能成為一時的新寵,甚至有人認為大資料就是 Hadoop ,其實這是一個誤區。 Hadoop 只是處理離線資料的分散式儲存和處理系統。除了 Hadoop ,還有用於處理流資料的 Storm 、處理關係型資料的 Oracle 、處理實時機器資料的 Splunk ……目前主流的大資料系統很多, Hadoop 只是其中的代表。

   3 1Hadoop 的核心模組

   HadoopCommon Hadoop 的公用應用模組,是整個 Hadoop 專案的核心,為 Hadoop 各子專案提供各種工具,如配置檔案和日誌操作等,其他 Hadoop 子專案都是在此基礎上發展起來的。

   HadoopDistributedFileSystem(HDFS) Hadoop 分散式檔案系統,提供高吞吐量應用程式資料訪問,並具有高容錯性。對外部客戶機而言, HDFS 就像一個傳統的分級檔案系統,可以進行增刪改查或重新命名等常規檔案操作。但實際上 HDFS 中的檔案被分成塊,然後複製到多個計算機中,這與傳統的 RAID 架構大不相同。 HDFS 特別適合需要一次寫入、多次讀取的超大規模資料集的應用程式。

   HadoopYARN :一個作業排程和群集資源管理框架。

   HadoopMapReduce :基於 YARN 的大型資料分散式並行程式設計模式和程式執行框架,是 Google MapReduce 的開源實現。它幫助使用者編寫處理大型資料集的並行執行程式。 MapReduce 隱藏了分散式並行程式設計的底層細節,開發人員只需編寫業務邏輯程式碼,而無需考慮程式並行執行的細節,從而大大提高了開發效率。

   Apache 的其他與 Hadoop 相關的專案還有很多。

   4 Hadoop 的特點

   作為分散式計算領域的典型代表,Hadoop 比其他分散式框架有更多的優點。

   可擴充套件性:Hadoop 可以在不停止叢集服務的情況下,在可用的計算機集簇間分配資料並完成計算,這些集簇可以方便地擴充套件到數千節點中。

   簡單性:Hadoop 實現了簡單並行程式設計模式,使用者不需要了解分散式儲存和計算的底層細節即可編寫和執行分散式應用,在叢集上處理大規模資料集,所以使用 Hadoop 的使用者可以輕鬆搭建自己的分散式平臺。

   高效性:Hadoop 的分散式檔案系統具有高效的資料互動設計,可以透過並行處理加快處理速度。 Hadoop 還是可伸縮的,能夠在節點間動態地移動資料,並保證各個節點的動態平衡,因此處理速度非常快。

   可靠性:Hadoop 的分散式檔案系統將資料分塊儲存,每個資料塊在叢集節點上依據一定的策略冗餘儲存,確保能夠針對失敗的節點重新分佈處理,從而保證了資料的可靠性。

   成本低:依賴於廉價伺服器,它的成本比較低,任何人都可以使用。

   以上就是關於希望對小夥伴們有所幫助


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2727458/,如需轉載,請註明出處,否則將追究法律責任。

相關文章