偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

基于Hadoop的大數(shù)據(jù)平臺(tái)實(shí)施——整體架構(gòu)設(shè)計(jì)

大數(shù)據(jù) Hadoop
大數(shù)據(jù)的熱度在持續(xù)的升溫,繼云計(jì)算之后大數(shù)據(jù)成為又一大眾所追捧的新星。我們暫不去討論大數(shù)據(jù)到底是否適用于您的公司或組織,至少在互聯(lián)網(wǎng)上已經(jīng)被吹噓成無(wú)所不能的超級(jí)戰(zhàn)艦。

大數(shù)據(jù)的熱度在持續(xù)的升溫,繼云計(jì)算之后大數(shù)據(jù)成為又一大眾所追捧的新星。我們暫不去討論大數(shù)據(jù)到底是否適用于您的公司或組織,至少在互聯(lián)網(wǎng)上已經(jīng)被吹噓成無(wú)所不能的超級(jí)戰(zhàn)艦。好像一夜之間我們就從互聯(lián)網(wǎng)時(shí)代跳躍進(jìn)了大數(shù)據(jù)時(shí)代!關(guān)于到底什么是大數(shù)據(jù),說(shuō)真的,到目前為止就和云計(jì)算一樣,讓我總覺(jué)得像是在看電影《云圖》——云里霧里的感覺(jué)?;蛟S那些正在向你推銷大數(shù)據(jù)產(chǎn)品的公司會(huì)對(duì)您描繪一幅烏托邦似的美麗畫面,但是您至少要保持清醒的頭腦,認(rèn)真仔細(xì)的慎問(wèn)一下自己,我們公司真的需要大數(shù)據(jù)嗎?

做為一家第三方支付公司,數(shù)據(jù)的確是公司最最重要的核心資產(chǎn)。由于公司成立不久,隨著業(yè)務(wù)的迅速發(fā)展,交易數(shù)據(jù)呈幾何級(jí)增加,隨之而來(lái)的是系統(tǒng)的不堪重負(fù)。業(yè)務(wù)部門、領(lǐng)導(dǎo)、甚至是集團(tuán)老總整天嚷嚷的要報(bào)表、要分析、要提升競(jìng)爭(zhēng)力。而研發(fā)部門能做的唯一事情就是執(zhí)行一條一條復(fù)雜到自己都難以想象的SQL語(yǔ)句,緊接著系統(tǒng)開(kāi)始罷工,內(nèi)存溢出,宕機(jī)........簡(jiǎn)直就是噩夢(mèng)。OMG!please release me!!!

其實(shí)數(shù)據(jù)部門的壓力可以說(shuō)是常人難以想象的,為了把所有離散的數(shù)據(jù)匯總成有價(jià)值的報(bào)告,可能會(huì)需要幾個(gè)星期的時(shí)間或是更長(zhǎng)。這顯然和業(yè)務(wù)部門要求的快速響應(yīng)理念是格格不入的。俗話說(shuō),工欲善其事,必先利其器。我們也該鳥槍換炮了......。

網(wǎng)上有一大堆文章描述著大數(shù)據(jù)的種種好處,也有一大群人不厭其煩的說(shuō)著自己對(duì)大數(shù)據(jù)的種種體驗(yàn),不過(guò)我想問(wèn)一句,到底有多少人多少組織真的在做大數(shù)據(jù)?實(shí)際的效果又如何?真的給公司帶來(lái)價(jià)值了?是否可以將價(jià)值量化?關(guān)于這些問(wèn)題,好像沒(méi)看到有多少評(píng)論會(huì)涉及,可能是大數(shù)據(jù)太新了(其實(shí)底層的概念并非新事物,老酒裝新瓶罷了),以至于人們還沉浸在各種美妙的YY中。

做為一名嚴(yán)謹(jǐn)?shù)募夹g(shù)人員,在經(jīng)過(guò)短暫盲目的崇拜之后,應(yīng)該快速的進(jìn)入落地應(yīng)用的研究中,這也是踩著“云彩”的架構(gòu)師和騎著自行車的架構(gòu)師的本質(zhì)區(qū)別。說(shuō)了一些牢騷話,當(dāng)做發(fā)泄也好,博眼球也好,總之,我想表達(dá)的其實(shí)很簡(jiǎn)單:不要被新事物所迷惑,也不要盲目的崇拜任何一樣新事物,更不要人云亦云,這是我們做研究的人絕對(duì)要不得。

