你的購物車目前是空的!

在現代企業運營中,資料工程已經成為不可或缺的一環。然而,許多人對於資料工程的理解仍停留在傳統軟體工程的框架內。其實,資料工程與軟體工程之間存在著本質的差異。
比起軟體工程或軟體開發,資料工程更像是一個複雜的供應鏈,從資料的收集、清理、存儲到處理和分發,每個步驟都像供應鏈管理中的環節一樣緊密相連,互相依賴。
軟體工程 vs 資料工程
軟體工程師的主要工作
軟體工程主要關注於設計、開發、測試和維護應用程序和系統。軟體工程師的主要任務是創建高效、穩定且可靠的軟體產品,確保它們能夠滿足用戶需求並在不同環境下運行良好。一般的軟體工程流程包括:
- 需求分析
- 撰寫程式碼
- 設計軟體架構
- 測試和除錯
- 維護和更新現有系統
軟體工程師需要精通各種程式語言,如 Java、Python、C++ 等。他們還需要了解軟體開發生命週期和各種開發方法論。
資料工程師的主要工作
與此不同,資料工程則集中於資料的收集、處理和管理。資料工程師需要確保資料在企業內部能夠順利流動並保持高質量。他們需要構建和維護數據管道,確保資料從不同來源收集後經過清理、轉換和存儲,並設計、構建和維護大規模資料處理與儲存系統,讓資料最終能夠被數據科學家和分析師有效利用。
資料工程師的主要工作包括:
- 設計資料管線
- 建立資料倉儲
- 優化資料庫性能
- 確保資料質量和安全性
在技能上,資料工程師需要精通 SQL、Python 等語言,以及各種大數據技術如 Hadoop、Spark 等。他們還需要深入了解資料建模和資料架構設計。
兩者的主要差異
- 主要任務:軟體工程專注於應用程式開發,資料工程專注於資料處理和管理。
- 技能需求:軟體工程需要更多程式設計技能,資料工程需要更多資料管理技能、資料庫、ETL 工具等。
- 產出結果:軟體工程產出可執行的應用程式,資料工程產出可用於分析或後續處理的資料產品。
資料工程 vs 供應鏈管理
供應鏈管理(Supply Chain Management)在做什麼?
供應鏈管理的核心在於高效、準確地將產品從供應商交付到消費者手中,資料工程的目標則是確保數據能夠在正確的時間、以正確的格式到達需要它的地方。這兩者之間的類比並非巧合,而是源於其相似的運作原則和管理方法。
供應鏈管理涉及產品從供應商到消費者手中的整個過程,包含了計劃、採購、製造、物流和倉儲管理等環節。資料工程與供應鏈管理有很多相似之處,特別是在流程和目標方面。讓我們以果菜批發為例來看看供應鏈管理平常在做什麼:

計劃與需求預測
水果供應鏈管理中,首先要進行市場需求的預測,確定不同季節和地區的水果需求量。這涉及分析歷史銷售數據、考慮季節性因素和市場趨勢。
採購與供應商管理
管理與水果供應商的關係,選擇可靠的農場或經銷商,進行採購談判,確保水果質量和供應穩定。這還包括供應商績效評估和風險管理。
處理與倉儲管理
水果需要進行分揀、清洗、包裝和儲存等處理過程,確保質量和新鮮度。這就像製造過程中的質量控制,並確保水果在最佳條件下儲存。
物流與配送
確保水果從農場或倉庫按時運輸到超市或消費者手中,這涉及物流管理、冷鏈運輸和配送策略。
品質與時程控管
品質管理確保產品符合質量標準,時程管理則確保產品按時交付。這包括監控產品狀態、及時調整生產和物流計劃,以及處理可能出現的問題。
資料工程(Data Engineering)在做什麼?

