規劃和管理 Azure Cosmos DB 的成本

適用於:NoSQL MongoDB Cassandra Gremlin Table

本文說明如何規劃和管理 Azure Cosmos DB 的成本。 首先,建立任何資源之前,您會使用 Azure Cosmos DB 容量計算機來估計您的工作負載成本。 您稍後可以檢閱估計成本,並開始建立您的資源。

在您開始使用了 Azure Cosmos DB 資源之後,請使用成本管理功能來設定預算並監視成本。 您也可以檢閱預測成本,並找出花費趨勢來識別您可能想要採取行動的區域。Azure Cosmos DB 的成本只是您 Azure 帳單中每月成本的一部分。 雖然本文是在說明如何規劃和管理 Azure Cosmos DB 的成本,但您還必須支付 Azure 訂用帳戶中使用的所有 Azure 服務和資源的費用,包括協力廠商服務。

必要條件

佈建輸送量或無伺服器

Azure Cosmos DB 支援兩種類型的容量模式:佈建的輸送量無伺服器。 您針對 Azure Cosmos DB 使用量的收費方式在這兩種模式之間會有很大的差異,因此請務必選擇最適合您工作負載的方式。 請參閱如何選擇佈建的輸送量和無伺服器文章,以取得關於如何進行這項選擇的指導和建議。

成本分析

成本管理中的成本分析支援大部分的 Azure 帳戶類型,但並非全部。 若要檢視所支援帳戶類型的完整清單,請參閱了解成本管理資料。 若要檢視成本資料,您至少需要 Azure 帳戶的讀取存取權。 如需 Azure 成本管理資料的存取權指派相關資訊,請參閱指派資料的存取權

使用 Azure Cosmos DB 前先估計成本

Azure Cosmos DB 有兩種不同的容量模式:佈建的輸送量和無伺服器。 您可以在這兩種模式中執行完全相同的資料庫作業,但這些作業的計費方式不同。

產能規劃

作為估計成本的輔助,針對移轉至 Azure Cosmos DB 的容量規劃來說可能相當實用。 如果您打算從現有的資料庫叢集移轉至 Azure Cosmos DB,您可以使用現有資料庫叢集的相關資訊來進行容量規劃。

Migrate a replica set with 3 replicas of a four-core SKU to Azure Cosmos DB

估計已佈建的輸送量成本

如果您打算在佈建的輸送量模式中使用 Azure Cosmos DB,請先使用 Azure Cosmos DB 容量計算機來估計成本,然後再於 Azure Cosmos DB 帳戶中建立資源。 容量計算機可讓您估計所需的輸送量和工作負載的成本。 容量計算機目前僅適用於 API for NoSQL、Cassandra API 和 MongoDB。

將您的 Azure Cosmos DB 資料庫和容器設定為具有適當數量的已佈建輸送量,或要求單位 (RU/秒) ,對於您的工作負載而言,最佳化成本和效能是不可或缺的。 您必須輸入詳細資料,例如 API 類型、區域數目、專案大小、每秒讀取/寫入要求數、儲存的資料總計,以取得成本估計。 若要深入了解容量計算機,請參閱 估計文章。

提示

為了確保您不會超過所佈建的輸送量,請限制您帳戶的佈建輸送量總計

下列螢幕擷取畫面顯示使用容量計算機的輸送量和成本估計:

Capacity planner basic mode

估計無伺服器成本

如果您打算在無伺服器模式中使用 Azure Cosmos DB,您需要估計每月可能耗用的要求單位和儲存體 GB 數目。 您可以透過評估每個月發出的資料庫作業數目,並將其數目乘以對應的 RU 成本,以估計所需的要求單位數目。 下表列出一般資料庫作業的估計 RU 費用:

作業 預估成本 備註
建立項目 5 RU 索引 1 KB 項目 (屬性少於 5 個) 的平均成本
更新項目 10 RU 索引 1 KB 項目 (屬性少於 5 個) 的平均成本
依識別碼和分割區索引鍵讀取個別項目 (點讀取) 1 RU 1 KB 項目的平均成本
刪除項目 5 RU
執行查詢 10 RU 充分利用編製索引並傳回 100 個結果或更少查詢的平均成本

重要

請注意上表中的附註。 若要更正確地估計作業的實際成本,您可以使用 Azure Cosmos DB 模擬器,並測量作業的確切 RU 成本。 雖然 Azure Cosmos DB 模擬器不支援無伺服器,但它會報告資料庫作業的標準 RU 費用,並且可用於這種估計。

當您計算出每個月可能耗用的要求單位數和儲存體 GB 總數時,下列公式會傳回您的成本估計:([要求的單位數目]/1,000,000 * $0.25) + ([儲存空間 GB] * $0.25)

注意

上述範例所示成本僅供示範之用。 如需價格資訊,請參閱價格頁面

了解完整的計費模式

Azure Cosmos DB 會在 Azure 基礎結構上執行,當您部署新的資源時,將會累算成本。 請務必了解可能會產生其他額外的基礎結構成本。

Azure Cosmos DB 的收費方式

當您建立或使用 Azure Cosmos DB 資源時,可能會向您收取下列計量的費用:

  • 資料庫作業 - 根據要求單位 (RU/秒) 佈建或取用來向您收費:

    • 標準 (手動) 佈建的輸送量 - 以您的容器或資料庫上佈建的 RU/秒為單位,以每小時費率計費。
    • 自動調整佈建的輸送量- 根據系統在每個小時內擴大的 RU/秒數目上限收費。
  • 已使用的儲存體 - 根據指定的一小時內資料和索引所使用儲存體總計數目總計 (以GM 為單位) 向您收費。

如果您使用的是備份儲存體、分析儲存體、可用性區域、多區域寫入等 Azure Cosmos DB 功能,則需要額外收費。 在您的計費週期結束時,將會加總各項計量的費用。 您的帳單或發票會顯示所有 Azure Cosmos DB 成本的區段。 每個計量都有個別的明細。 若要深入了解,請參閱價格模型文章。

使用 Azure 預付款

您可以使用 Azure 預付款點數來支付 Azure Cosmos DB 費用。 不過,您無法使用 Azure 預付款點數來支付第三方產品和服務的費用,包括來自 Azure Marketplace 的產品和服務。

在 Azure 入口網站中檢閱預估成本

當您開始使用 Azure 入口網站中的 Azure Cosmos DB 資源時,便可看到估計成本。 使用下列步驟檢閱成本估計值:

  1. 登入 Azure 入口網站,然後瀏覽至您的 Azure Cosmos DB 帳戶。

  2. 移至 [概觀] 區段。

  3. 勾選底部的 [成本] 圖表。 此圖表會在可設定的時間週期內,顯示您目前成本的估計:

  4. 建立新的容器,例如圖表容器。

  5. 輸入您的工作負載所需的輸送量,例如 400 RU/秒。 輸入輸送量值之後,您可以看到價格估計值,如下列螢幕擷取畫面所示:

    Cost estimate in Azure portal

如果您的 Azure 訂用帳戶有消費限制,Azure 會防止您的費用超出點數金額。 當您建立和使用 Azure 資源時,將會使用您的點數。 當您達到點數限制時,系統就會在該計費期間的剩餘時間內停用您所部署的資源。 您無法變更點數限制,但可以將其移除。 如需消費限制的詳細資訊,請參閱 Azure 消費限制

您可以使用 Azure 預付款 (先前稱為預付金) 點數來支付 Azure Cosmos DB 費用。 不過,您無法使用 Azure 預付款點數來支付第三方產品和服務的費用,包括來自 Azure Marketplace 的產品和服務。

監視成本

