01 DataOps 的概念?
1.1 歷史
2014年,Lenny Liebmann 最早在《Three Reasons Why DataOps Is Essential for Big Data Success》這篇文章中,提出 DataOps 的概念,它定義了 DataOps 是優(yōu)化數(shù)據(jù)科學(xué)和運(yùn)營團(tuán)隊(duì)之間協(xié)作的一系列實(shí)踐集。
2015年,Andy Palmer 將這個(gè)理念發(fā)揚(yáng)光大,提出了 DataOps 的四個(gè)關(guān)鍵構(gòu)成:數(shù)據(jù)工程,數(shù)據(jù)集成,數(shù)據(jù)安全和數(shù)據(jù)質(zhì)量。
2017年,Nexla 的 Jarah Euston 把 DataOps 的核心定義為從數(shù)據(jù)到價(jià)值,這個(gè)是首次把 DataOps 和業(yè)務(wù)價(jià)值關(guān)聯(lián)起來的定義。
2018年,Gartner 把 DataOps 納入到 Data Management 的技術(shù)成熟度曲線,標(biāo)志著 DataOps 正式被業(yè)界所接納并推廣起來。

1.2 定義
DataOps,即 Data+Op(eration)s,通過構(gòu)建和增強(qiáng)數(shù)據(jù)管道的實(shí)踐和技術(shù),快速滿足分析需求和業(yè)務(wù)需求。DataOps 是包括人,流程和技術(shù)的一組體系,用來管理代碼,工具,基礎(chǔ)架構(gòu)和數(shù)據(jù)本身,從而實(shí)現(xiàn)三個(gè)核心功能:
將 DevOps 的 CI/CD?理念應(yīng)用到數(shù)據(jù)領(lǐng)域
優(yōu)化和改進(jìn)數(shù)據(jù)管理者(生產(chǎn)者)和數(shù)據(jù)消費(fèi)者的協(xié)作
持續(xù)交付數(shù)據(jù)流生產(chǎn)線

1.3 形式
將數(shù)據(jù)采集、數(shù)據(jù)集成、數(shù)據(jù)準(zhǔn)備、數(shù)據(jù)質(zhì)量與數(shù)據(jù)安全等基礎(chǔ)功能集成,并提供可運(yùn)維的能力,以提升從數(shù)據(jù)洞察到價(jià)值發(fā)現(xiàn)的效率。

1.4 意義
“數(shù)據(jù)負(fù)債” Or?“數(shù)據(jù)資產(chǎn)”
DataOps 是數(shù)據(jù)管理實(shí)踐新的發(fā)展方向,其目標(biāo)是 數(shù)據(jù)用戶(包括數(shù)據(jù)管理、數(shù)據(jù)科學(xué)家、業(yè)務(wù)系統(tǒng)等)能夠便利及時(shí)地從數(shù)據(jù)中獲取業(yè)務(wù)價(jià)值。

02? DataOps的內(nèi)容

