Propriedades do grupo de recursos

Você pode formatar o arquivo JSON do grupo de recursos para corresponder ao arquivo de amostra do grupo de recursos que pode ser baixado do console.

As seções a seguir abordam as propriedades do grupo de recursos que podem ser configuradas.

Propriedades principais

Propriedades principais
Nome da propriedade Tipo Obrigatório/Opcional Descrição
rootGroups Matriz Obrigatório Define as especificações para grupos de recursos.
selectors Matriz Obrigatório Especifica as configurações do seletor para os grupos de recursos.
cpuQuotaPeriod Sequência Opcional Especifica o período de cota da CPU. Essa propriedade deve corresponder ao padrão ^\d+(.\d+)?[smhd]$.

rootGroups properties

propriedadesrootGroups
Nome da propriedade Tipo Obrigatório/Opcional Descrição
name Sequência Obrigatório Nome do grupo de recursos. Se o nome contiver {, } ou $, o nome deverá estar no padrão ${([a-zA-Z][a-zA-Z0-9]*)}. Espaços em branco são permitidos no nome. O nome não pode conter um ponto (.). Você não pode ter o mesmo nome para dois grupos irmãos. Você pode ter o mesmo nome para um grupo raiz e um subgrupo.
softMemoryLimit Sequência Obrigatório Especifica o limite de memória temporária. Valor mínimo: 0%. Valor máximo: 999%.
maxQueued Integer Opcional Especifica o número máximo de solicitações em fila. Valor mínimo: 0. Valor máximo: 2147483647. O valor não deve começar com 0. Por exemplo, 01, 05. Especifique os valores como 1, 5. Somente 0 é um valor válido.
softConcurrencyLimit Inteiro ou nulo Opcional Especifica o limite de simultaneidade flexível. Valor mínimo: 0. Valor máximo: 2147483647. O valor não deve começar com 0. Por exemplo, 01, 05. Especifique os valores como 1, 5. Somente 0 é um valor válido.
maxRunning Inteiro ou nulo Opcional Especifica a contagem máxima de execução. Valor mínimo: 0. Valor máximo: 2147483647. O valor não deve começar com 0. Por exemplo, 01, 05. Especifique os valores como 1, 5. Somente 0 é um valor válido.
hardConcurrencyLimit Integer Obrigatório (se o valor maxRunning estiver disponível, hardConcurrencyLimit assumirá esse valor. Se maxRunning não estiver definido, você deverá definir um valor para hardConcurrencyLimit) Especifica o limite rígido de simultaneidade. Valor mínimo: 0. Valor máximo: 2147483647. O valor deve ser maior ou igual a softConcurrencyLimit. Ele não deve começar com 0. Por exemplo, 01, 05. Especifique os valores como 1, 5. Somente 0 é um valor válido.
schedulingPolicy Cadeia de caracteres (os valores disponíveis são os seguintes: fair, weighted, weighted_fair, query_priority. Esses valores não diferenciam maiúsculas de minúsculas) Opcional Especifica a política de agendamento.
schedulingWeight Inteiro ou nulo Opcional Especifica o peso do agendamento. Valores permitidos (do mínimo ao máximo): 1 a 2147483647. O valor não deve começar com 0. Por exemplo, 01, 05. Especifique os valores como 1, 5. Somente 0 é um valor válido. Se um subgrupo tiver schedulingWeight, todos os irmãos correspondentes nesse subgrupo deverão ter schedulingWeight.
subGroups Matriz ou nulo Opcional Especifica os subgrupos dentro do grupo de recursos. Os subgrupos têm as mesmas regras para diferentes propriedades que no grupo de recursos.
jmxExport Booleano ou nulo Opcional Indica se a exportação JMX está ativada.
softCpuLimit Sequência Opcional Especifica o limite de CPU flexível. Ele deve corresponder ao padrão ^\d+(.\d+)?[smhd]$. Se hardCpuLimit for definido, o valor de softCpuLimit deverá ser menor ou igual a hardCpuLimit.
hardCpuLimit Sequência Opcional Especifica o limite rígido da CPU. Ele deve corresponder ao padrão ^\d+(.\d+)?[smhd]$.
perQueryLimits Object Opcional Especifica os limites por consulta. Exemplo: "perQueryLimits": { "executionTimeLimit": "30m", "totalMemoryLimit": "2GB", "cpuTimeLimit": "1h" }. O objeto pode ter um, dois ou três dos seguintes limites. Não são permitidos valores negativos para nenhum dos limites a seguir. 1. executionTimeLimit (Type: String, Pattern: Essa propriedade deve corresponder ao padrão ^\d+(.\d+)?[smhd]$.), 2. totalMemoryLimit (Type: String, Pattern: Essa propriedade deve corresponder ao padrão ^\s*(\d+(?:.\d+)?)\s*([a-zA-Z]+)\s*$.), 3. cpuTimeLimit (Type: String, Pattern: Essa propriedade deve corresponder ao padrão ^\d+(.\d+)?[smhd]$)
workersPerQueryLimit Inteiro ou nulo Opcional Especifica o limite de trabalhadores por consulta. Valores permitidos (do mínimo ao máximo): -2147483648 a 2147483647. O valor deve ser maior ou igual a softConcurrencyLimit. Ele não deve começar com 0. Por exemplo, 01, 05. Especifique os valores como 1, 5. Somente 0 é um valor válido.

