袋鼠云數(shù)棧 DataOps 數(shù)據(jù)生產(chǎn)力實(shí)踐,實(shí)現(xiàn)數(shù)據(jù)流程的自動(dòng)化和規(guī)范化
袋鼠云產(chǎn)品團(tuán)隊(duì)在幫助企業(yè)進(jìn)行數(shù)字化轉(zhuǎn)型實(shí)踐的過程中,發(fā)現(xiàn)很多企業(yè)在數(shù)據(jù)生產(chǎn)鏈路上都有著相同的問題。包括數(shù)據(jù)團(tuán)隊(duì)聚焦于業(yè)務(wù)需求短期內(nèi)的快速交付,內(nèi)部缺少自頂向下的數(shù)據(jù)生產(chǎn)管理制度,在數(shù)據(jù)標(biāo)準(zhǔn)、數(shù)據(jù)生產(chǎn)流程到研發(fā)規(guī)范的各個(gè)層面均存在不完善與不規(guī)范之處;很多環(huán)節(jié)依賴人工操作,團(tuán)隊(duì)協(xié)作效率低,業(yè)務(wù)需求影響慢,存在大量的重復(fù)數(shù)據(jù)建設(shè);先開發(fā)后治理的模式也往往導(dǎo)致歷史債越來越沉重。
數(shù)字化轉(zhuǎn)型實(shí)踐走在前列的企業(yè)都在積極尋找數(shù)據(jù)生產(chǎn)效率提升的辦法,而 DataOps 的出現(xiàn),從理論和實(shí)踐上形成了一套成熟的解決方案,讓上述問題迎刃而解。
作為國內(nèi)領(lǐng)先的數(shù)字化基礎(chǔ)軟件與應(yīng)用服務(wù)商,袋鼠云數(shù)棧在7年多的研發(fā)歷程中為上千家客戶提供了數(shù)據(jù)生產(chǎn)效率提升解決方案,也在這個(gè)過程中不斷地將 DataOps 的理念融合到產(chǎn)品中,助力越來越多的企業(yè)成功實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型升級(jí)。
本文將就數(shù)?;?DataOps 的敏捷、高質(zhì)量數(shù)據(jù)生產(chǎn)力實(shí)踐進(jìn)行分享,希望對(duì)大家有所幫助。
DataOps 基礎(chǔ)概念
如果說數(shù)據(jù)中臺(tái)的崛起代表著企業(yè)數(shù)字化轉(zhuǎn)型從流程驅(qū)動(dòng)走向數(shù)據(jù)驅(qū)動(dòng),從數(shù)字化走向智能化。那么 DataOps,則是實(shí)現(xiàn)數(shù)據(jù)中臺(tái)的一個(gè)優(yōu)秀的理念或方法論。
DataOps 的概念早在2014年即由 Lenny Liebmann 提出,2018年 DataOps 正式被納入 Gartner 的數(shù)據(jù)管理技術(shù)成熟度曲線當(dāng)中,標(biāo)志著 DataOps 正式被業(yè)界所接納并推廣起來。
信通院和大數(shù)據(jù)技術(shù)標(biāo)準(zhǔn)推進(jìn)委員會(huì)在今年的數(shù)據(jù)資產(chǎn)管理大會(huì)中提出,DataOps(數(shù)據(jù)研發(fā)運(yùn)營一體化)是一種面向數(shù)據(jù)全生命周期,以價(jià)值最大化為目標(biāo)的最佳實(shí)踐。它通過重構(gòu)企業(yè)內(nèi)數(shù)據(jù)生產(chǎn)組織、流程和工具,綜合利用研發(fā)管理、交付管理、數(shù)據(jù)運(yùn)維三項(xiàng)核心技術(shù)能力,價(jià)值運(yùn)營、系統(tǒng)工具、組織管理、安全風(fēng)險(xiǎn)四項(xiàng)保障能力來實(shí)現(xiàn)數(shù)據(jù)研發(fā)運(yùn)營的一體化、敏捷化、精益化、自動(dòng)化、智能化、價(jià)值顯性化理念。
目前國內(nèi)已經(jīng)有包括工商銀行、農(nóng)業(yè)銀行、浙江移動(dòng)、聯(lián)通數(shù)科等企業(yè)成功實(shí)踐了 DataOps,實(shí)現(xiàn)了數(shù)據(jù)生產(chǎn)力的躍遷。
數(shù)?;?DataOps 的數(shù)據(jù)運(yùn)營實(shí)踐
數(shù)棧是袋?云打造的?站式?數(shù)據(jù)基礎(chǔ)軟件,包含?數(shù)據(jù)基礎(chǔ)平臺(tái)、?數(shù)據(jù)開發(fā)與治理、數(shù)據(jù)智能分析與洞察多系列產(chǎn)品,融合 DataOps 數(shù)據(jù)運(yùn)營理念,以自主可控、安全創(chuàng)新為技術(shù)內(nèi)核,將全域數(shù)據(jù)資產(chǎn)進(jìn)行匯聚、加?、治理、服務(wù)、分析,為企業(yè)提供安全、穩(wěn)定、易?的?數(shù)據(jù)平臺(tái),洞察數(shù)字化機(jī)遇,明確轉(zhuǎn)型方向,創(chuàng)造數(shù)據(jù)新價(jià)值。
數(shù)棧的 DataOps 實(shí)踐路線如下圖:

解決方案層面數(shù)棧經(jīng)過銀行、基金、證券、保險(xiǎn)、高校、政務(wù)、港口、制造等多個(gè)行業(yè)的實(shí)踐已經(jīng)儲(chǔ)備了豐富的成功經(jīng)驗(yàn),可以根據(jù)企業(yè)的業(yè)務(wù)和數(shù)字化現(xiàn)狀從業(yè)務(wù)藍(lán)圖、數(shù)據(jù)資產(chǎn)、組織轉(zhuǎn)型、技術(shù)選型和實(shí)施路徑規(guī)劃方面進(jìn)行量身設(shè)計(jì)。
針對(duì)數(shù)據(jù)治理過程,數(shù)棧將多年沉淀的方法論進(jìn)行了產(chǎn)品化,以下是結(jié)合產(chǎn)品層的一些具體操作分享。
數(shù)據(jù)集成
數(shù)據(jù)集成即將來自業(yè)務(wù)系統(tǒng)、API、文件等數(shù)據(jù)源中的數(shù)據(jù)通過離線或?qū)崟r(shí)的方式抽取到數(shù)棧大數(shù)據(jù)平臺(tái)的過程。抽取作業(yè)的配置是否靈活簡便,工具能否適配企業(yè)多種多樣的數(shù)據(jù)來源,數(shù)據(jù)的傳輸是否穩(wěn)定,是否存在錯(cuò)漏及抽取性能的優(yōu)劣是所有用戶的核心關(guān)注點(diǎn)。數(shù)棧自研的分布式批流一體同步工具 ChunJun 給出了優(yōu)秀的解決方案。

基于 ChunJun 實(shí)現(xiàn)的數(shù)據(jù)集成,能夠30秒可視化地配置離線和實(shí)時(shí)數(shù)據(jù)同步任務(wù),實(shí)現(xiàn)多源異構(gòu)數(shù)據(jù)的雙向同步,可通過提升并發(fā)度和設(shè)置同步速率上限來靈活地調(diào)控同步性能,支持系統(tǒng)異常中斷后數(shù)據(jù)同步的斷點(diǎn)續(xù)傳,支持整庫批量生成同步任務(wù),也支持將同步過程中讀取或?qū)懭氘惓5臄?shù)據(jù)記錄臟數(shù)據(jù)表進(jìn)行異常分析。
數(shù)據(jù)抽取完成后元數(shù)據(jù)也會(huì)落到數(shù)棧的元數(shù)據(jù)庫,用戶可在數(shù)據(jù)資產(chǎn)的數(shù)據(jù)地圖中進(jìn)行表元數(shù)據(jù)查詢。

數(shù)據(jù)標(biāo)準(zhǔn)定義、建表規(guī)范設(shè)計(jì)及標(biāo)準(zhǔn)化建表
數(shù)據(jù)資產(chǎn)模塊可以對(duì)表字段的數(shù)據(jù)標(biāo)準(zhǔn)進(jìn)行定義,從詞根、碼表、字段的業(yè)務(wù)屬性和技術(shù)屬性上進(jìn)行定義規(guī)范,避免同一字段在不同表中定義、名稱不一致等問題。數(shù)棧平臺(tái)內(nèi)置了部分行業(yè)的標(biāo)準(zhǔn)模版,同時(shí)也支持?jǐn)?shù)據(jù)標(biāo)準(zhǔn)的一鍵導(dǎo)入,幫助用戶快速進(jìn)行數(shù)據(jù)標(biāo)準(zhǔn)的建立與管理。

