什麼是適用於 Azure Cosmos DB 的 Azure Synapse Link

適用於:NoSQL MongoDB Gremlin

適用於 Azure Cosmos DB 的 Azure Synapse Link 是雲端原生的混合式異動和分析處理 (HTAP) 功能,可讓您對 Azure Cosmos DB 中的操作資料執行近即時分析。 Azure Synapse Link 會在 Azure Cosmos DB 與 Azure Synapse Analytics 之間建立緊密順暢的整合。

Azure Cosmos DB 分析存放區是一種完全隔離的資料行存放區,可與 Azure Synapse Link 結合使用,以在 Azure Synapse Analytics 中針對大規模操作資料啟用擷取-轉換-載入 (ETL) 分析。 商務分析師、資料工程師、資料科學家現在可以交換使用 Synapse Spark 或 Synapse SQL,執行近即時的商業智慧、分析和機器學習管線。 您可以分析即時資料,而不會影響 Azure Cosmos DB 上交易式工作負載的效能。

下圖顯示 Azure Synapse Link 與 Azure Cosmos DB 和 Azure Synapse Analytics 的整合:

Architecture diagram for Azure Synapse Analytics integration with Azure Cosmos DB

為了分析大型操作資料集,同時將任務關鍵性交易工作負載效能的任何影響降到最低,Azure Cosmos DB 客戶傳統上會匯出操作資料。 這些作業是由 Extract-Transform-Load (ETL) 管線所執行,這需要許多層級的資料和作業管理,進而對交易式工作負載產生作業複雜度和效能影響。 ETL 也會增加從來源到分析操作資料之間的時間延遲。

相較於傳統的 ETL 型解決方案,適用於 Azure Cosmos DB 的 Azure Synapse Link 提供數個優點,例如:

降低複雜性,無需管理 ETL 作業

Azure Synapse Link 可讓您使用 Azure Synapse Analytics 直接存取 Azure Cosmos DB 分析存放區,而不需要複雜的資料移動。 對操作資料所做的任何更新,會以近即時的方式反映在分析存放區中,不會有 ETL 或變更摘要作業。 您可以從 Azure Synapse Analytics 對分析存放區執行大規模分析,而不需要額外的資料轉換。

操作資料的近即時深入解析

您現在可以使用 Azure Synapse Link 對您的操作資料取得近即時的豐富深入解析。 ETL 型的系統通常在分析操作資料時會有較高的延遲,因為需要擷取、轉換、下載操作資料這樣多層的作業。 藉由 Azure Cosmos DB 分析存放區與 Azure Synapse Analytics 的原生整合,您可以近即時分析操作資料,以實現新的商務案例。

作業工作負載的效能沒有危害

使用 Azure Synapse Link,您可以針對 Azure Cosmos DB 分析存放區執行分析查詢,這是資料的資料行存放區表示法。 您可以透過 Azure Cosmos DB 資料列式交易存放區,使用交易工作負載的佈建輸送量來處理交易作業的同時執行查詢。 分析工作負載與交易工作負載流量無關,不會耗用您為操作資料配置的輸送量。

已針對大規模的分析工作負載最佳化

Azure Cosmos DB 分析存放區已最佳化,可提供分析工作負載的可擴縮性、彈性、效能,而不會對計算執行時間產生任何相關性。 儲存技術會自我管理,以最佳化您的分析工作負載。 透過內建的 Azure Synapse Analytics 支援,存取此儲存層變得既簡單又高效能。

符合成本效益

有了 Azure Synapse Link,您可以使用成本最佳化且完全受控的解決方案來進行作業分析。 其可消除傳統 ETL 管線中用來分析操作資料所需的額外儲存和計算層。

Azure Cosmos DB 分析存放區遵循耗用量型定價模型,此模型是以資料儲存,以及執行的分析讀取/寫入作業和查詢為基礎。 您不需要佈建任何輸送量,如同您今天為交易工作負載所做的一樣。 使用 Azure Synapse Analytics 的高彈性計算引擎來存取資料,可讓執行儲存和計算的整體成本更有效率。

