主頁 > 軟體工程 > 離線數倉建設,企業大資料的業務驅動與技術實作丨03期直播回顧

離線數倉建設,企業大資料的業務驅動與技術實作丨03期直播回顧

2022-07-13 14:02:56 軟體工程

原文鏈接:離線數倉建設,企業大資料的業務驅動與技術實作丨03期直播回顧

視頻回顧:點擊這里

課件獲取:點擊這里

一、離線數倉建設背景

離線資料是相對實時資料而言的資料產出,不同于實時資料,離線資料一般是T+1天處理,也就是說昨天產生的資料至少要今天才能看到計算結果,離線資料一般應用于對資料時效要求不高,需要基于一段時間的歷史資料計算才能得到結果的場景,我們大致可以分為離線資料分析及資料應用兩類,離線資料計算具備:資料準確度高、吞吐量大、計算成本低等特點,
file

離線資料應用的場景非常廣泛,企業的資料迎來了爆發式的增長,目前企業資料規模巨大、資料型別多樣、生成及處理速度極快、資料價值巨大但密度卻較低,這些資料增長的場景,帶來的是是我們傳統的一些資料基礎設施建設暴露出來的缺陷,比如自建數倉投入高、周期長、無法彈性擴縮容導致資金和人力成本投入越來越大;傳統數倉在存盤、搜索和分析挖掘等能力上的瓶頸也越來越突出,傳統離線資料建設無法滿足資料增長需求,數字化轉型迫在眉睫,許多企業已經在轉型或者在轉型的路上,
file

但企業在數字化轉型程序中并非一帆風順,還面臨著許多問題:

● 資料生產效率低

企業內部資料孤島現象比較嚴重,不同部門自行搭建資料倉庫,資料重復開發、難以共享,跨部門的資料需求回應周期長,

● 計算存盤成本高

資料量增長后計算和存盤的資源消耗也越來越大,此時資源利用不合理導致的資料延遲等問題也愈發突出,

● 資料質量問題頻繁發生

因開發人員水平參差不齊,資料研發規范不統一等原因導致的質量問題頻發且溯源困難,

● 資料安全難以保障

由于資料權限管理粒度粗、資料訪問認證欠缺等一系列的問題導致重要資料泄露,資料安全難以保障,
file

因此在離線數倉數字化轉型程序中,我們需要實作以下目標:

● 提升資料生成效率

● 提升資料質量

● 降低計算存盤成本

● 保障資料安全

file

二、離線數倉建設方法論

如何幫助企業建設離線數倉,我們主要從以下五步驟入手:
file

1、業務調研

企業進行離線數倉建設的第一步是進行業務調研,業務調研的目標是梳理核心的業務流程,包括這個業務流程中涉及到的環節及主要人員,關注的重點資料指標是什么,以及資料來源,和資料量,從企業整體的角度探查資料需求可以幫助架構師進行資料計算存盤底座和開發工具的選型,
file

2、技術選型

第二步技術選型階段,首先是底座選型,底座選型的目標是確定我們需要把不同來源的資料統一匯集到哪個存盤介質里,用什么樣的方式進行計算,在工具方面,離線開發比較關注資料同步、資料開發、任務調度相關的一些工具,這些方面無論是開源還是商業版目前市面上都有很多型別的產品可供選擇,
file

3、數倉域劃分

第三步是數倉主題域和主題劃分,一個主題域對應一個宏觀的分析領域,可以理解為一個業務資料大類,主題域的劃分方式根據企業內部需要可以按業務系統、需求、部門甚至是行業案例劃分,主題域劃分完成后可以繼續往下劃分一級主題二級主題,也就是資料大類下面的小類,直到劃分到物體為止,那么整個主題域主題就劃分完成了,
file

4、邏輯建模

第四步是邏輯建模,邏輯建模可分為指標體系梳理、物體關系調研、維度梳理及數倉分層這4個部分,
file

5、物理建模

在上面的四個步驟中我們已經把數倉框架搭建完成了,那么物理建模階段就是根據業務需求進行資料開發代碼撰寫和上線的程序,
file

三、離線開發實施流程

分享完離線數倉的建設方法論,接下來來為大家分享離線開發的實施流程,
file

● 第一步:資料集成(多源異構資料雙向讀寫)

流程中的第一步資料集成,本質上是把來自一些資料庫的資料經過資料的決議、轉換后寫入到相同或者異構的資料庫這樣一個程序,我們需要重點關注:

1、資料讀寫性能,關注工具是否能滿足資料同步要求的速率;

2、例外恢復,當同步任務出現各種原因的例外中斷時,能否從斷點處繼續進行資料讀寫,而不必每次出現例外都全部重新開始;

3、同步方式,關注同步工具能否支持全量、增量、批量的同步方式;

