Eigenschaften der Ressourcengruppe
Sie können die JSON-Datei der Ressourcengruppe so formatieren, dass sie mit der Beispiel-Ressourcengruppendatei übereinstimmt, die Sie von der Konsole herunterladen können.
In den folgenden Abschnitten werden die Eigenschaften der Ressourcengruppen beschrieben, die Sie konfigurieren können.
Haupteigenschaften
| Eigenschaftsname | Typ | Erforderlich/Optional | Beschreibung |
|---|---|---|---|
rootGroups |
Array | Erforderlich | Legt die Spezifikationen für Ressourcengruppen fest. |
selectors |
Array | Erforderlich | Gibt die Selektorkonfigurationen für die Ressourcengruppen an. |
cpuQuotaPeriod |
Zeichenfolge | Optionale | Gibt den CPU-Kontingentszeitraum an. Diese Eigenschaft muss mit dem Muster ^\d+(.\d+)?[smhd]$ übereinstimmen. |
rootGroups Eigenschaften
| Eigenschaftsname | Typ | Erforderlich/Optional | Beschreibung |
|---|---|---|---|
name |
Zeichenfolge | Erforderlich | Name der Ressourcengruppe. Wenn der Name {, } oder $ enthält, muss der Name dem Muster ${([a-zA-Z][a-zA-Z0-9]*)} entsprechen. Leerzeichen sind im Namen erlaubt. Der Name darf keinen Punkt
(.) enthalten. Sie können nicht denselben Namen für zwei Geschwistergruppen verwenden. Sie können denselben Namen für eine Hauptgruppe und eine Untergruppe verwenden. |
softMemoryLimit |
Zeichenfolge | Erforderlich | Gibt die Grenze für den weichen Speicher an. Mindestwert: 0%. Höchstwert: 999%. |
maxQueued |
Integer | Optionale | Gibt die maximale Anzahl von Anfragen in der Warteschlange an. Mindestwert: 0. Höchstwert: 2147483647. Der Wert darf nicht mit 0 beginnen. Zum Beispiel: 01, 05. Geben Sie die Werte als 1,
5 an. 0 allein ist ein gültiger Wert. |
softConcurrencyLimit |
Ganzzahl oder Null | Optionale | Gibt die weiche Gleichzeitigkeitsgrenze an. Mindestwert: 0. Höchstwert: 2147483647. Der Wert darf nicht mit 0 beginnen. Zum Beispiel: 01, 05. Geben Sie die Werte als 1, 5 an. 0 allein ist ein gültiger Wert. |
maxRunning |
Ganzzahl oder Null | Optionale | Gibt die maximale Anzahl der laufenden Sendungen an. Mindestwert: 0. Höchstwert: 2147483647. Der Wert darf nicht mit 0 beginnen. Zum Beispiel: 01, 05. Geben Sie die Werte als 1, 5 an. 0 allein ist ein gültiger Wert. |
hardConcurrencyLimit |
Integer | Erforderlich (Wenn der Wert maxRunning vorhanden ist, nimmt hardConcurrencyLimit diesen Wert an. Wenn maxRunning nicht gesetzt ist, müssen Sie einen Wert für hardConcurrencyLimit setzen) |
Gibt die harte Gleichzeitigkeitsgrenze an. Mindestwert: 0. Höchstwert: 2147483647. Der Wert muss größer als oder gleich softConcurrencyLimit sein. Sie darf nicht mit 0 beginnen. Zum Beispiel: 01,
05. Geben Sie die Werte als 1, 5 an. 0 allein ist ein gültiger Wert. |
schedulingPolicy |
String (Die folgenden Werte sind verfügbar: fair, weighted, weighted_fair, query_priority. Bei diesen Werten wird nicht zwischen Groß- und Kleinschreibung unterschieden) |
Optionale | Legt die Terminierungsrichtlinie fest. |
schedulingWeight |
Ganzzahl oder Null | Optionale | Gibt die Terminierungsgewichtung an. Erlaubte Werte (Minimum bis Maximum): 1 bis 2147483647. Der Wert darf nicht mit 0 beginnen. Zum Beispiel: 01, 05. Geben Sie die Werte als 1, 5 an. 0 allein ist ein gültiger Wert. Wenn eine Untergruppe schedulingWeight hat, müssen alle entsprechenden Geschwister in dieser Untergruppe schedulingWeight haben. |
subGroups |
Array oder null | Optionale | Gibt die Untergruppen innerhalb der Ressourcengruppe an. Für Untergruppen gelten die gleichen Regeln für verschiedene Eigenschaften wie für die Ressourcengruppe. |
jmxExport |
Boolescher Wert oder Null | Optionale | Zeigt an, ob der JMX-Export aktiviert ist. |
softCpuLimit |
Zeichenfolge | Optionale | Gibt das Soft-CPU-Limit an. Sie muss dem Muster ^\d+(.\d+)?[smhd]$ entsprechen. Wenn hardCpuLimit definiert ist, muss der Wert von softCpuLimit kleiner oder gleich hardCpuLimit sein. |
hardCpuLimit |
Zeichenfolge | Optionale | Gibt das harte CPU-Limit an. Sie muss dem Muster ^\d+(.\d+)?[smhd]$ entsprechen. |
perQueryLimits |
Object | Optionale | Legt Grenzwerte pro Abfrage fest. Beispiel: "perQueryLimits": { "executionTimeLimit": "30m", "totalMemoryLimit": "2GB", "cpuTimeLimit": "1h" }. Das Objekt
kann eine, zwei oder drei der folgenden Grenzen haben. Negative Werte sind für keinen der folgenden Grenzwerte zulässig. 1. executionTimeLimit (Typ: String, Muster: Diese Eigenschaft muss
mit dem Muster ^\d+(.\d+)?[smhd]$ übereinstimmen.), 2. totalMemoryLimit (Typ: String, Muster: Diese Eigenschaft muss mit dem Muster ^\s*(\d+(?:.\d+)?)\s*([a-zA-Z]+)\s*$ übereinstimmen.), 3. cpuTimeLimit (Typ: String, Muster: Diese Eigenschaft muss mit dem Muster ^\d+(.\d+)?[smhd]$ übereinstimmen) |
workersPerQueryLimit |
Ganzzahl oder Null | Optionale | Gibt das Limit der Arbeiter pro Abfrage an. Erlaubte Werte (Minimum bis Maximum): -2147483648 bis 2147483647. Der Wert muss größer als oder gleich softConcurrencyLimit sein. Sie darf nicht mit 0 beginnen. Zum
Beispiel: 01, 05. Geben Sie die Werte als 1, 5 an. 0 allein ist ein gültiger Wert. |
selectors Eigenschaften
| Eigenschaftsname | Typ | Erforderlich/Optional | Beschreibung |
|---|---|---|---|
user |
String oder null (Strings können jeden gültigen regulären Ausdruck haben (.*).) |
Optionale | Gibt das Benutzer-Regex-Muster an. |
source |
String oder null (Strings können jeden gültigen regulären Ausdruck haben (.*).) |
Optionale | Gibt das Quell-Regex-Muster an. |
queryType |
String oder null. (Mögliche Werte sind data_definition, delete, describe, explain, analyze, insert, select, control, und update.
Bei diesen Werten wird nicht zwischen Groß- und Kleinschreibung unterschieden) |
Optionale | Gibt den Abfragetyp an. |
clientTags |
Liste von Zeichenketten oder Null (Beispiel: "clientTags": ["resourceGroup1","resourceGroup2"]. storageStrings kann jeden gültigen regulären Ausdruck enthalten (.*).) |
Optionale | Gibt die Client-Tags an. |
selectorResourceEstimate |
Objekt oder null | Optionale | Gibt die Ressourcenschätzung des Selektors an. Beispiel: "selectorResourceEstimate": {"executionTime": {"min": "5m", "max": "10m"}, "cpuTime": {"min": "30m", "max": "1h"}, "peakMemory": {"min": "512MB", "max": "2GB"}}.
Das Objekt kann eine, zwei oder drei der Grenzen haben. Sie können auch die Parameter min, max oder beide für alle drei Grenzwerte verwenden. Zum Beispiel "selectorResourceEstimate": {"executionTime": {"min": "5m"}.
Negative Werte sind für keinen der Grenzwerte zulässig. Weitere Informationen zu den Grenzen finden Sie unter selectorResourceEstimate Grenzen. |
clientInfo |
String oder null (Strings können jeden gültigen regulären Ausdruck haben (.*).) |
Optionale | Gibt das Client-Info-Regex-Muster an. |
schema |
String oder null (Strings können jeden gültigen regulären Ausdruck haben (.*).) |
Optionale | Gibt das Schema an. |
principal |
String oder null (Strings können jeden gültigen regulären Ausdruck haben (.*).) |
Optionale | Gibt das Haupt-Regex-Muster an. |
group |
Zeichenfolge | Erforderlich | Der Gruppenname muss einer der verfügbaren Namen der Ressourcengruppe sein. Für die Weiterleitung zu einer Untergruppe verwenden Sie "group": "groupname.subgroupname". Sie können auch dynamische Werte wie
${SOURCE}, ${USER} und ${SCHEMA} verwenden, die in den Namen der Stammgruppen verwendet werden. Sie können null nicht in group haben. |
In den Regex source und user können Sie den angegebenen Namen im Format (?<sampleName>.*) als dynamischen Gruppennamen verwenden. Beispiel:
{
"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
}
In diesem Beispiel ist sampleName ein dynamischer Wert. Sonderzeichen sind im Namen nicht erlaubt. Sie können andere Werte wie ${SOURCE}, ${USER} oder ${SCHEMA} hinzufügen. Beim Gruppennamen
wird zwischen Groß- und Kleinschreibung unterschieden. Sie können Werte vor und nach der dynamischen Variablen haben. Zum Beispiel: abc-${SOURCE} oder ${toolname}-xyz.
selectorResourceEstimate Grenzwerte
-
executionTimemin: Der Eigenschaftstyp ist String. Diese Eigenschaft muss dem Muster^\\d+(\\.\\d+)?[smhd]$entsprechen.max: Der Eigenschaftstyp ist String. Diese Eigenschaft muss dem Muster^\\d+(\\.\\d+)?[smhd]$entsprechen.
-
peakMemorymin: Der Eigenschaftstyp ist String. Diese Eigenschaft muss dem Muster^\s*(\d+(?:\.\d+)?)\s*([a-zA-Z]+)\s*$entsprechen.maxDer Eigenschaftstyp ist String. Diese Eigenschaft muss dem Muster^\s*(\d+(?:\.\d+)?)\s*([a-zA-Z]+)\s*$entsprechen.
-
cpuTimemin: Der Eigenschaftstyp ist String. Diese Eigenschaft muss dem Muster^\\d+(\\.\\d+)?[smhd]$entsprechen.max: Der Eigenschaftstyp ist String. Diese Eigenschaft muss dem Muster^\\d+(\\.\\d+)?[smhd]$entsprechen.
cpuQuotaPeriod Eigenschaften
| Eigenschaftsname | Typ | Erforderlich/Optional | Beschreibung |
|---|---|---|---|
| cpuQuotaPeriod | Zeichenfolge | Optionale | Gibt den CPU-Kontingentszeitraum an. Diese Eigenschaft muss mit dem Muster ^\d+(\.\d+)?[smhd]$ übereinstimmen |