Sql-Server
數據庫歸檔策略
我在一個支付系統上工作(一個受監管的領域,要求儲存真正的舊數據以供審計和客戶請求)。
我們有 SQL Server 2016(但很快就會遷移到 2019)。
系統已有 16 年曆史,並且對於其功能而言,不需要舊數據(但對於業務密切的分析師在只讀副本上執行的偶爾分析查詢需要)。
當我第一次想到對舊數據進行某種冷儲存時,我想到了備份。但是備份有兩個缺點:
- 沒有備份將包含所有數據(因此,如果我需要 3 年和 10 年的數據,我可能需要恢復兩個備份)
- 它們很難使用,因為它們需要恢復並且需要一些時間。
我們的業務人員可以從主數據庫伺服器中刪除舊數據,但真的希望通過單個 SQL 查詢輕鬆訪問舊數據(例如,所有年份的所有數據的慢速機器)。
這甚至可能嗎?某種忽略大量數據刪除的複制(不是所有刪除操作,而是清除所有數據的特定刪除),或任何其他易於長期維護的方法
謝謝!
PS 已經使用 SSD 並且在法律上不能使用 Strech 數據庫/公共雲 :(
“某種忽略大量數據刪除的複制”。
您可以使用事務複製並修改特定文章(表)的複制屬性以忽略刪除,這樣您就可以複製並將所有內容保存到報告或存檔數據庫中。
當然,複製還有很多其他的事情需要考慮,但通過設計它可以做到這一點。
你考慮過polybase嗎?這允許您創建一個連接到外部數據源的連接器,甚至可以用逗號分隔。