4、臟資料監控,如果源頭或資料轉換程序出現例外,這些例外資料能否進行記錄和分析,幫助資料開發追溯資料質量問題來源,
file

● 第二步:資料開發

1、SQL資料加工

通過SQL代碼實作資料加工邏輯,產出表的程序,需要關注的點是工具對于開發任務型別能否滿足要求,開發界面是否友好,任務的除錯,資料日志下載等基本功能是否滿足,
圖片
file

2、調度配置:編排任務有序按需執行

上一步完成代碼開發后,還需要為開發任務進行調度屬性配置,讓任務根據設定的依賴關系和計劃時間有序地運行,需要關注的重點是:穩定性與兼容性、任務依賴、周期調度,
file

● 第三步:任務發布

完成代碼開發除錯和調度配置后,我們就可以把資料開發任務從開發環境發布,也就是拷貝到生產環境中,由生產環境任務周期運行產生的資料就可以給業務方使用了,

一般資料開發會有三種環境模式,

1、單專案模式,也就是開發測驗都在一個專案內完成,經過測驗的任務直接跑生產資料,這種模式開發流程短,需求回應快,適合對資料穩定性和要求不高的場景,但大部分情況下我們不建議這么操作;

2、雙專案模式,資料開發在開發專案中完成任務開發和測驗,通過運維發布到生產環境中運行,開發專案和生產專案存在資料隔離,這種模式對資料安全比較有保障;


3、三專案模式,用戶有兩套網路相互隔離的集群,第一個集群用于資料開發和測驗,資料開發在開發環境進行編碼和自測,發布到測驗環境由測驗人員進行用例測驗,測驗完成的任務打包下載至本地,人工拷貝或傳輸到生產集群的專案下進行運行,這種模式雖然操作流程上多了一個環節,看起來比較麻煩,但由于網路隔離也最大程度上保證了生產資料的安全和穩定,
file

● 第四步:運維監控

任務運維就是全域掌控任務的運行,對于一些例外或緊急情況進行處理的程序,
file

● 第五步:資料安全

最后的資料安全其實貫穿在資料開發的整個流程中,資料安全包含資料權限管理、資料生命周期管理和資料訪問認證等內容,
file

以上就是離線開發建設落地的全程序,那么是否有一款產品能滿足上述需求呢?袋鼠云自研的數堆疊離線開發平臺就完美符合這個情景,

云原生一站式離線資料開發平臺(BatchWorks),具備靈活的多集群、多引擎對接能力,覆寫資料采集、資料開發、周期調度、監控告警等全鏈路功能,上線5年已服務500+客戶,專注于提供資料開發解決方案,幫助企業快速完成資料中臺離線數倉建設,加速釋放資料價值,
file

同時產品具備以下特點:

● 一站式可視化智能資料開發

一個平臺覆寫完整資料開發流程,減少組件運維成本與流程銜接操作,讓用戶專注于業務本身,全流程可視化操作附帶語法提示,智能調度與監控等多種輔助功能,減少上手成本,讓更多用戶參與資料使用,

● 多集群多引擎彈性兼容

支持輸出自研Hadoop集群,同時可對接CDH、HDP、TDH等多集群及Oracle、TiDB等多引擎;節點資源可根據計算存盤需求快速彈性伸縮,業務需求穩定回應,

● 全流程多維安全保障

多租戶多專案組織結構實作資料權限隔離的同時支持靈活的申請授權;多角色內置權限點實作功能隔離;資料權限全流程校驗,關鍵操作細粒度審計,最大限度減少生產安全事故,

四、離線數倉建設案例

接下來我們分享兩個使用數堆疊離線開發平臺完成數倉建設的實際案例,讓大家切實感受產品給客戶帶來的實際價值,

● 某銀行客戶

file

● 某高校客戶

file

原文來源:VX公眾號“數堆疊研習社”
袋鼠云開源框架釘釘技術交流群(30537511),歡迎對大資料開源專案有興趣的同學加入交流最新技術資訊,開源專案庫地址:https://github.com/DTStack

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/498918.html

標籤:其他

上一篇:袋鼠云數堆疊基于CBO在Spark SQL優化上的探索