建表規(guī)范設(shè)計(jì)中主要支持定義數(shù)倉層級(jí)、層級(jí)的表名模型元素組成和模型元素內(nèi)容,用于約束后續(xù)的數(shù)據(jù)模型構(gòu)建中表名的統(tǒng)一規(guī)范。



基于建表規(guī)范,從資產(chǎn)進(jìn)行標(biāo)準(zhǔn)化建表,配置基礎(chǔ)信息時(shí)平臺(tái)會(huì)自動(dòng)關(guān)聯(lián)表所屬數(shù)倉層級(jí)讓用戶進(jìn)行技術(shù)屬性的定義,從而構(gòu)成標(biāo)準(zhǔn)化表名。

基于數(shù)據(jù)標(biāo)準(zhǔn),用戶在定義表結(jié)構(gòu)時(shí)只需填寫表字段內(nèi)容,平臺(tái)解析后將自動(dòng)映射到同名數(shù)據(jù)標(biāo)準(zhǔn)并在執(zhí)行建表時(shí)進(jìn)行標(biāo)準(zhǔn)覆蓋率檢測,在規(guī)范化的基礎(chǔ)上簡化建表操作。

邏輯模型與指標(biāo)設(shè)計(jì)
數(shù)據(jù)模型中展示了最基礎(chǔ)的事實(shí)表和維表之間的基本關(guān)系,方便后續(xù)創(chuàng)建指標(biāo)時(shí),直接基于已經(jīng)固化好的數(shù)據(jù)關(guān)系進(jìn)行開發(fā)。

數(shù)棧指標(biāo)管理平臺(tái)DataIndex 可按業(yè)務(wù)進(jìn)行指標(biāo)體系梳理,匯總成每個(gè)業(yè)務(wù)領(lǐng)域的指標(biāo)目錄。

針對(duì)每個(gè)指標(biāo),可定義其名稱、編碼、業(yè)務(wù)口徑、加工邏輯、調(diào)度屬性等信息。

數(shù)據(jù)開發(fā)、數(shù)據(jù)質(zhì)量校驗(yàn)與代碼的統(tǒng)一管理
數(shù)棧支持離線開發(fā)與實(shí)時(shí)開發(fā)兩種數(shù)據(jù)開發(fā)模式,下面以離線開發(fā)為例介紹數(shù)據(jù)開發(fā)流程。
首先管理員可以配置 SQL 開發(fā)規(guī)范,當(dāng)前平臺(tái)內(nèi)置了一些 SQL 規(guī)范檢查規(guī)則,此外也可根據(jù)開發(fā)說明自行開發(fā)一些檢查規(guī)則注冊到平臺(tái)。這些檢查規(guī)則生效后平臺(tái)將在 SQL 運(yùn)行前和提交前對(duì)代碼進(jìn)行掃描,在掃描結(jié)果發(fā)現(xiàn)的異常中,若觸發(fā)的是提示規(guī)則,即輕微的不規(guī)范,則會(huì)給出提示但不影響運(yùn)行和提交;若觸發(fā)的是阻斷規(guī)則,那么數(shù)據(jù)開發(fā)將無法進(jìn)行運(yùn)行和提交。以此來事前規(guī)避一些高危的 SQL 操作及不必要的占用大量資源的任務(wù)運(yùn)行等情況。


用戶可在離線開發(fā)中通過工作流來編排一個(gè)數(shù)據(jù)開發(fā)業(yè)務(wù)流程,編寫每個(gè)任務(wù)的代碼并配置調(diào)度屬性和任務(wù)依賴。


在離線開發(fā)平臺(tái)內(nèi)創(chuàng)建的任務(wù),代碼可對(duì)接至遠(yuǎn)端倉庫(Bitbucket、GitLab)進(jìn)行拉取和推送,實(shí)現(xiàn)企業(yè)內(nèi)部代碼的統(tǒng)一管理,也常用于初始化大數(shù)據(jù)平臺(tái)替換時(shí)任務(wù)的批量遷移。

SQL 代碼測試無誤并提交后一般由運(yùn)維人員將任務(wù)打包發(fā)布至另一個(gè)項(xiàng)目,發(fā)布過程中將前置校驗(yàn)發(fā)布包內(nèi)容是否完整,可在數(shù)棧審批中心開啟發(fā)布審批流程,由審批角色把控發(fā)布的規(guī)范性和影響。
針對(duì)金融場景下測試和生產(chǎn)環(huán)境網(wǎng)絡(luò)隔離的情況,發(fā)布過程也可對(duì)接企業(yè)內(nèi)部統(tǒng)一的審批中心,審批通過后通過 jenkins 等工具完成跨網(wǎng)絡(luò)的發(fā)布包傳輸實(shí)現(xiàn)任務(wù)投產(chǎn)。

同時(shí)有兩個(gè)十分重要的問題:數(shù)據(jù)生產(chǎn)出來如何評(píng)估質(zhì)量?出現(xiàn)質(zhì)量問題時(shí)能否及時(shí)中斷業(yè)務(wù)流程并通知開發(fā)人員及時(shí)處理?
數(shù)據(jù)資產(chǎn)平臺(tái)DataAssets 支持單表和多表質(zhì)量校驗(yàn),單表校驗(yàn)內(nèi)置完整性、準(zhǔn)確性、規(guī)范性、唯一性校驗(yàn)規(guī)則,用戶也可以通過自定義 SQL 來進(jìn)行個(gè)性化的數(shù)據(jù)校驗(yàn);多表校驗(yàn)可實(shí)現(xiàn)兩張表的數(shù)據(jù)比對(duì),例如可以在數(shù)據(jù)同步場景中校驗(yàn)源端和目標(biāo)端數(shù)據(jù)讀寫是否存在錯(cuò)漏。
當(dāng)質(zhì)量任務(wù)和離線任務(wù)產(chǎn)生關(guān)聯(lián)時(shí),通過配置質(zhì)量校驗(yàn)的強(qiáng)弱規(guī)則和告警可實(shí)現(xiàn)重要質(zhì)量問題及時(shí)中止任務(wù)流的運(yùn)行并通知相關(guān)開發(fā)人員。

數(shù)據(jù)服務(wù)
經(jīng)過數(shù)棧平臺(tái)生產(chǎn)的數(shù)據(jù)可通過 API、自助查詢、數(shù)據(jù)同步至外部庫的方式對(duì)外提供服務(wù),常應(yīng)用于報(bào)表、大屏、標(biāo)簽、數(shù)據(jù)門戶等上層數(shù)據(jù)應(yīng)用。

安全管理
● 用戶認(rèn)證
支持對(duì)接企業(yè)的單點(diǎn)登陸,支持 LDAP、Oauth2 等認(rèn)證方式,可配置多層級(jí)的 Kerberos 認(rèn)證。
● 數(shù)據(jù)權(quán)限管理
數(shù)棧平臺(tái)層可實(shí)現(xiàn) Hadoop 下的數(shù)據(jù)權(quán)限管理,可將數(shù)據(jù)進(jìn)行自動(dòng)識(shí)別劃分成不同的等級(jí),在特定的 Hadoop 版本下也支持對(duì)接 Ranger 開啟引擎的權(quán)限策略,另外也可對(duì)接企業(yè)已有的數(shù)據(jù)權(quán)限管理體系。
● 審批流程對(duì)接
表、API 等數(shù)據(jù)資源的權(quán)限申請,數(shù)據(jù)標(biāo)準(zhǔn)、離線任務(wù)的發(fā)布等涉及權(quán)限點(diǎn)變更或內(nèi)部上線的流程均可對(duì)接數(shù)棧內(nèi)的審批中心進(jìn)行管理。
● 操作審計(jì)
任務(wù)運(yùn)行、表的 DDL 操作、增刪用戶、權(quán)限申請等所有關(guān)鍵操作都會(huì)記錄審計(jì)列表。
未來數(shù)棧還將繼續(xù)完善數(shù)據(jù)治理全鏈路,通過產(chǎn)品體驗(yàn)優(yōu)化、工具智能升級(jí)提升數(shù)據(jù)生產(chǎn)的質(zhì)量和效率,不斷為企業(yè)數(shù)據(jù)價(jià)值的發(fā)揮提供動(dòng)力和保障。
《數(shù)據(jù)治理行業(yè)實(shí)踐白皮書》下載地址:https://fs80.cn/l134d5?
《數(shù)棧V6.0產(chǎn)品白皮書》下載地址:https://fs80.cn/cw0iw1
想了解或咨詢更多有關(guān)袋鼠云大數(shù)據(jù)產(chǎn)品、行業(yè)解決方案、客戶案例的朋友,瀏覽袋鼠云官網(wǎng):https://www.dtstack.com/?src=szbzhan
同時(shí),歡迎對(duì)大數(shù)據(jù)開源項(xiàng)目有興趣的同學(xué)加入「袋鼠云開源框架釘釘技術(shù) qun」,交流最新開源技術(shù)信息,qun 號(hào)碼:30537511,項(xiàng)目地址:https://github.com/DTStack