自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MapReduce Hold不?。?/h1>

數(shù)據(jù)庫
本文系統(tǒng)地介紹和分析比較了業(yè)界主流的Yahoo! S4、StreamBase和Borealis三種流式計算系統(tǒng),希望讀者能從這些系統(tǒng)的設(shè)計中領(lǐng)悟到不同場景下流式計算所要解決的關(guān)鍵問題。

本文系統(tǒng)地介紹和分析比較了業(yè)界主流的Yahoo! S4、StreamBase和Borealis三種流式計算系統(tǒng),希望讀者能從這些系統(tǒng)的設(shè)計中領(lǐng)悟到不同場景下流式計算所要解決的關(guān)鍵問題。

背景

非實時計算幾乎都基于MapReduce計算框架,但MapReduce并不是***的。對于搜索應(yīng)用環(huán)境中的某些現(xiàn)實問題,MapReduce并不能很好地解決問題。

什么是MapReduce?

MapReduce是一種編程模型,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運算。

商用搜索引擎,像Google、Bing和Yahoo!等,通常在用戶查詢響應(yīng)中提供結(jié)構(gòu)化的Web結(jié)果,同時也插入基于流量的點擊付費模式的文本廣告。為了在頁面上***位置展現(xiàn)最相關(guān)的廣告,通過一些算法來動態(tài)估算給定上下文中一個廣告被點擊的可能性。上下文可能包括用戶偏好、地理位置、歷史查詢、歷史點擊等信息。一個主搜索引擎可能每秒鐘處理成千上萬次查詢,每個頁面都可能會包含多個廣告。為了及時處理用戶反饋,需要一個低延遲、可擴(kuò)展、高可靠的處理引擎。然而,對于這些實時性要求很高的應(yīng)用,盡管MapReduce作了實時性改進(jìn),但仍很難穩(wěn)定地滿足應(yīng)用需求。因為Hadoop為批處理作了高度優(yōu)化,MapReduce系統(tǒng)典型地通過調(diào)度批量任務(wù)來操作靜態(tài)數(shù)據(jù);而流式計算的典型范式之一是不確定數(shù)據(jù)速率的事件流流入系統(tǒng),系統(tǒng)處理能力必須與事件流量匹配,或者通過近似算法等方法優(yōu)雅降級,通常稱為負(fù)載分流(load-shedding)。當(dāng)然,除了負(fù)載分流,流式計算的容錯處理等機(jī)制也和批處理計算不盡相同。

最近Facebook在Sigmod 11上發(fā)表了利用HBase/Hadoop進(jìn)行實時數(shù)據(jù)處理的論文,通過一些實時性改造,讓批處理計算平臺也具備實時計算的能力。這類基于MapReduce進(jìn)行流式處理的方案有三個主要缺點。

  • 將輸入數(shù)據(jù)分隔成固定大小的片段,再由MapReduce平臺處理,缺點在于處理延遲與數(shù)據(jù)片段的長度、初始化處理任務(wù)的開銷成正比。小的分段會降低延遲,增加附加開銷,并且分段之間的依賴管理更加復(fù)雜(例如一個分段可能會需要前一個分段的信息);反之,大的分段會增加延遲。***的分段大小取決于具體應(yīng)用。
  • 為了支持流式處理,MapReduce需要被改造成Pipeline的模式,而不是Reduce直接輸出;考慮到效率,中間結(jié)果***只保存在內(nèi)存中等。這些改動使得原有的MapReduce框架的復(fù)雜度大大增加,不利于系統(tǒng)的維護(hù)和擴(kuò)展。
  • 用戶被迫使用MapReduce的接口來定義流式作業(yè),這使得用戶程序的可伸縮性降低。

綜上所述,流式處理的模式?jīng)Q定了要和批處理使用非常不同的架構(gòu),試圖搭建一個既適合流式計算又適合批處理計算的通用平臺,結(jié)果可能會是一個高度復(fù)雜的系統(tǒng),并且最終系統(tǒng)可能對兩種計算都不理想。

目前流式計算是業(yè)界研究的一個熱點,最近Twitter、LinkedIn等公司相繼開源了流式計算系統(tǒng)Storm、Kafka等,加上 Yahoo!之前開源的S4,流式計算研究在互聯(lián)網(wǎng)領(lǐng)域持續(xù)升溫。不過流式計算并非最近幾年才開始研究,傳統(tǒng)行業(yè)像金融領(lǐng)域等很早就已經(jīng)在使用流式計算系統(tǒng),比較知名的有StreamBase、Borealis等。

本文簡單介紹幾種業(yè)界使用的流式計算系統(tǒng),希望流式系統(tǒng)的設(shè)計者或開發(fā)者們能從中獲得啟示。

圖1 數(shù)據(jù)分析系統(tǒng)整體組成示意圖

圖1從整個分析系統(tǒng)的架構(gòu)角度,給出了實時計算子系統(tǒng)所處的位置。實時計算系統(tǒng)和批處理計算系統(tǒng)同屬于計算這個大的范疇,批處理計算可以是 MapReduce、MPI、SCOPE等,實時計算可以是S4、Storm等,批處理和實時都可以或不依賴統(tǒng)一的資源調(diào)度系統(tǒng)。另外,計算系統(tǒng)的輸入、輸出,包括中間過程的輸入、輸出,都與存儲系統(tǒng)交互,可以是塊存儲系統(tǒng)HDFS,也可以是K-V存儲系統(tǒng)Hypertable等。計算層的上層是數(shù)據(jù)倉庫,或者直接和用戶交互,交互方式可以是SQL-like或者M(jìn)R-like等。

【編輯推薦】

  1. 數(shù)據(jù)庫遷移之何去何從
  2. SQL Server數(shù)據(jù)庫遷移偏方
  3. SQL Server數(shù)據(jù)庫恢復(fù)案例分享
  4. SQL Server數(shù)據(jù)庫最小宕機(jī)遷移方案
  5. 給你大型數(shù)據(jù)庫遷移的五大建議
責(zé)任編輯:艾婧 來源: 程序員
相關(guān)推薦

2011-08-29 17:11:25

消費者航空訂票網(wǎng)站

2011-09-15 21:18:52

移動互聯(lián)網(wǎng)第二季蘋果

2022-07-20 13:48:58

蘋果裁員減緩招聘

2011-09-29 21:23:10

通信展網(wǎng)絡(luò)·安全2011中國國際通信展

2022-08-30 22:22:23

developerArchitectu

2012-03-13 11:21:34

索尼AndroidVita OS

2011-09-20 17:38:17

2011-11-04 16:01:01

2012-07-24 14:00:30

2011-09-06 16:43:40

俠諾VPN

2011-09-12 14:54:55

神舟筆記本

2011-02-23 10:56:01

員工

2023-05-15 10:02:00

分庫分表數(shù)據(jù)

2018-11-14 14:33:33

MapReduce數(shù)據(jù)集計算

2011-09-24 12:26:41

2011-09-22 09:38:27

CIO云計算

2017-09-08 13:50:50

MySQL開發(fā)實踐

2019-09-16 09:25:01

開發(fā)者技能工具

2009-02-20 15:05:36

2017-03-08 14:35:22

存儲云計算華云網(wǎng)際
點贊
收藏

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