容量原則
容量原則可用來控制叢集上數據管理作業的計算資源。
容量原則物件
容量原則是由下列元件所組成:
- IngestionCapacity
- ExtentsMergeCapacity
- ExtentsPurgeRebuildCapacity
- ExportCapacity
- ExtentsPartitionCapacity
- MaterializedViewsCapacity
- StoredQueryResultsCapacity
若要檢視叢集的容量,請使用 .show capacity 命令。
擷取容量
屬性 | 類型 | 描述 |
---|---|---|
ClusterMaximumConcurrentOperations |
long |
叢集中允許的並行擷取作業數目上限。 此值會限制總擷取容量,如下列公式所示。 |
CoreUtilizationCoefficient |
real |
決定要用於擷取容量計算的核心百分比。 |
公式
.show capacity 命令會根據下列公式傳回叢集的擷取容量:
Minimum(ClusterMaximumConcurrentOperations
,
每個節點叢集 Maximum(1,
*
核心計數中的節點數目 *
CoreUtilizationCoefficient))
注意
在具有四個或更多節點的叢集中,系統管理節點不會參與擷取作業,因此 叢集中 的節點數目會減少一個。
範圍合併容量
屬性 | 類型 | 描述 |
---|---|---|
MinimumConcurrentOperationsPerNode |
long |
單一節點上的並行範圍合併/重建作業數目下限。 預設值為 1 。 |
MaximumConcurrentOperationsPerNode |
long |
單一節點上並行範圍合併/重建作業的最大數目。 預設值為 5 。 |
公式
.show capacity 命令會根據下列公式傳回叢集的範圍合併容量:
每個節點叢集 *
並行作業中的節點數目
只要合併作業的成功率為 90% 或更高,每個節點的並行作業有效值就會由系統在 [MinimumConcurrentOperationsPerNode
,MaximumConcurrentOperationsPerNode
] 範圍內自動調整。
注意
在具有四個或更多節點的叢集中,系統管理節點不會參與合併作業,因此 叢集中 的節點數目會減少一個。
範圍清除重建容量
屬性 | 類型 | 描述 |
---|---|---|
MaximumConcurrentOperationsPerNode |
long |
單一節點上清除作業的並行重建範圍數目上限。 |
公式
.show capacity 命令會根據下列公式傳回叢集的範圍清除重建容量:
叢集 x 中的節點數目 MaximumConcurrentOperationsPerNode
注意
在具有四個或更多節點的叢集中,系統管理節點不會參與合併作業,因此 叢集中 的節點數目會減少一個。
匯出容量
屬性 | 類型 | 描述 |
---|---|---|
ClusterMaximumConcurrentOperations |
long |
叢集中並行匯出作業的數目上限。 此值會限制導出容量總計,如下列公式所示。 |
CoreUtilizationCoefficient |
long |
決定匯出容量計算中要使用的核心百分比。 |
公式
.show capacity 命令會根據下列公式傳回叢集的導出容量:
Minimum(ClusterMaximumConcurrentOperations
,
每個節點叢集 Maximum(1,
*
核心計數中的節點數目 *
CoreUtilizationCoefficient))
注意
在具有四個或更多節點的叢集中,系統管理節點不會參與導出作業。 會 Number of nodes in cluster
減少一個 。
範圍分割容量
屬性 | 類型 | 描述 |
---|---|---|
ClusterMinimumConcurrentOperations |
long |
叢集中並行範圍分割作業的數目下限。 預設值為 1 。 |
ClusterMaximumConcurrentOperations |
long |
叢集中並行範圍分割作業的數目上限。 預設值為 32 。 |
只要分割作業的成功率為 90% 或更高,並行作業的有效值就會由系統在 [ClusterMinimumConcurrentOperations
,ClusterMaximumConcurrentOperations
] 範圍內自動調整。
具體化檢視容量原則
此原則可用來變更具體化檢視的並行設定。 當叢集上定義的單一具體化檢視超過單一具體化檢視時,變更具體化檢視容量原則可能會很有用。
屬性 | 類型 | 描述 |
---|---|---|
ClusterMinimumConcurrentOperations |
long |
叢集中並行具體化作業的數目下限。 預設值為 1 。 |
ClusterMaximumConcurrentOperations |
long |
叢集中並行具體化作業的最大數目。 預設值為 10 。 |
並行作業的有效值會根據叢集中的具體化檢視數目和叢集的CPU,由系統在 [ClusterMinimumConcurrentOperations
,ClusterMaximumConcurrentOperations
] 範圍內自動調整。
警告
只有在叢集有充足的資源時才會增加 ClusterMinimumConcurrentOperations
(CPU 使用量低和可用的記憶體)。 在資源條件約束下提高這些值可能會導致耗盡並大幅降低叢集效能。
預存查詢結果容量
屬性 | 類型 | 描述 |
---|---|---|
MaximumConcurrentOperationsPerDbAdmin |
long |
叢集管理節點中的並行擷取作業數目上限。 |
CoreUtilizationCoefficient |
real |
決定要用於預存查詢結果建立計算的核心百分比。 |
公式
.show capacity 命令會根據下列公式傳回叢集的預存查詢結果建立容量:
每個節點叢集 *
Maximum(1,
核心計數中的節點數目 *
CoreUtilizationCoefficient)
注意
在具有四個或更多節點的叢集中,系統管理節點不會參與預存的查詢結果建立作業,因此 叢集中 的節點數目會減少一個。
Defaults
默認容量原則具有下列 JSON 表示法:
{
"IngestionCapacity": {
"ClusterMaximumConcurrentOperations": 512,
"CoreUtilizationCoefficient": 0.75
},
"ExtentsMergeCapacity": {
"MinimumConcurrentOperationsPerNode": 1,
"MaximumConcurrentOperationsPerNode": 3
},
"ExtentsPurgeRebuildCapacity": {
"MaximumConcurrentOperationsPerNode": 1
},
"ExportCapacity": {
"ClusterMaximumConcurrentOperations": 100,
"CoreUtilizationCoefficient": 0.25
},
"ExtentsPartitionCapacity": {
"ClusterMinimumConcurrentOperations": 1,
"ClusterMaximumConcurrentOperations": 32
},
"MaterializedViewsCapacity": {
"ClusterMaximumConcurrentOperations": 1,
"ExtentsRebuildCapacity": {
"ClusterMaximumConcurrentOperations": 50,
"MaximumConcurrentOperationsPerNode": 5
}
},
"StoredQueryResultsCapacity": {
"MaximumConcurrentOperationsPerDbAdmin": 250,
"CoreUtilizationCoefficient": 0.75
}
}
管理命令
警告
在變更容量原則之前,請先洽詢支援小組。
- 用來
.show cluster policy capacity
顯示叢集目前的容量原則。 - 使用
.alter-merge cluster policy capacity
來改變叢集的容量原則。
管理命令節流
Kusto 會限制下列使用者起始命令的並行要求數目:
- 擷取
- 清除
- 全域限制目前固定在每個叢集一個。
- 清除 重建容量 會在內部用來判斷清除命令期間的並行重建作業數目。 清除命令不會因為此程式而遭到封鎖或節流,但會根據清除重建容量來完成更快或更慢。
- 匯出
- 限制如匯出容量中所定義。
當叢集偵測到作業超過並行要求的限制時:
- 命令的狀態,如 系統資訊命令所呈現,將會是
Throttled
。 - 錯誤訊息會包含 命令類型、 節流的來源 ,以及 已超過的容量 。 例如:
- 例如:
The management command was aborted due to throttling. Retrying after some backoff might succeed. CommandType: 'TableSetOrAppend', Capacity: 18, Origin: 'CapacityPolicy/Ingestion'
。
- 例如:
- HTTP 回應碼將是
429
。 子程式代碼會是TooManyRequests
。 - 例外狀況類型將是
ControlCommandThrottledException
。
注意
管理命令也可能因為超出工作負載群組 的要求速率限制原則所定義的限制而進行節流。
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應