我們這邊以購物網站以及推薦系統為例。使用者在上面的瀏覽數據就是原始資料(水果),推薦系統就是最終的資料產品(交付給使用者的產品)。
計劃與需求預測
對於購物網站,資料工程需要確定哪些用戶行為數據、銷售數據和瀏覽數據是必要的,並確定從哪些數據源獲取這些資料。這包括使用數據分析工具來預測用戶需求和購買趨勢。
資料採集與供應商管理
從網站的各個資料源(如用戶點擊行為、購物車資料、交易記錄等)收集資料。確保資料質量和完整性,並管理資料來源的可靠性和安全性。
處理與倉儲管理
對收集到的數據進行清理、轉換和整合,確保資料的質量和一致性。這包括去重、填補缺失值和數據格式轉換,並將資料有效地儲存在資料庫和資料倉儲中。
儲存時也要留意如何規劃儲存空間來確保最大的空間使用率。並且規劃良好的檢索方式,讓後續處理人員能夠快速的找到需要的資料。
物流與配送
將處理後的資料存儲在數據庫中,並根據需求分發給需要的系統或部門。資料工程師透過資料管線以及排成等相關技術,確保資料能夠按時到達數據科學家、業務分析師或推薦系統,支援各種商務應用和資料產品。
品質與時程管理
資料工程師需要時時監控和維護資料品質、資料管道、資料庫等元件來確保資料品質穩定。並且及時處理數據處理過程中的問題,讓資料能在所需的時間內被妥善處理、並交付給內部或外部客戶。
如果你想知道 2024 年有哪些推薦的大數據工具可以看看:2024年最值得投資的五個大數據分析與處理工具
這樣類比的好處?
通過上述對比,我們可以看出,資料工程與供應鏈管理在很多方面都有相似之處。理解這些相似性可以幫助我們更好地管理和優化資料流,提升企業決策的準確性和效率。
一般來說,評估供應鏈管理的方式包括以下幾個關鍵指標:交付準時率、庫存周轉率、供應商績效和成本控制。這些指標同樣適用於評估資料工程師的表現。
- 交付準時率:
- 供應鏈管理:評估產品是否按時交付給客戶。
- 資料工程:確保資料在需要的時間內處理並提供給需要的系統或用戶。例如,評估資料管線的延遲和準時性。
- 庫存周轉率:
- 供應鏈管理:衡量庫存的周轉速度,確保庫存不過多積壓。
- 資料工程:評估數據處理和更新的頻率,確保資料是最新且準確的。例如,衡量資料更新頻率和更新效率。
- 供應商績效:
- 供應鏈管理:評估供應商的可靠性和產品品質。
- 資料工程:評估數據來源的可靠性和資料品質。例如,分析資料來源的穩定性和資料的完整性。
- 成本控制:
- 供應鏈管理:控制運營成本,確保經濟高效運營。
- 資料工程:控制資料存儲和處理成本,確保資源使用效率。例如,評估雲端服務費用和計算資源的使用率。
透過這樣的對比,可以發現資料工程面對的挑戰和軟體工程師有非常大的差異。資料工程不僅僅是技術上的挑戰,更是流程和管理上的挑戰。通過應用供應鏈管理的理念,來確保企業能夠正確地理解、使用以及評估資料工程的建置與發展。
參考資料
- Towards Data Science – The Difference Between Data Engineering and Software Engineering
- KDnuggets – Data Engineering Resources
- Supply Chain Dive – Supply Chain Management Articles
- Gartner – IT and Supply Chain Management Reports
- Harvard Business Review – Supply Chain Management Strategies
最新活動
-
特價商品
軟體工程師跨國遠端攻略-從履歷到面試一步到位!$239.00 – $639.00
在〈震驚!資料工程竟然更像供應鏈管理而非軟體工程〉中有 8 則留言
protonix generic over the counter
protonix generic over the counter
propecia medication
propecia medication
doxycycline generic
doxycycline generic
ursodiol cost
ursodiol cost
erythromycin
erythromycin
amlodipine besylate 10mg tablets
amlodipine besylate 10mg tablets
amoxicillin for dogs
amoxicillin for dogs
[…] 再來是並根據資料供應鏈(可以參考:震驚!資料工程竟然更像供應鏈管理而非軟體工程)的階段來做元件的挑選和規劃流程。例如:(這邊就可以舉一個實際規劃的例子) […]



發佈回覆給「protonix generic over the counter」的留言 取消回覆