在 Microsoft Fabric 中複製數據表
適用於: Microsoft Fabric 中的倉儲
Microsoft Fabric 提供以最低儲存成本建立近乎即時的零複製品的功能。
- 數據表複製可藉由在較低環境中建立數據表的複本,促進開發和測試程式。
- 數據表複製可為分析工作負載和機器學習模型化和測試提供一致的報告和零複製重複數據。
- 數據表複製會藉由保留先前的數據狀態,在發生發行失敗或數據損毀時,提供數據復原的功能。
- 數據表複製有助於建立歷程記錄報表,以反映數據的狀態,如同過去的特定時間點一樣。
- 在特定時間點的數據表複製可以保留特定商務時間點的數據狀態。
您可以使用 CREATE TABLE AS CLONE OF T-SQL 命令來建立資料表複製。 如需教學課程,請參閱 教學課程:使用 T-SQL 複製數據表或 教學課程:在網狀架構入口網站中複製數據表。
您也可以使用 T-SQL OPTION
語法,查詢倉儲中的數據,如同過去所示。 如需詳細資訊,請參閱 查詢過去存在的數據。
什麼是零複製複製?
零複製複製會藉由複製元數據來建立數據表的複本,同時仍參考 OneLake 中的相同數據檔。 當儲存為 parquet 檔案的數據表基礎數據未複製時,會複製元數據。 建立複製品類似於在 Microsoft Fabric 中建立倉儲內的數據表。
Synapse 數據倉儲中的數據表複製
建立數據表複製
在倉儲中,可以使用簡單的 T-SQL,近乎即時地建立數據表的複本。 您可以在倉儲中的架構內或跨架構建立數據表的複本。
您可以根據下列其中一項來建立資料表的複製:
目前的時間點: 複製是以數據表的目前狀態為基礎。
先前的時間點: 複製是以過去最多七天的時間點為基礎。 數據表複製包含數據,因為它出現在所需的過去時間點。 在業界中,這項功能稱為「時間旅行」。 新的數據表會以以UTC為基礎的時間戳建立。 如需範例,請參閱 複製過去時間 點的數據表或 CREATE TABLE AS CLONE OF。
您也可以一次複製一組數據表。 這在相同的過去時間點複製一組相關數據表很有用。 如需範例,請參閱 一次複製多個數據表。
您也可以使用 倉儲中的時間移動 功能,查詢數據表中的數據,就像過去存在一樣。
保留數據歷程記錄
倉儲會自動保留及維護七個行事曆日的數據歷程記錄,允許在某個時間點進行複製。 對數據倉儲所做的所有插入、更新和刪除都會保留七個行事曆天。
在架構內和架構之間建立的複製數目沒有限制。
獨立和獨立
建立時,數據表複製是與其來源獨立且個別的數據複本。
- 透過複製數據表來源的 DML 或 DDL 所做的任何變更都不會反映在複製資料表中。
- 同樣地,在數據表複製上透過 DDL 或 DML 所做的任何變更都不會反映在複製數據表的來源上。
建立數據表複製的許可權
建立資料表複製需要下列權限:
- 具有 管理員、成員或參與者工作區角色的使用者可以複製工作區內的數據表。 查看器工作區角色無法建立複製。
- 需要數據表複製來源之所有數據列和數據行的SELECT 許可權。
- 用戶必須在將建立數據表複製的架構中具有 CREATE TABLE 許可權。
刪除資料表複製
由於其自主存在,原始來源和複製品都可以刪除,而不會有任何限制。 一旦建立複製品,它就會維持存在狀態,直到使用者刪除為止。
- 具有 管理員、成員或參與者工作區角色的使用者,可以刪除工作區內的數據表複製。
- 在數據表複製所在的架構上具有 ALTER SCHEMA 許可權的使用者,可以刪除資料表複製。
數據表複製繼承
這個處所述的物件包含在資料表複製中:
複製數據表會從複製的源數據表繼承物件層級 SQL 安全性。 當工作區角色預設提供讀取許可權時,如有需要,可以在數據表複製上設定 DENY 許可權。
複製數據表會 從複製數據表的來源繼承數據列層級安全性 (RLS) 和 動態數據遮罩 。
複製數據表會繼承源數據表上存在的所有屬性,不論複製是在相同架構內建立,還是跨倉儲中的不同架構建立。
複製數據表會繼承源數據表中定義的主要和唯一索引鍵條件約束。
系統會針對在倉儲內建立的每個數據表複製,建立唯讀差異記錄。 儲存為差異 parquet 檔案的數據檔是唯讀的。 這可確保數據一律會受到保護,以免損毀。
數據表複製案例
請考慮在下列有益案例中,以近乎即時且最少的記憶體成本複製數據表的能力:
開發與測試
數據表複製可讓開發人員和測試人員實驗、驗證及精簡數據表,而不會影響生產環境中的數據表。 複製品提供安全且隔離的空間,以執行新功能的開發與測試活動,確保生產環境的完整性和穩定性。 使用數據表複製快速啟動類似生產環境的複本,以進行疑難解答、實驗、開發和測試。
一致的報告、數據探索和機器學習模型
若要跟上不斷變化的數據環境,ETL 作業的頻繁執行至關重要。 數據表複製可藉由確保數據完整性來支援此目標,同時提供根據複製數據表產生報表的彈性,同時進行背景處理。 此外,數據表複製可重現先前機器學習模型的結果。 它們也可藉由啟用歷程記錄數據探索和分析來協助取得寶貴的見解。
低成本、近乎實時的復原
如果意外遺失或損毀數據,現有的數據表複製可用來將數據表復原到先前的狀態。
資料封存
針對稽核或合規性目的,零份複製可以輕鬆地用來建立數據複本,因為它存在於過去的特定時間點。 某些數據可能需要封存以進行長期保留或法律合規性。 在各種歷程記錄點複製數據表,可確保數據會以原始形式保留。
限制
- 目前不支援跨工作區中倉儲的數據表複製。
- 目前不支援跨工作區的數據表複製。
- Lakehouse 的 SQL 分析端點不支援複製數據表。
- 目前不支援複製倉儲或架構。
- 無法建立在保留期間 7 天前提交的數據表複製品。
- 數據表架構的變更可防止在數據表架構變更之前建立複製品。
後續步驟
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應