[Data] Data Pipeline 101(一) — 什麼是 Data Pipeline

Bryan Yang
A multi hyphen life
3 min readMar 15, 2020

水管工就是沒地位,最受歡迎的水管工是馬力歐

Data Pipeline 說起來無聊,但是重要程度就跟你家水管一樣,平常不知道幹嘛,但是一但壞掉喝不到水、也沒辦法沖馬桶。當不了 AI 工程師,做個水電工也還是 ok 的。

http://www.pybloggers.com/2017/01/what-is-data-engineering/

這篇文章(https://www.jesse-anderson.com/2018/08/what-is-a-data-pipeline/)收錄了很多專家對於 Data Pipeline 的定義以及一些相關的問題,來看看這些問題是什麼,你也可以一起想想:

Data Pipeline 的定義

所謂 Data Pipeline,對我來說一句話的定義就是「處理資料流的系統」。資料就像水一樣,在系統中流動、被處理。

關聯式資料庫是 Data Pipeline 嗎?為什麼?

關聯式資料庫是 Data Pipeline 中的一部分。資料庫不只能用來儲存資料,也能處理資料。

Data Pipeline 必須自動化嗎?

大致上是,一般來說的 Data Pipeline 都會自動化,但仍然可能會保留一些手動的部分來解決 Ad hoc 需求,像是一些需要使用者自己上傳的資料源,但後續的處理就會是自動的。

Data Pipeline 必須是大數據嗎?

不一定,小資料也是需要 Data Pipeline 來處理的。

ETL 和 Data Pipeline 是根據複雜度來區分的嗎?

不是,ETL 是 Data Pipeline 的一部分。ETL 通常指資料的取、用、存這三個動作而已,Data Pipeline 是指更廣泛的資料處理系統,除了 ETL 之外,也包含了執行 ETL 的系統,而一條 Data Pipeline 可以是好幾段 ETL 的組合。

Data Pipeline 對公司的重要性?

如果需要使用資料來做分析,Data Pipeline 是少不了的工程。不論是搜集前端資料,或是資料再處理都是 Data Pipeline 的一部分。

其他補充

Data pipeline 是一個包括資料處理邏輯以及系統架構的領域。需要根據業務需求擬定要搜集的資料、根據資料量還有資料複雜度來設計管線系統、根據業務邏輯來規劃不同的資料處理流程。後續將會陸續介紹管線系統的設計、以及規劃資料處理流程時需要注意的地方。

如果喜歡這篇文章,幫我按個讚,並且按下追蹤,才能收到最新的文章喔。

--

--

Bryan Yang
A multi hyphen life

Data Engineer, Data Producer Manager, Data Solution Architect