為什么很多公司開始建設數據中臺?盡管數據中臺的文章很多,但是一千人眼里有一千個數據中臺,到底什么是數據中臺?數據中臺包含什么?
2017 年開始,當網易嚴選有了一定量的數據,我們就開始規劃建設我們的數據中臺,目前我們已經完成了數據中臺體系的搭建,我將根據我們建設數據中臺的經驗和方法論試圖解答上面這些問題。
為什么大家開始建設數據中臺?
2018 年開始,朋友圈里講數據中臺的文章開始逐漸變多,當然拿著手機看世界并不一定看到真實的世界。我也跟各個行業的一些大公司的 CIO 交流,發現很多行業的大公司都開始組建大數據團隊,建設數據中臺。
結合文章和交流獲取的信息,我切身感受到宏觀經濟對技術的影響。2018 年開始經濟下行,生意不好做了,粗放的經營已經不行了,越來越多的企業想通過數據驅動來進行精細化的運營和數據化轉型。
如上圖所示,企業需要數字化轉型,需要更多的觸點去跟自己的用戶 / 客戶建立聯系,很多企業就需要做自己的公眾號、小程序 (各家的小程序) 甚至 app。
我們希望用戶更容易找到我們的商品 / 服務,我們就需要搜索。我們希望用戶更多的瀏覽 / 使用我們的商品 / 服務就需要推薦。我們維護用戶 / 客戶的生命周期,根據生命周期采取不同的營銷動作,就需要 CRM。我們需要拉來更多的新用戶,就需要投放廣告,為了更好的投放效果,我們需要建設我們的 DMP。當我們生意做大,我們需要對抗黑產 (羊毛黨),讓我們的優惠能讓真正的用戶享受,我們需要風控。這一切都需要底層大數據的支持。
企業需要精細化運營,就需要不斷地提升運營的頻次 (如下圖所示) 和粒度。我們需要把運營的節奏提升到周級、天級甚至實時。我們隨時隨地了解我們企業經營狀況,需要不斷地更精細 (細粒度) 地分析我們的業務,快速做出業務決策。我們就需要能夠快速地構建大量的 BI 報表,在一些重要的節點 (大促) 時,甚至需要盯著數據大屏。如果我們有能力,還可以建設場景化的數據產品來支持業務的決策。這一切都需要底層大數據的支持。
如何快速地利用底層大數據的支持,讓我們的數據化轉型、精細化運營能夠高頻的迭代,這就需要我們的數據中臺提供強有力的支持。
這里也提醒一點,當我們需要大規模的數據應用時 (搜索 / 推薦 /BI 報表...),我們才需要構建數據中臺。因為建設數據中臺的投入大。
打個比方,當我一家人要吃飯,我自己買菜,在自己的廚房用普通的廚具自己做就好了,如果是富士康,幾萬幾十萬人吃飯,就需要建食材的加工配送中心 (類比數據中臺)。本質上是“需求規模量級的變化,導致解決方案的質變”。
所以我們看到的,基本是大公司在建設數據中臺。盡管你們可能現在不適合建設數據中臺,但數據中臺的思想大家都可以借鑒。
小結一下,當企業需要數據化轉型、精細化運營,進而產生大規模數據應用需求的時候,就需要建設數據中臺。
什么是數據中臺?
這是一個千人千面的問題。我們的定義是“數據中臺是高質量、高效賦能數據前臺的一系列數據系統和數據服務的組合”。
因為規范最終是在系統和服務中落地的,所以定義中就沒有包含規范部分。
數據中臺的核心職責是高效地賦能數據前臺為業務提供價值。要想理解數據中臺先要理解數據前臺,上文說到的搜索、推薦、BI 報表、數據大屏等都屬于數據前臺。
我們來看下面網易嚴選數據體系的圖就更清楚數據中臺的定位了。
數據中臺的下層是數據平臺,數據平臺主要解決跟業務無關的問題,主要是大數據的存儲和計算問題。
數據中臺的上層就是數據前臺,主要包括 BI 報表、數據產品和業務系統。
數據中臺首先賦能分析師通過 BI 報表的形式來驅動業務精細化運營。
如下圖所示,基于數倉里已經半加工好的數據,分析師使用嚴選有數敏捷 BI 平臺可以快速地根據業務需求進行數據可視化和數據分析。
嚴選有數現在每周的 UV 超過 800,每天報表瀏覽次數超過 12w,目前的圖表數超過 7w。對于一個事業部級的 BI 平臺,應該算是一個非常好的成績。這里特別感謝下我們的分析師團隊,她們的辛勤工作才會有這樣的成績。
數據中臺還會賦能業務系統開發通過統一查詢服務 (主要是統一查詢服務和標簽服務) 來輔助業務過程中的決策。
基于數倉里面加工好的數據模型,業務系統開發人員使用統一查詢服務獲取到的模型數據在業務系統中增加輔助決策功能。
比如供應商系統需要對供應商進行評級,供應商評級需要供應商的商品銷售數據、評論數據、退貨數據、質量數據,供應商采購的交期數據等等。
數倉會根據這些數據加工模型,供應商系統可以通過統一查詢獲取模型在供應商系統中使用。在嚴選,統一查詢服務已經接入了 67 個應用、670 個模型、每天有 300w 的調用。
我們自己做的數據產品(如下圖所示),基本會用到我們數據中臺所有的能力支持,包括統一查詢服務、標簽服務、指標監控服務、數據產出服務等數據服務,也會使用嚴選有數創建 BI 報表掛載到數據產品中。
數據中臺包含什么?
從上文的圖中,我們已經初步了解了數據中臺包含了哪些系統和服務。概括來說,數據中臺包含數倉體系、數據服務集和 BI 平臺。
1、數倉體系
數倉體系是數據中臺的核心,數據是新能源,是生產資料。
數倉體系包含數倉和一系列的管理系統,用來管理數據,保證數據的完整、一致和準確。
數倉體系的構成和關系,如下圖所示。數倉是數倉體系的核心,也是整個中臺的核心。數倉的開發和存儲,主要依賴網易猛犸數據平臺。
夸父 - 埋點管理系統和精衛 - 數據填報系統從供應側保障數據的完整性和質量。
埋點數據由于來源廣 (web 端、ios、android、小程序等)、鏈路長、格式 (日志的 scheme 約束) 等問題,一直是數據質量的重災區。
夸父 - 埋點管理系統提供了埋點的管理、埋點流程協同和埋點測試,提供了埋點日志的 scheme,保障了埋點數據質量。
精衛 - 數據填報系統提供數據導入數倉及導入時的驗證功能,提升數據的完整性。
整個電商的業務過程非常多,所有業務過程都線上化的過程非常漫長。當我們下游的數據應用需要某個業務過程的數據,而這個業務過程還沒有線上化時,就可以通過精衛 - 數據填報系統導入數據到數倉,下游就可以使用這份數據。
倉頡 - 指標管理系統和燧人 - 指標地圖是從需求側提升數據 (指標) 的一致性。
倉頡 - 指標管理系統顧名思義是管理指標定義,在提供指標統一管理的同時,提供了指標定義規范的約束。數據開發可以根據指標定義里的指標口徑來進行指標開發。
燧人 - 指標地圖是提供給業務方查看當前的指標分類與指標定義。
數倉開發本身要解決的核心問題是質量和效率 (所有開發也都需要解決),無論是質量和效率都需要好的架構設計。
北斗 - 數倉設計管理系統就是來完成數倉設計的。數倉的開發原本總是非常的經驗化,很多知識都是存在數據開發的腦子里。我們通過北斗 - 數倉設計管理系統來推行數倉先設計再開發,通過北斗 - 數倉設計管理系統將數倉開發的經驗知識化、標準化、工具化。
數據質量中心 (如下圖所示) 提供全鏈路的數據保障體系,提供任務監控、數據監控、應用監控、影響范圍評估和恢復的支撐。
2、數據服務集
數據服務主要是數據場景下的解決方案的沉淀。數據服務集極大的加速了數據應用開發效率。
核心的數據服務是統一查詢服務和標簽服務,提供指標模型和標簽模型對數據應用系統 (業務系統和數據產品) 的統一配送。
統一查詢服務核心提供表轉接口和數據網關的功能。數倉管理的是數據模型表,通過統一查詢,數據應用系統就可以通過接口的形式來訪問數據模型表。統一查詢服務是數據體系和數據應用系統之間的總網關,需要提供模型級限流、熔斷等網關功能。
3、BI平臺
BI 平臺我們用的是嚴選有數,也就是在網易有數在嚴選的版本。網易有數是一款敏捷 BI 平臺,在設計上通過以終為始的設計理念和類 PPT 操作模式,在保障靈活性的基礎上,提供了極大的操作便利。
在性能方面,我們結合數據產出服務做的基于數據產出的緩存策略極大地提升了報表的性能。圖表首訪緩存命中率基本穩定在 100%,整體緩存命中率超過 80%。
數據中臺的內容非常長,本文非常概括地從嚴選實踐介紹了數據中臺。
總結一下:當企業需要數據化轉型、精細化運營,進而產生大規模數據應用需求的時候,就需要建設數據中臺。數據中臺是高質量、高效賦能數據前臺的一系列數據系統和數據服務的組合。數據中臺包含數倉體系、數據服務集和 BI 平臺。
作者介紹
魏文慶,現任網易嚴選數據技術及產品部總監。2007年浙江大學計算機碩士畢業后入職網易杭州研究院,從事前端開發,后歷任技術主管、技術經理、技術總監。曾負責網易攝影、網易企業郵箱、易信公眾號等產品開發,以及網易前端微專業。2015年開始內部創業,孵化敏捷BI平臺 - 網易有數,任網易有數總經理,負責產品研發和商業化。2017年開始負責網易嚴選數據技術及產品部,從0到1搭建網易嚴選數據中臺和數據產品體系。