DataOps 類似于 DevOps,強(qiáng)調(diào)數(shù)據(jù)發(fā)布的效率和數(shù)據(jù)團(tuán)隊(duì)的整合。
數(shù)據(jù)的采集、集成和準(zhǔn)備
通過可持續(xù)的自動(dòng)化方式對(duì)新的數(shù)據(jù)源和數(shù)據(jù)管道進(jìn)行集成、準(zhǔn)備、清洗、管控和發(fā)布。
利用 CDC 和流處理技術(shù),將數(shù)據(jù)管道轉(zhuǎn)換成實(shí)時(shí)流,用于類似實(shí)時(shí)交互所用到的預(yù)測(cè)分析。
業(yè)務(wù)人員使用數(shù)據(jù)目錄和數(shù)據(jù)準(zhǔn)備工具,進(jìn)行數(shù)據(jù)的自動(dòng)發(fā)現(xiàn)和自動(dòng)編排,提高數(shù)據(jù)利用的便捷性。
利用元數(shù)據(jù)驅(qū)動(dòng)的開發(fā)工具,維護(hù)和更新數(shù)據(jù)管道,在數(shù)據(jù)源發(fā)生變化時(shí)保護(hù)您的數(shù)據(jù)流。
提供可信數(shù)據(jù)
在整個(gè)數(shù)據(jù)管道過程中實(shí)施
數(shù)據(jù)治理,從而確保了交付的數(shù)據(jù)都是可信、安全和受保護(hù)的,并滿足合規(guī)性要求。
通過一個(gè)統(tǒng)一的、智能的數(shù)據(jù)平臺(tái)將數(shù)據(jù)治理、數(shù)據(jù)編目、數(shù)據(jù)質(zhì)量及數(shù)據(jù)保密工作整合在一起,只有這樣才能確保所有數(shù)據(jù)都是可信的和受保護(hù)的。
運(yùn)用人工智能/機(jī)器學(xué)習(xí)技術(shù),助力在整個(gè)企業(yè)實(shí)施數(shù)據(jù)治理。
提升服務(wù)能力
通過部署數(shù)據(jù)驅(qū)動(dòng)型應(yīng)用,貫穿數(shù)據(jù)管道所有階段的每一個(gè)變化,都會(huì)被分發(fā)給數(shù)據(jù)使用人員。
實(shí)現(xiàn)敏捷性和靈活性,可以采用水平擴(kuò)展和基于微服務(wù)的架構(gòu)。
運(yùn)用人工智能和機(jī)器學(xué)習(xí)技術(shù),監(jiān)測(cè)和管理數(shù)據(jù)管道,使其持續(xù)運(yùn)行,且性能和容量不斷優(yōu)化。
03 DataOps 原則
敏捷組織發(fā)布了一個(gè) DevOps 宣言,其中包含了 18 項(xiàng)原則,涵蓋了文化(不斷滿足客戶)、團(tuán)隊(duì)動(dòng)態(tài)(自發(fā)組織、每日互動(dòng))、技術(shù)實(shí)踐(創(chuàng)建一次性環(huán)境)和質(zhì)量(監(jiān)控質(zhì)量和性能)等眾多方面。根據(jù)宣言,總結(jié)出實(shí)施 DataOps 時(shí)需要遵循的幾個(gè)原則:
3.1 安全合規(guī)
首先,我們需要根據(jù)企業(yè)的業(yè)務(wù)屬性,確定極為清晰且安全合規(guī)的數(shù)據(jù)隱私和權(quán)限管控標(biāo)準(zhǔn)。數(shù)據(jù)協(xié)同使用可以讓授權(quán)的業(yè)務(wù)用戶和第三方安全合規(guī)地使用企業(yè)數(shù)據(jù),無需擔(dān)心數(shù)據(jù)的隱私和泄漏,這是一切后續(xù)的基礎(chǔ)。否則,就無法真正做到將數(shù)據(jù)賦能給一線的業(yè)務(wù)用戶。
3.2 快速敏捷
其次,在合規(guī)的基礎(chǔ)上,將一切圍繞數(shù)據(jù)產(chǎn)生的價(jià)值提升到最大,這樣才能不錯(cuò)失創(chuàng)收的機(jī)會(huì)。
3.3 開放協(xié)同
將自上而下的描述性指標(biāo),轉(zhuǎn)為將數(shù)據(jù)開放給業(yè)務(wù)用戶,進(jìn)行自下而上地探索和使用。因?yàn)闃I(yè)務(wù)用戶最了解創(chuàng)新所需要的數(shù)據(jù)應(yīng)該如何應(yīng)用,因此應(yīng)該最大限度地發(fā)揮他們的主觀能動(dòng)性,帶來業(yè)務(wù)創(chuàng)新。
業(yè)務(wù)用戶使用數(shù)據(jù)去探索,是階段性的。從只會(huì)用excel到看報(bào)表再到寫SQL直至?xí)胮ython做數(shù)據(jù)探索,不同的發(fā)展階段,數(shù)據(jù)探索的能力也截然不同。而DataOps倡導(dǎo)的是每個(gè)人都應(yīng)當(dāng)學(xué)習(xí)去使用數(shù)據(jù),數(shù)據(jù)不是某個(gè)人,某個(gè)小組的精英才能掌握的能力,它是一種文化。
3.4 自助服務(wù)
通過自助式服務(wù),將數(shù)據(jù)部門從日常數(shù)據(jù)使用的生命周期管理中解放出來,以提高數(shù)據(jù)的時(shí)效性。并且要計(jì)算使用數(shù)據(jù)資源的成本,讓數(shù)據(jù)資產(chǎn)負(fù)債的概念深入人心,而不是將數(shù)據(jù)資源當(dāng)成免費(fèi)的午餐,吃完還要“評(píng)頭論足”。
3.5 自動(dòng)智能
讓數(shù)據(jù)部門全身心地投入到對(duì)于自動(dòng)化、智能化數(shù)據(jù)科技的實(shí)踐中,以最快地速度滿足數(shù)據(jù)多樣性,動(dòng)態(tài)性,質(zhì)量監(jiān)控,系統(tǒng)穩(wěn)定性的底層技術(shù)需求(后續(xù)會(huì)詳細(xì)描述)。
04 DataOps 的作用

