標籤:開源 大資料 即時資料分析
汪興朗 汪明明 王巧玲
eBay作為全球性的商務平台和支付行業領先者,擁有海量的使用者行為資料。基於現有的hadoop大資料處理,已經不能夠滿足業務上對即時性的需求。基於eBay過去的大資料處理的經驗和對最新技術的運用,eBay探索出一個對海量的資料流進行即時的收集,處理,分發和分析的平台。並於2015年2月底開源此平台: Pulsar.
Pulsar作為一個複雜事件處理平台,具有快速,準確,靈活的特性,保證點到點的低延時和高可靠,從而很好得滿足了的eBay秒級即時資料分析的需求。同時每秒百萬級流量處理能力,給客戶帶來更好的個人化體驗,協助客戶監控即時商務資訊並定製即時營銷策路,及時監測網路欺詐行為並減少機器人幹預。並且Pulsar是基於標準的分布式雲架構部署並跨越多個資料中心,從而保證了在系統升級和拓撲更新時沒有叢集停機時間。
Pulsar平台提供了一個完整的即時大資料分析的解決方案:
該平台能夠即時收集Event Stream,並且對Event進行即時的Enrichment和Sessionization, 推送到不同的即時應用,同時能夠即時的進行統計和分析,對業務提供 Key insights.
在Pulsar平台內部,它把Event Stream看成一種類資料庫的表,在上面通過應用申明式的4GL來定義Business logic. 並且同時開源了作為支撐Pulsar 的一個全新的大資料流處理架構: Pulsar Jetstream.
Pulsar.Stream是一個通用的全新的大資料流的處理架構。他實現了一個開放的,自動探索的Topology, 不同的應用可以分布在不同的Data center, 通過網路進行自動的發現並且建立串連,資料主動從Producer推送到Subscriber. 在每個應用內部,通過Pipeline的方式串連各個業務模組,並且支援用4GL的EPL來定義商務邏輯。整個的topology是開放的並且能夠動態擴充,相應的EPL也能夠進行動態更新且沒有服務中斷。
典型的部署結構
EPL Sample:
Event filtering and routing
insert into SUBSTREAM select D1, D2, D3, D4
from RAWSTREAM where D1 = 2045573 or D2 = 2047936 or D3 = 2051457 or D4 = 2053742; // filtering
@PublishOn(topics=“TOPIC1”) // publish sub stream at TOPIC1
@OutputTo(“OutboundMessageChannel”)
@ClusterAffinityTag(column = D1); // partition key based on column D1
select * FROM SUBSTREAM;
Aggregate computation
// create 10-second time window context
create context MCContext start @now end pattern [timer:interval(10)];
// aggregate event count along dimension D1 and D2 within specified time window
context MCContext insert into AGGREGATE select count(*) as METRIC1, D1, D2 FROM RAWSTREAM group by D1,D2 output snapshot when terminated;
select * from AGGREGATE;
TopN computation
// create 60-second time window context
create context MCContext start @now end pattern [timer:interval(60)];
// sort to find top 10 event counts along dimensions D1, D2, and D3
// within specified time window
context MCContext insert into TOPITEMS select count(*) as totalCount, D1, D2, D3 from RawEventStream group by D1, D2, D3 order by count(*) limit 10;
select * from TOPITEMS;
關於詳細的資訊,請看
www.ebaytechblog.com/2015/02/23/announcing-pulsar-real-time-analytics-at-scale
相關事件:
1. Pulsar on QCon Shanghai 2014 –
http://www.infoq.com/cn/presentations/ebay-user-behavior-data-stream-processing-system
2. Pulsar on milibo - http://www.milibo.com/talent/events.aspx?id=34
Ebay開源 Pulsar:即時巨量資料分析平台