Postgresql

比較 2 個不同模式之間的數據

  • January 27, 2015

我們重構了舊數據庫。一些表被刪除,一些表被拆分為 2 個新表等。所以現在我們有了一個全新的數據庫模式,它與舊模式有很多不同。有人編寫了一個將數據從舊數據庫遷移到新數據庫的應用程序。

我正在尋找方法/技術來比較數據遷移的正確性。是否有任何標准或常用的方法來完成這種比較?

經過一番研究,我發現了一種技術如何做到這一點 - 為舊數據庫的每個表創建一個視圖,即我將嘗試以舊表(舊模式)的格式在 VIEW 數據中表示,然後將舊表中的數據與VIEW中的數據。

我對其他方式感興趣。

儘管新舊模式之間的數據表示不同,但數據本身應該是相同的。這意味著一系列協調查詢將確保遷移沒有錯誤。

假設您有一個 Orders 表。新舊數據庫中每年、每月或每天的訂單總數相同。同樣,每個時間段的這些訂單的總值將匹配。您可以將此想法擴展為按產品訂購、按客戶訂購等。

如果遷移中更改了任何數據,則相應的協調查詢將不會從新舊數據庫返回相同的值。您將立即知道問題出在客戶“X”在“Y”日針對產品“Z”的訂單上,並且可以將調試重點放在該區域。

相同的方法可用於任何其他表。以客戶為例。您可以按國家/地區、業務區域、姓名的首字母或您選擇的任何其他差異化因素來統計客戶。

引用自:https://dba.stackexchange.com/questions/90251