本文回答了關於 Fabric 中 Cosmos 資料庫的常見問題。
General
什麼是 Fabric 中的 Cosmos 資料庫?
Microsoft Fabric 是企業就緒的端對端數據平臺。 網狀架構會統一數據移動、資料庫、數據工程、數據科學、實時智慧、BI 與共同作業,以及應用程式開發。 您不再需要從多個廠商個別將這些服務放在一起。
Fabric 中的 Cosmos DB 是一個 AI 優化的 NoSQL 資料庫,透過簡化的體驗自動配置以滿足您的應用程式需求。 開發人員可以使用 Fabric 中的 Cosmos DB 輕鬆建置 AI 應用程式,而不需要管理複雜的資料庫設定。 Microsoft Fabric 中的 Cosmos DB 是以 Azure Cosmos DB 為基礎,可為資料庫提供動態調整、高可用性和可靠性。
Cosmos DB 是一個分散式的 NoSQL 資料庫。 你可以在 Cosmos DB 的 Fabric 中儲存半結構化或非結構化資料。 Fabric 中的 Cosmos DB 可與關聯式資料及 OneLake 中的 Fabric 資料並用,為你的應用程式打造統一的資料平台。
Cosmos DB 數據會自動提供給 Fabric OneLake。 這項整合提供 Cosmos DB 與網狀架構平臺其餘部分的深度整合,讓無縫分析、即時智慧、用戶數據函式(UDF)、GraphQL、數據科學和 BI 與 Copilot,以及數據代理程式全部放在一個地方。
欲了解更多資訊,請參閱 Fabric 中的 Cosmos DB。
Fabric 中的 Cosmos DB 與 Azure Cosmos DB 有何不同?
Fabric 中的 Cosmos DB 使用與 Azure Cosmos DB 相同的底層引擎與基礎設施,提供相同的效能、可靠性與可用性保證。 但是,仍有一些主要差異:
- 整合:Cosmos DB 在 Fabric 中與 Microsoft Fabric 及 OneLake 緊密整合,提供自動資料鏡像以進行分析,無需 ETL 流程。
- 管理:Fabric 中的 Cosmos DB 提供簡化的管理體驗與最佳化的預設值,降低資料庫管理複雜度。
- 計費:使用量是以 Fabric 容量單位(CU)而非 Azure 請求單位(RU)計費,並透過你的 Fabric 容量計費。
- 認證:Fabric 中的 Cosmos DB 完全使用 Microsoft Entra 認證,沒有主/次要金鑰。
- 授權:需取得 Power BI Premium、Fabric 容量或試用容量授權。
欲了解更多資訊,請參閱 Cosmos DB in Fabric 的概覽 及 計費與使用情況。
Fabric 中的 Cosmos DB 支援無結構的資料嗎?
是的。 Fabric 中的 Cosmos DB 允許應用程式儲存任意的 JSON 文件,無需結構定義或提示。 這種彈性且無結構的資料模型非常適合半結構化或非結構化資料,並使資料模型能隨時間演進變得容易。 資料可立即使用 NoSQL 查詢語言查詢。
欲了解更多資訊,請參閱 Cosmos DB in Fabric 的概覽。
我該如何在 Fabric 中開始使用 Cosmos DB?
要開始使用 Fabric 中的 Cosmos DB:
- 請確保你擁有 Power BI Premium、Fabric Capacity 或 Trial Capacity 授權。
- 前往 Fabric 入口網站,在你的工作區建立一個新的 Cosmos DB 資料庫。
- 建立容器來儲存你的資料。
- 使用 Cosmos DB SDK 搭配 Microsoft Entra 認證連接您的資料庫。
如需逐步指南,請參閱 快速入門:在 Microsoft Fabric 中建立 Cosmos DB 資料庫。
Connectivity
我要如何在 Fabric 中連接 Cosmos DB?
Microsoft Fabric 提供了與 Cosmos DB 軟體開發套件(SDK)相容的端點。 這些 SDK 以及對應的 Azure 身分識別連結庫應該用來使用 Microsoft Entra 驗證直接連線到資料庫。 如需詳細資訊,請參閱 使用 Microsoft Entra ID 連線到 Microsoft Fabric 中的 Cosmos DB。
哪些 Azure Cosmos DB SDK 是支援 Fabric 中的 Cosmos DB 的?
Fabric 中的 Cosmos DB 支援 Cosmos DB 的 SDK,包括:
- .NET SDK
- Python SDK
- Java 開發套件
- JavaScript/Node.js SDK
- GO SDK
- Rust SDK
- Apache Spark SDK
請搭配 Azure Identity 函式庫來進行 Microsoft Entra 認證。 欲了解更多資訊,請參閱 Connect to Cosmos DB in Fabric。
我可以用連接字串或主鍵來連接 Fabric 中的 Cosmos 資料庫嗎?
不,主鍵和副鍵都不支援。 你必須使用 Microsoft Entra 身份(使用者身份、服務主體或管理身份)來進行認證。
欲了解更多資訊,請參閱 Fabric 中 Cosmos DB 的認證。
查詢與資料操作
我可以用什麼查詢語言來查詢 Fabric 中的 Cosmos DB 資料?
Fabric 中的 Cosmos DB 主要支援 NoSQL 查詢語言來查詢資料。
NoSQL 查詢語言提供功能強大的美國國家標準研究所 (ANSI) 結構化查詢語言 (SQL)類似語法,以處理 JSON 數據。 此語言的設計目的是讓使用者熟悉 SQL 體驗,同時支援 JSON 檔的彈性和階層式本質。
Fabric 中 Cosmos DB 的內建鏡像功能也支援使用 T-SQL 來查詢數據。 鏡像和 SQL 分析端點可讓您使用熟悉的 T-SQL 語法來處理 Cosmos DB 數據,讓您更輕鬆地與現有的 SQL 型工作流程和工具整合。
如需詳細資訊,請參閱 使用 NoSQL 查詢語言。
Fabric 中的 Cosmos DB 支援聚合功能嗎?
是的。 Fabric 中的 Cosmos DB 支援透過 NoSQL 查詢語言的聚合函式進行聚合,包括 COUNT、MAX、MIN、AVG 和 SUM。 這些功能可用於查詢,對你的資料進行分析。
欲了解更多資訊,請參閱 NoSQL 查詢語言文件。
Fabric 中的 Cosmos DB 支援 ACID 交易嗎?
是的。 Fabric 中的 Cosmos DB 支援單一分割區內的跨文件交易。 交易被限定於單一邏輯分割區,並以 ACID 語意(原子性、一致性、隔離性、持久性)執行,作為「全有或全無」的狀態,與其他同時執行的操作隔離。 如果發生例外狀況,則會復原整個交易。
交易可以透過 SDK 中的交易批次操作執行。
欲了解更多資訊,請參閱 Cosmos DB 交易。
Cosmos DB 在 Fabric 中如何處理並行處理?
Fabric 中的 Cosmos DB 支援透過 HTTP 實體標籤(ETags)進行樂觀並發控制(OCC)。 每個資源都有一個 ETag,每次文件更新時伺服器都會設定。 ETag 可搭配 If-Match 標頭使用,讓伺服器決定是否更新資源。 若 ETag 不再是最新的,伺服器會以「HTTP 412 前置條件失敗」回應碼拒絕操作,客戶端必須重新取得該資源以取得當前的 ETag 值。
大多數 Cosmos DB SDK 都包含管理樂觀並發控制的類別。 欲了解更多資訊,請參閱 Cosmos DB 中的樂觀並發控制。
我可以在 Fabric 中查詢多個 Cosmos DB 資料庫的資料嗎?
是的。 Fabric 中的 Cosmos DB 支援跨資料庫查詢,讓你能在同一 Fabric 工作空間中查詢多個 Cosmos DB 資料庫甚至 SQL 資料庫的資料。 這種統一的查詢體驗,讓你能在整個資料資產中進行強大的分析。
欲了解更多資訊,請參閱 Cosmos DB in Fabric 中的跨資料庫查詢。
資料複製與 OneLake 整合
在 Fabric 中的 Cosmos DB 中,如何進行資料複製到 OneLake?
每個 Cosmos DB 在 Fabric 資料庫中都會自動以 Delta Parquet 格式將資料鏡像到 OneLake。 這種鏡像幾乎是即時進行,無需額外設定或設定。 鏡像資料可立即用於分析、資料科學、Power BI 報告及其他 Fabric 工作負載。
更多資訊請參閱 Fabric 中 Cosmos DB 中的鏡像 OneLake。
將資料變更複製到 OneLake 需要多久時間?
從 Fabric 中的 Cosmos DB 到 OneLake 的資料複製幾乎是即時進行的。 插入、更新與刪除的複製延遲極低,通常在數秒內完成,視變更量而定。
更多資訊請參閱 Fabric 中 Cosmos DB 中的鏡像 OneLake。
我可以關閉 OneLake 的資料複製嗎?
否。 OneLake 的資料複寫是 Cosmos DB 在 Fabric 中的核心功能,且無法停用。 你 Cosmos DB 容器中的所有資料都會自動以 Delta Parquet 格式鏡像到 OneLake。
更多資訊請參閱 Fabric 中 Cosmos DB 中的鏡像 OneLake。
Power BI 報告可以在 Fabric 中的 Cosmos DB 中使用 Direct Lake 模式嗎?
是的。 在 OneLake 中,Cosmos DB 資料表以 V 順序的 Delta 資料表儲存,支援 Power BI 中的直接湖模式。 這讓您可以直接在 Cosmos 資料庫資料上進行高效能、低延遲的報表,避免資料重複。
欲了解更多資訊,請參閱 在 Fabric 中使用 Cosmos DB 建立報告。
我要如何檢查資料複製到 OneLake 的狀態?
你可以透過 Fabric 入口網站的資料庫複製區塊來查看複製狀態。 此區段顯示有關複製的元資料,包括最後一次同步的狀態及可能發生的任何錯誤。
更多資訊請參閱 Fabric 中 Cosmos DB 中的鏡像 OneLake。
吞吐量與效能
在 Cosmos DB 中的 Fabric 中,什麼是請求單元(RU)?
請求單元(RU)是一種效能貨幣,抽象化執行資料庫操作所需的系統資源(CPU、IOPS 和記憶體)。 所有資料庫操作,包括讀取、寫入、查詢與更新,皆以 RU 為單位衡量。 例如,1 KB 項目的點讀取會消耗一個請求單元。
在 Fabric 中的 Cosmos DB 中,請求單元會轉換為 Fabric 容量單元(CU),以便計費和使用報告。
欲了解更多資訊,請參閱 Cosmos DB 中的 Fabric 中的請求單元 ,以及 計費與使用率。
Autoscale 在 Cosmos DB 的 Fabric 中是如何運作的?
Fabric 中的 Cosmos DB 中所有容器皆使用自動縮放配置吞吐量。 透過自動擴展,容器會根據工作負載需求自動擴展吞吐量,最大配置吞吐量(RU/s)的 10% 到 100%。 當你的工作量閒置時,會縮減到最大負載的10% 以降低成本。 當需求增加時,它會立即擴大規模,無需預熱期。
在 Fabric 入口網站建立的容器預設自動擴展吞吐量為 5,000 RU/s。 使用 Cosmos DB SDK 可調整此值在 1,000 至 50,000 RU/s。
欲了解更多資訊,請參閱 Fabric 中 Cosmos DB 的自動擴展吞吐量。
我可以用無伺服器或手動(標準)配置吞吐量來取代自動擴展嗎?
否。 Fabric 中的 Cosmos DB 中所有容器都必須使用自動擴展的配置吞吐量。 不支援無伺服器及手動(標準)配置吞吐量。 透過 SDK 建立的容器在建立容器時必須將吞吐量設定為自動縮放,否則會跳出錯誤訊息,說「您的帳戶的優惠類型僅限自動擴展」。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
在 Fabric 中的 Cosmos DB 容器吞吐量限制是什麼?
- 容器預設支援最高自動擴展吞吐量為每秒 50,000 個請求單位(RU/s)。
- 在 Fabric 入口網站建立的容器會自動分配 5,000 RU/s 最大自動擴展吞吐量。
- 使用 SDK 建立的容器可設定為最低 1,000 RU/s,最高可達最大自動擴展吞吐量。
超過50,000 RU/s的最大吞吐量可透過提交支援工單提升。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
我該如何修改容器的吞吐量(RU/s)?
你可以使用 Cosmos DB SDK 讀取並更新容器上的自動擴展吞吐量。 使用 SDK 的吞吐量管理方法取得目前的吞吐量,並以新值取代。
關於程式碼範例,請參閱 Fabric 中 Cosmos DB 中的自動擴展吞吐量。
編製索引和搜尋
Cosmos DB 在 Fabric 中支援哪些索引功能?
Fabric 中的 Cosmos DB 預設支援自動索引。 你 JSON 文件中的所有屬性預設都會自動被索引。 使用者也可以自訂索引政策,包含或排除特定路徑、設定索引類型,並優化查詢模式。
Cosmos DB 在 Fabric 中支援多種索引類型:
- 範圍索引:支援對數字、字串及日期類型的範圍查詢。
- 空間索引:支援使用點、線及多邊形資料型別的地理空間查詢。
- 綜合索引:支援優化同時過濾或排序多個屬性的查詢。
- 向量索引:支援使用 DiskANN 或量化平面向量索引,為 AI 應用索引與搜尋向量嵌入。
- 全文索引:支援全文索引及文件搜尋,並支援特定語言的支援。
欲了解更多資訊,請參閱 Cosmos DB 中的 Fabric 索引及 向量索引。
我該如何自訂容器的索引政策?
你可以在建立容器時自訂索引政策,或用 Cosmos DB SDK 後續更新。 索引政策允許你指定包含或排除哪些路徑,設定索引類型(範圍、空間、複合),以及優化查詢效能。
欲了解更多資訊,請參閱 Fabric 中的 Cosmos DB 中自訂索引政策。
Cosmos DB 在 Fabric 裡支援向量搜尋嗎?
是的。 Fabric 中的 Cosmos DB 支援向量索引與搜尋,使 AI 驅動的應用程式具備相似性搜尋功能。 你可以將向量嵌入與 JSON 文件一同儲存與索引,並使用 DiskANN 或量化平面向量索引進行高效向量搜尋。
欲了解更多資訊,請參閱 Cosmos DB 中的向量索引與 Fabric 中的混合搜尋。
安全性與合規性
我該如何在 Fabric 中的 Cosmos DB 中保護我的資料?
Fabric 中的 Cosmos DB 預設提供多項安全功能,幫助保護你的資料。 這些功能包括,但不限於:
- Microsoft安全存取的 Entra 驗證
- 待用和傳輸中的數據加密
- 透過 Fabric 權限進行基於工作空間的存取控制
欲了解更多資訊,請參閱 Fabric 中 Cosmos DB 的安全相關條目。
我該如何在 Fabric Artifact 中設定我的 Cosmos 資料庫的使用者權限?
Fabric 中的 Cosmos DB 繼承使用者 Fabric 工作空間的權限。 例如,若使用者擁有工作空間檢視權限,他們將擁有 Cosmos DB 產物的唯讀權限。 目前,你可以設定物品層級的權限。 然而,這些工具會套用到工作空間內所有 Cosmos DB 工件。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
Fabric 中的 Cosmos DB 是否支援客戶管理金鑰(CMK)?
否。 目前 Cosmos DB 在 Fabric 中尚未支援客戶管理金鑰(CMK)加密。
Fabric 中的 Cosmos DB 支援私有連結嗎?
私有連結目前不支援 Cosmos DB 產物層級。 然而,Fabric 租戶層級仍可使用私有連結,以確保與 Fabric 服務的連接。
欲了解更多資訊,請參閱 Fabric 中的私有連結。
我的資料會離開 Fabric 租戶嗎?
否。 Cosmos DB 在 Fabric 中的所有資料都保留在您的 Fabric 租戶和區域內。 資料複製到 OneLake 發生在客戶的環境中,且不會超出租戶邊界。
計費和成本管理
在 Fabric 中使用 Cosmos DB 會有哪些相關費用?
Cosmos DB 在 Fabric 中的運算與儲存使用量是透過你的 Fabric 容量以容量單位(CU)計費。 Cosmos DB 營運所消耗的請求單元(RU)會自動轉換為容量單位以供計費。 換算公式為:100 RU/s = 0.067 CUs/hr。
欲了解更多資訊,請參閱 Fabric 中 Cosmos DB 的計費與使用情況。
我該如何在 Fabric 中監控 Cosmos 資料庫的消耗?
你可以使用 Microsoft Fabric 容量指標應用程式監控 Cosmos DB 的使用情況。 此應用程式提供涵蓋所有 Fabric 工作負載(包括 Cosmos DB)容量消耗的集中檢視。 你可以篩選應用程式,只顯示與 Cosmos DB 相關的活動,並追蹤使用趨勢。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的計費與使用情況 ,並 監控 Cosmos DB in Fabric。
在 Fabric 中使用 Cosmos DB 需要哪些授權選項?
使用 Cosmos DB 在 Fabric 中使用,需具備 Power BI Premium、Fabric 容量或試用容量。 你的使用量是以 Fabric 容量中可用的容量單位(CU)來衡量的。
如需有關授權的詳細資訊,請參閱 Microsoft Fabric 授權。
可用性與地區
Cosmos DB 在哪裡可以用 Fabric 版本?
Cosmos DB in Fabric 在支援 Microsoft Fabric 的地區提供。 你的 Cosmos DB 資料庫位於你 Fabric 工作區的區域,該區域是基於容量區域。
有關目前支援區域的清單,請參見 Fabric 區域可用性。
我的 Cosmos 資料庫位於哪個地區?
你的 Cosmos DB 資料庫位於你 Fabric 工作區的區域。 工作區區域是由分配給它的容量決定,容量會顯示在 工作區設定 中的 授權資訊 頁面。
欲了解更多資訊,請參閱 Fabric 區域供應資訊。
Fabric 中的 Cosmos DB 支援多區域部署嗎?
Fabric 中的 Cosmos DB 資料庫部署在單一區域(你 Fabric 工作區的區域)。 目前不支援多區域部署。 然而,底層基礎設施在該地區內提供了高度的可用性。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
Fabric 裡的 Cosmos DB 支援可用性區域嗎?
是的。 Cosmos DB 將所有資源部署於可用區域,提供更強的韌性與高可用性,涵蓋支援區域內。
如需詳細資訊,請參閱 網狀架構可用性區域支援。
限制與配額
我在 Cosmos DB 資料庫中可以建立多少個容器?
資料庫預設最多支援 25 個容器。 這個上限可以透過提交支援工單來提高。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
Fabric 中的 Cosmos DB 是否支援儲存程序、觸發器和使用者自訂函式?
否。 Cosmos DB 的儲存程序、觸發器及使用者定義函式(UDF)目前在 Cosmos DB 中的 Fabric 中尚未支援。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
我可以在 Fabric 中重新命名 Cosmos DB 的工件嗎?
否。 目前 Cosmos DB 在 Fabric 中不支援工件重命名。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
JSON 資料大小有什麼限制嗎?
Cosmos DB 中的文件有 2 MB 的限制。
文件中超過 8 KB 的 JSON 字串,從鏡像 SQL 分析端點查詢時會被截斷。 解決方法是在 Fabric Lakehouse 建立鏡像資料庫的捷徑,或使用 Spark 查詢資料。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的限制。
開發與整合
我可以在 Fabric 裡搭配筆記本和 Spark 使用 Cosmos DB 嗎?
是的。 你可以用 Fabric 筆記本直接在 Fabric 裡的 Cosmos DB 裡互動資料。 此外,Fabric 中的 Cosmos DB 資料會自動鏡像到 OneLake 的 Delta Parquet 格式,使得 Apache Spark 筆記本也能存取。 你可以使用 Spark 對 Cosmos DB 資料執行分析、資料科學工作流程和機器學習操作。
欲了解更多資訊,請參閱 Fabric 中的 Cosmos DB 鏡像 OneLake ,或 在 Fabric 中使用 Spark 搭配 Cosmos DB ,或 使用 Fabric 筆記本搭配 Cosmos DB。
我該如何在 Power BI 的 Fabric 資料中使用 Cosmos DB?
你可以直接在 Cosmos DB 的 Fabric 資料中,使用 Direct Lake 模式建立 Power BI 報告。 OneLake 中的鏡像資料以 V 順序的 Delta 表格儲存,實現高效能報告且不會重複資料。
欲了解更多資訊,請參閱 在 Fabric 中使用 Cosmos DB 建立報告。
Cosmos DB 在 Fabric 中支援持續整合與部署(CI/CD)嗎?
是的。 你可以利用 Fabric 的部署流程和 Git 整合,在 Fabric 中實作 Cosmos DB 的 CI/CD 工作流程。 這讓你能夠對資料庫架構、設定和部署自動化進行版本控制。
欲了解更多資訊,請參閱 Cosmos DB 在 Fabric 中的持續整合與部署。
我可以將資料從 Azure Cosmos 資料庫遷移到 Fabric 中的 Cosmos 資料庫嗎?
是的。 您可以使用多種方法將資料從 Azure Cosmos DB 遷移到 Fabric 中的 Cosmos DB,包括:
- Azure Data Factory 或 Fabric Data Factory pipelines
- Azure Cosmos DB 在 SDK 中的 bulk import 功能
- Apache Spark 用於大規模資料遷移
- 使用 SDK 的自訂遷移腳本
- Azure Cosmos DB Desktop Data Migration Tool
遷移過程包括從 Azure Cosmos DB 匯出資料,並透過相容的 SDK 與連接字串,搭配 Microsoft Entra 認證,匯入 Fabric 中的 Cosmos DB。