本地可用、全域散發、多區域寫入的分析

您可以對 Azure Cosmos DB 中最近區域的資料複本,有效地執行分析查詢。 Azure Cosmos DB 提供最先進的功能,以主動-主動的方式執行全域散發的分析工作負載以及交易工作負載。

為操作資料啟用 HTAP 案例

Azure Synapse Link 會將 Azure Cosmos DB 分析存放區與 Azure Synapse Analytics 執行階段支援整合在一起。 此整合可讓您建立雲端原生的 HTAP 解決方案,根據大型資料集中的操作資料即時更新來產生深入解析。 於是帶來新的商務案例,可根據即時趨勢引發警示、建立近即時的儀表板、依據使用者行為的商業體驗。

Azure Cosmos DB 分析存放區

Azure Cosmos DB 分析存放區是 Azure Cosmos DB 中操作資料的資料行導向表示法。 此分析存放區適用於大型操作資料集的快速、符合成本效益的查詢。 此存放區可以查詢資料,而不需要複製資料並影響交易工作負載的效能。

分析存放區會以近即時的方式,自動在您的交易工作負載中挑選高頻率的插入、更新、刪除,作為 Azure Cosmos DB 的完全受控功能 (「自動同步」)。 不需要變更摘要或 ETL。

如果您有全域散發的 Azure Cosmos DB 帳戶,則在啟用容器的分析存放區之後,該帳戶在所有區域都將可加以使用。 如需分析存放區的詳細資訊,請參閱 Azure Cosmos DB 分析存放區概觀一文。

有了 Azure Synapse Link,您現在可以從 Azure Synapse Analytics 直接連線到您的 Azure Cosmos DB 容器,並存取分析存放區,而不需要個別的連接器。 Azure Synapse Analytics 目前支援 Azure Synapse Link 搭配 Synapse Apache Spark無伺服器 SQL 集區

您可以同時查詢 Azure Cosmos DB 分析存放區中的資料,且 Azure Synapse Analytics 支援的不同分析執行之間可互通。 分析操作資料不需要額外的資料轉換。 您可以使用下列各項來查詢和分析分析存放區資料:

  • 完全支援 Scala、Python、SparkSQL、C# 的 Synapse Apache Spark。 Synapse Spark 是資料工程和資料科學案例的核心

  • 無伺服器 SQL 集區搭配 T-SQL 語言,並支援熟悉的 BI 工具 (例如 Power BI Premium 等)

注意

您可以從 Azure Synapse Analytics 存取 Azure Cosmos DB 容器中的分析和交易存放區。 不過,如果您想要對操作資料執行大規模分析或掃描,建議您使用分析存放區,以避免對交易工作負載的效能造成影響。

注意

您可以藉由將 Azure Cosmos DB 容器連接到該區域中的 Synapse 執行階段,在 Azure 區域中執行低延遲的分析。

這項整合可為不同的使用者提供下列 HTAP 案例:

  • BI 工程師想要建立 Power BI 報告模型並發佈此報告,以直接透過 Synapse SQL 存取 Azure Cosmos DB 中的即時操作資料。

  • 資料分析師想要從 Azure Cosmos DB 容器中的操作資料衍生見解,方法是透過使用 Synapse SQL 進行查詢、大規模讀取資料,並將這些結果與其他資料來源結合。

  • 資料科學家想要使用 Synapse Spark 來尋找改善其模型的功能,並在不執行複雜資料工程的情況下定型該模型。 他們也可以將模型文章推斷的結果寫入 Azure Cosmos DB,以透過 Spark Synapse 對資料進行即時評分。

  • 資料工程師想要讓取用者能夠存取資料,方法是在不需要手動 ETL 程序的情況下,透過 Azure Cosmos DB 容器建立 SQL 或 Spark 資料表。

如需有關 Azure Cosmos DB 的 Azure Synapse Analytics 執行階段支援的詳細資訊,請參閱 Azure Cosmos DB 的 Azure Synapse Analytics 支援

