在 Azure Synapse Analytics 中備份和還原專用 SQL 集區
在本文中,您將瞭解如何在 Azure Synapse 專用 SQL 集區中使用備份和還原。
使用專用 SQL 集區還原點將您的資料倉儲還原或複製到主要區域中的先前狀態。 使用數據倉儲異地備援備份來還原至不同的地理區域。
注意
並非 Azure Synapse Analytics 工作區中專用 SQL 集區的所有功能都適用於專用的 SQL 集區 (先前稱為 SQL DW),反之亦然。 若要從現有的專用 SQL 集區 (原為 SQL DW) 啟用工作區功能,請參閱為專用 SQL 集區啟用 Synapse 工作區功能 (先前 SQL DW)。 如需詳細資訊,請參閱 Azure Synapse專用 SQL 集區 (先前稱為 SQL DW) 與 Azure Synapse Analytics 工作區中的專用 SQL 集區有何差異?。
什麼是數據倉儲快照集
數據倉儲快照集會建立還原點,您可以利用此還原點來復原或將數據倉儲複製到先前的狀態。 由於專用 SQL 集區是分散式系統,因此數據倉儲快照集包含許多位於 Azure 記憶體中的檔案。 快照集會從儲存在數據倉儲中的數據擷取累加變更。
注意
專用 SQL 集區復原時間目標 (RTO) 費率可能會有所不同。 可能影響復原(還原)時間的因素:
- 資料庫大小
- 來源和目標數據倉儲的位置(在異地還原的情況下)
- 數據倉儲快照集無法匯出為個別的檔案(例如,對於 Azure 儲存體,內部部署環境)
數據倉儲還原是從現有或刪除數據倉儲的還原點建立的新數據倉儲。 還原數據倉儲是任何商務持續性和災害復原策略中不可或缺的一部分,因為它會在意外損毀或刪除後重新建立數據。 數據倉儲快照集也是建立數據倉儲複本以供測試或開發之用的強大機制。
注意
專用 SQL 集區復原時間目標 (RTO) 費率可能會有所不同。 可能影響復原(還原)時間的因素:
- 資料庫大小
- 來源和目標數據倉儲的位置(在異地還原的情況下)
自動還原點
快照集是內建功能,可建立還原點。 您不必啟用此功能。 不過,專用 SQL 集區應該處於作用中狀態,才能建立還原點。 如果經常暫停,可能不會建立自動還原點,因此請務必先建立用戶定義的還原點,再暫停專用 SQL 集區。 使用者目前無法刪除自動還原點,因為服務會使用這些還原點來維護 SLA 以進行復原。
在建立還原點的當天,系統會拍攝資料倉儲快照,並保留七天。 此保留期間無法變更。 專用 SQL 集區支援八小時的復原點目標 (RPO)。 您可以從過去七天內拍攝的任一快照,還原主要區域中的資料倉儲。
若要查看上次快照集的啟動時間,請在在線專用 SQL 集區上執行此查詢。
SELECT TOP 1 *
FROM sys.pdw_loader_backup_runs
ORDER BY run_id desc;
注意
備份每四(4)小時就會發生一次,以符合八小時(8)小時的 SLA。 因此, sys.pdw_loader_backup_runs
動態管理檢視會每隔四(4)小時顯示備份活動一次。
使用者定義還原點
這項功能可讓您手動觸發快照集,以在大型修改前後建立數據倉儲的還原點。 此功能可確保還原點的邏輯一致性,如果發生工作負載中斷或使用者錯誤可提供額外的資料保護,從而快速復原。 用戶定義的還原點可供七天使用,並會自動代表您刪除。 您無法變更使用者定義還原點的保留期間。 42 個使用者定義的還原點 保證在任何時間點,因此必須先 刪除 它們,再建立另一個還原點。 您可以使用 Azure 入口網站,或僅使用 PowerShell 或 REST API,以程式設計方式觸發快照集來建立使用者定義還原點。
- 如需獨立數據倉儲中使用者定義還原點的詳細資訊(先前稱為 SQL 集區),請參閱專用 SQL 集區的使用者定義還原點(先前稱為 SQL DW)。
- 如需 Synapse 工作區中專用 SQL 集區中使用者定義還原點的詳細資訊, 請在 Azure Synapse Analytics 中定義還原點。
注意
如果您需要還原點超過 7 天,請 投票給這項功能。
注意
T-SQL 腳本無法用來隨選備份。 您可以使用 Azure 入口網站,或使用 PowerShell 或 REST API 以程式設計方式建立使用者定義的還原點。
如果您要尋找長期備份 (LTR) 概念:
- 建立新的使用者定義還原點,或者您可以使用其中一個自動產生的還原點。
- 從新建立的還原點還原至新的資料倉儲。
- 還原之後,您會在在線擁有專用的 SQL 集區。 您可以無限期暫停集區,以節省計算成本。 暫停的資料庫會產生儲存體費用,並以 Azure Synapse 儲存體費率計費。
如果您需要還原數據倉儲的作用中複本,您可以繼續執行,這應該只需要幾分鐘的時間。
建立使用者定義的還原點
您可以透過程式設計方式建立新的使用者定義還原點。 根據您使用的 SQL 集區選擇正確的方法:獨立專用 SQL 集區(先前稱為 SQL DW),或 Synapse 工作區內的專用 SQL 集區。
Azure PowerShell
- 針對專用 SQL 集區 (先前稱為 SQL DW),請使用 New-AzSqlDatabaseRestorePoint
- 針對專用 SQL 集區 (在 Synapse 工作區內),請使用 New-AzSynapseSqlPoolRestorePoint
REST API
- 針對專用 SQL 集區 (先前稱為 SQL DW),請使用 還原點 - 建立
- 針對專用 SQL 集區 (在 Synapse 工作區內),請使用 Sql 集區還原點 - 建立
刪除使用者定義的還原點
您可以以程式設計方式刪除特定的使用者定義還原點。 根據您使用的 SQL 集區選擇正確的方法:獨立專用 SQL 集區(先前稱為 SQL DW),或 Synapse 工作區內的專用 SQL 集區。
Azure PowerShell
- 針對專用 SQL 集區 (先前稱為 SQL DW),請使用 Remove-AzSqlDatabaseRestorePoint
- 針對專用 SQL 集區 (在 Synapse 工作區內),請使用 Remove-AzSynapseSqlPoolRestorePoint
REST API
- 針對專用 SQL 集區 (先前稱為 SQL DW),請使用 還原點 - 刪除
- 針對專用 SQL 集區 (在 Synapse 工作區內),請使用 Sql 集區還原點 - 刪除
還原點保留期
下列列出還原點保留期間的詳細資料:
- 專用 SQL 集區會在達到 7 天保留期間 時刪除還原點,以及 至少有 42 個還原點總計 (包括使用者定義的和自動)。
- 當專用 SQL 集區暫停時,不會建立快照集。
- 還原點的存留期是由從還原點開始的絕對行事歷天數來測量,包括當 SQL 集區暫停時。
- 在任何時間點,只要這些還原點尚未達到7天的保留期間,專用SQL集區就保證能夠儲存最多42個使用者定義的還原點或42個自動還原點
- 如果擷取快照集,則專用 SQL 集區會暫停超過 7 天,然後繼續執行,還原點會持續到總共有 42 個還原點(包括使用者定義的和自動)
卸除 SQL 集區時的快照集保留期
當您卸除專用 SQL 集區時,會建立最後一個快照集並儲存七天。 您可以將專用 SQL 集區還原至在刪除時建立的最終還原點。 如果專用 SQL 集區處於暫停狀態,則不會擷取快照集。 在該案例中,請務必先建立用戶定義的還原點,再卸除專用 SQL 集區。
異地備份和災害復原
每天會建立一次異地備份至 配對的數據中心。 異地還原的 RPO 為 24 小時。 異地還原一律是數據移動作業,而 RTO 將取決於數據大小。 只會保留最新的異地備份。 您可以將異地備份還原至支援專用 SQL 集區的任何其他區域中的伺服器。 異地備份可確保您可以還原數據倉儲,以防您無法存取主要區域中的還原點。
如果您不需要專用 SQL 集區的異地備份,您可以將其停用,並節省災害復原記憶體成本。 若要這樣做,請參閱如何指南:停用專用 SQL 集區的異地備份(先前稱為 SQL DW)。 如果停用異地備份,而主要 Azure 資料中心無法使用,您就無法將專用 SQL 集區復原到配對的 Azure 區域。
注意
如果您需要較短的異地備份 RPO, 請投票決定這項功能。 您也可以建立使用者定義的還原點,並從新建立的還原點還原至不同區域中的新數據倉儲。 還原之後,您會讓數據倉儲上線,而且可以無限期地暫停它,以節省計算成本。 暫停的資料庫會產生 Azure 進階儲存體 費率的記憶體費用。 較短恢復點的另一個常見模式是平行將數據內嵌至數據倉儲的主要和次要實例。 在此案例中,數據會從來源內嵌(或來源),並保存至數據倉儲的兩個個別實例(主要和次要實例)。 若要節省計算成本,您可以暫停倉儲的次要實例。 如果您需要數據倉儲的作用中復本,可以繼續執行,這應該只需要幾分鐘的時間。
資料落地
如果您的配對數據中心位於國家/地區之外,您可以藉由在本機備援記憶體 (LRS) 上布建資料庫,以確保您的數據會保留在您的區域內。 如果您的資料庫已布建在RA-GRS上(唯讀異地備援記憶體,目前的預設值),則您可以退出退出異地備份,不過您的資料庫會繼續位於複寫至區域配對的記憶體上。 為了確保客戶數據保留在您的區域內,您可以布建或還原專用 SQL 集區至本地備援記憶體。 如需如何布建或還原至本機備援記憶體的詳細資訊,請參閱 如何在 Azure Synapse Analytics 中設定專用 SQL 集區的單一區域落地(先前稱為 SQL DW)
若要確認配對的數據中心位於不同的國家/地區,請參閱 Azure 配對區域。
備份與還原成本
您會注意到 Azure 帳單有記憶體的明細專案,以及災害復原記憶體的明細專案。 記憶體費用是將數據儲存在主要區域中以及快照集所擷取的累加變更的總成本。 如需如何收費快照集的詳細說明,請參閱 瞭解快照集如何產生費用。 異地備援費用涵蓋儲存異地備份的成本。
主要數據倉儲和七天的快照集變更總成本會四捨五入為最接近的 TB。 例如,如果您的數據倉儲是 1.5 TB,而快照集會擷取 100 GB,則會以 Azure 標準記憶體費率向您收取 2 TB 的數據費用。
如果您使用異地備援記憶體,您會收到個別的記憶體費用。 異地備援記憶體會以標準讀取許可權異地備援記憶體 (RA-GRS) 費率計費。
如需 Azure Synapse 定價的詳細資訊,請參閱 Azure Synapse 定價。 在跨區域還原時,您不需支付數據輸出的費用。
從還原點還原
每個快照集都會建立一個還原點,代表快照集啟動的時間。 若要還原數據倉儲,您可以選擇還原點併發出還原命令。
您可以保留還原的數據倉儲和目前的數據倉儲,或刪除其中一個。 如果您想要以還原的數據倉儲取代目前的數據倉儲,您可以使用 ALTER DATABASE 與 MODIFY NAME 選項來重新命名。
若要還原獨立數據倉儲(先前稱為 SQL 集區),請參閱還原專用 SQL 集區(先前稱為 SQL DW)。
若要還原 Synapse 工作區中的專用 SQL 集區,請參閱 還原現有的專用 SQL 集區。
若要還原已刪除的獨立數據倉儲(先前稱為 SQL 集區),請參閱還原已刪除的資料庫(先前稱為 SQL DW),或如果整個伺服器已刪除,請參閱從已刪除的伺服器還原數據倉儲(先前稱為 SQL DW)。
若要在 Synapse 工作區中還原已刪除的專用 SQL 集區,請參閱 從已刪除的工作區還原專用 SQL 集區。
注意
專用 SQL 集區不支援數據表層級還原。 您只能從備份復原整個資料庫,然後使用 複製所需的數據表
- ETL 工具活動,例如 複製活動
- 匯出和匯入
- 使用 CETAS CETAS 範例,將數據從還原的備份導出至 Data Lake
- 使用 COPY 或 Polybase 匯入數據
跨訂用帳戶還原
您可以執行 跨訂用帳戶還原。
異地備援還原
您可以將 專用 SQL 集 區還原至任何支援所選效能層級專用 SQL 集區的區域。
注意
若要執行異地備援還原,您不得退出宣告這項功能。
支援程式
您可以透過適用於 Azure Synapse Analytics 的 Azure 入口網站 提交支援票證。