資源組屬性

您可以設定資源群組 JSON 檔案的格式,使其與可從控制台下載的範例資源群組檔案相符。

以下部分介紹了您可以設定的資源組屬性。

主要內容

主要內容
內容名稱 類型 必要/選用 說明
rootGroups 陣列 必要 定義資源組的規範。
selectors 陣列 必要 指定資源組的選擇器配置。
cpuQuotaPeriod 字串 選用 指定CPU配額期限。 此屬性必須與模式 ^\d+(.\d+)?[smhd]$ 相符。

rootGroups 內容

rootGroups屬性
內容名稱 類型 必要/選用 說明
name 字串 必要 資源群組的名稱。 如果名稱包含 {}$,則名稱必須採用模式 ${([a-zA-Z][a-zA-Z0-9]*)}。 名稱中允許有空格。 此名稱不能包含句點 (.)。兩個兄弟組不能使用相同的名稱。 根組和子組可以使用相同的名稱。
softMemoryLimit 字串 必要 指定軟記憶體限制。 最小值:0%。 最大值:999%。
maxQueued 整數 選用 指定排隊請求的最大數量。 最小值:0。 最大值:2147483647。 該值不能以 0 開頭。 例如,0105。將值指定為 150 單獨為有效值。
softConcurrencyLimit 整數或空值 選用 指定軟並發限制。 最小值:0。 最大值:2147483647。 該值不能以 0 開頭。 例如,0105。將值指定為 150 單獨為有效值。
maxRunning 整數或空值 選用 指定最大運行計數。 最小值:0。 最大值:2147483647。 該值不能以 0 開頭。 例如,0105。將值指定為 150 單獨為有效值。
hardConcurrencyLimit 整數 必需(如果 maxRunning 值可用,則 hardConcurrencyLimit 佔用該值。 如果未設定 maxRunning,則必須為 hardConcurrencyLimit 設定一個值。 指定硬並發限制。 最小值:0。 最大值:2147483647。 該值必須大於或等於 softConcurrencyLimit。 它不能以 0 開頭。 例如,0105。將值指定為 150 單獨為有效值。
schedulingPolicy 字串(以下是可用值:fairweightedweighted_fairquery_priority。這些值不會區分大小寫。) 選用 指定調度策略。
schedulingWeight 整數或空值 選用 指定調度權重。 允許的值(最小值到最大值):1 到 2147483647。 該值不能以 0 開頭。 例如,0105。將值指定為 150 單獨為有效值。 如果子組具有 schedulingWeight,則該子組中的所有對應同級都必須具有 schedulingWeight
subGroups 數組或空值 選用 指定資源組內的子組。 子組對於不同屬性具有與資源組相同的規則。
jmxExport 布林值或空值 選用 指示是否啟用 JMX 匯出。
softCpuLimit 字串 選用 指定 CPU 軟限制。 它必須與模式 ^\d+(.\d+)?[smhd]$ 匹配。 如果定義了 hardCpuLimit,則 softCpuLimit 的值必須小於或等於 hardCpuLimit
hardCpuLimit 字串 選用 指定硬 CPU 限制。 它必須與模式 ^\d+(.\d+)?[smhd]$ 匹配。
perQueryLimits 物件 選用 指定每個查詢的限制。 例:"perQueryLimits": { "executionTimeLimit": "30m", "totalMemoryLimit": "2GB", "cpuTimeLimit": "1h" }。 該物件可以具有以下限制中的一項、兩項或三項。 以下任何限制都不允許使用負值。1. executionTimeLimit類型:字串,模式:此屬性必須與模式 ^\d+(.\d+)?[smhd]$ 匹配。),2. totalMemoryLimit類型:字串,模式:此屬性必須與模式 ^\s*(\d+(?:.\d+)?)\s*([a-zA-Z]+)\s*$ 匹配。),3. cpuTimeLimit類型:字串,模式:此屬性必須與模式 ^\d+(.\d+)?[smhd]$ 相符。)
workersPerQueryLimit 整數或空值 選用 指定每個查詢的工作人員限制。 允許值(最小值到最大值):-2147483648 到 2147483647。 該值必須大於或等於 softConcurrencyLimit。 它不能以 0 開頭。 例如,0105。將值指定為 150 單獨為有效值。

selectors 內容

選擇器屬性
內容名稱 類型 必要/選用 說明
user 字串或 null(字串可以具有任何有效的正規表示式 ( .* )。) 選用 指定使用者正規表示式模式。
source 字串或 null(字串可以具有任何有效的正規表示式 ( .* )。) 選用 指定來源正規表示式模式。
queryType 字串或空。 (可能的值為 data_definitiondeletedescribeexplainanalyzeinsertselectcontrolupdate。 這些值不區分大小寫。 選用 指定查詢類型。
clientTags 字串清單或 null(範例:"clientTags": ["resourceGroup1","resourceGroup2"] storageStrings可以具有任何有效的正規表示式 ( .* )。) 選用 指定客戶端標籤。
selectorResourceEstimate 物件或空白 選用 指定選擇器資源估計。 範例:"selectorResourceEstimate": {"executionTime": {"min": "5m", "max": "10m"}, "cpuTime": {"min": "30m", "max": "1h"}, "peakMemory": {"min": "512MB", "max": "2GB"}}。 物件可以有一個、兩個或三個限制。 您也可以對所有三個限制使用 minmax 或這兩個參數。 例如,"selectorResourceEstimate": {"executionTime": {"min": "5m"}。 任何限制都不允許使用負值。 有關限制的更多信息,請參閱 selectorResourceEstimate 限制
clientInfo 字串或 null(字串可以具有任何有效的正規表示式 ( .* )。) 選用 指定客戶端資訊正規表示式模式。
schema 字串或 null(字串可以具有任何有效的正規表示式 ( .* )。) 選用 指定架構。
principal 字串或 null(字串可以具有任何有效的正規表示式 ( .* )。) 選用 指定主要正規表示式模式。
group 字串 必要 群組名稱必須來自資源群組中的可用名稱。 若要重定向到子群組,請使用 "group": "groupname.subgroupname"。 您也可以使用根組名稱中使用的動態值,如 ${SOURCE}${USER}${SCHEMA}group 中不能有 null

sourceuser 正規表示式中,您可以使用 (?<sampleName>.*) 格式提供的名稱作為動態群組名稱。 例如:

{
            "source": "(?<sampleName>.*)",
            "clientTags": [
                "hipri"
            ],
            "group": "bi-${sampleName}"
}and there is a group as ,{
            "name": "bi-${sampleName}",
            "softMemoryLimit": "80%",
            "hardConcurrencyLimit": 100,
            "maxQueued": 1000,
            "schedulingPolicy": "weighted",
            "jmxExport": true
}

在此範例中,sampleName 是動態值。 名稱中不允許使用特殊字元。 您可以新增其他值,例如 ${SOURCE}${USER}${SCHEMA}。 組名稱區分大小寫。 動態變數之前和之後都可以有值。 例如,abc-${SOURCE}${toolname}-xyz

selectorResourceEstimate 限制

  • executionTime

    • min: 屬性類型是字串。 此屬性必須與模式 ^\\d+(\\.\\d+)?[smhd]$ 相符。
    • max: 屬性類型是字串。 此屬性必須與模式 ^\\d+(\\.\\d+)?[smhd]$ 相符。
  • peakMemory

    • min: 屬性類型是字串。 此屬性必須與模式 ^\s*(\d+(?:\.\d+)?)\s*([a-zA-Z]+)\s*$ 相符。
    • max 屬性類型是字串。 此屬性必須與模式 ^\s*(\d+(?:\.\d+)?)\s*([a-zA-Z]+)\s*$ 相符。
  • cpuTime

    • min: 屬性類型是字串。 此屬性必須與模式 ^\\d+(\\.\\d+)?[smhd]$ 相符。
    • max: 屬性類型是字串。 此屬性必須與模式 ^\\d+(\\.\\d+)?[smhd]$ 相符。

cpuQuotaPeriod 內容

選擇器屬性
內容名稱 類型 必要/選用 說明
cpuQuotaPeriod 字串 選用 指定CPU配額期限。 該屬性必須與模式 ^\d+(\.\d+)?[smhd]$ 匹配