備份和還原
描述 Parallel Data Warehouse (PDW) 的資料備份與還原如何運作。 備份與還原作業用於災害復原。 備份與還原也可用來將資料庫從一個設備拷貝到另一個設備。
備份與還原基本資料
PDW 資料庫備份是設備資料庫的拷貝,以可用來將原始資料庫還原至設備的格式儲存。
PDW 資料庫備份使用 BACKUP DATABASE t-sql 陳述式而建立,並經過格式化,可與 RESTORE DATABASE 陳述式搭配使用;不適用於任何其他用途。 備份只能還原至具有相同數目或更多計算節點的設備。
PDW 會使用 SQL Server 備份技術來備份與還原設備資料庫。 SQL Server 備份選項已預先設定為使用備份壓縮。 您無法設定壓縮、總和檢查碼、區塊大小及緩衝區計數等備份選項。
資料庫備份儲存在一個或多個備份伺服器上,這些伺服器存在於您自己的客戶網路中。 PDW 以平行方式將使用者資料庫備份從計算節點直接寫入到一部備份伺服器,並以平行方式將使用者資料庫備份從備份伺服器還原至計算節點。
備份會作為 Windows 檔案系統中的一組檔案儲存在備份伺服器中。 PDW 資料庫備份只能還原至 PDW。 不過,您可以使用標準 Windows 檔案備份程序,將資料庫備份從備份伺服器封存到另一個位置。 如需備份伺服器的詳細資訊,請參閱取得及設定備份伺服器。
資料庫備份類型
有兩種類型的資料需要備份:使用者資料庫和系統資料庫 (例如 master 資料庫)。 PDW 不會備份交易記錄。
完整資料庫備份是整個 PDW 資料庫的備份。 這是預設備份類型。 使用者資料庫的完整備份包含資料庫使用者及資料庫角色。 master 的備份包含登入資訊。
差異備份包含自上次完整備份以來的所有變更。 差異備份所花費的時間通常比完整備份少,因此可以較頻繁地執行。 當多個差異備份都依據相同的完整備份時,每個差異備份都會包含前一個差異備份的所有變更。
例如,您可以每周建立一個完整備份,並且每天建立一個差異備份。 若要還原使用者資料庫,必須還原完整備份加上最後一個差異備份 (如果有的話)。
只有使用者資料庫支援差異備份。 master 的備份一律是完整備份。
若要備份整個設備,需要執行所有使用者資料庫的備份和 master 資料庫的備份。
資料庫備份程序
下圖顯示了資料庫備份期間的資料流程。
備份程序運作方式如下:
使用者將 BACKUP DATABASE tsql 陳述式提交至控制節點。
- 備份為完整備份或差異備份。
針對使用者資料庫,控制節點 (MPP 引擎) 會建立一份分散式查詢計劃來執行平行資料庫備份。
備份所涉及的每個節點都會使用 SQL Server 備份功能,將其備份檔案拷貝到備份伺服器。
涉及的每個節點都會將一個備份檔案拷貝到備份伺服器。
使用者資料庫備份 (完整或差異) 包含儲存在每個計算節點上之資料庫部分的備份,以及資料庫使用者和資料庫角色的備份。
設備使用 InfiniBand 網路平行執行備份。
PDW 以平行方式執行每個完整備份和差異備份。 不過,不會同時執行多個資料庫備份。 每個備份要求都必須等待先前提交的備份完成。
master 資料庫的備份只備份來自控制節點的資料。 此備份類型會以序列化方式執行。
PDW 資料庫備份是儲存於設備之外的目錄中的一個檔案群組。 目錄名稱會指定為網路路徑和目錄名稱。 目錄不能是區域路徑,而且不能位於設備上。
備份完成後,您可以使用 Windows 檔案系統,視需要將備份目錄拷貝到另一個位置。
備份只能還原到具有相同或更大計算節點數目的 PDW 設備。
執行還原之前,無法變更備份的名稱。 備份目錄的名稱必須符合備份的原始名稱的名稱。 備份的原始名稱位於備份目錄內的 backup.xml 檔案中。 若要將資料庫還原為不同的名稱,您可以在還原命令中指定新的名稱。 例如:
RESTORE DATABASE MyDB1 FROM DISK = ꞌ\\10.192.10.10\backups\MyDB2ꞌ
。
資料庫還原模式
完整資料庫還原會使用資料庫備份中的資料,重新建立 PDW 資料庫。 資料庫還原的執行過程是,先還原一個完整備份,然後選擇性地還原一個差異備份。 資料庫還原包含資料庫使用者和資料庫角色。
僅標頭還原會退回資料庫的標頭資訊。 不會將資料還原至設備。
設備還原是整個設備的還原。 這包括還原所有使用者資料庫和 master 資料庫。
還原程序
下圖顯示資料庫還原期間的資料流程圖。
還原至具有相同計算節點數的設備**
還原資料時,設備會偵測來源設備和目的地設備上的計算節點數目。 如果兩個設備都有相等的計算節點數目,還原程序的運作方式如下:
要還原的資料庫備份可從非設備備份伺服器的 Windows 檔案共用上取得。 為了獲得最佳效能,此伺服器會連線至設備 InfiniBand 網路。
使用者將 RESTORE DATABASE tsql 陳述式提交至控制節點。
- 還原為完整還原或標頭還原。 完整還原會先還原一個完整備份,然後選擇性地還原一個差異備份。
控制節點 (MPP 引擎) 建立一份分散式查詢計劃來執行平行資料庫還原。
Analytics Platform System (PDW) 以平行方式執行使用者資料庫的還原。 不過,不會同時執行多個資料庫備份與還原。 MPP 引擎會將每個還原陳述式放入一個佇列中;它必須等候先前提交的備份與還原要求完成。
master 資料庫的還原僅將資料還原至控制節點;該還原會以序列化方式執行。
標頭資訊的還原是一項快速操作,不會將任何資料還原至計算或控制節點。 相反地,控制節點會以查詢輸出的形式退回結果。
備份檔案會以平行方式拷貝到正確的計算節點,通常會透過設備 InfiniBand 網路。
每個計算節點都會還原其使用者資料庫的部分。 如果有任何還原未順利完成,則會移除所有資料庫,還原會失敗。
還原至具有較多計算節點的設備
將備份還原至具有較多計算節點的應用裝置時,會讓已配置的資料庫大小依計算節點數目比例成長。
例如,將 60 GB 資料庫從具有 2 個節點的設備 (每個節點 30 GB) 還原至具有 6 個節點的設備時,SQL Server PDW 會在具有 6 個節點的設備上建立一個 180 GB 的資料庫 (6 個節點,每個節點 30 GB)。 SQL Server PDW 一開始會將資料庫還原至 2 個節點以符合來源組態,然後會將資料轉散發至全部 6 個節點。
在重新分發之後,與較小型的來源設備相比,每個計算節點將會包含較少的實際資料和較多的可用空間。 請使用額外的空間將更多資料新增至資料庫。 如果所還原資料庫大於您所需的大小,您可以使用 ALTER DATABASE - PDW 來縮減資料庫檔案大小。
相關工作
備份與還原任務 | 描述 |
---|---|
將伺服器準備為備份伺服器。 | 取得並設定備份伺服器 |
備份資料庫。 | BACKUP DATABASE |
還原資料庫。 | RESTORE DATABASE |