DataOps 有很多好處,但最重要的是以下四個(gè)方面:
4.1?改善協(xié)作與溝通
DataOps伴隨著文化的變化,促進(jìn)協(xié)作,信任和責(zé)任。目標(biāo)是模糊部門和職能之間的界限,鼓勵(lì)知識(shí)交流,減少?zèng)_突,最終提高生產(chǎn)力。

4.2?加快生產(chǎn)時(shí)間
速度是 DataOps 的主要驅(qū)動(dòng)力。簡(jiǎn)化且高度自動(dòng)化的分析流程的想法有助于快速交付新功能和見解,并減少人工勞動(dòng)。此外,較短的反饋和測(cè)試周期有助于加快對(duì)不斷變化的業(yè)務(wù)需求的反應(yīng)并提高靈活性。
4.3?提高質(zhì)量和可靠性
定義明確的分析流程可提高速度和健壯性。例如,自動(dòng)測(cè)試和手動(dòng)測(cè)試的多個(gè)階段可防止部署有缺陷的更新。此外,DataOps 還包括監(jiān)視推出的更改,以識(shí)別瓶頸和潛在問題。最后,不同角色的融合有助于在各個(gè)階段協(xié)調(diào)變更,例如,當(dāng)數(shù)據(jù)工程師被告知數(shù)據(jù)科學(xué)家后來遇到的問題時(shí),有助于改善數(shù)據(jù)清理工作。
4.4 啟用自助服務(wù)
借助更高的自動(dòng)化和機(jī)器學(xué)習(xí)算法來簡(jiǎn)化開發(fā)和部署任務(wù),組織需要更少的專家來構(gòu)建和管理數(shù)據(jù)和分析任務(wù)。具有一定程度的技術(shù)知識(shí)的業(yè)務(wù)用戶可以自行分析。

