數(shù)據(jù)流管理系統(tǒng)是數(shù)據(jù)處理領(lǐng)域的一個(gè)新的重要分支,其重要性不亞于數(shù)據(jù)庫管理系統(tǒng),是未來三十年數(shù)據(jù)處理領(lǐng)域的重要產(chǎn)品,其代表產(chǎn)品復(fù)雜事件處理技術(shù)應(yīng)用在多個(gè)行業(yè),例如證券行業(yè)的算法交易、金融實(shí)時(shí)風(fēng)險(xiǎn)控制、電信行業(yè)的主動營銷等。《數(shù)據(jù)流管理系統(tǒng)設(shè)計(jì)與應(yīng)用:SAP ESP項(xiàng)目實(shí)戰(zhàn)指南》通過具體的電信行業(yè)應(yīng)用項(xiàng)目過程介紹,指導(dǎo)用戶快速實(shí)現(xiàn)基于SAP ESP的應(yīng)用。
《數(shù)據(jù)流管理系統(tǒng)設(shè)計(jì)與應(yīng)用:SAP ESP項(xiàng)目實(shí)戰(zhàn)指南》首先介紹數(shù)據(jù)流管理系統(tǒng)相關(guān)知識,然后就SAP ESP的產(chǎn)品基礎(chǔ)知識、架構(gòu)、開發(fā)語言、周邊環(huán)境進(jìn)行相關(guān)介紹,從需求分析、項(xiàng)目管理、開發(fā)設(shè)計(jì)等方面介紹如何快速實(shí)現(xiàn)應(yīng)用。
一提到SAP這個(gè)名字,大家首先想到的是ERP和CRM,想到的是企業(yè)級應(yīng)用軟件、企業(yè)管理解決方案等。是的,SAP一直基于領(lǐng)先的技術(shù)、各行各業(yè)豐富的實(shí)踐經(jīng)驗(yàn)以及優(yōu)質(zhì)的服務(wù),幫助各行業(yè)不同規(guī)模的企業(yè)實(shí)現(xiàn)卓越的運(yùn)營和管理。從企業(yè)后臺到公司決策層、從工廠倉庫到商鋪店面、從桌面設(shè)備到移動終端——SAP助力用戶和企業(yè)高效協(xié)作,獲取商業(yè)洞察力,并從競爭中脫穎而出。SAP的軟件和服務(wù)能夠幫助客戶實(shí)現(xiàn)盈利性的運(yùn)營,不斷提升應(yīng)變能力,實(shí)現(xiàn)可持續(xù)的增長。
自從1972年成立以來,SAP一直專注于企業(yè)應(yīng)用和管理,有了自己獨(dú)特的最佳實(shí)踐和服務(wù)理念。但在最近的幾年中,IT技術(shù)不斷發(fā)展,也促成企業(yè)應(yīng)用需要更加開放,更具有多樣性,更加適合當(dāng)今最新的IT技術(shù),例如大數(shù)據(jù)、云計(jì)算和實(shí)時(shí)分析等。從2007年開始,SAP并購了一系列業(yè)界領(lǐng)先的公司,容納更廣闊的IT技術(shù)于企業(yè)應(yīng)用之中,并加強(qiáng)在IT基礎(chǔ)架構(gòu)、數(shù)據(jù)分析、企業(yè)移動化等諸多領(lǐng)域。這就好比一棵筆直生長的大樹,它一直在躥個(gè)兒,換句話說,原來只做企業(yè)應(yīng)用,而現(xiàn)在需要枝繁葉茂,需要在數(shù)據(jù)分析、企業(yè)移動化方面大展宏圖。
從2012年開始,SAP把創(chuàng)新分為了五大市場,分別是企業(yè)應(yīng)用、商務(wù)分析、企業(yè)移動化、數(shù)據(jù)管理與技術(shù)平臺和云計(jì)算。在這五大市場中,企業(yè)應(yīng)用是SAP一貫堅(jiān)持的方向,而其他四個(gè)方面則是適應(yīng)當(dāng)今IT技術(shù)的發(fā)展而發(fā)展起來的。例如:自從2010年SAP收購Sybase公司以后,SAP采用Sybase移動化解決方案,使得移動化應(yīng)用無處不在,我們可以在恰當(dāng)?shù)臅r(shí)間、適當(dāng)?shù)牡攸c(diǎn),通過移動應(yīng)用隨時(shí)隨地發(fā)送和接收信息,完成工作上的要求。通過提供移動銷售、移動工作流等系統(tǒng)級移動應(yīng)用,方便地拓展了企業(yè)ERP和CRM的使用,延伸了企業(yè)應(yīng)用的范圍,提高了工作效率和水平。再譬如,隨著SuccessFactors和Ariba加入SAP大家庭,以云計(jì)算為核心的企業(yè)應(yīng)用不斷涌現(xiàn),企業(yè)可以以全新的方式來運(yùn)營,而不必遵循傳統(tǒng)的管理方式。SAP完全可以通過托管、租賃等不同的方式,把優(yōu)質(zhì)和創(chuàng)新的應(yīng)用交付給不同規(guī)模的企業(yè),尤其是成長型企業(yè),為其部署在云端的解決方案,為廣大成長型企業(yè)用戶帶來適合自己需求的最佳實(shí)踐。
2007年SAP融入BusinessObject公司,使得其在商務(wù)智能、信息管理、企業(yè)績效以及治理、風(fēng)險(xiǎn)管理與合規(guī)等方面有了自己完整的解決方案。采用SAP商務(wù)分析系列解決方案,企業(yè)可獲得更為廣泛的洞察力,可以優(yōu)化決策流程,改善風(fēng)險(xiǎn)管理等,同時(shí)讓企業(yè)把對業(yè)務(wù)的洞察力轉(zhuǎn)化為策略,再轉(zhuǎn)化為運(yùn)營決策。另外,SAP商務(wù)分析解決方案既能支持傳統(tǒng)ERP系統(tǒng)中的數(shù)據(jù)分析,也能支持大數(shù)據(jù)的智慧分析。
在SAP這棵大樹上,有一個(gè)數(shù)據(jù)管理方面的重要分支,那就是流式數(shù)據(jù)管理。說到流式數(shù)據(jù)管理,就不得不提CEP(Complex Event Processing)復(fù)雜事件處理。在CEP的領(lǐng)域,國外已經(jīng)有了很多研究成果和相當(dāng)成熟的產(chǎn)品,而在中國才剛剛起步。流式數(shù)據(jù)處理是CEP的一個(gè)核心技術(shù),流計(jì)算來自一個(gè)信念:數(shù)據(jù)的價(jià)值隨著時(shí)間的流逝而降低,所以事件出現(xiàn)后必須盡快地對它們進(jìn)行處理。那么什么是復(fù)雜事件呢?復(fù)雜事件是一種事件,通常多個(gè)簡單事件發(fā)生時(shí)預(yù)示著這種事件的發(fā)生。一個(gè)人發(fā)球,一個(gè)人接球,另一個(gè)人扣球,每個(gè)都是彼此孤立的事件,在一起組成了排球比賽這個(gè)復(fù)雜事件。
在復(fù)雜事件處理中,數(shù)據(jù)是不斷變化的,而其“操作”是“靜態(tài)”的。這里說的“操作”是用戶預(yù)定義或訂閱的規(guī)則,根據(jù)預(yù)定義或訂閱的規(guī)則來發(fā)現(xiàn)可能原本不被注意的模式和趨勢(即復(fù)雜事件),從而使用戶有能力建模、確認(rèn)、預(yù)計(jì)及迅速響應(yīng)看似無關(guān)的事件所帶來的機(jī)遇和威脅。換句話說,復(fù)雜事件處理具備了分析高速數(shù)據(jù)流并鑒別重要事件的能力,而這些重要事件通常是按照一定順序或在特定時(shí)間窗口內(nèi)發(fā)生在多個(gè)數(shù)據(jù)點(diǎn)的組合,雖然對這些事件的鑒別過程是復(fù)雜的,但結(jié)果卻是無價(jià)的。復(fù)雜事件處理能夠幫助企業(yè)及時(shí)全面地洞察市場變化,降低風(fēng)險(xiǎn)和提高決策效率。
我們需要一個(gè)復(fù)雜事件處理(CEP)平臺提供專業(yè)開發(fā)應(yīng)用的功能,它使得企業(yè)能夠以超過每秒100萬條消息的處理速度分析數(shù)據(jù)流,其延遲時(shí)間為毫秒級或更少,從而提供一個(gè)快速應(yīng)用開發(fā)和實(shí)施的平臺。就如同其他平臺一樣,一個(gè)CEP平臺也能夠加快開發(fā),降低成本,消除對專業(yè)開發(fā)技巧的依賴,可以說,CEP平臺使得我們擺脫既不能自己開發(fā)又無處購買的二難境地。
SAP ESP就是一個(gè)CEP的開發(fā)和運(yùn)行平臺,基于這個(gè)平臺能夠創(chuàng)建和運(yùn)行自己的復(fù)雜事件處理應(yīng)用程序,以便于從實(shí)時(shí)的流數(shù)據(jù)中獲得連續(xù)的智能分析結(jié)果。早在2008年3月,Sybase基于Coral8內(nèi)核發(fā)布了Sybase CEP產(chǎn)品,但Coral8在2008年5月被Aleri公司收購。異軍突起的Aleri在2009年,被Forrester列為CEP領(lǐng)域杰出的領(lǐng)軍企業(yè),同時(shí),Aleri還是首家獲準(zhǔn)作為安全技術(shù)評估中心基準(zhǔn)的CEP廠商。隨后在2010年2月,Sybase收購了Aleri,成功躋身成為CEP領(lǐng)頭羊并強(qiáng)化實(shí)時(shí)分析平臺。在2011年9月,也就是SAP收購Sybase之后,SAP發(fā)布了基于“Aleri架構(gòu)升級+ CCL(Coral8)描述模型”的SAP ESP產(chǎn)品(其過渡產(chǎn)品曾經(jīng)命名為SAP Sybase ESP)。
在實(shí)時(shí)分析能力上,SAP Sybase ESP解決方案在高速度、高容量的環(huán)境下極具價(jià)值。原因就是SAP ESP使用與傳統(tǒng)商務(wù)智能系統(tǒng)完全不同的方法來進(jìn)行數(shù)據(jù)分析。傳統(tǒng)的方法是——捕獲數(shù)據(jù),將其結(jié)構(gòu)化為一種固定的格式,將數(shù)據(jù)存儲在基于磁盤的數(shù)據(jù)倉庫中,然后定期在這些數(shù)據(jù)之上運(yùn)行報(bào)表,進(jìn)行數(shù)據(jù)分析。SAP ESP與之不同的是它在數(shù)據(jù)到達(dá)時(shí)通過規(guī)則檢查數(shù)據(jù),所有的操作都不落地,因?yàn)橐坏┞涞鼐褪r(shí)效性。SAP ESP鑒別重要事件的能力幾乎是實(shí)時(shí)的,并能從最新的數(shù)據(jù)中抽取出商務(wù)智能,形成多種用途。
為了滿足企業(yè)對能支持實(shí)時(shí)分析、高速交易的應(yīng)用程序的需求,SAP ESP提供了強(qiáng)大的復(fù)雜事件處理解決方案。它能夠從多個(gè)數(shù)據(jù)源中吸收新的數(shù)據(jù),并在數(shù)據(jù)之間創(chuàng)建關(guān)系從而能鑒別出代表機(jī)會和問題的模式。在事件存儲之前,能實(shí)時(shí)持續(xù)分析多個(gè)事件流。它通過使用大量原始而重要的數(shù)據(jù)流,將跨多個(gè)流的事件關(guān)聯(lián)起來,從而鑒別出新的關(guān)聯(lián)業(yè)務(wù)條件,并在幾毫秒(或更短)的時(shí)間內(nèi)對這些事件做出響應(yīng)。正因?yàn)榫邆淞嗽L問流式數(shù)據(jù)、實(shí)時(shí)數(shù)據(jù)和歷史數(shù)據(jù)的能力,SAP ESP產(chǎn)品能迅速地讓智能決策生效。另外,SAP ESP同樣可用來生成簡潔、信息豐富的數(shù)據(jù)流,并將它們分發(fā)至下游的系統(tǒng)、應(yīng)用程序和歷史庫中。
總之,希望大家在讀完本書后,能夠?qū)EP領(lǐng)域和SAP ESP解決方案有一個(gè)清晰的認(rèn)識,結(jié)合自己的工作和生活,靈活運(yùn)用這些CEP方法和技術(shù),為企業(yè)的實(shí)時(shí)分析、實(shí)時(shí)決策以及業(yè)務(wù)運(yùn)營帶來應(yīng)用的新理念、新方式。
本書由SAP(北京)軟件系統(tǒng)有限公司羅永強(qiáng)帶領(lǐng)中國移動(深圳)有限公司付峰、SAP(北京)軟件系統(tǒng)有限公司馬澤炯共同編寫完成。中國移動(深圳)有限公司敖錦蓉也參與了編寫工作,在此表示感謝。
宋一平
SAP 中國數(shù)據(jù)管理技術(shù)首席架構(gòu)師
2014年4月
羅永強(qiáng) SAP資深大數(shù)據(jù)及商業(yè)智能架構(gòu)師,近二十年的信息化系統(tǒng)建設(shè)經(jīng)驗(yàn),曾任某國有大型商業(yè)銀行分行級數(shù)據(jù)中心主任,國內(nèi)最早期數(shù)據(jù)倉庫建設(shè)者。參與了電信、證券、銀行、政府、零售、制造等多個(gè)行業(yè)的數(shù)據(jù)倉庫、數(shù)據(jù)集市、算法交易等系統(tǒng)建設(shè),致力于用管理的視角看待大數(shù)據(jù)及商務(wù)智能系統(tǒng)。 付峰 中國移動(深圳)有限公司技術(shù)專家,近十年中國移動業(yè)務(wù)支撐網(wǎng)工作經(jīng)驗(yàn),主要從事業(yè)務(wù)支撐網(wǎng)BOSS和經(jīng)營分析系統(tǒng)方面的測評規(guī)劃、方案設(shè)計(jì)等工作,多次參與集團(tuán)在經(jīng)營分析系統(tǒng)方面的規(guī)劃、規(guī)范編寫、方案設(shè)計(jì)和培訓(xùn)等工作,擁有扎實(shí)的業(yè)務(wù)知識和技術(shù)知識。 馬澤炯 SAP資深系統(tǒng)顧問。近十五年的信息化系統(tǒng)建設(shè)經(jīng)驗(yàn),專注于金融、電信、政府等行業(yè)的數(shù)據(jù)管理與分析類解決方案,在主機(jī)、存儲、操作系統(tǒng)、數(shù)據(jù)庫、商務(wù)智能等方面具有豐富的項(xiàng)目和解決方案經(jīng)驗(yàn)。近年來從事SAP事件流處理器的推廣與應(yīng)用工作。
第一章 數(shù)據(jù)流管理系統(tǒng)
第一節(jié) 數(shù)據(jù)庫管理系統(tǒng)
第二節(jié) 數(shù)據(jù)處理新問題
第三節(jié) 數(shù)據(jù)流管理系統(tǒng)
第四節(jié) SAP事件流處理器
第五節(jié) SAP實(shí)時(shí)數(shù)據(jù)平臺
第二章 SAP事件流處理器安裝
第一節(jié) 規(guī)劃安裝
第二節(jié) 安裝場景
第三章 SAP事件流處理器快速入門
第一節(jié) 事件流處理器工作臺
第二節(jié) 可視化編輯
第三節(jié) CCL編輯器
第四節(jié) 加載項(xiàng)目
第五節(jié) 運(yùn)行測試項(xiàng)目
第六節(jié) 工作環(huán)境配置
第四章 SPLASH程序開發(fā)
第一節(jié) SPLASH程序語言
第二節(jié) SPLASH語句
第三節(jié) SPLASH數(shù)據(jù)結(jié)構(gòu)
第五章 CCL程序設(shè)計(jì)
第一節(jié) CCL項(xiàng)目基礎(chǔ)
第二節(jié) CCL語法
第三節(jié) CCL查詢語句
第四節(jié) 高級CCL程序設(shè)計(jì)
第五節(jié) 聲明
第六節(jié) 從句
第七節(jié) 查詢
第八節(jié) 函數(shù)
第六章 SAP事件流處理器實(shí)用程序
第一節(jié) 概述
第二節(jié) 事件流處理器服務(wù)器實(shí)用程序
第三節(jié) 命令和控制實(shí)用程序
第四節(jié) 發(fā)布和訂閱實(shí)用程序
第五節(jié) 開發(fā)實(shí)用程序
第七章 高級程序設(shè)計(jì)
第一節(jié) 實(shí)體生命周期和訪問模式
第二節(jié) 發(fā)布
第三節(jié) 訂閱
第四節(jié) 故障恢復(fù)處理
第五節(jié) 應(yīng)用程序接口(API)參考
第八章 SAP事件流處理器安全配置
第一節(jié) 身份認(rèn)證
第二節(jié) 訪問控制
第三節(jié) SSL安全鏈接
第四節(jié) 密鑰及密鑰庫
第五節(jié) 數(shù)據(jù)存儲安全
第六節(jié) 其他安全性相關(guān)配置
第九章 SAP事件流處理器集群
第一節(jié) 集群架構(gòu)
第二節(jié) 多項(xiàng)目支持
第三節(jié) 高可用性
第四節(jié) 項(xiàng)目部署選項(xiàng)
第五節(jié) 集群持久化(Persistence)和緩存(Caching)
第六節(jié) 集中安全
第七節(jié) 集群啟動
第八節(jié) 集群配置
第九節(jié) 項(xiàng)目配置文件示例
第十章 SAP事件流處理器應(yīng)用開發(fā)
第一節(jié) 數(shù)據(jù)流計(jì)算框架
第二節(jié) 應(yīng)用開發(fā)流程
第三節(jié) 開發(fā)調(diào)試環(huán)境