如果您是 Azure Cosmos DB 客戶,而且想要針對您的操作資料執行分析、BI 及機器學習,建議您使用 Azure Synapse Link。 例如:

  • 如果您是在今天使用個別的連接器直接對 Azure Cosmos DB 操作資料執行分析或 BI,或者

  • 如果您是執行 ETL 流程,將操作資料擷取至不同的分析系統。

在這種情況下,Azure Synapse Link 會提供更整合的分析體驗,而不會影響交易存放區的佈建輸送量。

如果您要尋找傳統資料倉儲需求,不建議使用 Azure Synapse Link。 這些需求可能包括跨多個資料來源進行彙總的高並行、工作負載管理及持續性。 如需詳細資訊,請參閱適用於 Azure Cosmos DB 的 Azure Synapse Link 可支援的常見案例

限制

  • NoSQL 和 MongoDB API 支援適用於 Azure Cosmos DB 的 Azure Synapse Link。 Cassandra 或資料表 API 不支援它,而且會維持 Gremlin API 的預覽狀態。

  • 目前不支援使用 Azure Synapse 專用 SQL 集區來存取 Azure Cosmos DB 分析存放區。

  • 雖然分析存放區資料並未備份,因此無法還原,但您可以在還原的容器中重新啟用 Azure Synapse Link 來重建分析存放區。 請參閱分析存放區文件以取得詳細資訊。

  • 現在已提供在已啟用連續備份的資料庫帳戶中開啟 Synapse Link 的功能。 但相反的情況,即在啟用 Synapse Link 的資料庫帳戶中開啟連續備份,仍然不支援。

  • 從 Synapse 查詢時,不支援細微的角色型存取控制。 可存取 Synapse 工作區且可存取 Azure Cosmos DB 帳戶的使用者可以存取該帳戶內的所有容器。 我們目前不支援更細微的容器存取。

  • 目前 Azure Synapse Analytics 工作區不支援使用 Managed Identity 的連結服務。 請一律使用 MasterKey 選項。

  • 目前不建議在生產環境中使用多重區域寫入帳戶。

安全性

Azure Synapse Link 可讓您對 Azure Cosmos DB 中的任務關鍵性資料執行近乎即時的分析。 務必確保跨交易式和分析存放區安全地儲存重要的商務資料。 適用於 Azure Cosmos DB 的 Azure Synapse Link,其設計旨在透過下列功能來協助符合這些安全性需求:

  • 使用私人端點進行網路隔離 - 您可以獨立控制對交易式和分析存放區中資料的網路存取。 針對 Azure Synapse 工作區中受控虛擬網路內的每個存放區,使用個別的受控私人端點進行網路隔離。 若要深入了解,請參閱如何設定分析存放區的私人端點一文。

  • 使用客戶自控金鑰進行資料加密 - 您可以自動且透明的方式使用相同的客戶自控金鑰,在交易式和分析存放區之間順暢地加密資料。 Azure Synapse Link 僅支援使用您的 Azure Cosmos DB 帳戶受控識別來設定客戶自控金鑰。 您必須在您的 Azure Key Vault 存取原則中設定受控識別,才能在您的帳戶上啟用 Azure Synapse Link。 如需深入瞭解,請參閱「如何使用 Azure Cosmos DB 帳戶的受控識別來設定客戶自控金鑰」一文的內容。

  • 安全金鑰管理 - 從 Synapse Spark 和 Synapse 無伺服器 SQL 集區存取分析存放區中的資料,需要管理 Synapse Analytics 工作區內的 Azure Cosmos DB 金鑰。 Azure Synapse Link 會提供更安全的功能,而不是使用內嵌於 Spark 作業或 SQL 指令碼的 Azure Cosmos DB 帳戶金鑰:

定價

Azure Synapse Link 的計費模型會包含使用 Azure Cosmos DB 分析存放區和 Synapse 執行階段所產生的成本。 若要深入瞭解,請參閱 Azure Cosmos DB 分析存放區定價Azure Synapse Analytics 定價

下一步

若要深入了解,請參閱下列文件: