技術(shù)
導(dǎo)讀:中臺(tái)算是一種新的架構(gòu)方式,整合并封裝了企業(yè)內(nèi)中后臺(tái)資源??梢酝ㄟ^減層而不是加層的方式重構(gòu)企業(yè)數(shù)據(jù)模型,關(guān)注數(shù)據(jù)產(chǎn)生的地方,加強(qiáng)數(shù)據(jù)治理能力,提高數(shù)據(jù)質(zhì)量,提供唯一可信數(shù)據(jù)源。
圖片來自“億歐網(wǎng)”
參加阿里《十年再出發(fā)》技術(shù)峰會(huì),每個(gè)會(huì)場(chǎng)都言必稱中臺(tái),但認(rèn)真聽下來,還真沒幾個(gè)人想明白中臺(tái)是什么,該怎么建,該怎么用。正好峰會(huì)前一天看到一篇文章說中臺(tái)是應(yīng)用,我們就嘗試給了中臺(tái)一個(gè)定義并發(fā)了篇文章《構(gòu)建企業(yè)服務(wù)中臺(tái)》解釋中臺(tái)和中臺(tái)構(gòu)建。阿里提出了數(shù)據(jù)中臺(tái)的概念,這是很了不起的,不過也基于阿里的局限(可能當(dāng)局者迷),有意或無意的忽略了中臺(tái)的實(shí)質(zhì)。
一窩蜂的上中臺(tái)并不見得是好事。峰會(huì)上有廠商上了中臺(tái),卻沒有和業(yè)務(wù)整合起來。就像我們以前提到的不建議為了遷云而遷云,不要為了上中臺(tái)而上中臺(tái),趕時(shí)髦,否則只會(huì)害了自己。適合阿里的不一定就適合每一家,況且阿里的方案也不見得是最優(yōu)的方案。在充斥各種概念的環(huán)境里,要具備自我消化的能力,不要聽風(fēng)就是雨,不要照搬,也不要拒絕、不要不屑一顧。吸收其精華,為自己所用才是合適的。
中臺(tái)不是應(yīng)用
有人說“中臺(tái)是應(yīng)用,但又不是最終用戶能直接使用的,必須被集成到各個(gè)業(yè)務(wù)場(chǎng)景中,所以中臺(tái)應(yīng)用必然是OpenAPI的”。這明顯對(duì)中臺(tái)理解錯(cuò)誤。對(duì)各種技術(shù)并沒有厘清楚。比如零售和財(cái)務(wù)是應(yīng)用,但不是中臺(tái)。而零售和財(cái)務(wù)應(yīng)用邏輯中提煉出來的服務(wù)才屬于中臺(tái)的范圍。比如訂單、支付,這些才是中臺(tái)的東西。訂單和支付不止是服務(wù)于零售,可以服務(wù)其他應(yīng)用,比如金融產(chǎn)品銷售等等,這就有了“共享”“重用”的概念,才可以作為中臺(tái)的服務(wù)。
服務(wù)可以被應(yīng)用研發(fā)人員直接使用,并不是為終端用戶直接使用的。終端用戶訪問的是應(yīng)用,由研發(fā)人員使用中臺(tái)服務(wù)編排而成,發(fā)布為應(yīng)用。當(dāng)然中臺(tái)也不是服務(wù),承載服務(wù),支撐應(yīng)用。所以我們定義為:中臺(tái)是為了支撐企業(yè)業(yè)務(wù)應(yīng)用敏捷研發(fā)和運(yùn)營(yíng)而通過融合或至少通過整合企業(yè)內(nèi)的資源、數(shù)據(jù)、平臺(tái)、技術(shù)、工具、業(yè)務(wù)等而構(gòu)成的統(tǒng)一接口服務(wù)平臺(tái)。
中臺(tái)并不是為了集成,而是為了資源共享和重用?!百Y源”指企業(yè)內(nèi)的所有資源,當(dāng)然也包括組織資源,所以有人提出組織中臺(tái)的概念。企業(yè)內(nèi)最重要的資源是數(shù)據(jù),所以數(shù)據(jù)中臺(tái)最早被提出來,并且影響最大。
中臺(tái)和OpenAPI沒有必然的聯(lián)系。OpenA-PI的概念提出來也很多年了,最初是為了企業(yè)間的集成。當(dāng)然基于中臺(tái)更容易構(gòu)建OpenAPI,但中臺(tái)不是OpenAPI必須的。
中臺(tái)不是為了平衡穩(wěn)定性和不穩(wěn)定性因素
有人說中臺(tái)是為了平衡企業(yè)內(nèi)穩(wěn)定性和不穩(wěn)定性的因素,在穩(wěn)態(tài)和敏態(tài)尋找一個(gè)平衡點(diǎn)。這也并不是中臺(tái)的實(shí)質(zhì)。穩(wěn)態(tài)和敏態(tài)都可以基于中臺(tái),這并不矛盾。不是只有敏態(tài)可以基于中臺(tái)。最終中臺(tái)將支撐企業(yè)內(nèi)的所有業(yè)務(wù)應(yīng)用。
構(gòu)建中臺(tái)的目的是為了整合企業(yè)內(nèi)的軟硬件資源,支撐企業(yè)業(yè)務(wù)應(yīng)用的敏捷開發(fā)和運(yùn)營(yíng)。我們做虛擬化、資源池、IaaS等其實(shí)也都是為了整合資源,更方便的服務(wù)于企業(yè)業(yè)務(wù)應(yīng)用。但這是基礎(chǔ)設(shè)施資源的整合,數(shù)據(jù)、技術(shù)組件、中間件平臺(tái)等還是分散獨(dú)立的單體。數(shù)據(jù)集成做了很多年,后來實(shí)現(xiàn)ESB服務(wù)化集成,但都是通過加層的方式實(shí)現(xiàn),在延遲、響應(yīng)性能等方面并不能令人滿意。阿里數(shù)據(jù)中臺(tái)也是集成的方式,通過OneID實(shí)現(xiàn)OneData,但從數(shù)據(jù)層來說依然面臨著很多數(shù)據(jù)治理的問題,需要額外的很多工作保證數(shù)據(jù)的OneData。所以我們提出了基于微服務(wù)的思想重構(gòu)數(shù)據(jù)模型,關(guān)注數(shù)據(jù)產(chǎn)生的地方,整合企業(yè)內(nèi)的數(shù)據(jù)存儲(chǔ)和服務(wù)平臺(tái),比如文件、數(shù)據(jù)庫(kù)、數(shù)倉(cāng)、大數(shù)據(jù)平臺(tái)、數(shù)據(jù)湖等,構(gòu)建企業(yè)內(nèi)高質(zhì)量的數(shù)據(jù)服務(wù)。這樣通過減層而不是加層的方式,既保證大數(shù)據(jù)應(yīng)用、AI應(yīng)用要求的高質(zhì)量數(shù)據(jù),也降低了數(shù)據(jù)治理要求,同時(shí)也減少相應(yīng)的運(yùn)維人員,節(jié)省費(fèi)用。
通過整合、集成是實(shí)現(xiàn)中臺(tái)的直接簡(jiǎn)單方式,但最優(yōu)的方式是重構(gòu)中后臺(tái)的數(shù)據(jù)和服務(wù)以及支撐數(shù)據(jù)和服務(wù)的平臺(tái)。
中臺(tái)是一種新的架構(gòu)方式
中臺(tái)可以看作是一種新的架構(gòu)方式。我們?cè)凇稄膯误w集成到平臺(tái)融合》一文中提到過一句,基于單體系統(tǒng)的集成雖然做了很多年,但始終無法解決單體系統(tǒng)本身的根源問題。所以中臺(tái)可以看作是一種新的架構(gòu)方式,特別重構(gòu)之后的中臺(tái),不被單體集成的問題所累。中臺(tái)的目的是構(gòu)建企業(yè)級(jí)統(tǒng)一的服務(wù)接口,不只是數(shù)據(jù),包括技術(shù)、業(yè)務(wù)、組織架構(gòu)等,其實(shí)質(zhì)是整合企業(yè)內(nèi)的軟硬件資源,包括人力資源。
傳統(tǒng)單體系統(tǒng),一個(gè)系統(tǒng)一套軟硬件開發(fā)和運(yùn)維人員,這些系統(tǒng)所采用的廠商、技術(shù)、開發(fā)語言、技術(shù)架構(gòu)、數(shù)據(jù)庫(kù)等可能各不相同。隨著信息化系統(tǒng)越來越多,系統(tǒng)間面臨著數(shù)據(jù)共享的要求。所以系統(tǒng)集成技術(shù)就應(yīng)運(yùn)而生:數(shù)據(jù)同步、表交換、DBLink、消息集成、EAI、SOA、ESB等。不管數(shù)據(jù)集成、應(yīng)用集成或者服務(wù)化集成,整個(gè)鏈路始終存在瓶頸。比如數(shù)據(jù)庫(kù)層難以彈性擴(kuò)展。SOA-ESB算是中臺(tái)架構(gòu)的雛形,提供統(tǒng)一的企業(yè)服務(wù)總線服務(wù)。但ESB重在功能服務(wù)集成,沒有考慮數(shù)據(jù)層的優(yōu)化和重構(gòu)。MDM主數(shù)據(jù)管理則提供了建設(shè)唯一可信數(shù)據(jù)源的方法。兩者結(jié)合以及微服務(wù)思想的出現(xiàn),為中臺(tái)架構(gòu)構(gòu)建提供了思路。
中臺(tái)構(gòu)建適合采用微服務(wù)的方式,構(gòu)建中臺(tái)服務(wù)層。包括數(shù)據(jù)服務(wù)、基礎(chǔ)組件服務(wù)以及業(yè)務(wù)服務(wù)等,封裝中后臺(tái)邏輯。比如客戶基本信息服務(wù)則提供客戶基本資料的查詢和維護(hù),至于說客戶基本資料存放在哪里(文件、數(shù)據(jù)庫(kù)、數(shù)倉(cāng)、大數(shù)據(jù)平臺(tái)等)對(duì)用戶來說透明。這樣在底層存儲(chǔ)模型更改時(shí)并不影響業(yè)務(wù)應(yīng)用的運(yùn)營(yíng)。微服務(wù)也為應(yīng)用的服務(wù)編排提供了便利,比如客戶Dashboard的頁面可能需要很多服務(wù)的數(shù)據(jù),也可能每天根據(jù)需求自動(dòng)調(diào)整,這樣就可以通過服務(wù)編排調(diào)用不同的服務(wù),把結(jié)果實(shí)時(shí)展示給用戶,而這些結(jié)果數(shù)據(jù)可能來自不同的數(shù)據(jù)源,有來自數(shù)倉(cāng),有來自大數(shù)據(jù)平臺(tái),或者來自于AI平臺(tái)等等。
中臺(tái)算是一種新的架構(gòu)方式,整合并封裝了企業(yè)內(nèi)中后臺(tái)資源。可以通過減層而不是加層的方式重構(gòu)企業(yè)數(shù)據(jù)模型,關(guān)注數(shù)據(jù)產(chǎn)生的地方,加強(qiáng)數(shù)據(jù)治理能力,提高數(shù)據(jù)質(zhì)量,提供唯一可信數(shù)據(jù)源。融合基礎(chǔ)設(shè)施資源平臺(tái),提供計(jì)算、模型、算法、搜索等技術(shù)能力,支撐業(yè)務(wù)邏輯。同時(shí)梳理業(yè)務(wù)流程,整合、抽取、重用業(yè)務(wù)服務(wù),通過服務(wù)編排敏捷支撐企業(yè)的業(yè)務(wù)研發(fā)和運(yùn)營(yíng)。
OneID、OneDataSource、OneService、OneWorld
OneID、OneDataSource、OneService、OneWorld是我們期望達(dá)到的目標(biāo)。OneID通過唯一id將企業(yè)內(nèi)的數(shù)據(jù)進(jìn)行整合,提供高質(zhì)量數(shù)據(jù)。OneDataSource是在數(shù)據(jù)整合治理的基礎(chǔ)上實(shí)現(xiàn)唯一可信數(shù)據(jù)來源。OneService實(shí)現(xiàn)企業(yè)內(nèi)服務(wù)的共享和重用,封裝中后臺(tái)邏輯。OneService是構(gòu)建企業(yè)中臺(tái)的基礎(chǔ),但往往要基于OneID和OneData-Source。OneWorld通過OpenAPI的方式實(shí)現(xiàn)和合作伙伴的互連互通。
我們提平臺(tái)融合,最終就是為實(shí)現(xiàn)這樣的目標(biāo)。一個(gè)企業(yè)內(nèi)不再是一個(gè)個(gè)單體平臺(tái),也不再糾結(jié)于相互之間的整合和集成,而是使所有這些平臺(tái)都平滑融合在一起,形成一個(gè)整體,對(duì)內(nèi)提供統(tǒng)一的服務(wù)接口ServiceAPI,對(duì)外提供統(tǒng)一的開放接口OpenAPI,構(gòu)建起企業(yè)生存和發(fā)展的生態(tài)環(huán)境,相互依存,相互促進(jìn),共同發(fā)展。