何時應該使用 Azure Cosmos DB for NoSQL

已完成

Azure Cosmos DB for NoSQL 是適用於現代化和 AI 應用程式開發的完全受控 NoSQL 資料庫服務。 其提供不到 10 毫秒的回應時間和 99.999% 的可用性保證和向量資料庫功能,並受到 SLA 支援可自動和即時進行調整。

在企業案例中,Azure Cosmos DB for NoSQL 有一套全方位具財務支援的服務等級協定 (SLA),涵蓋輸送量、一致性、可用性和延遲。

Azure Cosmos DB for NoSQL 的常見使用案例

作為具有彈性 API 和向量索引和搜尋功能的快速 NoSQL 資料庫,Azure Cosmos DB for NoSQL 非常適合許多類型和大小的應用程式。 從規模很小,到具有全球雄心壯志的高效能應用程式。 速度和彈性使得 Azure Cosmos DB for NoSQL 很適合生成式 AI、Web、零售、IoT、遊戲和行動應用程式。 Azure Cosmos DB for NoSQL 適用於需要彈性、低成本、快速回應時間,以及有能力調整至大量或快速的應用程式。

生成式 AI

生成式 AI 應用程式可能多樣化且無法預測。 這些工作負載需要符合成本效益、具回應能力且可調整的資料庫平台。 使用者可以使用傳統的無結構描述資料和高維度向量作為其他屬性,將向量直接儲存在其文件中。 此資料與向量共置可讓您有效率地編製索引和搜尋,因為向量會儲存在與其代表資料相同的邏輯單元中。 將向量和資料放在一起可簡化資料管理、AI 應用程式架構,以及向量型作業的效率。

生成式 AI 工作負載的架構圖,其中顯示終端使用者的多租用戶 AI 代理程式應用程式。新的或更新的資料會透過變更摘要來擷取、向量化並儲存。使用者會透過 AI 代理程式互動,這些代理程式會執行向量搜尋,並使用儲存在 Azure Cosmos DB 中的聊天記錄產生回應。

在此範例中,客戶會採用交易和營運資料,並將其向量化,以供向客戶提供服務的多個 AI 代理程式用於向量搜尋。 Azure Cosmos DB 的變更摘要可用來處理新資料或更新資料的擷取和向量化,讓使用者近乎即時地使用它。 與這些代理程式互動的客戶會產生提示和完成,這些提示和完成也會儲存為其在 Azure Comsos DB 中的聊天記錄,並用來提供語意快取,以改善成本和效能。

零售/行銷

Azure Cosmos DB for NoSQL 適用於零售和行銷工作負載,這些工作負載可能會在一年中的任何時間點遇到大幅且非預期的變動使用量。 Azure Cosmos DB for NoSQL 的彈性調整可確保資料庫平台可以在尖峰使用期間處理要求,並在非尖峰時間節省成本。

零售工作負載的架構圖表,顯示使用者瀏覽器連線至網站,該網站位於 Azure Blob 儲存體帳戶 (包含靜態網站資料) 支援的 Azure App Service 上。在幕後,Azure Cosmos DB for NoSQL 帳戶具有庫存資料的容器和購物車資料的容器,App Service Web 應用程式和 Azure 搜尋服務執行個體使用此帳戶,而此執行個體將含有庫存資料的 Azure Cosmos DB for NoSQL 帳戶編製索引,以建立可搜尋的目錄。

在此範例中,以儲存在 Azure Blob 儲存體中的內容為基礎的 JavaScript Web 應用程式,使用 Azure Cosmos DB for NoSQL 作為其支援資料庫。 您可以使用多個帳戶來管理解決方案的各種面向,例如購物車、庫存或目錄。 然後,解決方案會使用 Azure 搜尋服務將 Azure Cosmos DB for NoSQL 資料編製索引,以提供豐富的搜尋體驗給終端使用者。

Web/行動

許多現代化社交應用程式會產生使用者所產生的眾多內容,而這些內容在數量、形式和規模方面都有不同。 Azure Cosmos DB for NoSQL 是此工作負載的絕佳候選,因為此 API 可儲存不同結構描述的資料。 當公司的方案擴充到新領域時,請針對結構描述可能隨時間而變化或演進的資料使用 NoSQL API。

Web 工作負載的架構圖表,顯示使用者瀏覽器連線至 URL,此 URL 連線至 Azure 流量管理員以決定正確的重新導向目的地。然後,三個 Azure 區域 (北歐、美國西部、美國東部) 的三個 Azure App Service 執行個體連線至遍布全球的 Azure Cosmos DB for NoSQL 帳戶。

在此範例中,使用者在瀏覽器中使用 URL 來存取網站。 URL 會指向 Azure 流量管理員,然後使用內建的演算法來判斷要將使用者重新導向至哪個 Azure App Service 端點。 由於 Azure Cosmos DB for NoSQL 能夠遍布全球,因此您只需要一個跨多個區域複寫的帳戶。

課程模組情節

請考慮此課程模組開頭的情節:

假設您是一家零售公司的首席開發人員。 您的小組正在為 AI 代理程式提供支援來建置您的線上店面,為使用者提供豐富的體驗。 您正在設計可跨各種裝置存取的新店面,包括行動裝置。 小組預期當店面發佈和各種「開幕」銷售展開時,將會出現需求尖峰。

商店成功的一個關鍵部分是,不論使用者是在哪一個裝置上進行訂購,或是目前正在使用哪一個裝置,公司都能通知使用者貨運資訊更新。 小組努力操作複雜的系統,以管理詳細的訂單狀態追蹤。 Azure Cosmos DB 與其他 Azure 服務的緊密整合,讓您考慮建置解決方案,以使用 Azure Cosmos DB for NoSQL 中的訂單資料,將通知傳送至使用者的行動裝置。 這些通知會在包裹交貨或出貨時發出警示。

零售工作負載的架構圖,顯示越來越多使用者訂購產品,而且有一組計算資源處理來自店面執行個體的要求。在計算資源背後,Azure Cosmos DB 儲存探購資料。然後,Azure Synapse Link 將 Azure Cosmos DB 連線至 Azure Synapse Analytics 以更深入分析。最後,Azure Functions 觸發變更摘要並處理資料事件,進而觸發 Azure Logic Apps 工作流程來執行業務作業,例如透過行動裝置向使用者告知有新的事件。

此範例類似於本課程模組簡介中的範例。 為了建立第一個範例,您的小組已決定引進 Azure Cosmos DB for NoSQL 作為所選擇的資料庫。 現在,您的小組可以使用 Azure Synapse Link 來準備和彙總資料,以使用 Azure Synapse Analytics 進行更深入的分析。 您的小組也可以使用 Azure Functions 之類的服務來回應 Azure Cosmos DB 的資料事件,然後觸發 Azure Logic Apps 工作流程,將通知傳送至行動裝置。