說(shuō)了很多也是時(shí)候進(jìn)入正題了。公司高層決定,正式在集團(tuán)范圍內(nèi)實(shí)施大數(shù)據(jù)平臺(tái)(還特地邀請(qǐng)了一些社區(qū)的高手,很期待.......),做為第三方支付公司實(shí)施大數(shù)據(jù)平臺(tái)也無(wú)可厚非,因此也積極的參與到這個(gè)項(xiàng)目中來(lái)。正好之前關(guān)于OSGi的企業(yè)級(jí)框架的研究也告一段落,所以想利用CSDN這個(gè)平臺(tái)將這次大數(shù)據(jù)平臺(tái)實(shí)施過(guò)程記錄下來(lái)。我想一定能為其它有類似想法的個(gè)人或公司提供很好的參考資料!

***記,大數(shù)據(jù)平臺(tái)的整體架構(gòu)設(shè)計(jì)

1. 軟件架構(gòu)設(shè)計(jì) 

大數(shù)據(jù)平臺(tái)架構(gòu)設(shè)計(jì)沿襲了分層設(shè)計(jì)的思想,將平臺(tái)所需提供的服務(wù)按照功能劃分成不同的模塊層次,每一模塊層次只與上層或下層的模塊層次進(jìn)行交互(通過(guò)層次邊界的接口),避免跨層的交互,這種設(shè)計(jì)的好處是:各功能模塊的內(nèi)部是高內(nèi)聚的,而模塊與模塊之間是松耦合的。這種架構(gòu)有利于實(shí)現(xiàn)平臺(tái)的高可靠性,高擴(kuò)展性以及易維護(hù)性。比如,當(dāng)我們需要擴(kuò)容Hadoop集群時(shí),只需要在基礎(chǔ)設(shè)施層添加一臺(tái)新的Hadoop節(jié)點(diǎn)服務(wù)器即可,而對(duì)其他模塊層無(wú)需做任何的變動(dòng),且對(duì)用戶也是完全透明的。

整個(gè)大數(shù)據(jù)平臺(tái)按其職能劃分為五個(gè)模塊層次,從下到上依次為:

運(yùn)行環(huán)境層:

運(yùn)行環(huán)境層為基礎(chǔ)設(shè)施層提供運(yùn)行時(shí)環(huán)境,它由2部分構(gòu)成,即操作系統(tǒng)和運(yùn)行時(shí)環(huán)境。

(1)操作系統(tǒng)我們推薦安裝REHL5.0以上版本(64位)。此外為了提高磁盤的IO吞吐量,避免安裝RAID驅(qū)動(dòng),而是將分布式文件系統(tǒng)的數(shù)據(jù)目錄分布在不同的磁盤分區(qū)上,以此提高磁盤的IO性能。

(2)運(yùn)行時(shí)環(huán)境的具體要求如下表:

  • 名稱版本說(shuō)明
  • JDK1.6或以上版本Hadoop需要Java運(yùn)行時(shí)環(huán)境,必須安裝JDK。
  • gcc/g++3.x或以上版本當(dāng)使用Hadoop Pipes運(yùn)行MapReduce任務(wù)時(shí),需要gcc編譯器,可選。
  • python2.x或以上版本當(dāng)使用Hadoop Streaming運(yùn)行MapReduce任務(wù)時(shí),需要python運(yùn)行時(shí),可選。

基礎(chǔ)設(shè)施層:

基礎(chǔ)設(shè)施層由2部分組成:Zookeeper集群和Hadoop集群。它為基礎(chǔ)平臺(tái)層提供基礎(chǔ)設(shè)施服務(wù),比如命名服務(wù)、分布式文件系統(tǒng)、MapReduce等。

(1)ZooKeeper集群用于命名映射,做為Hadoop集群的命名服務(wù)器,基礎(chǔ)平臺(tái)層的任務(wù)調(diào)度控制臺(tái)可以通過(guò)命名服務(wù)器訪問(wèn)Hadoop集群中的NameNode,同時(shí)具備failover的功能。

(2)Hadoop集群是大數(shù)據(jù)平臺(tái)的核心,是基礎(chǔ)平臺(tái)層的基礎(chǔ)設(shè)施。它提供了HDFS、MapReduce、JobTracker和TaskTracker等服務(wù)。目前我們采用雙主節(jié)點(diǎn)模式,以此避免Hadoop集群的單點(diǎn)故障問(wèn)題。

基礎(chǔ)平臺(tái)層:

基礎(chǔ)平臺(tái)層由3個(gè)部分組成:任務(wù)調(diào)度控制臺(tái)、HBase和Hive。它為用戶網(wǎng)關(guān)層提供基礎(chǔ)服務(wù)調(diào)用接口。