selectors properties

propriedades dos seletores
Nome da propriedade Tipo Obrigatório/Opcional Descrição
user String ou nulo (as strings podem ter qualquer expressão regular válida (.*)) Opcional Especifica o padrão regex do usuário.
source String ou nulo (as strings podem ter qualquer expressão regular válida (.*)) Opcional Especifica o padrão regex de origem.
queryType String ou nulo. (Os valores possíveis são data_definition, delete, describe, explain, analyze, insert, select, control e update. Esses valores não diferenciam maiúsculas de minúsculas) Opcional Especifica o tipo de consulta.
clientTags Lista de cadeias de caracteres ou nula (exemplo: "clientTags": ["resourceGroup1","resourceGroup2"]. storageStrings pode ter qualquer expressão regular válida (.*) Opcional Especifica as tags do cliente.
selectorResourceEstimate Objeto ou nulo Opcional Especifica a estimativa de recursos do seletor. Exemplo: "selectorResourceEstimate": {"executionTime": {"min": "5m", "max": "10m"}, "cpuTime": {"min": "30m", "max": "1h"}, "peakMemory": {"min": "512MB", "max": "2GB"}}. O objeto pode ter um, dois ou três dos limites. Você também pode usar os parâmetros min, max ou ambos para todos os três limites. Por exemplo, "selectorResourceEstimate": {"executionTime": {"min": "5m"}. Não são permitidos valores negativos para nenhum dos limites. Para obter mais informações sobre os limites, consulte selectorResourceEstimate limites.
clientInfo String ou nulo (as strings podem ter qualquer expressão regular válida (.*)) Opcional Especifica o padrão regex de informações do cliente.
schema String ou nulo (as strings podem ter qualquer expressão regular válida (.*)) Opcional Especifica o esquema.
principal String ou nulo (as strings podem ter qualquer expressão regular válida (.*)) Opcional Especifica o padrão regex principal.
group Sequência Obrigatório O nome do grupo deve estar entre os nomes disponíveis no grupo de recursos. Para redirecionar para um subgrupo, use "group": "groupname.subgroupname". Você também pode usar valores dinâmicos, como ${SOURCE}, ${USER} e ${SCHEMA}, conforme usado em nomes de grupos raiz. Você não pode ter null em group.

Na regex source e user, você pode usar o nome fornecido no formato (?<sampleName>.*) como um nome de grupo dinâmico. Por exemplo:

{
            "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
}

Neste exemplo, sampleName é um valor dinâmico. Não são permitidos caracteres especiais no nome. Você pode adicionar outros valores como ${SOURCE}, ${USER} ou ${SCHEMA}. O nome do grupo diferencia maiúsculas de minúsculas. Você pode ter valores antes e depois da variável dinâmica. Por exemplo, abc-${SOURCE} ou ${toolname}-xyz.

selectorResourceEstimate limites

  • executionTime

    • min: O tipo de propriedade é string. Essa propriedade deve corresponder ao padrão ^\\d+(\\.\\d+)?[smhd]$.
    • max: O tipo de propriedade é string. Essa propriedade deve corresponder ao padrão ^\\d+(\\.\\d+)?[smhd]$.
  • peakMemory

    • min: O tipo de propriedade é string. Essa propriedade deve corresponder ao padrão ^\s*(\d+(?:\.\d+)?)\s*([a-zA-Z]+)\s*$.
    • max O tipo de propriedade é string. Essa propriedade deve corresponder ao padrão ^\s*(\d+(?:\.\d+)?)\s*([a-zA-Z]+)\s*$.
  • cpuTime

    • min: O tipo de propriedade é string. Essa propriedade deve corresponder ao padrão ^\\d+(\\.\\d+)?[smhd]$.
    • max: O tipo de propriedade é string. Essa propriedade deve corresponder ao padrão ^\\d+(\\.\\d+)?[smhd]$.

cpuQuotaPeriod properties

propriedades dos seletores
Nome da propriedade Tipo Obrigatório/Opcional Descrição
cpuQuotaPeriod Sequência Opcional Especifica o período de cota da CPU. Essa propriedade deve corresponder ao padrão ^\d+(\.\d+)?[smhd]$