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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

2-hadoop-Hadoop以及生态

發布時間:2024/4/17 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2-hadoop-Hadoop以及生态 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

Hadoop是什么

1、是一個由apache基金會所開發的分布式系統基礎架構
2、主要解決海量數據的存儲和海量數據的分析計算
3、廣義上說,Hadoop通常是一個廣泛的概念------->Hadoop生態圈

?

發展歷史

1、Lucene科=框架是Doug Cutting開創的開源軟件,用java代碼實現,于google類似的全文搜索功能

  它提供了全文檢索引擎架構,包括完整的查詢引擎和索引引擎

2、2001年年底Lucene成為Apache基金會的一個子項目

3、對于海量數據的場景,Lucene面對和Google同樣的問題,存數據滿檢索數據速度慢

4、懸系模仿Google解決方法:微型版Nutch

5、Goog是Hadoop的思想之源

    論文:GFS--->HDFS, Map-Reduce--->MR,BigTable--->HBase

6、03-04年,Google公開了部分GFS和MapReduce思想的細節,以此為基礎的Dong Cutting等人用了兩年

  業余時間實現了DFS和MapReduce機制,是哦那個Nutch性能飄升

7、05年Hadoop作為Lucene的一部分正式引入Apache基金會

8、06年,Map-Reduce和Nutch Distribute File System(NDFS)分別納入hadoop的項目中

9、名字來源于其兒子的玩具大象

?

三大發行版本

Hadoop三大發行版本:Apache、Cloudrea、Hortonworks

?

Apache:

  https://hadoop.apache.org/

Cloudera(CDH版):在大型互聯網公司使用較多
  https://www.cloudera.com/products/open-source/apache-hadoop/key-cdh-components.html
  所有版本都是一些列的(如1.2.1直接干一套)

Hortonworks:文檔比較好

?

Hadoop的優勢

1、高可靠性
hadoop底層維護多個數據副本(至少備份三份),所以即使Hadoop某個計算元素出現故障,也不會導致數據丟失

2、高擴展性
在集群間分配任務數據,可方便地擴展數以千計地節點

3、高效性
在MapReduce的思想下,Hadoop是并行工作的,以加快任務處理速度

4、高容錯性
能夠自動將失敗的任務重新分配

?

?

Hadoop1.x和2.x的區別

?

?HDFS

Hadoop分布式文件系統(HDFS)被設計成適合運行在通用硬件(commodity hardware)上的分布式文件系統。

它和現有的分布式文件系統有很多共同點。但同時,它和其他的分布式文件系統的區別也是很明顯的。

HDFS是一個高度容錯性的系統,適合部署在廉價的機器上。

HDFS能提供高吞吐量的數據訪問,非常適合大規模數據集上的應用。

HDFS放寬了一部分POSIX約束,來實現流式讀取文件系統數據的目的。

HDFS在最開始是作為Apache Nutch搜索引擎項目的基礎架構而開發的。

HDFS是Apache Hadoop Core項目的一部分。

這個項目的地址是http://hadoop.apache.org/core/。

?

1、NameNode(nn):存儲文件的元素據,如文件名,文件目錄結構、文件屬性(生成屬性,副本數,文件限制) 以及每個文件的塊列表和塊所在的DataNode等

2、DataNode(dn):在本地文件存儲系統文件塊數據,以及塊數據的校驗和

3、Secondary nameNode(2nn):用來監控HDFS狀態的輔助后臺程序,每個一段時間獲取HDFS元素的快照

?

?

YARN

?

MapReduce

將計算過程分為兩個階段:Map和Reduce
Map階段并行處理輸入數據
Reduce階段對Map結果進行匯總

?

生態體系

?

1SqoopSqoop是一款開源的工具,主要用于在Hadoop、Hive與傳統的數據庫(MySql)間進行數據的傳遞,

  可以將一個關系型數據庫(例如 :MySQL,Oracle 等)中的數據導進到HadoopHDFS中,也可以將HDFS的數據導進到關系型數據庫中。

2FlumeFlumeCloudera提供的一個高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸的系統,

  Flume支持在日志系統中定制各類數據發送方,用于收集數據;同時,Flume提供對數據進行簡單處理,并寫到各種數據接受方(可定制)的能力。

3KafkaKafka是一種高吞吐量的分布式發布訂閱消息系統,有如下特性:

1)通過O(1)的磁盤數據結構提供消息的持久化,這種結構對于即使數以TB的消息存儲也能夠保持長時間的穩定性能。

2)高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒數百萬的消息

3)支持通過Kafka服務器和消費機集群來分區消息。

4)支持Hadoop并行數據加載。

4StormStorm用于連續計算,對數據流做連續查詢,在計算時就將結果以流的形式輸出給用戶。

5SparkSpark是當前最流行的開源大數據內存計算框架。可以基于Hadoop上存儲的大數據進行計算。

6OozieOozie是一個管理Hdoop作業(job)的工作流程調度管理系統。

7HbaseHBase是一個分布式的、面向列的開源數據庫。HBase不同于一般的關系數據庫,它是一個適合于非結構化數據存儲的數據庫。

8HiveHive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供簡單的SQL查詢功能,
  可以將
SQL語句轉換為MapReduce任務進行運行。 其優點是學習成本低,可以通過類SQL語句快速實現簡單的MapReduce統計,

  不必開發專門的MapReduce應用,十分適合數據倉庫的統計分析。

10R語言:R是用于統計分析、繪圖的語言和操作環境。

  R是屬于GNU系統的一個自由、免費、源代碼開放的軟件,它是一個用于統計計算和統計制圖的優秀工具。

11Mahout:Apache Mahout是個可擴展的機器學習和數據挖掘庫。

12ZooKeeperZookeeperGoogleChubby一個開源的實現。它是一個針對大型分布式系統的可靠協調系統,

  提供的功能包括:配置維護、名字服務、 分布式同步、組服務等。

  ZooKeeper的目標就是封裝好復雜易出錯的關鍵服務,將簡單易用的接口和性能高效、功能穩定的系統提供給用戶。

?

推薦搭建系統

?

?

轉載于:https://www.cnblogs.com/Mrchengs/p/11217538.html

總結

以上是生活随笔為你收集整理的2-hadoop-Hadoop以及生态的全部內容,希望文章能夠幫你解決所遇到的問題。

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