(1)任務(wù)調(diào)度控制臺(tái)是MapReduce任務(wù)的調(diào)度中心,分配各種任務(wù)執(zhí)行的順序和優(yōu)先級(jí)。用戶通過(guò)調(diào)度控制臺(tái)提交作業(yè)任務(wù),并通過(guò)用戶網(wǎng)關(guān)層的Hadoop客戶端返回其任務(wù)執(zhí)行的結(jié)果。其具體執(zhí)行步驟如下:

  • 任務(wù)調(diào)度控制臺(tái)接收到用戶提交的作業(yè)后,匹配其調(diào)度算法;
  • 請(qǐng)求ZooKeeper返回可用的Hadoop集群的JobTracker節(jié)點(diǎn)地址;
  • 提交MapReduce作業(yè)任務(wù);
  • 輪詢作業(yè)任務(wù)是否完成;
  • 如果作業(yè)完成發(fā)送消息并調(diào)用回調(diào)函數(shù);
  • 繼續(xù)執(zhí)行下一個(gè)作業(yè)任務(wù)。

作為一個(gè)完善的Hadoop集群實(shí)現(xiàn),任務(wù)調(diào)度控制臺(tái)盡量自己開(kāi)發(fā)實(shí)現(xiàn),這樣靈活性和控制力會(huì)更加的強(qiáng)。

(2)HBase是基于Hadoop的列數(shù)據(jù)庫(kù),為用戶提供基于表的數(shù)據(jù)訪問(wèn)服務(wù)。

(3)Hive是在Hadoop上的一個(gè)查詢服務(wù),用戶通過(guò)用戶網(wǎng)關(guān)層的Hive客戶端提交類SQL的查詢請(qǐng)求,并通過(guò)客戶端的UI查看返回的查詢結(jié)果,該接口可提供數(shù)據(jù)部門準(zhǔn)即時(shí)的數(shù)據(jù)查詢統(tǒng)計(jì)服務(wù)。

用戶網(wǎng)關(guān)層:

用戶網(wǎng)關(guān)層用于為終端客戶提供個(gè)性化的調(diào)用接口以及用戶的身份認(rèn)證,是用戶唯一可見(jiàn)的大數(shù)據(jù)平臺(tái)操作入口。終端用戶只有通過(guò)用戶網(wǎng)關(guān)層提供的接口才可以與大數(shù)據(jù)平臺(tái)進(jìn)行交互。目前網(wǎng)關(guān)層提供了3個(gè)個(gè)性化調(diào)用接口:

  • (1)Hadoop客戶端是用戶提交MapReduce作業(yè)的入口,并可從其UI界面查看返回的處理結(jié)果。
  • (2)Hive客戶端是用戶提交HQL查詢服務(wù)的入口,并可從其UI界面查看查詢結(jié)果。
  • (3)Sqoop是關(guān)系型數(shù)據(jù)庫(kù)與HBase或Hive交互數(shù)據(jù)的接口??梢詫㈥P(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)按照要求導(dǎo)入到HBase或Hive中,以提供用戶可通過(guò)HQL進(jìn)行查詢。同時(shí)HBase或Hive或HDFS也可以將數(shù)據(jù)導(dǎo)回到關(guān)系型數(shù)據(jù)庫(kù)中,以便其他的分析系統(tǒng)進(jìn)行進(jìn)一步的數(shù)據(jù)分析。

用戶網(wǎng)關(guān)層可以根據(jù)實(shí)際的需求***的擴(kuò)展,以滿足不同用戶的需求。

客戶應(yīng)用層:

客戶應(yīng)用層是各種不同的終端應(yīng)用程序,可以包括:各種關(guān)系型數(shù)據(jù)庫(kù),報(bào)表,交易行為分析,對(duì)賬單,清結(jié)算等。

目前我能想到的可以落地到大數(shù)據(jù)平臺(tái)的應(yīng)用有:

  1. 行為分析:將交易數(shù)據(jù)從關(guān)系型數(shù)據(jù)庫(kù)導(dǎo)入到Hadoop集群中,然后根據(jù)數(shù)據(jù)挖掘算法編寫MapReduce作業(yè)任務(wù)并提交到JobTracker中進(jìn)行分布式計(jì)算,然后將其計(jì)算結(jié)果放入Hive中。終端用戶通過(guò)Hive客戶端提交HQL查詢統(tǒng)計(jì)分析的結(jié)果。
  2. 對(duì)賬單:將交易數(shù)據(jù)從關(guān)系型數(shù)據(jù)庫(kù)導(dǎo)入到Hadoop集群,然后根據(jù)業(yè)務(wù)規(guī)則編寫MapReduce作業(yè)任務(wù)并提交到JobTracker中進(jìn)行分布式計(jì)算,終端用戶通過(guò)Hadoop客戶端提取對(duì)賬單結(jié)果文件(Hadoop本身也是一個(gè)分布式文件系統(tǒng),具備通常的文件存取能力)。
  3. 清結(jié)算:將銀聯(lián)文件導(dǎo)入HDFS中,然后將之前從關(guān)系型數(shù)據(jù)庫(kù)中導(dǎo)入的POSP交易數(shù)據(jù)進(jìn)行MapReduce計(jì)算(即對(duì)賬操作),然后將計(jì)算結(jié)果連接到另外一個(gè)MapReduce作業(yè)中進(jìn)行費(fèi)率及分潤(rùn)的計(jì)算(即結(jié)算操作),***將計(jì)算結(jié)果導(dǎo)回到關(guān)系型數(shù)據(jù)庫(kù)中由用戶觸發(fā)商戶劃款(即劃款操作)。

