1. 程式人生 > >實時計算、流式處理系統簡介與簡單分析 .

實時計算、流式處理系統簡介與簡單分析 .

一、實時計算一些基本概念

二、早期產品

1. IBM的StreamBase:

StreamBase是IBM開發的一款商業流式計算系統,在金融行業和政府部門使用

2. Borealis:Brandeis University、Brown University和MIT合作開發的一個分散式流式系統,由之前的流式系統Aurora、Medusa演化而來,學術研究的一個產品,08年已經停止維護

三、近期產品:

1.Yahoo的S4:S4是一個通用的、分散式的、可擴充套件的、分割槽容錯的、可插拔的流式系統,Yahoo!開發S4系統,主要是為了解決:搜尋廣告的展現、處理使用者的點選反饋。

2. Twitter實時計算

2.1 Twitter的storm:Storm是一個分散式的、容錯的實時計算系統

Storm用途:可用於處理訊息和更新資料庫(流處理),在資料流上進行持續查詢,並以流的形式返回結果到客戶端(持續計算),並行化一個類似實時查詢的熱點查詢(分散式的RPC)。

官方指南:https://storm.canonical.com/Tutorial

2.2. Twitter的Rainbird:Rainbird 是一款分散式實時統計系統, Rainbird可以用於實時資料的統計:(1)統計網站中每一個頁面,域名的點選次數,(2)內部系統的執行監控(統計被監控伺服器的執行狀態),(3) 記錄最大值和最小值

中文介紹:

http://www.cnblogs.com/gpcuster/archive/2011/02/06/1949466.html

3.Facebook 的Puma:facebook使用puma和Habase相結合來處理實時資料,另外facebook發表一篇利用HBase/Hadoop進行實時資料處理的論文(Apache Hadoop Goes Realtime at Facebook),通過一些實時性改造,讓批處理計算平臺也具備實時計算的能力。

4.淘寶的實時計算、流式處理

4.1銀河流資料處理平臺:通用的流資料實時計算系統,以實時資料產出的低延遲、高吞吐和複用性為初衷和目標,採用actor模型構建分散式流資料計算框架(底層基於akka),功能易擴充套件、部分容錯、資料和狀態可監控。 銀河具有處理實時流資料(如TimeTunnel收集的實時資料)和靜態資料(如本地檔案、HDFS檔案)的能力,能夠提供靈活的實時資料輸出,並提供自定義的資料輸出介面以便擴充套件實時計算能力。 銀河目前主要是為魔方提供實時的交易、瀏覽和搜尋日誌等資料的實時計算和分析。

4.2.基於storm的流式處理,統計計算、持續計算、實時訊息處理。

4.3利用Habase實現的online應用。

5.另外還有一些其他實時計算系統:

Esper:esper可以用在股票系統、風險監控系統等等要求實時性比較高的系統中