日前,攜程技術(shù)副總裁葉亞明(Eric Ye)來(lái)北京出席大數據&分析創(chuàng )新峰會(huì ),在活動(dòng)現場(chǎng)葉亞明接受了記者的訪(fǎng)談,對于這一年多來(lái)對攜程網(wǎng)所做的幾次技術(shù)改造升級、大數據探索、開(kāi)放API、引入OpenStack、云計算價(jià)值、開(kāi)源技術(shù)、團隊建設以及記者提出的各種問(wèn)題,葉亞明都分享了精彩的觀(guān)點(diǎn)。
攜程技術(shù)副總裁葉亞明(Eric Ye)
葉亞明,攜程旅行網(wǎng)技術(shù)副總裁、研發(fā)中心總經(jīng)理,在納斯達克上市公司攜程管理上千人的團隊。加盟攜程之前,他曾在全球最大的在線(xiàn)拍賣(mài)網(wǎng)站EBAY擔任平臺開(kāi) 發(fā)總監,負責改善網(wǎng)站的穩定性和有效性。葉亞明也是一名硅谷資深人士,曾經(jīng)在雅虎、Netscape和其他互聯(lián)網(wǎng)公司擔任產(chǎn)品開(kāi)發(fā)和管理等職位。
這一年多來(lái)攜程的幾次重大技術(shù)改進(jìn)
記者:到攜程后,你對攜程的技術(shù)改造升級主要體現在哪些方面?
葉亞明(Eric Ye):我到攜程是這一兩年的事情,剛開(kāi)始注意力集中在技術(shù)架構和酒店業(yè)務(wù)方面。到后來(lái),我就去管理整個(gè)技術(shù)開(kāi)發(fā)團隊了。那是去年7、8月份的事情,到現在有一年多時(shí)間了。主要做了幾個(gè)方面的事情:
第一,我進(jìn)去的時(shí)候攜程還是很重視Off Line,但領(lǐng)導層已經(jīng)開(kāi)始意識到On line的重要性了。所以我們首先做的就是攜程網(wǎng)站的改版(包括通過(guò)各種技術(shù)給訪(fǎng)問(wèn)頁(yè)面提速)。如果放到五年前,攜程網(wǎng)的頁(yè)面風(fēng)格(技術(shù))在當時(shí)是很領(lǐng)先的。但在兩年前看的時(shí)候,用戶(hù)已經(jīng)覺(jué)得這個(gè)頁(yè)面很老氣了。所以當時(shí)我們提出一個(gè)口號叫做UI2.0。 攜程經(jīng)過(guò)一年多的改動(dòng),現在的頁(yè)面設計風(fēng)格跟以前已經(jīng)完全不一樣了。經(jīng)過(guò)改進(jìn),現在攜程網(wǎng)的風(fēng)格有點(diǎn)像亞馬遜、Ebay,但與國內主要競爭對手的網(wǎng)站風(fēng)格差異很大。
第二個(gè)大的改進(jìn)是后臺,攜程平臺資源通過(guò)Open API的方式開(kāi)放出去。通過(guò)開(kāi)放平臺,讓合作伙伴能用到攜程的產(chǎn)品和資源,包括 機票、酒店、租車(chē)、火車(chē)等。最近的一些動(dòng)作,例如攜程和去哪兒的合作就是開(kāi)放的例子。不僅僅是去哪兒,攜程網(wǎng)跟搜索引擎的合作也從來(lái)沒(méi)有停止過(guò)。攜程跟很多上下游的旅游網(wǎng)站都有合作,數千個(gè)分銷(xiāo)商在分銷(xiāo)攜程的產(chǎn)品。
攜程的開(kāi)放平臺之路已經(jīng)開(kāi)啟,今后五年發(fā)展的威力很更大。國外像Ebay這樣的網(wǎng)站,賣(mài)家通過(guò)API方式成交的產(chǎn)品已經(jīng)超過(guò)60%~70%了。攜程平臺會(huì )堅持開(kāi)放的思路,因為攜程本身沒(méi)有酒店、飛機、火車(chē)(等實(shí)體產(chǎn)品),但攜程卻能幫客人找到最好的酒店,幫客人找到性?xún)r(jià)比最高的機票。攜程提供的是服務(wù),我們要做的是把用戶(hù)體驗做到極致。這次改變的不光是技術(shù),而是整個(gè)思路都改變了。
第三個(gè)改進(jìn)就是數據中心的提升。攜程已經(jīng)有好幾個(gè)的數據中心了,一方面是支持業(yè)務(wù)的持續成長(cháng),另外還要提供更可靠的網(wǎng)站可用性。此外,攜程還在今年3、4月份建立了專(zhuān)門(mén)的數據團隊,對大數據分析進(jìn)行研究。
記者:攜程在大數據方面做了哪些探索性的工作?
葉亞明(Eric Ye):如果跟海外的大數據分析應用來(lái)比較的話(huà),攜程還是在起步階段;但是,我們已經(jīng)進(jìn)行了很多嘗試,并且應用在具體的業(yè)務(wù)流程中,產(chǎn)生的收益可能會(huì )超出外人的想象。我可以舉個(gè)有意思的例子,比如酒店行業(yè)有一個(gè)noshow現象,是客人下了訂單但是沒(méi)去住,酒店會(huì )告訴攜程這個(gè)情況,因為客人沒(méi)去住酒店,酒店就沒(méi)有必要給攜程付費。
一天可能有很多個(gè)訂單客人沒(méi)去,我們要如何知道客人是否真的沒(méi)去,這是一個(gè)大問(wèn)題。有一個(gè)笨辦法,我給客人打電話(huà),一萬(wàn)個(gè)訂單你要給一萬(wàn)個(gè)人打電話(huà),每天一萬(wàn)個(gè)人你后面是有工作成本的。一般客人不會(huì )撒謊,會(huì )如實(shí)告訴我們到底去沒(méi)去,所以我們更相信客人講的東西。如果客人說(shuō)沒(méi)去,酒店說(shuō)沒(méi)去,那就是沒(méi)去。如果客人說(shuō)去,酒店說(shuō)沒(méi)去,客人有材料,酒店也賴(lài)不掉。
對于這種“客人說(shuō)去,酒店說(shuō)沒(méi)去”的情況,這背后涉及到很多收益,一定要鑒別出來(lái)。我們通過(guò)技術(shù)(機器學(xué)習)的過(guò)程,可以比較精準的告訴你哪個(gè)酒店在撒謊。精準到什么程度?可以精準到70%以上,另外的30%的打電話(huà)再確認就好了。這里面其實(shí)有一個(gè)技術(shù)動(dòng)作,通過(guò)數學(xué)模型去分析數據。這樣做以后,酒店慢慢也會(huì )規范自己的行為。
記者:簡(jiǎn)單介紹一下攜程是怎么做到的,通過(guò)哪些東西進(jìn)行分析?
葉亞明(Eric Ye):我們要積累用戶(hù)的行為,這個(gè)行為數據庫不是一天建立起來(lái)的,而是一年、幾年、甚至是十年。攜程對它們就可以分析了。我們打電話(huà)已經(jīng)打了十年,我們知道哪個(gè)酒店的情況怎么樣,每次打完電話(huà)以后我們都會(huì )有記錄。我們建立一個(gè)系統,這個(gè)系統對酒店和消費者的行為進(jìn)行跟蹤,進(jìn)行分析和糾正。這是學(xué)習的過(guò)程,這個(gè)學(xué)習不是人來(lái)學(xué)習,而是機器來(lái)學(xué)習。機器有一個(gè)好處,處理一百個(gè)跟一萬(wàn)個(gè),花的時(shí)間基本上是一樣的,并且很準確。
攜程所有的產(chǎn)品線(xiàn)都要有開(kāi)放API的技術(shù)能力
記者:剛才談到了攜程要做開(kāi)放平臺,作為一種技術(shù)和業(yè)務(wù)能力的體現,在這兩方面攜程是如何準備的?
葉亞明(Eric Ye):做開(kāi)放對技術(shù)是個(gè)很大的挑戰。因為開(kāi)放的是技術(shù)平臺,技術(shù)沒(méi)有的話(huà)其他的東西都免談。但光有技術(shù)還不充分,技術(shù)和業(yè)務(wù)結合的話(huà),可以把它做得很充分,成功的概率就會(huì )很高。開(kāi)放平臺里技術(shù)的考驗很大,要做很多的升級才能真正做到開(kāi)放。
舉一些例子,API給別人用的時(shí)候,人家也會(huì )評價(jià)你的API好不好用,攜程的API也在改版和提升。這一階段做的事情首先就是后臺可以支撐這些API的運營(yíng)。另外,在產(chǎn)品線(xiàn)上,我要求每一個(gè)產(chǎn)品線(xiàn)都要做到可以通過(guò)API的方式開(kāi)放出來(lái),當需要提供給合作伙伴去使用的時(shí)候,能立即打開(kāi)。有些 業(yè)務(wù)暫時(shí)沒(méi)有準備好的時(shí)候,API可以先關(guān)掉,但是開(kāi)放API的能力是存在的,就相當于有一個(gè)導彈沒(méi)有發(fā)射出去而已。但攜程需要把這些武器都準備好,每一 樣武器背后都是有技術(shù)架構支撐的。
云計算現階段對攜程最大價(jià)值是呼叫云和快速部署
記者:云計算技術(shù)對于攜程的價(jià)值是什么?
葉亞明(Eric Ye):云技術(shù)對攜程的價(jià)值有兩個(gè)。一個(gè)是呼叫中心,攜程可能有全世界最大的呼叫云,后面所有的接線(xiàn)員都要在云上(現在攜程呼叫中心有一萬(wàn)以上的坐席);現在大部分還是用Desktop。如果把這些東西放在云上,這是非常有業(yè)務(wù)價(jià)值的云應用,而不是說(shuō)為了云而云。
還有一個(gè)價(jià)值體現在快速部署。業(yè)務(wù)成長(cháng)快的時(shí)候,有的時(shí)候一千臺機器進(jìn)來(lái),不能一臺一臺的機器去部署。新的機器同時(shí)可以上架,要鋪很多東 西,網(wǎng)絡(luò )、分配、配置、運營(yíng)部署上去,才能把流量引進(jìn)來(lái)。這里面包括一系列的動(dòng)作,每一步都不能出錯。怎么能做到快速準備、可靠的部署,如果業(yè)務(wù)量小的時(shí)候沒(méi)有關(guān)系,也就十余臺機器,人都可以搞定。一千臺機器的話(huà),人肯定會(huì )有犯錯誤的時(shí)候,十臺機器中有一臺犯錯,還好;但是一千臺機器的網(wǎng)站就沒(méi)法玩了。這也是云的技術(shù)價(jià)值。所以,攜程的云計算主要集中在這兩方面,一個(gè)是提高運營(yíng)效率,一個(gè)是真正有業(yè)務(wù)價(jià)值的呼叫云。
記者:剛才說(shuō)到選擇架構的時(shí)候,為什么會(huì )選擇開(kāi)源的技術(shù)?
葉亞明(Eric Ye):剛開(kāi)始我們走過(guò)一些彎路,當時(shí)我們測試了市場(chǎng)上主要的商用級云計算解決方案,但具體算了一下,不比現在的部署開(kāi)銷(xiāo)低,甚至有的還要比現在更貴。后來(lái)我們選擇了OpenStack。在引入OpenStack的時(shí)候,我跟我們的團隊講,一定要在真刀真槍的生產(chǎn)環(huán)境里跑起來(lái)才算真正的用上了。今年已經(jīng)有一千個(gè)虛擬機用上去了,物理的Desktop已經(jīng)拿掉了。
因為這么一個(gè)技術(shù)革新,開(kāi)銷(xiāo)結構變化了,省下來(lái)不少費用。但這不是最核心的,最核心的是下一個(gè):今后攜程的業(yè)務(wù)會(huì )持續成長(cháng),打電話(huà)進(jìn)來(lái)的人不會(huì )少還會(huì )多, 當然成長(cháng)速度不會(huì )像無(wú)線(xiàn)這么快,無(wú)線(xiàn)這個(gè)可能是十倍的增長(cháng);這個(gè)問(wèn)題怎么面對?也用原來(lái)的辦法通過(guò)一臺一臺Desktop部署嗎?絕對不行。現在用虛擬化,可以快速部署、管理、響應,碰到一個(gè)問(wèn)題,攜程可以快速對你進(jìn)行響應,例如修復Bug的時(shí) 間,這些會(huì )大大提升效率。
今后比如突然增加300個(gè)人,對我來(lái)說(shuō)是很簡(jiǎn)單的事情,我產(chǎn)生300個(gè)虛機就可以了。采購也省掉了,我把后面的物理機采購足了以后,部署虛機就是很簡(jiǎn)單的事情了。盡管是好多接線(xiàn)員,但后面幾個(gè)機柜就搞定了。管理幾個(gè)機柜跟管理 上萬(wàn)臺機器不是一個(gè)數量級的問(wèn)題。
“三個(gè)臭皮匠頂一個(gè)諸葛亮”不適用于技術(shù)團隊
記者:攜程的OpenStack團隊有幾個(gè)人?目前團隊是什么情況?
葉亞明(Eric Ye):這個(gè)團隊不大,核心技術(shù)人員有六、七個(gè),團隊總共加起來(lái)二十人不到,關(guān)鍵是找到合適的人。中國有一句老話(huà)叫“三個(gè)臭皮匠頂一個(gè)諸葛亮”,這句話(huà)對做 技術(shù)的人來(lái)說(shuō)是不合適的;哪怕十個(gè)人加在一起也沒(méi)有他一個(gè)人厲害,他可以在一個(gè)問(wèn)題上有所突破。這跟下棋是一樣的,一個(gè)人厲害,十個(gè)人也下不過(guò)他,一樣的 道理。
不能以犧牲業(yè)務(wù)為代價(jià)來(lái)提升技術(shù)的架構
記者:現在互聯(lián)網(wǎng)公司都傾向于開(kāi)源開(kāi)放,在某種程度上來(lái)說(shuō),開(kāi)放和開(kāi)源有很大程度的聯(lián)系,我們關(guān)注很多互聯(lián)網(wǎng)公司基本上都用的是開(kāi)源的那些產(chǎn)品。不知道對攜程來(lái)說(shuō),你們是不是也是這樣?
葉亞明(Eric Ye):我加入攜程之前,攜程已經(jīng)有了很長(cháng)時(shí)間的歷史,攜程起家比較早,做的很成功。他后面有了一套運營(yíng)的東西。我進(jìn)來(lái)的時(shí)候,像由offline到online轉變 的過(guò)程,這里面的技術(shù)改變比較大,原來(lái)有的東西我不能全部翻掉,也不能那么快。我不能太激進(jìn),但是我要去改變,這是一個(gè)難題。
攜程的技術(shù)里其實(shí)很多東西已經(jīng)是開(kāi)源的,大數據還沒(méi)有不是開(kāi)源的;有一些地方開(kāi)源做起來(lái)比較難,推進(jìn)不能太激進(jìn)。我有一個(gè)原則,不能以犧牲業(yè)務(wù)為代價(jià)來(lái)提升技術(shù)的架構,這個(gè)原則要掌握。我不能到業(yè)務(wù)團隊說(shuō),你們業(yè)務(wù)給我停一下,我技術(shù)要翻新;我不能說(shuō)這句話(huà),要求我的團隊也不能說(shuō)這句話(huà)。
我有一部分資源留出來(lái)做技術(shù)的提升,如果這個(gè)開(kāi)源對我們的長(cháng)期發(fā)展來(lái)說(shuō)是合適的,我肯定會(huì )引進(jìn)。這是“我們要站在前人的肩膀做事情”的理念。如果一個(gè)地方我覺(jué)得開(kāi)源很合適,并且是一個(gè)新的領(lǐng)域,一定會(huì )這樣做。