5.1 數(shù)據(jù)實(shí)時(shí)采集
高效的CDC架構(gòu)
基于日志的無代理方法
分布式優(yōu)化
靈活支持多種數(shù)據(jù)源和目標(biāo)庫
RDBMS:Oracle、DB2、MySQL、SQL Server、PostgreSQL、MongoDB
數(shù)據(jù)倉庫:Snowflake、Azure Synapse、Exadata、Teradata、IBM Netezza、Vertical、Pivotal、MS SQL
Hadoop:Hive、HBase、
數(shù)據(jù)湖:Apache Hudi、Apache Iceberg、Delta Lake、AWS Lake Formation
串流平臺(tái):Kafka、Confluent
數(shù)據(jù)庫表和ETL腳本的生成
批量配置和 Scheme Mapping
數(shù)據(jù)流靈活編排
低延遲 和 高延遲
批流一體
數(shù)據(jù)管道試運(yùn)行
數(shù)據(jù)集更新到指定目錄
持續(xù)測(cè)試和性能監(jiān)控
動(dòng)態(tài)
元數(shù)據(jù)管理
元數(shù)據(jù)變化的自動(dòng)發(fā)現(xiàn)、維護(hù)和適配
與數(shù)據(jù)字典、規(guī)范檢查、權(quán)限管控、合規(guī)審計(jì)等有效聯(lián)動(dòng)
數(shù)據(jù)治理、質(zhì)量和安全的監(jiān)控和優(yōu)化
06?DataOps的自助化能力
數(shù)據(jù)目錄
業(yè)務(wù)含義 - 庫、表、字段
數(shù)據(jù)專題
業(yè)務(wù)主題 - 產(chǎn)品、業(yè)務(wù)、領(lǐng)域
數(shù)據(jù)地圖
數(shù)據(jù)血緣 - 流程依賴、價(jià)值傳導(dǎo)、問題回溯、影響分析
價(jià)值傳遞
服務(wù)市場(chǎng)
服務(wù)發(fā)現(xiàn)
服務(wù)訂閱
服務(wù)分享
服務(wù)定制
服務(wù)生成
服務(wù)測(cè)試
上線審批
服務(wù)運(yùn)營
服務(wù)監(jiān)控
服務(wù)迭代
服務(wù)下線
DataOps 就是通過快速構(gòu)建可運(yùn)維的 data pipeline,為數(shù)據(jù)使用者提供靈活迅速的數(shù)據(jù)服務(wù)。
因此,他是一種數(shù)據(jù)平臺(tái)、數(shù)據(jù)中臺(tái)、數(shù)據(jù)湖、湖倉一體之上的數(shù)據(jù)使用策略,而不是某種技術(shù)、產(chǎn)品或者平臺(tái)。
2、DataOps與數(shù)據(jù)中臺(tái)
DataOps 可以作為數(shù)據(jù)中臺(tái)的核心能力,實(shí)現(xiàn)快速、穩(wěn)定和自助式數(shù)據(jù)準(zhǔn)備和數(shù)據(jù)服務(wù)。
3、DataOps與數(shù)據(jù)治理
基于 DataOps,可以更好的實(shí)現(xiàn)元數(shù)據(jù)、數(shù)據(jù)質(zhì)量等數(shù)據(jù)治理自動(dòng)化。
4、DataOps與 xOps
都是通過自動(dòng)化構(gòu)建和運(yùn)維等工具,實(shí)現(xiàn)快速交付和高效運(yùn)營。
需要提醒大家的是,Ops 理解為“運(yùn)營“更為合理;雖然過去 DevOps 年代確實(shí)更多倚重的是自動(dòng)化運(yùn)維能力,但是當(dāng)擴(kuò)展到 Big Data 和 AI 領(lǐng)域時(shí)我更愿意稱之為“運(yùn)營”,以突出 xOps 的業(yè)務(wù)價(jià)值,而不僅僅是 IT 價(jià)值。
DevOps ?--> 軟件能力
DataOps -->
數(shù)據(jù)價(jià)值
MLOPS --> 模型推理
5、DataOps與敏捷
雖然文中偶爾也有提到敏捷,不過我還是覺得兩者沒啥必然關(guān)系!
敏捷是項(xiàng)目管理的策略“小步快跑”,相比起“跑得快”,“步子”更關(guān)鍵;
DataOps 是工具建設(shè)的策略,單純地關(guān)注“如何簡(jiǎn)單地跑得快”;
DataOps 可以給敏捷提供更高效的生產(chǎn)效能,就是個(gè)“工具人”,實(shí)現(xiàn)快了就可以快速試驗(yàn);從 DevOps 年代,我就覺得是敏捷在碰瓷 xOps,因?yàn)槊艚萏狈δ軌蛑笇?dǎo)實(shí)際落地的方法論和工具鏈了。
敏捷在國內(nèi)已經(jīng)淪為壓榨程序員的工具,早已背棄了初衷,也逐漸淪為了添亂。為了和敏捷區(qū)分開,我更愿意稱之為“快速交付”。
(部分內(nèi)容來源網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系刪除)