EDB 產品介紹: EDB Migration Portal 如何計算兼容性佔比?
從 Oracle 資料庫轉移至 PostgreSQL 將會是一個物超所值的決策,因為這將節省用戶每年數千美元的花費 ── 甚至是每個月。而這項決定也將讓使用者擁有世上數一數二資料庫。然而,這項工程絕非易事。
EDB 已經盡力簡化自 Oracle 資料庫轉移到 EDB Postgres Advanced Server (EPAS) 的過程。這個入口網站 (Migration Portal) 清楚顯示了現有資料庫與 EPAS 的兼容性佔比。
雖然擁有這些數據將會是一個很好的開始,但實際情況是 ── 使用者需要深入了解細節,以更清楚理解這項轉移工程有多複雜。舉例來說,95%的兼容性佔比並不一定比70%更容易轉移,而反之亦然。 但這怎麼可能呢?
首先,兼容性佔比是如何計算的呢?
轉移入口網站 (Migration Portal) 透過用戶上傳架構 (schema) 中數據定義語言 (DDL) 結構的數量作為分母,用以計算兼容性百分比。而在分子得出過程中,同時計算架構裡與 EPAS 兼容的 DDL 的數量。最終就獲得了現有資料庫與 EPAS 的兼容性佔比!
相容 DDLs 數量
兼容性 % = __________________ x 100%
舊有 DDLs 數量
EDB 擁有大量的『修復處理器』,並藉此將 Oracle 語法轉換為等效的 EPAS 語言,而兼容性佔比則是在這些轉換後被計算出來的。
不相容性中的複雜變化
有時 DDL 中的錯誤是由缺少一個相依物件導致的,但這通常很容易解決 ── 如上述案例只需補齊相依物件,且沒有錯誤或不兼容情況,便只需五分鐘或更短的時間就能排除障礙。
然而,有時引起錯誤或不兼容性的原因是需要花費更多時間來解決。此外,過程中使用者也可能發現一個簡單的錯誤可能會出現成百上千次,並增加了大量的修復時間。
以下每個案例都非常重要,因為每個資料庫都是獨一無二的。配合這些注意事項,下方列舉的不兼容或錯誤案例都能夠很容易的被解決,然而在實際面對時則常遇見以往沒出現過的問題花費並更多時間。
簡單錯誤的案例:
- 缺少相依物件/結構:必須包括相依結構
- BITAND 函數:語法必須稍作修改
- BYTE 關鍵字:刪除 BYTE 關鍵字的使用
複雜錯誤的案例:
-
在”<>”處或附近的語法錯誤:有時潛在問題很容易解決,但通常需要更多研究和故障排除來探究根本原因
-
DBMS_XMLDOM 的使用: Oracle 的 XML 文件物件模型需要設計工作、實施變化和測試,以便於實現類似的PostgreSQL 。
功能的改善和對轉移專案的支持
隨著對 Migration Portal 的持續投資, EDB 正在考慮用更先進的方法來展示兼容性。EDB 希望能找出每個潛在的不兼容性,讓使用者能更深入了解每個問題的複雜程度,甚至提出粗略估算的修復時間。這也將使用戶更容易計劃項目的轉移,並決定是否需要 EDB 的協助。
更多 EDB 資訊請至產品專區。