數據管道開發流程圖
數據管道開發範本,涵蓋數據合約、版本化開發、重播測試、保安審查、質素關卡、部署、監察及失效交接。
甚麼是數據管道開發流程
正式環境的數據管道是受支援的數據產品,不是碰巧成功運行一次的程式。這個範本先界定使用者、服務目標及數據合約,再繪製來源、轉換、沿革及相依責任,然後才開始建立。工程師同步建立擷取、轉換及可觀察性,並以版本控制管理程式及設定。測試工程師執行組件及重播測試;保安審閱人檢查存取權、密鑰及威脅路徑;產品負責人則界定質素規則、門檻及隔離方式。具代表性的數據要在發布前證明這些關卡有效。部署採用分階段正式環境路徑,配合健康檢查及回復。提升後,更新程度、數量及質素訊號會判斷管道是否正常,或把日誌及重播樣本交回負責工程團隊。
本流程涵蓋重複運行管道的開發及營運驗收,不是一次性搬移整批數據;後者需要透過 /yue/templates/數據遷移流程 處理來源對照、模擬載入、業務核對及切換。本圖亦不決定機構的保留、分享或處置政策,這些要求應由 /yue/templates/數據生命週期管理流程 帶入數據合約。廣泛服務中斷可以交平台事故管理處理,但管道專用證據及重播仍應留在本圖,避免工程團隊只收到無法重現的警報。請以符合實際架構、使用者承諾及支援模式的量度,取代通用測試、質素訊號及發布關卡。
本流程圖涵蓋的內容
本範本包含
- 六條角色泳道及七個階段,由產品及架構受理,經工程、測試、保安與數據質素,到部署及營運支援
- 建立面向使用者的數據合約及相依責任關卡,在開發前連起服務目標、沿革及營運期望
- 以版本控制開發並執行單元、組件及重播測試,失敗證據要返回工程團隊而不能為趕發布而繞過
- 分開保安及數據質素決定,涵蓋存取權、密鑰、威脅路徑、代表數據、門檻及隔離方式
- 分階段部署、健康檢查回復、正式環境監察,以及連同日誌及重播樣本送回開發循環的失效交接
何時使用本範本
- 管道工作由筆記簿或工單直接進入正式環境,沒有共同界定使用者、質素規則、支援責任或復原方式
- 數據事故重複發生,因測試只涵蓋轉換邏輯,沒有測試重播、遲到數據、重複、結構變更或重新啟動
- 保安、平台及數據質素審查在部署後才進行,並把發現送到互不相連的隊列
- 數據平台團隊要統一批次、串流或事件管道的設計、發布、監察及支援交接方式
運作方式
先寫數據合約
列明提供者及使用者、結構及語義期望、交付頻次、更新目標、容許的變更流程及支援負責人。合約應放近受版本控制的程式,讓變更可以同時更新實施、測試及使用者期望。
與管道同步建立可觀察性
在設計時界定日誌、指標、沿革及重播識別碼,不要等事故後才補做。警報應可指出受影響時段、輸入及程式版本,毋須由多個工具人手重組。
選擇具代表性的測試數據
包括正常紀錄、已知邊界情況、遲到及重複事件、格式錯誤輸入,以及會影響運行時間的數量模式。保護測試環境內的敏感數據,並保存合成或獲批重播數據供回歸測試。
設定質素及隔離行為
把每項重要使用者期望轉成有門檻及負責人的可量度規則。決定失敗時停止載入、隔離紀錄、提供上一個正常輸出,還是警告用戶,並在發布前測試該行為。
演練回復及失效交接
核實部署可以回到已知版本,而重播不會造成重複或遺失紀錄。界定營運交給工程團隊的證據,包括日誌、受影響時段、輸入樣本、運行識別碼及觀察到的使用者影響。
常見問題
數據管道開發流程包括哪些步驟?
界定使用者、服務目標及數據合約;設計來源、轉換、沿革及相依責任;以版本控制建立擷取、轉換及可觀察性;執行單元、組件及重播測試;審查存取權、密鑰及威脅路徑;界定並測試數據質素關卡;批准發布、回復及支援責任;分階段部署、核實健康、啟用排程,再監察更新、數量及質素,並為失效提供完整證據。
數據管道測試應涵蓋甚麼?
測試轉換結果、結構及合約相容性、重複及遲到數據、格式錯誤輸入、重試、冪等性、重新啟動及重播、質素規則結果、隔離處理、存取管控及營運健康訊號。若服務目標受數量及時間影響,亦要加入相應測試。有效測試既要證明正確數據到達用戶,亦要證明失效受到遏制、可觀察及可恢復。
誰負責管道內的數據質素?
責任可以分擔,但不能含糊。數據產品負責人界定用戶需要並接受門檻;來源負責人對來源意思及已知限制問責;工程師實施檢查及隔離行為;營運則回應警報。每項規則要有一位問責角色及一條爭議處理途徑,因為人人都看的儀表板往往等於無人負責。
管道開發與數據遷移有甚麼分別?
管道開發建立或修改重複運行的數據流,需要持續服務目標、監察、重播及支援。數據遷移把一批指定紀錄由一種狀態或系統搬到另一處,在核對、業務核實及切換驗收後結束。遷移可以為管道建立初始目標數據,但兩者的完成準則及回復計劃不同,應互相參照而不是合併。