部署架構(gòu)設(shè)計(jì) 

關(guān)鍵點(diǎn)說(shuō)明:

  1. 目前整個(gè)Hadoop集群均放置在銀聯(lián)機(jī)房中。
  2. Hadoop集群中有2個(gè)Master節(jié)點(diǎn)和5個(gè)Slave節(jié)點(diǎn),2個(gè)Master節(jié)點(diǎn)互為備份通過(guò)ZooKeeper可實(shí)現(xiàn)failover功能。每個(gè)Master節(jié)點(diǎn)共享所有的Slave節(jié)點(diǎn),保證分布式文件系統(tǒng)的備份存在于所有的DataNode節(jié)點(diǎn)之中。Hadoop集群中的所有主機(jī)必須使用同一網(wǎng)段并放置在同一機(jī)架上,以此保證集群的IO性能。
  3. ZooKeeper集群至少配置2臺(tái)主機(jī),以避免命名服務(wù)的單節(jié)點(diǎn)故障。通過(guò)ZooKeeper我們可以不再需要F5做負(fù)載均衡,直接由任務(wù)調(diào)度控制臺(tái)通過(guò)ZK實(shí)現(xiàn)Hadoop名稱節(jié)點(diǎn)的負(fù)載均衡訪問(wèn)。
  4. 所有服務(wù)器之間必須配置為無(wú)密鑰SSH訪問(wèn)。
  5. 外部或內(nèi)部用戶均需要通過(guò)網(wǎng)關(guān)才能訪問(wèn)Hadoop集群,網(wǎng)關(guān)在經(jīng)過(guò)一些身份認(rèn)證之后才能提供服務(wù),以此保證Hadoop集群的訪問(wèn)安全。
責(zé)任編輯:未麗燕 來(lái)源: 網(wǎng)絡(luò)大數(shù)據(jù)
相關(guān)推薦

2020-07-10 08:50:37

大數(shù)據(jù)銀行技術(shù)

2019-12-24 08:11:39

大數(shù)據(jù)架構(gòu)數(shù)據(jù)開(kāi)發(fā)

2017-07-04 14:57:40

微服務(wù)paasdocker

2015-07-01 13:51:12

HadoopMapReduce數(shù)據(jù)分析

2012-09-26 22:18:19

IBM大數(shù)據(jù)Hadoop

2016-03-28 10:39:00

開(kāi)源大數(shù)據(jù)平臺(tái)技術(shù)架構(gòu)

2015-04-24 11:20:15

Hadoop大數(shù)據(jù)架構(gòu)大數(shù)據(jù)

2018-01-31 21:26:48

HadoopSparkStream大數(shù)據(jù)

2018-06-15 20:44:40

Hadoop數(shù)據(jù)分析數(shù)據(jù)

2017-01-19 17:37:00

iOS移動(dòng)端架構(gòu)設(shè)計(jì)

2021-02-22 10:55:59

大數(shù)據(jù)大數(shù)據(jù)平臺(tái)數(shù)據(jù)平臺(tái)建設(shè)

2020-12-17 19:15:48

大數(shù)據(jù)大數(shù)據(jù)平臺(tái)架構(gòu)數(shù)據(jù)平臺(tái)建設(shè)

2022-04-20 10:15:56

SaaS模塊化客戶

2019-12-12 10:22:16

大數(shù)據(jù)平臺(tái)大數(shù)據(jù)安全大數(shù)據(jù)

2015-10-26 17:26:05

物聯(lián)網(wǎng)架構(gòu)設(shè)計(jì)工業(yè)

2025-09-30 10:03:36

2019-03-14 15:11:18

Hadoop大數(shù)據(jù)分布式

2011-09-02 10:59:02

大數(shù)據(jù)數(shù)據(jù)分析Hadoop

2010-01-15 10:15:34

分布式交換技術(shù)

2012-11-07 13:31:53

Hadoop大數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)