全部產品
Search
文件中心

Tair (Redis® OSS-Compatible):持久化與備份恢複

更新時間:Oct 29, 2024

持久化是指為了避免資料丟失,定期將資料存放區到磁碟中。如遇Tair (Redis OSS-compatible)執行個體宕機或重啟,能夠利用磁碟中的持久化檔案恢複資料。為滿足各類情境下對備份與恢複的需求,Tair (Redis OSS-compatible)執行個體提供RDB持久化、AOF持久化和Tair-Binlog持久化策略。

持久化策略

Tair (Redis OSS-compatible)支援以下持久化策略。

RDB持久化

RDB持久化是指周期性地為引擎中儲存的資料建立快照,產生RDB檔案,儲存到磁碟中,實現資料的持久化。RDB檔案佔用空間小,便於移動,非常適合用於備份或遷移指定時間點的資料。

開源Redis在產生RDB檔案時會可能會帶來操作阻塞,阻塞時間取決於執行個體的資料總量。而Tair (Redis OSS-compatible)執行個體對此最佳化並實現了“無阻塞備份”,使執行個體的備份不影響用戶端請求。

Tair (Redis OSS-compatible)的RDB持久化策略預設每天備份一次,您可以根據業務需求修改自動備份策略,也可以手動發起臨時的備份。

AOF持久化

AOF持久化是指以日誌的形式記錄所有的寫入類操作(例如SET)。當服務重啟時,通過重新執行AOF檔案中的操作來恢複資料。

由於AOF檔案記錄了所有寫入類操作,隨著AOF檔案中的記錄越來越多,當AOF檔案過大時,Redis會自動執行AOF Rewrite,重組AOF檔案,降低其佔用的儲存空間,提高資料恢複效率,但AOF Rewrite對寫入效能會有一定損耗。

Tair (Redis OSS-compatible)執行個體(除持久記憶體型以外)預設啟用AOF持久化,策略為AOF_FSYNC_EVERYSEC且不支援修改,即Redis每秒執行一次fsync,將AOF緩衝區中的寫入類命令重新整理到磁碟,這個過程又稱為AOF落盤。AOF_FSYNC_EVERYSEC策略對Redis服務效能的影響較小,同時也能極大地降低意外情況下的資料損失風險。

Tair-Binlog

Tair(企業版)記憶體型不僅支援上述兩種持久化策略,還最佳化了基於AOF(Append-only-file)的持久化機制,實現AOF增量歸檔,避免了AOF Rewrite對服務效能的影響,同時完整保留了每一次寫操作與其時間戳記,可以將執行個體整體或指定Key的資料恢複至某個秒級的時間點(PITR,point-in-time recovery)。更多資訊,請參見通過資料閃回按時間點恢複資料

備份恢複方案

Tair (Redis OSS-compatible)執行個體基於RDB持久化、AOF持久化和AOF增量歸檔,實現資料的備份與恢複。

類別

實施方案

說明

資料備份

自動或手動備份

支援資料持久化,會按照預設的策略自動備份資料(基於RDB),您可以根據業務需求修改自動備份策略,也可以手動發起臨時的備份。

下載備份檔案

備份檔案支援保留7~730天,如果需要更長時間的備份存檔(例如監管或資訊安全需要),您可以將備份檔案下載到本地進行儲存。

資料恢複

從備份組恢複至新執行個體

支援從指定的備份組建立新執行個體,新執行個體中的資料將和該備份組中的資料一致,可用於資料恢複、快速部署業務或資料驗證等情境。

通過資料閃回按時間點恢複資料

開啟資料閃回功能(基於AOF)後,在備份檔案的儲存期內,您可以恢複指定時間點(精確到秒級)的資料,可最大限度地避免誤操作帶來的資料損失,或者在頻繁回檔的業務情境快速完成資料切換。

說明

該功能僅Tair(企業版)記憶體型支援。