日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

大数据技术hadoop入门级生态圈介绍

發布時間:2024/9/20 编程问答 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大数据技术hadoop入门级生态圈介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

hadoop 生態概況
Hadoop是一個由Apache基金會所開發的分布式系統基礎架構。

用戶可以在不了解分布式底層細節的情況下,開發分布式程序。充分利用集群的威力進行高速運算和存儲。

具有可靠、高效、可伸縮的特點。

Hadoop的核心是YARN,HDFS和Mapreduce

?下圖為hadoop的生態系統:

HDFS(Hadoop分布式文件系統)
源自于Google的GFS論文,發表于2003年10月,HDFS是GFS克隆版。

HDFS是Hadoop體系中數據存儲管理的基礎。它是一個高度容錯的系統,能檢測和應對硬件故障,用于在低成本的通用硬件上運行。

HDFS簡化了文件的一致性模型,通過流式數據訪問,提供高吞吐量應用程序數據訪問功能,適合帶有大型數據集的應用程序。

它提供了一次寫入多次讀取的機制,數據以塊的形式,同時分布在集群不同物理機器上。


Mapreduce(分布式計算框架)
源自于google的MapReduce論文,發表于2004年12月,Hadoop MapReduce是google MapReduce 克隆版。

MapReduce是一種分布式計算模型,用以進行大數據量的計算。它屏蔽了分布式計算框架細節,將計算抽象成map和reduce兩部分,

其中Map對數據集上的獨立元素進行指定的操作,生成鍵-值對形式中間結果。Reduce則對中間結果中相同“鍵”的所有“值”進行規約,以得到最終結果。

MapReduce非常適合在大量計算機組成的分布式并行環境里進行數據處理。


JobTracker:Master節點,只有一個,管理所有作業,作業/任務的監控、錯誤處理等;將任務分解成一系列任務,并分派給TaskTracker。
TaskTracker:Slave節點,運行Map Task和Reduce Task;并與JobTracker交互,匯報任務狀態。
Map Task:解析每條數據記錄,傳遞給用戶編寫的map(),并執行,將輸出結果寫入本地磁盤(如果為map-only作業,直接寫入HDFS)。
Reducer Task:從Map Task的執行結果中,遠程讀取輸入數據,對數據進行排序,將數據按照分組傳遞給用戶編寫的reduce函數執行。

Mapreduce處理流程,以wordCount為例:

Yarn(分布式資源管理器)
YARN是下一代MapReduce,即MRv2,是在第一代MapReduce基礎上演變而來的,主要是為了解決原始Hadoop擴展性較差,不支持多計算框架而提出的。
Yarn是下一代 Hadoop 計算平臺,yarn是一個通用的運行時框架,用戶可以編寫自己的計算框架,在該運行環境中運行。
用于自己編寫的框架作為客戶端的一個lib,在運用提交作業時打包即可。該框架為提供了以下幾個組件:

資源管理:包括應用程序管理和機器資源管理

資源雙層調度

容錯性:各個組件均有考慮容錯性

擴展性:可擴展到上萬個節點

Zookeeper(分布式協作服務)
源自Google的Chubby論文,發表于2006年11月,Zookeeper是Chubby克隆版

解決分布式環境下的數據管理問題:統一命名,狀態同步,集群管理,配置同步等。

Hadoop的許多組件依賴于Zookeeper,它運行在計算機集群上面,用于管理Hadoop操作。

HBASE(分布式列存數據庫)
源自Google的Bigtable論文,發表于2006年11月,HBase是Google Bigtable克隆版

HBase是一個建立在HDFS之上,面向列的針對結構化數據的可伸縮、高可靠、高性能、分布式和面向列的動態模式數據庫。

HBase采用了BigTable的數據模型:增強的稀疏排序映射表(Key/Value),其中,鍵由行關鍵字、列關鍵字和時間戳構成。

HBase提供了對大規模數據的隨機、實時讀寫訪問,同時,HBase中保存的數據可以使用MapReduce來處理,它將數據存儲和并行計算完美地結合在一起。

HIVE(數據倉庫)
由facebook開源,最初用于解決海量結構化的日志數據統計問題。

Hive定義了一種類似SQL的查詢語言(HQL),將SQL轉化為MapReduce任務在Hadoop上執行。通常用于離線分析。

HQL用于運行存儲在Hadoop上的查詢語句,Hive讓不熟悉MapReduce開發人員也能編寫數據查詢語句,然后這些語句被翻譯為Hadoop上面的MapReduce任務。

Pig(ad-hoc腳本)
由yahoo!開源,設計動機是提供一種基于MapReduce的ad-hoc(計算在query時發生)數據分析工具

Pig定義了一種數據流語言—Pig Latin,它是MapReduce編程的復雜性的抽象,Pig平臺包括運行環境和用于分析Hadoop數據集的腳本語言(Pig Latin)。

其編譯器將Pig Latin翻譯成MapReduce程序序列將腳本轉換為MapReduce任務在Hadoop上執行。通常用于進行離線分析。

Mahout(數據挖掘算法庫)
Mahout起源于2008年,最初是Apache Lucent的子項目,它在極短的時間內取得了長足的發展,現在是Apache的頂級項目。

Mahout的主要目標是創建一些可擴展的機器學習領域經典算法的實現,旨在幫助開發人員更加方便快捷地創建智能應用程序。

Mahout現在已經包含了聚類、分類、推薦引擎(協同過濾)和頻繁集挖掘等廣泛使用的數據挖掘方法。

除了算法,Mahout還包含數據的輸入/輸出工具、與其他存儲系統(如數據庫、MongoDB 或Cassandra)集成等數據挖掘支持架構。
---------------------?
作者:Smile-GQ?
來源:CSDN?
原文:https://blog.csdn.net/weixin_43273168/article/details/90411277?
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

總結

以上是生活随笔為你收集整理的大数据技术hadoop入门级生态圈介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。