共用方式為


倉儲的原始檔控制(預覽版)

本文說明 Git 整合和部署管線如何用於 Microsoft Fabric 中的倉儲。 瞭解如何設定存放庫的連線、管理倉儲,以及跨不同環境部署倉儲。 Fabric 倉儲的原始檔控制目前是一項預覽版功能。

您可以針對不同的案例使用 Git 整合部署管線

  • 使用 Git 和 SQL 資料庫專案來管理個別資料庫物件中的累加變更、小組共同作業、提交歷程記錄。
  • 使用部署管線將程式碼變更升級至不同的生產前和生產環境。

Git 整合

Microsoft Fabric 中的 Git 整合可讓開發人員將其開發程序、工具和最佳做法直接整合到 Fabric 平台中。 它可讓在 Fabric 中開發的開發人員:

  • 備份其工作和設定工作版本
  • 視需要還原至先前的階段
  • 與其他人共同作業,或使用 Git 分支單獨工作
  • 套用熟悉的原始檔控制工具的功能來管理 Fabric 項目

如需有關 Git 整合程序的詳細資訊,請參閱:

設定與原始檔控制的連線

從 [工作區設定] 頁面,您可以輕鬆地設定與存放庫的連線,以提交和同步變更。

  1. 若要設定連線,請參閱開始使用 Git 整合。 依照指示,將 Git 存放庫連線至 Azure DevOps 或 GitHub 作為 Git 提供者。
  2. 連線之後,您的項目,包括倉儲,會出現在 [原始檔控制] 面板中Fabric 入口網站的螢幕擷取畫面:原始檔控制設定中的倉儲。
  3. 成功將倉儲執行個體連線到 Git 存放庫之後,您會在存放庫中看到倉儲資料夾結構。 您現在可以執行未來的作業,例如建立提取要求。

Git 中倉儲的資料庫專案

下圖是存放庫中每個倉儲項目的檔案結構範例:

Fabric 入口網站的螢幕擷取畫面:倉儲結構描述範例。

當您將倉儲項目提交至 Git 存放庫時,倉儲會轉換為原始程式碼格式,做為 SQL 資料庫專案。 SQL 專案在本機代表組成單一資料庫結構描述的 SQL 物件,例如資料表、預存程序或函數。 資料庫物件的資料夾結構會依結構描述/物件類型來組織。 倉儲中的每個物件都會以 .sql 檔案表示,其中包含物件的資料定義語言 (Data Definition Language) (DDL) 定義。 SQL 資料庫專案中不包含倉儲資料表資料和 SQL 安全性功能

共用查詢也會提交至存放庫,並繼承其另存新檔的名稱。

下載 Fabric 中倉儲的 SQL 資料庫專案

透過 Azure Data Studio 和 Visual Studio Code 內提供的 SQL 資料庫 Projects 延伸模組,您可以管理倉儲架構,並處理倉儲物件變更,就像其他 SQL 資料庫項目一樣。

若要下載倉儲結構描述的本機複本,請選取功能區中的 [下載 SQL 資料庫專案]。

Fabric 入口網站的螢幕擷取畫面:查詢功能區。[下載 SQL 資料庫專案] 方塊會反白顯示。

包含倉儲結構描述定義的資料庫專案本機複本。 資料庫專案可用來:

  • 在另一個倉儲中重新建立倉儲結構描述。
  • 在用戶端工具(例如 Azure Data Studio 或 Visual Studio Code)中進一步開發倉儲結構描述。

將 SQL 資料庫專案發佈至新倉儲

若要將倉儲結構描述發佈至新倉儲:

  1. 在 Fabric 工作區中建立新倉儲。
  2. 在新倉儲啟動頁面上,於 [建置倉儲] 底下,選取 [SQL 資料庫專案]。 Fabric 入口網站的螢幕擷取畫面:[SQL 資料庫專案] 按鈕。
  3. 選取從現有倉儲下載的 .zip 檔案。
  4. 倉儲結構描述會發佈至新倉儲。

部署管線

您也可以使用部署管線,在不同的環境(例如開發、測試和生產環境)中部署您的倉儲程式碼。 部署管線不會公開資料庫專案。

使用下列步驟,利用部署管線完成倉儲部署。

  1. 建立新的部署管線,或開啟現有的部署管線。 如需詳細資訊,請參閱開始使用部署管線
  2. 根據您的部署目標,將工作區指派到不同的階段。
  3. 選取、檢視和比較項目,包括不同階段之間的倉儲,如下列範例所示。 Fabric 入口網站的螢幕擷取畫面:開發、測試和生產階段。
  4. 選取 [部署],跨開發測試生產階段部署您的倉儲。

如需關於 Fabric 部署管線程序的詳細資訊,請參閱 Fabric 部署管線概觀

原始檔控制的限制

Git 整合的限制

  • 目前,如果您使用 ALTER TABLE 在資料庫專案中新增條件約束或資料行,則會在部署時卸除並重新建立資料表,導致資料遺失。 考慮下列因應措施來保留資料表定義和資料:
    • 使用 CREATE TABLEINSERTCREATE TABLE AS SELECT 或 [複製資料表],在倉儲中建立資料表的新複本。
    • 視需要,使用 ALTER TABLE 修改具有新條件約束或資料行的新資料表定義。
    • 刪除舊資料表。
    • 使用 sp_rename,將新資料表重新命名為舊資料表的名稱。
    • 完全相同的方式修改 SQL 資料庫專案中舊資料表的定義。 原始檔控制中的倉儲和即時倉儲的 SQL 資料庫專案現在應該相符。
  • 目前,請勿建立以倉儲作為輸出目的地的資料流程 Gen2。 從 Git 提交和更新將會遭到存放庫中出現的名為 DataflowsStagingWarehouse 的新項目封鎖。
  • Git 整合不支援 SQL 分析端點。

部署管線的限制

  • 目前,如果您使用 ALTER TABLE 在資料庫專案中新增條件約束或資料行,則會在部署時卸除並重新建立資料表,導致資料遺失。
  • 目前,請勿建立以倉儲作為輸出目的地的資料流程 Gen2。 部署將會遭到部署管線中出現的名為 DataflowsStagingWarehouse 的新項目封鎖。
  • 部署管線中不支援 SQL 分析端點。