來源:DataFunTalk
導讀 本次分享主題為抖音集團面向多樣應用場景的數(shù)據(jù)準備實踐。主要分為以下幾個部分:
(資料圖片)
全文目錄:
1. 抖音集團的數(shù)據(jù)應用
2. 數(shù)據(jù)準備介紹
3. 抖音集團的數(shù)據(jù)準備實踐
4 . 火山引擎的數(shù)據(jù)準備
分享嘉賓|陳昌源 字節(jié)跳動 數(shù)據(jù)準備技術(shù)負責人
編輯整理|小寧 滴滴
出品社區(qū)|DataFun
01
抖音集團的數(shù)據(jù)應用
1.抖音集團的數(shù)據(jù)規(guī)模
抖音集團作為一個數(shù)據(jù)驅(qū)動的公司,小到產(chǎn)品的研發(fā)與迭代,大到公司的決策和運營,都緊密圍繞數(shù)據(jù)進行??梢哉f,數(shù)據(jù)是公司的燃料,數(shù)據(jù)應用則是公司的引擎。公司在用的數(shù)據(jù)總量,已經(jīng)達到了EB級別,這對數(shù)據(jù)存儲和處理的基建要求都非常高。日常數(shù)據(jù)處理中,早晚高峰的數(shù)據(jù)流量,達到了1億TPS,日均處理數(shù)據(jù)作業(yè)量百萬級以上。數(shù)據(jù)處理的效率直接影響到公司的運營效率。從圖中可以看出,集團的很多應用都是通過數(shù)據(jù)分析來驅(qū)動數(shù)據(jù)運營和迭代的。
2.抖音集團的數(shù)據(jù)應用架構(gòu)
抖音集團的數(shù)據(jù)應用架構(gòu),橫向上主要分為三層:底層是平臺層,包括了數(shù)倉和計算引擎;上層是入口層,主要做訪問控制;比較豐富的是中間的應用和中臺層,這一層分為數(shù)據(jù)應用和中臺開發(fā)。右邊的中臺開發(fā)主要包括數(shù)據(jù)開發(fā)、數(shù)據(jù)治理、數(shù)據(jù)資產(chǎn)管理等一些基礎能力,主要面向數(shù)據(jù)開發(fā)者。左邊的數(shù)據(jù)應用,是面向業(yè)務的數(shù)據(jù)賦能利器,包括行為分析、實驗分析、客戶分析、智能洞察等等。支撐這些數(shù)據(jù)應用的是數(shù)據(jù)底座,也就是本文重點要講的數(shù)據(jù)準備。
02
數(shù)據(jù)準備介紹
1.數(shù)據(jù)準備的作用
數(shù)據(jù)準備是什么?能夠在數(shù)據(jù)應用中起到什么作用?從數(shù)據(jù)流的順序來看,數(shù)據(jù)在被業(yè)務正常使用前,經(jīng)歷了以下過程:從數(shù)據(jù)源到數(shù)據(jù)建模,再到數(shù)據(jù)同步,最終形成數(shù)據(jù)集。數(shù)據(jù)從業(yè)務數(shù)據(jù)變成成型數(shù)據(jù)集的過程中,就是數(shù)據(jù)準備在發(fā)揮作用。所以,數(shù)據(jù)準備是幫助數(shù)據(jù)應用完成數(shù)據(jù)生產(chǎn)的工具鏈。在此過程中,數(shù)據(jù)接入與數(shù)據(jù)建模,是非常核心的兩個模塊。接入能力奠定了數(shù)據(jù)準備的廣度,建模能力決定了數(shù)據(jù)準備的深度。在圖中可以直觀看到,這兩個模塊的主要作用:數(shù)據(jù)接入側(cè)主要負責各種各樣數(shù)據(jù)源的接入、集成;數(shù)據(jù)建模側(cè)主要提供數(shù)據(jù)加工、分析、挖掘的能力。
2.數(shù)據(jù)準備的組成
下面進一步剖析數(shù)據(jù)準備的組成。
數(shù)據(jù)準備可以劃分為四個子系統(tǒng): 建模子系統(tǒng)、執(zhí)行子系統(tǒng)、增強準備和系統(tǒng)管理 。
建模子系統(tǒng) 承載的主體功能是邏輯的實現(xiàn),對數(shù)據(jù)源、數(shù)據(jù)模型的實體進行抽象,以所見即所得的方式給客戶/用戶帶來數(shù)據(jù)上的操作能力。用戶可以連接自己想要的業(yè)務數(shù)據(jù),通過低代碼的方式,完成數(shù)據(jù)處理流程,最終形成業(yè)務意義明確的數(shù)據(jù)集。
執(zhí)行子系統(tǒng) 是將建模子系統(tǒng)生成的邏輯模型轉(zhuǎn)化成任務的核心系統(tǒng)。做數(shù)據(jù)產(chǎn)品的同學都會知道,任務是整個數(shù)據(jù)系統(tǒng)中的核心實體,讓任務高效、高穩(wěn)定運轉(zhuǎn),是執(zhí)行子系統(tǒng)的核心目標。執(zhí)行子系統(tǒng)包括了任務生成、任務執(zhí)行、任務管理與監(jiān)控幾個模塊。
為了保障數(shù)據(jù)任務的高效流轉(zhuǎn)和穩(wěn)定落地,有了增強準備這一子系統(tǒng)。增強準備子系統(tǒng)是整個數(shù)據(jù)準備系統(tǒng)的智能化體現(xiàn),包括類型推導、關(guān)系推斷、清洗建議和性能智能調(diào)優(yōu),都是為了讓復雜多樣的數(shù)據(jù)穩(wěn)定、高效落地。
其他職能系統(tǒng),包括權(quán)限管控、資源治理等,都屬于管理子系統(tǒng)。
下面針對數(shù)據(jù)準備整個系統(tǒng)中的兩個核心子系統(tǒng)展開來講。
建模子系統(tǒng) 輸出的模型,恰好是執(zhí)行子系統(tǒng)的輸入。用戶結(jié)合對業(yè)務數(shù)據(jù)的認知,會把數(shù)據(jù)源、數(shù)據(jù)處理、算子作為原材料,輸入到建模子系統(tǒng)中,構(gòu)造出的邏輯模型,呈現(xiàn)了用戶對數(shù)據(jù)業(yè)務的結(jié)構(gòu)理解,作為執(zhí)行子系統(tǒng)的輸入。
執(zhí)行子系統(tǒng) 中的任務作業(yè),是核心實體。按照用戶所需要的邏輯關(guān)系進行運算的同時,為了保障穩(wěn)定性和性能,引入了引擎的調(diào)配參數(shù)。運行管理和監(jiān)控模塊,則是從全局角度,來保障任務的吞吐。
通過兩個子系統(tǒng)的結(jié)合,滿足用戶業(yè)務需要,同時能夠為數(shù)據(jù)準備系統(tǒng)提供全托管能力:用戶可以在無人值守的情況下,保障整個系統(tǒng)任務的穩(wěn)定運行。
03
抖音集團的數(shù)據(jù)準備實踐
在了解了數(shù)據(jù)準備的內(nèi)在組成之后,下面介紹下數(shù)據(jù)準備在抖音集團內(nèi)部是如何發(fā)揮作用的。
從前面的介紹可以看出,數(shù)據(jù)準備包含多種能力,可以歸納為四類:接入、建模、數(shù)據(jù)集、輸出。這四種能力是構(gòu)成數(shù)據(jù)準備的核心,同時,數(shù)據(jù)準備也可以使用其中的部分能力來滿足不同業(yè)務場景的需求。因此,提出了數(shù)字魔方的概念,是指數(shù)據(jù)準備可以通過模塊化組合的方式,來滿足多樣的應用場景。從魔方中可以看出,x軸是從功能維度描述功能模塊,y軸是從架構(gòu)維度描述系統(tǒng)分層,y軸的邏輯層和執(zhí)行層,剛好對應上面提到的邏輯子系統(tǒng)和執(zhí)行子系統(tǒng)的分工。z軸是從功能的進階程度,來描述模塊提供功能的分級。
下面分場景來介紹數(shù)據(jù)魔方是如何工作的。
1.BI場景,全員都能探索數(shù)據(jù)
第一個場景是BI場景。在一個數(shù)據(jù)驅(qū)動的公司,BI是必不可少的、全員可使用的應用。每個角色都可以通過分析數(shù)據(jù)來量化、輔助工作。在數(shù)據(jù)準備中,為了滿足BI的場景,主要貢獻了接入+建模+數(shù)據(jù)集的模塊能力。用戶將不同的業(yè)務數(shù)據(jù)接入到數(shù)據(jù)準備系統(tǒng)后,通過一定的數(shù)據(jù)處理,轉(zhuǎn)化成具有明確業(yè)務意義的數(shù)據(jù)集,從而為BI系統(tǒng)貢獻了豐富的數(shù)據(jù)集市。從右面的示例看出,用戶對接入的多種數(shù)據(jù)源進行業(yè)務關(guān)聯(lián),最終生成了具有明確業(yè)務意義的數(shù)據(jù)集,來做后面的報表分析。
在BI分析的場景中,數(shù)據(jù)準備所面臨的最大挑戰(zhàn),是在全員進行數(shù)據(jù)處理、探索的情況下,如何在有限資源條件下保障大量任務的高吞吐和穩(wěn)定性。這里主要通過五個措施來實現(xiàn)。
(1)任務管控,隔離風險
第一點是通過異常管控,隔離風險。我們都知道,數(shù)據(jù)波動是難以人為控制的,在任務出現(xiàn)數(shù)據(jù)異常等造成資源使用過高的異常情況時,如何將個體任務與系統(tǒng)任務進行風險隔離,對系統(tǒng)穩(wěn)定性是極為重要的。首先識別出異常的個體任務,將其與系統(tǒng)的其他任務進行安全隔離,保障系統(tǒng)的整體穩(wěn)定。
(2)動態(tài)調(diào)參,節(jié)省資源
第二點是引入了動態(tài)調(diào)參的機制,通過分析任務的歷史信息,搜集到任務在不同時候所需要的參數(shù),自適應調(diào)整任務的狀態(tài),從而使整個系統(tǒng)的資源得到有效的節(jié)省。
(3)多路分發(fā),提升性能
第三點是通過任務多路分發(fā),根據(jù)任務的數(shù)據(jù)量,任務的不同特征,分配不同的鏈路,最大限度提升整個系統(tǒng)的運行性能。讓小任務占用較少的資源,大任務充分利用資源的運行能力。使整個系統(tǒng)的吞吐達到比較好的水平。
(4)沉淀規(guī)則,專業(yè)診斷
第四點是在系統(tǒng)內(nèi),沉淀豐富的診斷規(guī)則。為什么診斷規(guī)則重要呢?因為任務是用戶自定義的,且數(shù)據(jù)難以控制,如何識別任務特征,并且在任務發(fā)生異常時,診斷出異常原因,是很多數(shù)據(jù)系統(tǒng)面臨的挑戰(zhàn)。在我們的數(shù)據(jù)準備系統(tǒng)中,通過沉淀系統(tǒng)內(nèi)大量任務的運行情況,抽象出規(guī)則,使規(guī)則引擎成為數(shù)據(jù)準備的核心能力。通過逐步學習任務的特征,來保障任務執(zhí)行的穩(wěn)定,并且在任務異常時準確識別出原因,反饋給用戶。
(5)監(jiān)控大盤,及時告警
最后一點是監(jiān)控大盤。監(jiān)控大盤為整個數(shù)據(jù)準備系統(tǒng)提供全天候的實時任務監(jiān)控和告警推送,以保障任務的穩(wěn)定運行,對可能出現(xiàn)問題的任務,通過風險前置,滿足業(yè)務數(shù)據(jù)的SLA。
以上幾個措施,可以最大程度保障在資源有限的環(huán)境下,任務吞吐達到比較高的水平,系統(tǒng)達到比較高的穩(wěn)定性。
2.CDP場景,打通數(shù)據(jù)孤島挖掘客戶
另一大數(shù)據(jù)應用場景是CDP場景。CDP是客戶數(shù)據(jù)平臺,以分析和挖掘客戶信息為主要功能。在此場景下,數(shù)據(jù)準備所提供的能力主要是接入+輸出。用戶為了挖掘有用的信息,會從各種各樣的數(shù)據(jù)源收集數(shù)據(jù),并對數(shù)據(jù)進行融合打通,其中包括了行為數(shù)據(jù)、屬性數(shù)據(jù)和各種業(yè)務的明細數(shù)據(jù)。數(shù)據(jù)準備系統(tǒng),通過提供有效的數(shù)據(jù)融合能力,來解決數(shù)據(jù)孤島的問題,讓挖掘客戶更加便捷。圖中列出了常用的幾種數(shù)據(jù)源的接入能力,包括:數(shù)據(jù)庫、API、流式數(shù)據(jù)、文本數(shù)據(jù)、更多應用數(shù)據(jù)等。
在CDP應用場景下,數(shù)據(jù)準備面臨的挑戰(zhàn)是什么呢?因為客戶信息對每家企業(yè)都是最核心的數(shù)據(jù)資產(chǎn),因此客戶數(shù)據(jù)平臺,在公司內(nèi)進行私有化部署有著非常強的訴求。如何既能同時支持多家企業(yè)部署,又能高效解決不同企業(yè)對接不同數(shù)據(jù)源的問題,是數(shù)據(jù)準備面臨的挑戰(zhàn)。這里,主要將接入的數(shù)據(jù)源分為兩種:數(shù)據(jù)庫類數(shù)據(jù)源和開放類數(shù)據(jù)源。
數(shù)據(jù)庫類數(shù)據(jù)源是企業(yè)的私域數(shù)據(jù),維護在企業(yè)內(nèi)部,主要通過插件式接入。如圖,客戶區(qū)的數(shù)據(jù)源是多種多樣且不可預知的;私部區(qū)是部署在客戶企業(yè)域內(nèi)的數(shù)據(jù)平臺,數(shù)據(jù)準備提供了插件式的接入架構(gòu),使得新數(shù)據(jù)源的接入通過快捷插拔式即可完成,大大提升數(shù)據(jù)源接入效率。
開放類數(shù)據(jù)源只維護云端采集服務,采集后通過動態(tài)下發(fā)的方式,把數(shù)據(jù)或配置信息下發(fā)到私部企業(yè)域中,讓用戶無需額外調(diào)整,即可完成來自公開數(shù)據(jù)源和用戶配置的應用數(shù)據(jù)源等多種數(shù)據(jù)源的接入。
這樣,在多企業(yè)、多數(shù)據(jù)源的情況下,極大降低了系統(tǒng)升級迭代的成本,以及部署運維的成本。既為企業(yè)帶來了使用上的便利,也為平臺提供方節(jié)省了成本。
3.自定義場景,構(gòu)建自己的數(shù)據(jù)應用
BI和CDP這兩種比較成型的應用場景中,用戶的數(shù)據(jù)處理是依托固有的數(shù)據(jù)模型來進行的。當用戶有更靈活的數(shù)據(jù)呈現(xiàn)需求時,需要自定義場景。在這個場景中,數(shù)據(jù)準備系統(tǒng)主要提供了接入+數(shù)據(jù)集+輸出的能力,使得用戶能夠便捷地對接所需要的數(shù)據(jù)源,在數(shù)據(jù)應用后臺,通過程序交互的方式,完成數(shù)據(jù)接入到數(shù)據(jù)輸出的流程。并通過openAPI的方式,將處理完的數(shù)據(jù)應用到自己的數(shù)據(jù)應用中。數(shù)據(jù)準備系統(tǒng)只提供穩(wěn)定的后臺數(shù)據(jù)鏈路保障,數(shù)據(jù)的呈現(xiàn)完全交給用戶進行靈活自定義。如圖,右面上方的三個方框體現(xiàn)了數(shù)據(jù)準備對數(shù)據(jù)流的處理過程,右面下方的效果呈現(xiàn)是一個應用示例,用來說明用戶通過靈活取數(shù)的方式,滿足各種數(shù)據(jù)呈現(xiàn)效果,實現(xiàn)數(shù)據(jù)運營的閉環(huán)。
以上講了三種數(shù)據(jù)準備系統(tǒng)支持的核心應用場景。此外,通過模塊化的能力可以支持更多更豐富的應用場景,這些場景在未來會被逐步發(fā)掘出來。
通過圖中的數(shù)字魔方,可以直觀感受到,數(shù)據(jù)準備既是一個各模塊緊密協(xié)作的整體,又是一個可以高度模塊化的組件集合。針對不同場景,擁有靈活的適配能力,使得數(shù)據(jù)準備呈現(xiàn)出很強的生命力,這也是火山引擎中數(shù)據(jù)準備的優(yōu)勢所在。
04
火山引擎的數(shù)據(jù)準備
最后來看一下,在火山引擎的數(shù)據(jù)準備里,如何給不同的應用提供不同的能力。
火山引擎的數(shù)據(jù)應用主要在SaaS層。如圖中紅色框出的部分。SaaS層是建立在IaaS層的云基礎和PaaS層的數(shù)據(jù)中臺之上。主要有五大應用:A/B測試-DataTester、增長營銷平臺-GMP、增長分析-DataFinder、客戶數(shù)據(jù)平臺-VeCDP、一站式數(shù)據(jù)分析與協(xié)作平臺-DataWind。其中,數(shù)據(jù)平臺-VeCDP、一站式數(shù)據(jù)分析與協(xié)作平臺-DataWind分布對應上面講到的三個場景中的CDP場景和BI場景。這五大數(shù)據(jù)應用,構(gòu)成了火山引擎的數(shù)據(jù)營銷套件,全方位為企業(yè)客戶賦能,實現(xiàn)數(shù)據(jù)化運營,創(chuàng)造業(yè)務價值。
而數(shù)據(jù)準備,是為這五大數(shù)據(jù)應用提供基礎數(shù)據(jù)能力的組件,目前還沒有以獨立的產(chǎn)品對外透出。當客戶購買營銷套件中的某個應用時,數(shù)據(jù)準備會提供對應的模塊化能力,來打通數(shù)據(jù)從客戶側(cè)到火山應用側(cè)的通路。當客戶購買整個套件,或套件中的多個應用時,底層的數(shù)據(jù)準備能夠打通不同數(shù)據(jù)應用的數(shù)據(jù),使已經(jīng)形成的數(shù)據(jù)資產(chǎn)得以在不同應用中復用,實現(xiàn)一份數(shù)據(jù)多樣分析。
總結(jié)一下,數(shù)據(jù)準備通過多源數(shù)據(jù)融合打通了數(shù)據(jù)孤島;通過低代碼的數(shù)據(jù)建模,帶給用戶所見即所得的數(shù)據(jù)操作體驗;而豐富的數(shù)據(jù)集市,為多樣化的數(shù)據(jù)分析場景提供了完美助力;完整的數(shù)據(jù)鏈路能力,使火山引擎打通了任督二脈。
以上是本次分享的內(nèi)容,感謝大家的時間。
火山引擎是云市場的新秀,與企業(yè)在共同成長,感謝大家對火山引擎的關(guān)注。
05
Q&A
Q1:任務診斷部分,有哪些診斷手段和規(guī)則?如何平衡診斷操作本身的資源消耗?
A : 如何平衡診斷與任務:診斷分兩部分,一部分是離線診斷,一部分是在線診斷。
離線診斷主要是任務在發(fā)生異常的時候,把信息快速反饋給業(yè)務系統(tǒng),主要應用場景是把診斷的異常信息提示給客戶,讓客戶進行整改。是在系統(tǒng)無法自恢復的情況下給出的提示。
在線診斷,是結(jié)合當前任務執(zhí)行中的異常數(shù)據(jù),根據(jù)固定的pattern,映射到需要調(diào)優(yōu)的參數(shù)。系統(tǒng)發(fā)現(xiàn)有任務異常并且可以進行自恢復時候,通過診斷信息調(diào)整參數(shù),進行任務重跑。
Q2 : 增強準備模塊中的類型推斷、關(guān)系推導可以展開介紹下嗎?比如多表場景下的join,join的類型是否可以在模塊中推斷出來?
A : 數(shù)據(jù)來自不同數(shù)據(jù)源,不同類型數(shù)據(jù)源有各自的字段類型體系。不同數(shù)據(jù)源接入到數(shù)據(jù)準備系統(tǒng)后,給用戶最終呈現(xiàn)的類型體系,是系統(tǒng)的類型體系。第一步類型體系的推斷,是基于不同數(shù)據(jù)源到系統(tǒng)類型體系對接中明確的mapping關(guān)系。第二步是做概率性推斷,主要是基于數(shù)據(jù)探查能力,在抽樣獲取數(shù)據(jù)源部分數(shù)據(jù)之后,識別數(shù)據(jù)字段中的值,根據(jù)字段類型特征,以一定概率推薦這個字段應該取什么樣的數(shù)據(jù)類型。第一步中的mapping關(guān)系,結(jié)合第二步中基于抽樣值的類型推斷,就可以給數(shù)據(jù)模型提供較為準確的類型推斷。
Q3 : 數(shù)據(jù)準備是火山引擎DataWind里面的可視化建模嗎?有沒有可視化建模的能力?可視化建模方式在抖音集團內(nèi)部使用情況怎樣?有多少用戶量通過可視化這種拖拽的方式構(gòu)建數(shù)據(jù)集呢?
A : 是的??梢暬J荄ataWind中的子產(chǎn)品,是有產(chǎn)品透出的,是數(shù)據(jù)準備能力的一部分。數(shù)據(jù)準備除了有可視化建模這種通過拖拽構(gòu)建數(shù)據(jù)集的方式之外,核心能力還有數(shù)據(jù)接入、數(shù)據(jù)集、數(shù)據(jù)輸出。很多能力服務于火山引擎營銷套件里的多個數(shù)據(jù)應用產(chǎn)品。
第二個關(guān)于數(shù)據(jù)準備的能力在抖音集團內(nèi)部的使用情況。使用量比較大,數(shù)據(jù)準備能力不僅包括了已經(jīng)在產(chǎn)品透出的可視化建模,還包括了數(shù)據(jù)接入、數(shù)據(jù)集、數(shù)據(jù)任務等。
以上就是本次分享的內(nèi)容,謝謝大家。
▌2023數(shù)據(jù)智能創(chuàng)新與實踐大會
數(shù)據(jù)架構(gòu)/數(shù)據(jù)效能/智能應用/算法創(chuàng)新……
4大體系,專業(yè)解構(gòu)數(shù)據(jù)智能
16個主題論壇,覆蓋當下熱點與趨勢
70+演講,兼具創(chuàng)新與最佳實踐
1000+專業(yè)觀眾,內(nèi)行人的技術(shù)盛會
點擊下方鏈接了解詳情:
關(guān)鍵詞:
中國生物首個自主研發(fā)創(chuàng)新型抗體偶聯(lián)藥物臨床試驗申請獲受理
據(jù)中國生物消息,7月7日,國藥集團中國生物上海生物制品研究所自主研發(fā)
港股異動 | 京東方精電(00710)漲超5% 機構(gòu)認為車載顯示引領(lǐng)座艙智能化 行業(yè)提質(zhì)擴容在即
智通財經(jīng)APP獲悉京東方精電00710早盤持續(xù)走高漲超5截止發(fā)稿漲524報1204
首份上市券商半年報預喜!財通證券預計中期凈利同比增加55%至70%
7月10日晚間,今年首家券商半年報業(yè)績預告出爐。財通證券披露,本期業(yè)
10號直播帶貨日榜:東方甄選升至抖音榜首,貓妹妹快手銷量第一
【直播帶貨日榜】是鞭牛士推出的多個平臺達人每日直播帶貨榜單。根據(jù)第
夏季三伏天養(yǎng)生6大禁忌需注意
【三伏天養(yǎng)生6大禁忌】7月11日正式入伏,三伏天通常出現(xiàn)在小暑與處暑之
關(guān)于我們 加入我們 聯(lián)系我們 商務合作 粵ICP備2022077823號
創(chuàng)氪網(wǎng) www.m.cn-everich.com 版權(quán)所有 技術(shù)支持:廣州中創(chuàng)互聯(lián)網(wǎng)信息服務有限公司
投稿投訴聯(lián)系郵箱:317 493 128 @qq.com