使用 Azure Cosmos DB 容量計算機估計容量

已完成

有幾種方式可以針對 Azure Cosmos DB 工作負載執行容量規劃:

  • 如果您要移轉現有的資料庫工作負載,但您只知道現有叢集中的虛擬核心和伺服器數目,則必須使用 [vCores 或 vCPU(/azure/cosmos-db/convert-vcore-to-request-unit) 來估計要求單位。 我們將在 轉模組下更詳細地討論此主題。
  • 如果您知道目前的資料庫工作負載一般要求率,您可以使用 Azure Cosmos DB 容量規劃工具來估計要求單位。

若要優化 Azure Cosmos DB 中的成本和效能,我們必須為資料庫和集合工作負載提供正確的輸送量量(簡稱每秒要求單位或 RU/秒)。 Azure Cosmos DB 容量規劃工具可協助我們預估適用於 MongoDB 的 Azure Cosmos DB 工作負載所需的 RU/秒。 讓我們更詳細地查看這個工具。

Azure Cosmos DB 容量規劃工具

Azure Cosmos DB 容量規劃工具是在線工具,會根據定義工作負載本身的多個參數來估計工作負載所需的 RU/秒數量。 容量規劃工具提供兩種模式:基本和進階。 讓我們看看我們將針對這些模式定義的不同工作負載參數。

基本模式

基本模式會為您的工作負載提供快速成本和輸送量估計。 此模式需要較少的工作負載資訊,並假設您使用預設的 Azure Cosmos DB 索引策略、一致性和其他參數設置。

讓我們檢視不同的工作負載參數和要輸入的值。

  • API - 選取 適用於 MongoDB 的 Cosmos DB API
  • 區域數目 - 適用於 MongoDB 的 Azure Cosmos DB 適用於所有 Azure 區域。 選取工作負載所需的區域數目。
  • 多重區域寫入 - 如果 已啟用,您的應用程式可以讀取和寫入任何 Azure 區域。 如果 停用,您的應用程式只能將數據寫入單一區域,但可以從任何選取的區域讀取。
    • 當您預期需要在不同區域中進行低延遲寫入的雙活工作負載時,請啟用此功能。
    • 多重區域寫入可保證 99.999% 的讀取和寫入可用性。
    • 相較於單一寫入區域,多重區域寫入需要更多輸送量。
  • 交易存放區中儲存的數據總計 - 單 一區域中交易存放區中儲存的估計數據總計(GB)。
  • 使用分析存放區 - 如果您想要使用 Synapse 分析存放區,請選擇 [開啟 ]。
    • 如果設定為 [開啟],請輸入 儲存在分析存放區中的數據總計,代表 單一區域中分析存放區中儲存的估計數據 (GB)。
  • 專案大小 - 文件估計的平均大小 (1 KB - 2 MB)。
  • Finds/sec - 每個區域每秒預期的尋找作業數目。
  • Inserts/sec - 每個區域每秒預期的插入作業數目。
  • Updates/sec - 每個區域每秒預期的更新作業數目。
    • 當您選擇自動編制索引,更新作業的估計 RU/秒會以每次更新一項屬性變更來計算。
  • Deletes/sec - 每個區域每秒預期的刪除作業數目。

顯示 Azure Cosmos DB 容量計算機 - 基本模式的螢幕快照。

選取 [ 計算] 之後,[ 成本估計] 索引標籤會顯示記憶體和布建輸送量的總成本。 請注意,依預設會顯示 EST.THROUGHPUT REQUIRED,但您可以選取 [顯示詳細資料],以查看不同類型的 CRUD 和查詢要求的估計成本。

小提示

如果您變更任何參數以取得新的估計,請記得再次選取 [ 計算 ]。

進階模式

使用進階模式需要檢視更詳細的工作負載。 您必須提供更多設定,以針對工作負載的成本和輸送量產生更精確的估計值。 若要選擇容量規劃工具的進階模式,您必須使用您用來連線到 Azure 的帳戶登入工具。 您可以在工具右上角找到 [ 登入 ] 選項。

登入之後,您會注意到一組比基本模式更詳細的參數集。 讓我們檢閱不同的工作負載參數和要輸入的值。

  • API - 選取 適用於 MongoDB 的 Cosmos DB API
  • 區域數目 - 適用於 MongoDB 的 Azure Cosmos DB 適用於所有 Azure 區域。 選取工作負載所需的區域數目。
  • 多重區域寫入 - 如果 已啟用,您的應用程式可以讀取和寫入任何 Azure 區域。 如果 停用,您的應用程式只能將數據寫入單一區域,但可以從任何選取的區域讀取。
    • 當您預期需要在不同區域中進行低延遲寫入的雙活工作負載時,請啟用此功能。
    • 多重區域寫入可保證 99.999% 的讀取和寫入可用性。
    • 相較於單一寫入區域,多重區域寫入需要更多輸送量。
  • 默認一致性 - 適用於 MongoDB 的 Azure Cosmos DB 支援 4 個一致性層級,可讓開發人員平衡一致性、可用性和延遲取捨之間的取捨。 我們將在復寫、監視和優化模組中更詳細地討論一致性層級。
  • 編製索引原則 - 此設定會定義工作負載計劃如何使用其索引的方式。 我們將在 設計適用於 Azure Cosmos DB 的 MongoDB 資料庫 模組中更詳細地討論索引。 若要深入瞭解,請參閱適用於 MongoDB 的 API 中的 索引管理
    • 如果您選擇 [關閉] 選項,則不會為任何屬性編制索引,從而產生最低的寫入 RU 費用。 您必須使用 [_id] 欄位和每個查詢的分區金鑰來進行查詢,任何其他查詢都會掃描所有的分割區。
    • 如果您選擇 [ 自動 ] 選項,則會為檔中的所有欄位/屬性編制索引,進而允許彈性且有效率的查詢。
    • 如果您選擇 [自定義 ] 選項,您可以定義使用多索引鍵索引或複合索引編製索引的屬性。
      • 您可以稍後在表單中輸入要編制索引的屬性數目。
  • 交易存放區中儲存的數據總計 - 單 一區域中交易存放區中儲存的估計數據總計(GB)。
  • 使用分析存放區 - 如果您想要使用 Synapse 分析存放區,請選擇 [開啟 ]。
    • 如果設定為 [開啟],請輸入 儲存在分析存放區中的數據總計,代表 單一區域中分析存放區中儲存的估計數據 (GB)。
  • 工作負載模式 - 如果您預期工作負載為 穩定 (常數),或 [變數],請選取 。
    • 如果您預期工作量會保持穩定,請選取穩定
    • 如果您的工作負載隨著時間變更,請選取 [變數 ]。 例如,在週末和/或假日季節銷售大幅增長的零售公司。
      • 選取 [變數 ] 時,請輸入 尖峰時間百分比
      • 透過尖峰和離峰間隔,您可以透過程序設計方式相應增加和減少布建的輸送量來優化成本。
  • 專案大小 - 文件估計的平均大小 (1 KB - 2 MB)。
    • 您也可以上傳範例 (JSON) 檔,以取得更精確的估計值。
    • 如果您的工作負載在相同容器中有多種類型的項目 (包含不同的 JSON 內容),您可以上傳多個 JSON 文件並取得估計值。 使用 [新增專案] 按鈕來新增多個範例 JSON 檔。
  • 作業類型 - 作業類型,例如尋找、匯總、修改等作業類型。
  • 每個呼叫的要求單位 (RU) 費用 - 執行所選作業類型的估計 RU/秒費用。
  • 每個區域的呼叫/秒 - 每個區域每秒執行的選取作業類型數目。

顯示 Azure Cosmos DB 容量計算機 - 進階模式的螢幕快照。

選取 [ 計算] 之後,[ 成本估計] 索引標籤會顯示記憶體和布建輸送量的總成本。 請注意,依預設會顯示 EST.THROUGHPUT REQUIRED,但您可以選取 [顯示詳細資料],以查看不同類型的 CRUD 和查詢要求的估計成本。

小提示

如果您變更任何參數以取得新的估計,請記得再次選取 [ 計算 ]。

備註

所有價格均以美元為單位顯示。 請參閱 Azure Cosmos DB 定價頁面 ,以查看依區域的所有費率。