綱要演進(Schema Evolution)是什麼?

綱要演進是指資料庫或資料倉儲的綱要隨著時間推移而發生的變更,以及管理這些變更的過程,以確保資料的相容性和可用性。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Schema Evolution
主題標籤
資料處理、AI基礎、MLOps
考點定位
非 iPAS 核心術語
最後更新
2026/06/17
綱要演進(Schema Evolution)是什麼? 資料處理AI基礎
術語快查

搜尋意圖: 如果你在找「綱要演進 是什麼」或「綱要演進 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 綱要演進是指資料庫或資料倉儲的綱要隨著時間推移而發生的變更,以及管理這些變更的過程,以確保資料的相容性和可用性。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

資料欄位改版時,你是不是常擔心舊資料讀不進去、新資料寫不出去?

你可以把綱要演進想成資料結構慢慢換版本,但還要讓新舊系統能繼續溝通。

它重要是因為資料結構一改,整個資料管線、報表和模型都可能被牽動。

你可以把它想成一個把抽象概念拉回日常判斷的提示,先知道它解決什麼問題,再看技術細節。

容易混淆

綱要演進 vs 資料遷移

綱要演進是結構在原地變更 資料遷移是把資料搬到別的結構或系統 最關鍵的區別是改結構還是搬資料。

綱要演進 vs 資料漂移

綱要演進是資料格式或欄位定義改變 資料漂移是資料分布變了 最關鍵的區別是 schema 變還是資料內容變。

記住這句就好

欄位會變,重點是新舊版本還能不能互通。

實際案例

加欄位 原本的使用者表新增生日欄位,如果處理得好,舊程式仍然能讀原本資料。

欄位改名phone 改成 mobile_phone 時,後端和資料管線都要一起跟上版本。

算法與應用

常見原則是保持向後相容或向前相容,避免一次改壞所有系統。 實務上常搭配版本控制、灰度發布和資料轉換。 綱要演進做不好,報表、模型和 API 都會一起出問題。

情境判斷

Q1(直覺題): 如果你只是新增一個欄位,但老系統還要能正常讀舊資料,這叫什麼問題?

這是在處理綱要演進的相容性問題。

Q2(判斷題): 欄位一改名,所有服務都一定要同時停機嗎?

不一定。做得好可以靠版本與相容層降低停機風險。

常見問題

怎麼處理綱要演進的相容性?

A:常見做法是版本控制、轉換層和測試一起上。

什麼是零停機綱要演進?

A:就是在改結構的同時,系統仍能繼續提供服務。

綱要演進最重要的原則是什麼?

A:先想清楚新舊版本如何共存,再動手改結構。