淘寶專家深入解析數(shù)據(jù)倉庫架構(gòu)實(shí)施
2007年淘寶的交易額已經(jīng)超過了沃爾瑪和家樂福在中國的銷售額的總和,占據(jù)中國網(wǎng)購市場70%以上的份額。在這些成倍數(shù)增長的業(yè)績數(shù)字背后,需要數(shù)據(jù)庫技術(shù)來支持企業(yè)未來持續(xù)成長的延展空間。淘寶網(wǎng)資深數(shù)據(jù)庫專家江楓在接受51CTO記者專訪時(shí),分享了淘寶2004年開始構(gòu)建的企業(yè)級數(shù)據(jù)倉庫。
淘寶將數(shù)據(jù)倉庫部署在Oracle RAC上,這是一個(gè)由20個(gè)節(jié)點(diǎn)組成的單一數(shù)據(jù)庫集群。“為了更好地了解客戶的需求,分析和挖掘淘寶后臺大量數(shù)據(jù)信息的價(jià)值,2007年、2008年我們先后兩次利用Oracle RAC 10g對數(shù)據(jù)倉庫系統(tǒng)進(jìn)行了升級和擴(kuò)充,節(jié)點(diǎn)數(shù)從4個(gè)升級到12個(gè),后來又升級到了20個(gè)節(jié)點(diǎn)”,江楓談到:“2009年開始我們也在測試Oracle 11g。這樣的升級令淘寶在數(shù)據(jù)倉庫規(guī)模每年成倍擴(kuò)大的情況下,實(shí)現(xiàn)了數(shù)據(jù)處理和分析時(shí)效性的不斷提升。”
淘寶所有的商業(yè)數(shù)據(jù)基本上都匯集到了數(shù)據(jù)倉庫利中。利用數(shù)據(jù)倉庫技術(shù),淘寶抽取了分散在不同業(yè)務(wù)系統(tǒng)中的業(yè)務(wù)數(shù)據(jù)進(jìn)行集中,這些信息是完整記錄了用戶訪問路徑、交易過程的海量數(shù)據(jù)。通過數(shù)據(jù)倉庫的清洗、整理、過濾、排序等技術(shù)手段,這些海量的數(shù)據(jù)形成了具有商業(yè)價(jià)值的業(yè)務(wù)信息,并生成反映最新市場現(xiàn)狀的統(tǒng)計(jì)分析數(shù)據(jù)報(bào)表。“現(xiàn)在淘寶每天的活躍數(shù)據(jù)超過50TB”,江楓說:“這些數(shù)據(jù)是每天進(jìn)行動態(tài)分析的,這樣淘寶在交易中也更好的提供了精準(zhǔn)的個(gè)性化服務(wù)。”
數(shù)據(jù)倉庫架構(gòu)分析
淘寶數(shù)據(jù)倉庫中的許多業(yè)務(wù)查詢與分析都是動態(tài)的,數(shù)據(jù)處理量大,實(shí)效性較高。“Oracle RAC具有非常好的并行處理能力,這對動態(tài)查詢和模糊查詢有很大幫助,能夠有效滿足淘寶數(shù)據(jù)倉庫這種復(fù)雜和動態(tài)的海量數(shù)據(jù)分析處理需求”,江楓認(rèn)為“對于淘寶這樣處于新興行業(yè)中且高速發(fā)展的企業(yè)來說,數(shù)據(jù)倉庫良好的線性擴(kuò)展能力也極為重要,它可以使得淘寶在需要的時(shí)候,通過向集群中增加低成本的普通服務(wù)器來滿足高性能的數(shù)據(jù)處理需求,從而獲得很好的投入產(chǎn)出比。”
Oracle RAC的線性擴(kuò)展能夠始終提供整個(gè)企業(yè)統(tǒng)一的信息視圖和數(shù)據(jù)集市,而不會像一些擴(kuò)展能力有限的系統(tǒng)那樣,隨著數(shù)據(jù)量的增長,系統(tǒng)性能逐漸下降,最后不得不將數(shù)據(jù)分離,建立多個(gè)小規(guī)模的數(shù)據(jù)集市,造成管理和數(shù)據(jù)訪問的困難。
對于大型數(shù)據(jù)倉庫的應(yīng)用系統(tǒng),淘寶在建立初期就考慮到如何能有效而簡單地進(jìn)行系統(tǒng)管理。特別是當(dāng)數(shù)據(jù)量不斷擴(kuò)大時(shí),如果沒有一種有效而且簡單的系統(tǒng)管理措施,那么系統(tǒng)的運(yùn)行費(fèi)用將會很高。江楓說:“Oracle ASM中提供了磁盤管理、數(shù)據(jù)流量平衡以及自動創(chuàng)建和刪除數(shù)據(jù)文件等管理功能,有效的增加了數(shù)據(jù)倉庫系統(tǒng)管理動態(tài)數(shù)據(jù)庫環(huán)境的靈活性,降低了管理成本。”
數(shù)據(jù)挖掘?qū)崿F(xiàn)全面的商業(yè)智能
在近期推出的《i淘寶》個(gè)性化推薦的計(jì)算中,通過使用Oracle RAC 跨節(jié)點(diǎn)并行技術(shù)。“淘寶數(shù)據(jù)倉庫實(shí)現(xiàn)了相關(guān)模塊計(jì)算時(shí)間的顯著縮短,最多的縮短了2小時(shí)以上,最少的也縮短了30分鐘,為淘寶成功實(shí)施個(gè)性化推薦提供了重要保障”,江楓進(jìn)一步指出:“淘寶還將利用數(shù)據(jù)倉庫為用戶提供更多的服務(wù),比如提供店鋪內(nèi)推薦、精確郵件定向營銷以及購物風(fēng)尚榜等服務(wù)項(xiàng)目,這些服務(wù)項(xiàng)目和數(shù)據(jù)指標(biāo)在前臺使用起來非常簡單,其實(shí)它們都是來自于海量數(shù)據(jù)的高度濃縮,Oracle RAC的高性能平臺很好地支持了這些非常復(fù)雜的計(jì)算過程。”
淘寶的研發(fā)團(tuán)隊(duì)有超過2000人的規(guī)模,其中做數(shù)據(jù)產(chǎn)品的技術(shù)團(tuán)隊(duì)超過100人,包括30多名DBA專家組成的團(tuán)隊(duì)。抽取分布在不同環(huán)境下的數(shù)據(jù)集中到數(shù)據(jù)倉庫中的工具ETL,就是淘寶的技術(shù)團(tuán)隊(duì)自己研發(fā)的。“這個(gè)叫做天網(wǎng)的系統(tǒng),也是基于Oracle開放的架構(gòu)平臺之上完成的”,江楓說:“對于二次研發(fā)的把控性來說,我們更愿意選擇開放架構(gòu)的平臺,同時(shí)對于不同的大存儲量或者大規(guī)模的產(chǎn)品語句來評估Oracle的解決方案,他都是更適合淘寶業(yè)務(wù)的一個(gè)選擇,事實(shí)也證明了這一點(diǎn)。”
未來淘寶的定位會是一家數(shù)據(jù)公司,所以數(shù)據(jù)將是淘寶的核心價(jià)值所在。數(shù)據(jù)不僅讓淘寶的用戶有更明確的市場定位,同時(shí),對于淘寶內(nèi)部來說,根據(jù)不同用戶在數(shù)據(jù)上顯示出的不同特性,對淘寶的運(yùn)營策略是非常重要的數(shù)據(jù)支持。從數(shù)據(jù)管理的角度,淘寶也有自己的一整套監(jiān)控系統(tǒng)進(jìn)行支持,包括防欺詐、防惡意數(shù)據(jù)等。“淘寶所有的數(shù)據(jù)至少是1比1的在兩個(gè)機(jī)房同時(shí)備份來保證數(shù)據(jù)安全,當(dāng)然也包括有異地的數(shù)據(jù)備份機(jī)制”,江楓談到:“我們可以保證一個(gè)機(jī)房在斷電或者是火災(zāi)的情況下,另外一個(gè)機(jī)房在很短的時(shí)間內(nèi)繼續(xù)向淘寶網(wǎng)的用戶提供服務(wù)。”