在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁 > 博客 > 數(shù)倉規(guī)范詳解文檔(1)

            數(shù)倉規(guī)范詳解文檔(1)

            發(fā)布人:數(shù)據(jù)派THU 時間:2023-05-22 來源:工程師 發(fā)布文章

            規(guī)范約束的是數(shù)倉建設(shè)的全流程,以及后續(xù)的迭代和運維。事實上,數(shù)倉規(guī)范文檔,應該隨著架構(gòu)設(shè)計文檔,在數(shù)倉開發(fā)啟動之前,分發(fā)給所有相關(guān)人員,且是所有人都必須嚴格遵守的約定。


            為什么要有規(guī)范?


            俗話說的好,無規(guī)矩不成方圓,沒有規(guī)范豈不亂套了? 個人覺得,規(guī)范是為了解決團體作戰(zhàn)中的效率和協(xié)同問題,是對最終交付質(zhì)量的有力保證。
            大家工作中有沒有遇到類似的問題?

            • 接到了一個需求,不知道該從那張表出數(shù),表A貌似可以,表B好像也行。問了同事甲,他說他每次都是從C表出的。對著三張表探索了好久,發(fā)現(xiàn)誰跟誰都對不上,算了吧,我從源頭再算一次吧,結(jié)果又變出來一張表D。
            • 數(shù)據(jù)庫里幾千張表,好像我用到的也就那么十幾張,其它的都是干啥用的呢,問了一圈沒有人知道,刪掉吧?更沒有人敢動。
            • 有個流程報錯了,領(lǐng)導讓我去看一下,點進去后,屎一樣的代碼完全看不懂,另外,找了好久死活找不到上游依賴。
            • 有位同事要離職,他負責的那部分內(nèi)容,換了一個人接手,累死累活好多天依然捋不出個所以然,一氣之下又走了一個人。


            由于以上種種問題,造成數(shù)倉團隊的整體開發(fā)效率、產(chǎn)出質(zhì)量、工作幸福感、數(shù)倉維護成本等等越來越差。隨著人員流動,通常受累的往往是那些任勞任怨、對公司忠誠的員工。
            相信做過數(shù)據(jù)開發(fā)的人,多多少少都會有過上邊提到的部分苦惱。我覺得問題的根源通常在于沒有規(guī)范或者規(guī)范沒有得到貫徹。大家有時候為了按時完成業(yè)務側(cè)的需求,走些捷徑也是可以理解的,但是欠下的技術(shù)債應該盡早還上,并且組織不應該苛責員工,這個鍋應該領(lǐng)導來背。領(lǐng)導重視大家就都重視,領(lǐng)導不重視,豈不各個放飛自我了?
            數(shù)據(jù)倉庫,是我們數(shù)據(jù)工程師的無形產(chǎn)品。數(shù)據(jù)規(guī)范是數(shù)倉體系建設(shè)的"語言",是數(shù)據(jù)使用的說明書和翻譯官,同時也是數(shù)據(jù)質(zhì)量的保駕護航者。為了數(shù)據(jù)體系能夠長久健康的發(fā)展,數(shù)倉管理,應該從人治逐步轉(zhuǎn)變到制度化、規(guī)范化、工具化的道路上了來。

            規(guī)范該怎么落地?


            圖片

            規(guī)范制定


            從 0 到 1,從無到有,這個環(huán)節(jié)應該有 Leader 或架構(gòu)師,充分考慮公司實際情況,參考行業(yè)標準或約定俗成的規(guī)范,綜合統(tǒng)一制定。
            也可以將規(guī)范拆分后交由各個部分核心開發(fā)人員編寫, Leader 或架構(gòu)師統(tǒng)一整合。比如我們之前的團隊就是,模型設(shè)計師負責模型設(shè)計規(guī)范,ETL 工程師負責 ETL 開發(fā)規(guī)范,BI 開發(fā)人員制定前端開發(fā)規(guī)范,部署上線規(guī)范直接采用項目上已有的即可。
            總體上,初稿應該盡量保證規(guī)范的完整性和各個部分間的兼容性。

            規(guī)范討論


            初稿完成后,難免有考慮不周的情況,這時候最好有 Leader  牽頭,組織部分核心成員(人數(shù)不易太多,三五個即可。人多容易造成混亂、決策困難、沒有人提意見造成 Leader 一言堂等等問題。)進一步完善各個細節(jié),糾正初稿的不足。
            多人共同完善的規(guī)范,理論上來講不會有什么大問題了。

            規(guī)范推行


            定稿后,規(guī)范已經(jīng)具備了全面推廣的條件,可以下發(fā)所有團隊成員。

            • 可以通過群聊天,也可以通過正式回郵件的方式,當然為了引起大家的重視,可以專門組會宣講。
            • 分發(fā)宣講后進入執(zhí)行階段,所有人必須嚴格遵守,如有違犯給予警告,嚴重的給予懲罰,屢勸不改的取消年終調(diào)級調(diào)薪等。


            為了確保規(guī)范的貫徹落實,除了通過以上兩點引起全員重視外,還需要組織、制度、流程上的多方面保障。

            • 數(shù)據(jù)模型應該有統(tǒng)一歸口,比如數(shù)據(jù)架構(gòu)師,架構(gòu)師定期檢查模型是否合理合規(guī)。
            • 組織數(shù)據(jù)開發(fā)人員,定期 Review 每個人的代碼,但不必針對個人更不要上綱上線,目的是通過對比和討論讓大家明白什么樣的才是好代碼,最終使“寫好代碼”成為基本素養(yǎng)。沒有條件的話就有 Leader 負責定期檢查,有問題的私下指出來幫助組員逐漸規(guī)范。
            • 入職新人,熟讀規(guī)范后,還應該安排專人指導,是合規(guī)性檢查的重點關(guān)注對象。

            規(guī)范的執(zhí)行監(jiān)督


            規(guī)范的執(zhí)行監(jiān)督,上邊提到的,更多是依靠制度流程以及相關(guān)人的自覺性,制度流程又依賴于人。這會帶來如下幾個問題:
            短期堅持還好,但長期的專注很難。
            有時候人忙起來了,快速產(chǎn)出和規(guī)范該選哪個?代碼 Review 還要不要做?新建的表要不要找數(shù)據(jù)架構(gòu)師審核?
            數(shù)據(jù)建模最好是有專門的人或者小團隊去做,其他人使用,這往往會影響整體效率,所以通常都是誰用誰建,但撒出去后再想靠人去檢查合規(guī)性,真的就太難了。
            有條件的最好引入相應的工具加強監(jiān)管。
            比如,我們有指標體系元數(shù)據(jù)、有詞根庫元數(shù)據(jù)、有建表的元數(shù)據(jù)、有 ETL 流程的元數(shù)據(jù)等等。
            那我們是否可以開發(fā)部分報表或其它頁面,通過 UI 輔助人去檢查,或者通過校驗元數(shù)據(jù)的方法去監(jiān)管(比如備注是否為空、字段或表命名里的詞根是否都在詞根庫里存在、表或頁面等用到的指標是否都存在于指標體系、數(shù)據(jù)血緣中是否存在閉環(huán)或者孤立的節(jié)點)。

            規(guī)范完善


            發(fā)行稿,從大面上應該不會有啥問題,但細節(jié)上可能會有考慮不周的情況,在宣講階段、執(zhí)行階段遇到問題阻礙的時候,應該根據(jù)實際情況對規(guī)范做出調(diào)整,唯有經(jīng)過實踐檢驗才能愈發(fā)完善,相信經(jīng)過一段時間的持續(xù)實踐,規(guī)范會成為組織文化的一部分,進而降低溝通成本、提高開發(fā)效率、保證交付質(zhì)量,從而實現(xiàn)團隊和個人的雙贏。

            數(shù)倉規(guī)范有哪些?


            圖片為了讓大家了解到數(shù)倉規(guī)范全貌,特意花大力氣整理出以上分類。歡迎大家推廣普及運用。由于只是一家之言,大家如有不同的見解、更好的方案或者有可以再補充的,歡迎關(guān)注我們一起進步。
            這里,我把數(shù)倉規(guī)范,一共分為四大類:設(shè)計規(guī)范、流程規(guī)范、質(zhì)量管理規(guī)范、安全規(guī)范。
            設(shè)計規(guī)范,又劃分為四部分:數(shù)據(jù)模型設(shè)計、命名規(guī)范、指標體系設(shè)計、詞根庫。
            流程規(guī)范,主要是從數(shù)倉管理的角度,對數(shù)倉場景下的各種流程進行約束。核心流程一共提煉出來五類:需求提交、模型設(shè)計、ETL開發(fā)、前端開發(fā)、上線流程。
            質(zhì)量管控規(guī)范,之所以單獨列出來,是因為數(shù)據(jù)質(zhì)量,跟模型設(shè)計一樣,對數(shù)倉建設(shè)的成敗關(guān)系極大。試想下,一個數(shù)據(jù)質(zhì)量都無法保證的數(shù)據(jù)倉庫,有誰會用?  數(shù)據(jù)質(zhì)量規(guī)范,主要是從數(shù)據(jù)流動的角度分為三類:源端管控、數(shù)倉管理、應用管控。
            安全規(guī)范,隨著國家、社會、企業(yè)對數(shù)據(jù)的越來越重視,另一方面隨著互聯(lián)網(wǎng)的普及使得個人隱私變的越來越難以保證,數(shù)據(jù)泄露時有發(fā)生。數(shù)據(jù)安全對于數(shù)據(jù)倉庫的重要程度急速提升,所以安全規(guī)范被單列了出來。從大的層面上安全規(guī)范分為三類:網(wǎng)絡(luò)安全、賬號安全、數(shù)據(jù)安全。

            設(shè)計規(guī)范


            圖片

            數(shù)據(jù)模型設(shè)計


            橫向分層

            • 說明
              • 分層設(shè)計是數(shù)據(jù)架構(gòu)設(shè)計的產(chǎn)出之一,在模型設(shè)計環(huán)節(jié)做為強制規(guī)范遵守。
            • 分層規(guī)范
              • 應用層,面向最終應用。
              • 主題域劃分,依據(jù)是最終應用。生命周期也與應用同步。
              • 匯總數(shù)據(jù)層+主題寬表。
              • 數(shù)據(jù)域劃分,依據(jù)參考下邊的縱向分域。
              • 對數(shù)據(jù)源做清洗、轉(zhuǎn)換、補全、編碼轉(zhuǎn)換后加載到明細數(shù)據(jù)層。
              • 數(shù)據(jù)域劃分,依據(jù)參考下邊的縱向分域。
              • 貼源層,原始數(shù)據(jù)不做變化或者僅做最簡單的補全后存入。
              • 數(shù)據(jù)域劃分,依據(jù)是數(shù)據(jù)源。
              • ODS
              • DWD
              • DWS
              • ADS
            • 層次調(diào)用規(guī)范
              • 禁止反向調(diào)用
              • ODS 只能被 DWD 調(diào)用。
              • DWD 可以被 DWS 和 ADS 調(diào)用。
              • DWS 只能被 ADS 調(diào)用。
              • 數(shù)據(jù)應用可以調(diào)用 DWD、DWS、ADS,但建議優(yōu)先考慮使用匯總度高的數(shù)據(jù)。
              • ODS->DWD->DWS>ADS
              • ODS->DWD->ADS
              縱向分域
            • 定義
              • 主題域通常是聯(lián)系較為緊密的數(shù)據(jù)主題的集合,方便尋找和使用數(shù)據(jù)。
            • 基本原則
              • 高內(nèi)聚、低耦合。
              • 數(shù)量不能太多。建議不超過十個。
              • 必須保持穩(wěn)定。既能涵蓋當 前所有的業(yè)務需求,又能在新業(yè)務進入時無影響地被包含進已有的數(shù)據(jù)域中或擴展新的數(shù)據(jù)域。
              • 需要結(jié)合團隊和業(yè)務的實際情況,比如業(yè)務是否穩(wěn)定、團隊成員建模水平等。
              • 適度的抽象。太低不好適應變化,太高不易于理解使用。
            • 分類
              • 面向分析場景,實現(xiàn)較難,對業(yè)務理解、抽象能力等要求高。
              • 依據(jù)業(yè)務流程劃分,實現(xiàn)相對容易。
              • 數(shù)據(jù)/業(yè)務主題域
              • 分析主體域
            • 劃分依據(jù)
              • 按照業(yè)務或業(yè)務過程劃分:比如一個靠銷售廣告位置的門戶網(wǎng)站主題域可能會有廣告域,客戶域等,而廣告域可能就會有廣告的庫存,銷售分析、內(nèi)部投放分析等主題。
              • 根據(jù)需求方劃分:比如需求方為財務部,就可以設(shè)定對應的財務主題域,而財務主題域里面可能就會有員工工資分析,投資回報比分析等主題。
              • 按照功能或應用劃分:比如微信中的朋友圈數(shù)據(jù)域、群聊數(shù)據(jù)域等,而朋友圈數(shù)據(jù)域可能就會有用戶動態(tài)信息主題、廣告主題等。
              • 按照部門劃分:比如可能會有運營域、技術(shù)域等,運營域中可能會有工資支出分析、活動宣傳效果分析等主題?;驹瓌t
            • 高內(nèi)聚和低耦合
            • 核心模型與擴展模型分離
            • 公共處理邏輯下沉及單一
            • 成本與性能平衡
            • 數(shù)據(jù)可回滾
            • 一致性
            • 命名清晰、可理解
              附加字段
            • 維表:創(chuàng)建時間、更新時間
            • 事實表:ETL 日期、更新時間
              其它要求
            • 表、字段的備注信息,必須言簡意賅,在描述清楚的前提下盡量簡潔。
            • 字段類型的約束:比如字符串用 String,數(shù)值用 Int,年月日都用 String 比如 yyyyMMdd 等。


            *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



            關(guān)鍵詞: AI

            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