真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Hadoop基本概念

Hadoop是一個是個海量數(shù)據(jù)的分布式存儲和計算平臺

為福鼎等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及福鼎網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站制作、網(wǎng)站設(shè)計、福鼎網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

  對于數(shù)據(jù),我們大致可以將其分為三類:

                         結(jié)構(gòu)化數(shù)據(jù)(對于結(jié)構(gòu)化數(shù)據(jù)的處理可以通過RDBMS處理,通過將搜索碼創(chuàng)建為索引頁可以實現(xiàn)很快的查詢速度)

                        半結(jié)構(gòu)化數(shù)據(jù)(一般可以使用類型XML進行標記處理)

                         非結(jié)構(gòu)化數(shù)據(jù)

其實,非結(jié)構(gòu)化數(shù)據(jù)會占據(jù)相當大的比重,非機構(gòu)化數(shù)據(jù)的存儲和計算也變得比較困難。

  Hadoop的靈感來自于Google的兩篇論文,包括MapReduce,我們可以將Hadoop理解為是MapReduce的開源實現(xiàn),Hadoop是由java語言編寫的。

  首先,對于海量數(shù)據(jù),需要完成對其進行存儲然后進行就算,分析。

HDFS:Hadoop分布式文件系統(tǒng)

MapReduce:Hadoop用于完成并行數(shù)據(jù)處理的框架

 可以理解為Hadoop=HDFS+MapReduce,也就是可以理解為一個Hadoop集群就是一個HDFS集群加上一個MapReduce集群。

HDFS如何完成分布式存儲:

   HDFS集群中一般會有一個主節(jié)點(在Hadoop的新版本中,已經(jīng)實現(xiàn)有多個主節(jié)點),稱之為NameNode(簡稱為NN)

   HDFS中會有n個從節(jié)點,稱之為DataNode(DN)

實際完成數(shù)據(jù)存儲的都是數(shù)據(jù)節(jié)點,而NameNode主要是用于將數(shù)據(jù)分塊,分塊之后再分配給數(shù)據(jù)節(jié)點進行存儲,另外,NameNode用于接收用戶請求,管理從節(jié)點,維護文件系統(tǒng)的目錄結(jié)構(gòu),管理文件與Block之間的關(guān)系,block與數(shù)據(jù)節(jié)點之間的關(guān)系,從而完成分布式存儲海量數(shù)據(jù)的目的。

HDFS的特性:HDFS設(shè)計用于存儲大文件,對于海量小文件的存儲不太適用

        HDFS是用戶空間的文件系統(tǒng)(其實數(shù)據(jù)最終還是存儲在諸如ext3文件系統(tǒng)上,只不過需要經(jīng)過HDFS的又一次對數(shù)據(jù)進行抽象)

        HDFS不支持修改數(shù)據(jù)(新版本支持追加)

        不支持掛載并通過系統(tǒng)調(diào)用進行訪問,只能使用專用訪問借口,例如專用的命令行工具,API

MapReduce,一般提到MapReduce,其有三個含義:

                            編程模型

                            運算框架

                           MapReduce編程思想的具體實現(xiàn)工具

MapReduce的思想大致就是分為兩個階段:Map和Reduce

           Map就是將對一個大文件的處理分割成塊進行計算,實現(xiàn)分布式

           Reduce就是將對各個塊的計算結(jié)果再進行匯總

對數(shù)據(jù)計算其實就是提取Key-Value的方式,在進行Map之后交由Reduce的時候,必須要將同一個Key提取的內(nèi)容發(fā)送至同一個Reduce進程進行最后的合并

對于數(shù)據(jù)的計算,需要處理人員按照MapReduce的編程模型結(jié)合對數(shù)據(jù)的處理目的編寫MapReduce程序,所以對于海量數(shù)據(jù)的計算在HDFS+MapReduce結(jié)合上有著極大的限制性。

  Hadoop同時也有很多的組件,從而構(gòu)成了Hadoop的生態(tài)系統(tǒng):

 Hadoop基本概念

HDFS+MapReduce構(gòu)成了Hadoop的核心:

  Hive:Hive是由Facebook開發(fā)的,Hive將整個MapReduce提供的框架抽象為一個系統(tǒng),當用戶想要就行查詢等操作的時候,就可以想Hive提交一個SQL語句,然后由Hive實現(xiàn)將用戶便于理解的SQL語句轉(zhuǎn)換成為一個MapReduce程序執(zhí)行,最后向用戶輸出結(jié)果(可以理解成Hive提供了一個SQL接口,但是并不和SQL完全兼容)

  Hbase:由于HDFS不能掛載,也不能修改數(shù)據(jù),當Hbase工作在HDFS之上的時候,構(gòu)成一個Hbase集群,在Hbase的節(jié)點上再啟動一個進程,這時數(shù)據(jù)可以先存在Hbase上,然后再由Hbase將其存入HDFS,并且Hbase對數(shù)據(jù)記錄有版本號,實現(xiàn)了對數(shù)據(jù)進行修改

  在很多情況下,我們需要對例如web服務(wù)器集群產(chǎn)生的日志進行分析計算,那么如何將web服務(wù)器產(chǎn)生的日志存儲到HDFS上,首先,HDFS不能被掛載,所以就不能像對待一本文件系統(tǒng)沒那個一樣對其進行寫入,這就是Flume,scrib這些日志收集工具實現(xiàn)將日志存儲到HDFS上的。

  同上,很多情況下可能需要借助于集群的威力對存儲在RDBMS上的數(shù)據(jù)進行分析計算和挖掘,那么如何將RDBMS中的數(shù)據(jù)導(dǎo)入到HDFS上,就是有Sqoop工具實現(xiàn)的,可以將數(shù)據(jù)用Sqoop從RDBMS導(dǎo)出,先存儲到Hbase上,再由Hbase實現(xiàn)存儲到HDFS上,之后就可以通過編寫的MapReduce程序?qū)?shù)據(jù)進行運算

  MAhost就是用于數(shù)據(jù)挖掘,也就是機器學(xué)習(xí)的工具

 Zookeeper:可以理解其就是一個協(xié)調(diào)器,監(jiān)控集群上的各個節(jié)點是否能夠符合集群的要求

Hadoop在HDFS提供改良數(shù)據(jù)存儲的方案上表現(xiàn)還是比較出色的,但是MapReduce的計算能力就稍有遜色,可以結(jié)合第二代大數(shù)據(jù)解決方案spark,使用HDFS完成海量數(shù)據(jù)的分布式存儲,有spark提供對海量數(shù)據(jù)的運算


網(wǎng)站名稱:Hadoop基本概念
分享鏈接:http://weahome.cn/article/jscejc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部