下一篇:DevOps落地實踐點滴和踩坑記錄-(1)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • Git本地庫既關聯GitHub又關聯Gitee

    創建代碼倉庫 使用gitee舉例(github和gitee差不多) 1.在gitee右上角點擊+,選擇新建倉庫 ? 2.選擇填寫倉庫資訊,然后進行創建 ? 3.服務端已經準備好了,本地開始作準備 (1)Git 全域設定 git config --global user.name "成鈺" git c ......

    uj5u.com 2020-09-10 05:04:14 more
  • CODING DevOps 代碼質量實戰系列第二課,相約周三

    隨著 ToB(企業服務)的興起和 ToC(消費互聯網)產品進入成熟期,線上故障帶來的損失越來越大,代碼質量越來越重要,而「質量內建」正是 DevOps 核心理念之一。**《DevOps 代碼質量實戰(PHP 版)》**為 CODING DevOps 代碼質量實戰系列的第二課,同時也是本系列的 PHP ......

    uj5u.com 2020-09-10 05:07:43 more
  • 推薦Scrum書籍

    推薦Scrum書籍 直接上干貨,推薦書籍清單如下(推薦有順序的哦) Scrum指南 Scrum精髓 Scrum敏捷軟體開發 Scrum捷徑 硝煙中的Scrum和XP : 我們如何實施Scrum 敏捷軟體開發:Scrum實戰指南 Scrum要素 大規模Scrum:大規模敏捷組織的設計 用戶故事地圖 用 ......

    uj5u.com 2020-09-10 05:07:45 more
  • CODING DevOps 代碼質量實戰系列最后一課,周四發車

    隨著 ToB(企業服務)的興起和 ToC(消費互聯網)產品進入成熟期,線上故障帶來的損失越來越大,代碼質量越來越重要,而「質量內建」正是 DevOps 核心理念之一。 **《DevOps 代碼質量實戰(Java 版)》**為 CODING DevOps 代碼質量實戰系列的最后一課,同時也是本系列的 ......

    uj5u.com 2020-09-10 05:07:52 more
  • 敏捷軟體工程實踐書籍

    Scrum轉型想要做好,第一步先了解并真正落實Scrum,那么我推薦的Scrum書籍是要看懂并實踐的。第二步是團隊的工程實踐要做扎實。 下面推薦工程實踐書單: 重構:改善既有代碼的設計 決議極限編程 : 擁抱變化 代碼整潔代碼 程式員的職業素養 修改代碼的藝術 撰寫可讀代碼的藝術 測驗驅動開發 : ......

    uj5u.com 2020-09-10 05:07:55 more
  • Jenkins+svn+nginx實作windows環境自動部署vue前端專案

    前面文章介紹了Jenkins+svn+tomcat實作自動化部署,現在終于有空抽時間出來寫下Jenkins+svn+nginx實作自動部署vue前端專案。 jenkins的安裝和配置已經在前面文章進行介紹,下面介紹實作vue前端專案需要進行的哪些額外的步驟。 注意:在安裝jenkins和nginx的 ......

    uj5u.com 2020-09-10 05:08:49 more
  • CODING DevOps 微服務專案實戰系列第一課,明天等你

    CODING DevOps 微服務專案實戰系列第一課**《DevOps 微服務專案實戰:DevOps 初體驗》**將由 CODING DevOps 開發工程師 王寬老師 向大家介紹 DevOps 的基本理念,并探討為什么現代開發活動需要 DevOps,同時將以 eShopOnContainers 項 ......

    uj5u.com 2020-09-10 05:09:14 more
  • CODING DevOps 微服務專案實戰系列第二課來啦!

    近年來,工程專案的結構越來越復雜,需要接入合適的持續集成流水線形式,才能滿足更多變的需求,那么如何優雅地使用 CI 能力提升生產效率呢?CODING DevOps 微服務專案實戰系列第二課 《DevOps 微服務專案實戰:CI 進階用法》 將由 CODING DevOps 全堆疊工程師 何晨哲老師 向 ......

    uj5u.com 2020-09-10 05:09:33 more
  • CODING DevOps 微服務專案實戰系列最后一課,周四開講!

    隨著軟體工程越來越復雜化,如何在 Kubernetes 集群進行灰度發布成為了生產部署的”必修課“,而如何實作安全可控、自動化的灰度發布也成為了持續部署重點關注的問題。CODING DevOps 微服務專案實戰系列最后一課:**《DevOps 微服務專案實戰:基于 Nginx-ingress 的自動 ......

    uj5u.com 2020-09-10 05:10:00 more
  • CODING 儀表盤功能正式推出,實作作業資料可視化!

    CODING 儀表盤功能現已正式推出!該功能旨在用一張張統計卡片的形式,統計并展示使用 CODING 中所產生的資料。這意味著無需額外的設定,就可以收集歸納寶貴的作業資料并予之量化分析。這些海量的資料皆會以圖表或串列的方式躍然紙上,方便團隊成員隨時查看各專案的進度、狀態和指標,云端協作迎來真正意義上 ......

    uj5u.com 2020-09-10 05:11:01 more
最新发布
  • windows系統git使用ssh方式和gitee/github進行同步

    使用git來clone專案有兩種方式:HTTPS和SSH:
    HTTPS:不管是誰,拿到url隨便clone,但是在push的時候需要驗證用戶名和密碼;
    SSH:clone的專案你必須是擁有者或者管理員,而且需要在clone前添加SSH Key。SSH 在push的時候,是不需要輸入用戶名的,如果配置... ......

    uj5u.com 2023-04-19 08:41:12 more
  • windows系統git使用ssh方式和gitee/github進行同步

    使用git來clone專案有兩種方式:HTTPS和SSH:
    HTTPS:不管是誰,拿到url隨便clone,但是在push的時候需要驗證用戶名和密碼;
    SSH:clone的專案你必須是擁有者或者管理員,而且需要在clone前添加SSH Key。SSH 在push的時候,是不需要輸入用戶名的,如果配置... ......

    uj5u.com 2023-04-19 08:35:34 more
  • 2023年農牧行業6大CRM系統、5大場景盤點

    在物聯網、大資料、云計算、人工智能、自動化技術等現代資訊技術蓬勃發展與逐步成熟的背景下,數字化正成為農牧行業供給側結構性變革與高質量發展的核心驅動因素。因此,改造和提升傳統農牧業、開拓創新現代智慧農牧業,加快推進農牧業的現代化、資訊化、數字化建設已成為農牧業發展的重要方向。 當下,企業數字化轉型已經 ......

    uj5u.com 2023-04-18 08:05:44 more
  • 2023年農牧行業6大CRM系統、5大場景盤點

    在物聯網、大資料、云計算、人工智能、自動化技術等現代資訊技術蓬勃發展與逐步成熟的背景下,數字化正成為農牧行業供給側結構性變革與高質量發展的核心驅動因素。因此,改造和提升傳統農牧業、開拓創新現代智慧農牧業,加快推進農牧業的現代化、資訊化、數字化建設已成為農牧業發展的重要方向。 當下,企業數字化轉型已經 ......

    uj5u.com 2023-04-18 08:00:18 more
  • 計算機組成原理—存盤器

    計算機組成原理—硬體結構 二、存盤器 1.概述 存盤器是計算機系統中的記憶設備,用來存放程式和資料 1.1存盤器的層次結構 快取-主存層次主要解決CPU和主存速度不匹配的問題,速度接近快取 主存-輔存層次主要解決存盤系統的容量問題,容量接近與價位接近于主存 2.主存盤器 2.1概述 主存與CPU的聯 ......

    uj5u.com 2023-04-17 08:20:31 more
  • 談一談我對協同開發的一些認識

    如今各互聯網公司普通都使用敏捷開發,采用小步快跑的形式來進行專案開發。如果是小專案或者小需求,那一個開發可能就搞定了。但對于電商等復雜的系統,其功能多,結構復雜,一個人肯定是搞不定的,所以都是很多人來共同開發維護。以我曾經待過的商城團隊為例,光是后端開發就有七十多人。 為了更好地開發這類大型系統,往 ......

    uj5u.com 2023-04-17 08:18:55 more
  • 專案管理PRINCE2核心知識點整理

    PRINCE2,即 PRoject IN Controlled Environment(受控環境中的專案)是一種結構化的專案管理方法論,由英國政府內閣商務部(OGC)推出,是英國專案管理標準。
    PRINCE2 作為一種開放的方法論,是一套結構化的專案管理流程,描述了如何以一種邏輯性的、有組織的方法,... ......

    uj5u.com 2023-04-17 08:18:51 more
  • 談一談我對協同開發的一些認識

    如今各互聯網公司普通都使用敏捷開發,采用小步快跑的形式來進行專案開發。如果是小專案或者小需求,那一個開發可能就搞定了。但對于電商等復雜的系統,其功能多,結構復雜,一個人肯定是搞不定的,所以都是很多人來共同開發維護。以我曾經待過的商城團隊為例,光是后端開發就有七十多人。 為了更好地開發這類大型系統,往 ......

    uj5u.com 2023-04-17 08:18:00 more
  • 專案管理PRINCE2核心知識點整理

    PRINCE2,即 PRoject IN Controlled Environment(受控環境中的專案)是一種結構化的專案管理方法論,由英國政府內閣商務部(OGC)推出,是英國專案管理標準。
    PRINCE2 作為一種開放的方法論,是一套結構化的專案管理流程,描述了如何以一種邏輯性的、有組織的方法,... ......

    uj5u.com 2023-04-17 08:17:55 more
  • 計算機組成原理—存盤器

    計算機組成原理—硬體結構 二、存盤器 1.概述 存盤器是計算機系統中的記憶設備,用來存放程式和資料 1.1存盤器的層次結構 快取-主存層次主要解決CPU和主存速度不匹配的問題,速度接近快取 主存-輔存層次主要解決存盤系統的容量問題,容量接近與價位接近于主存 2.主存盤器 2.1概述 主存與CPU的聯 ......

    uj5u.com 2023-04-17 08:12:06 more