當您搭配 Azure Cosmos DB 使用資源時,便會產生成本。 資源使用量單位成本會依據時間間隔 (秒、分鐘、小時和日) 或要求單位使用量而改變。 一旦 Azure Cosmos DB 開始使用,便會產生成本,而您可以在 Azure 入口網站的 [成本分析] 窗格中看到成本。

使用成本分析時,您可以在圖表和資料表中檢視不同時間間隔的 Azure Cosmos DB 成本。 一些範例包括依日期、目前、先前月份,以及年度。 您也可以根據預算和預測成本來檢視成本。 切換至更長一段時間的檢視可協助您識別費用趨勢,並查看可能發生超支的位置。 如果您已建立預算,還可以輕鬆地查看已超出預算的位置。

若要檢視成本分析中的 Azure Cosmos DB 成本:

  1. 登入 Azure 入口網站

  2. 在 Azure 入口網站中開啟範圍,然後選取功能表中的 [成本分析]。 例如,移至 [訂用帳戶]、從清單中選取訂用帳戶,然後在功能表中選取 [成本分析]。 選取 [範圍] 以切換至成本分析中的不同範圍。

  3. 依預設,所有服務成本會顯示在第一個環圈圖中。 選取標示為「Azure Cosmos DB」的圖表區域。

  4. 若要減少單一服務 (例如 Azure Cosmos DB) 的成本,請選取 [新增篩選],然後選取 [服務名稱]。 然後,從清單中選擇 [Azure Cosmos DB]。 以下是只顯示 Azure Cosmos DB 成本的範例:

    Monitor costs with Cost Analysis pane

在上述範例中,您會看到 Azure Cosmos DB 在 2 月的目前成本。圖表也包含依位置和資源群組顯示的 Azure Cosmos DB 成本。

建立預算

您可以建立預算來管理成本,以及建立警示,以在出現異常消費和超支風險時自動通知利害關係人。 警示是以支出為基礎 (相較於預算和成本閾值)。 系統會為 Azure 訂用帳戶和資源群組建立預算和警示,因此在整體成本監視策略中十分實用。

如果您希望監視中有更多細微性,可以使用 Azure 中特定資源或服務的篩選來建立預算。 篩選器可協助確保您不會意外建立新的資源,而需要支付額外的費用。 如需有關建立預算時篩選選項的詳細資訊,請參閱群組和篩選選項

匯出成本資料

您也可以將成本資料匯出到儲存體帳戶。 當您或其他人需要對成本進行額外的資料分析時,這會很有用。 例如,財務小組可以使用 Excel 或 Power BI 來分析資料。 您可以根據每日、每週或每月排程來匯出成本,並設定自訂日期範圍。 若要取得成本資料集,建議採用匯出成本資料集的方式。

管理和降低成本的其他方式

下列是您可以用來降低成本的一些最佳作法:

  • 最佳化佈建的輸送量成本 - 本文詳細說明最佳化您輸送量成本的最佳做法。 它會根據您的工作負載類型,描述何時在容器層級與資料庫層級佈建輸送量。

  • 最佳化要求成本 - 本文說明如何將讀取和寫入要求轉譯為要求單位,以及如何最佳化這些要求的成本。

  • 最佳化儲存體成本 - 儲存體成本會以耗用量為單位計費。 了解如何使用變更摘要和存留時間等功能,以項目大小和編製索引原則最佳化儲存體成本。

  • 最佳化多區域成本 - 如果您有一或多個低度使用的讀取區域,您可以在讀取區域中使用變更摘要,以採取步驟來充分利用讀取區域中的 RU,或在過度使用時將其移至另一個次要區域。

  • 最佳化開發/測試成本 - 了解如何使用本機模擬器 Azure Cosmos DB、免費層、Azure 免費帳戶和其他幾個選項,來最佳化您的開發成本。

  • 使用保留容量最佳化成本 - 了解如何透過認可一年或三年 Azure Cosmos DB 資源的保留容量來節省成本。

下一步

請參閱下列文章,以深入了解價格在 Azure Cosmos DB 中的運作方式: