Berechnungsrichtlinienreferenz
Dieser Artikel ist eine Referenz für Berechnungsrichtliniendefinitionen. Die Artikel enthalten einen Verweis auf die verfügbaren Richtlinienattribute und Einschränkungstypen. Es gibt auch Beispielrichtlinien, auf die Sie für häufige Anwendungsfälle verweisen können.
Was sind Richtliniendefinitionen?
Richtliniendefinitionen sind einzelne Richtlinienregeln, die in JSON ausgedrückt werden. Eine Definition kann einer der Attribute, die mit der Cluster-APIgesteuert werden, eine Regel hinzufügen. Diese Definitionen legen beispielsweise eine Standardzeit für die Autoterminierung fest, verbieten Benutzern die Verwendung von Pools und erzwingen die Verwendung von Photon:
{
"autotermination_minutes": {
"type": "unlimited",
"defaultValue": 4320,
"isOptional": true
},
"instance_pool_id": {
"type": "forbidden",
"hidden": true
},
"runtime_engine": {
"type": "fixed",
"value": "PHOTON",
"hidden": true
}
}
Pro Attribut kann nur eine Einschränkung vorhanden sein. Der Pfad eines Attributs spiegelt den API-Attributnamen wider. Bei geschachtelten Attributen verkettet der Pfad die geschachtelten Attributnamen mithilfe von Punkten. Attribute, die in einer Richtliniendefinition nicht definiert sind, sind nicht beschränkt.
Unterstützte Attribute
Richtlinien unterstützen alle Attribute, die mit der Cluster-APIgesteuert werden. Die Art der Einschränkungen, die Sie auf Attributen platzieren können, kann je nach Einstellung je nach Typ und Verhältnis zu den UI-Elementen variieren. Sie können keine Richtlinien verwenden, um Computeberechtigungen zu definieren.
Sie können auch Richtlinien verwenden, um die maximalen DBUs pro Stunde und Clustertyp festzulegen. Siehe Pfade für virtuelle Attribute.
In der folgenden Tabelle sind die unterstützten Attributpfade für Clusterrichtlinien aufgeführt:
Attributpfad | Typ | BESCHREIBUNG |
---|---|---|
autoscale.max_workers |
optionale Zahl | Wenn diese Option ausgeblendet ist, wird das Feld für die maximale Arbeitszahl aus der Benutzeroberfläche entfernt. |
autoscale.min_workers |
optionale Zahl | Wenn sie ausgeblendet ist, wird das Mindestarbeitsnummernfeld aus der Benutzeroberfläche entfernt. |
autotermination_minutes |
number | Ein Wert von 0 stellt keine automatische Beendigung dar. Wenn sie ausgeblendet ist, wird das Kontrollkästchen für die automatische Beendigung und die Werteingabe von der Benutzeroberfläche entfernt. |
azure_attributes.availability |
Schnur | Steuert, ob die Computeressource bedarfsgesteuerte Instanzen oder Spot-Instanzen verwendet (ON_DEMAND_AZURE oder SPOT_WITH_FALLBACK_AZURE ). |
azure_attributes.first_on_demand |
Nummer | Steuert die Anzahl der Knoten, die in bedarfsgesteuerten Instanzen platziert werden sollen. |
azure_attributes.spot_bid_max_price |
number | Steuert den maximalen Preis für Azure Spot-Instanzen. |
cluster_log_conf.path |
Schnur | Die Ziel-URL der Protokolldateien. |
cluster_log_conf.type |
Schnur | Der Typ des Protokollziels. DBFS und VOLUMES sind die einzigen zulässigen Werte. |
cluster_name |
Schnur | Der Clustername. |
custom_tags.* |
Schnur | Steuern Sie bestimmte Tagwerte, indem Sie den Tagnamen anfügen, z. B.: custom_tags.<mytag> . |
data_security_mode |
Schnur | Legt den Zugriffsmodus des Clusters fest. Unity Catalog erfordert SINGLE_USER oder USER_ISOLATION (Standard--Zugriffsmodus in der Benutzeroberfläche). Ein Wert von NONE bedeutet, dass keine Sicherheitsfeatures aktiviert sind. |
docker_image.basic_auth.password |
Schnur | Das Kennwort für die Standardauthentifizierung des Databricks Container Services-Images. |
docker_image.basic_auth.username |
Schnur | Der Benutzername für die Standardauthentifizierung des Databricks Container Services-Images. |
docker_image.url |
Schnur | Steuert die Image-URL der Databricks-Containerdienste. Wenn sie ausgeblendet ist, wird der Abschnitt "Databricks Container Services" aus der Benutzeroberfläche entfernt. |
driver_node_type_id |
optionale Zeichenfolge | Wenn sie ausgeblendet ist, wird die Auswahl des Treiberknotentyps aus der Benutzeroberfläche entfernt. |
enable_local_disk_encryption |
Boolesch | Setzen Sie true , um die Verschlüsselung der Datenträger zu aktivieren, oder false , um sie zu deaktivieren, für Datenträger, die lokal an den Cluster angehängt sind (wie über die API angegeben). |
init_scripts.*.workspace.destination init_scripts.*.volumes.destination init_scripts.*.abfss.destination init_scripts.*.file.destination |
Schnur | * bezieht sich auf den Index des Init-Skripts im Attributarray. Siehe Schreiben von Richtlinien für Arrayattribute. |
instance_pool_id |
Schnur | Wenn driver_instance_pool_id ebenfalls definiert ist, steuert dieses Attribut den Pool, der von Workerknoten verwendet wird. Andernfalls wird der Pool für alle Clusterknoten definiert. Wenn Sie Pools für Arbeitsknoten verwenden, müssen Sie auch Pools für den Treiberknoten verwenden. Wenn sie ausgeblendet ist, wird die Poolauswahl aus der Benutzeroberfläche entfernt. |
driver_instance_pool_id |
Schnur | Wenn angegeben, konfiguriert er einen anderen Pool für den Fahrerknoten als für die Arbeitsknoten. Ohne Angabe wird instance_pool_id geerbt. Wenn Sie Pools für Arbeitsknoten verwenden, müssen Sie auch Pools für den Treiberknoten verwenden. Wenn sie ausgeblendet ist, wird die Treiberpoolauswahl aus der Benutzeroberfläche entfernt. |
node_type_id |
Schnur | Wenn sie ausgeblendet ist, wird die Auswahl des Arbeitsknotentyps aus der Benutzeroberfläche entfernt. |
num_workers |
optionale Zahl | Wenn sie ausgeblendet ist, wird die Arbeitsnummernspezifikation aus der Benutzeroberfläche entfernt. |
runtime_engine |
Schnur | Bestimmt, ob der Cluster Photon verwendet oder nicht. Mögliche Werte sind PHOTON oder STANDARD . |
single_user_name |
Schnur | Steuert, welche Benutzer oder Gruppen der Computeressource zugewiesen werden können. |
spark_conf.* |
optionale Zeichenfolge | Steuert bestimmte Konfigurationswerte durch Anfügen des Konfigurationsschlüsselnamens, z. B. spark_conf.spark.executor.memory . |
spark_env_vars.* |
optionale Zeichenfolge | Steuert bestimmte Variablenwerte der Spark-Umgebung, indem die Umgebungsvariable angefügt wird, z. B. spark_env_vars.<environment variable name> . |
spark_version |
Schnur | Der Name der Spark-Image-Version, wie über die API (Databricks Runtime) angegeben. Sie können auch spezielle Richtlinienwerte verwenden, die die Databricks-Runtime dynamisch auswählen. Siehe Spezielle Richtlinienwerte für die Auswahl der Databricks Runtime. |
workload_type.clients.jobs |
boolesch | Definiert, ob die Computeressource für Aufträge verwendet werden kann. Siehe Verhindern der Verwendung von Compute für Aufträge. |
workload_type.clients.notebooks |
boolesch | Definiert, ob die Computeressource mit Notizbüchern verwendet werden kann. Siehe Verhindern der Verwendung von Compute für Aufträge. |
Pfade für virtuelle Attribute
Diese Tabelle enthält zwei zusätzliche synthetische Attribute, die von Richtlinien unterstützt werden:
Attributpfad | Typ | BESCHREIBUNG |
---|---|---|
dbus_per_hour |
Nummer | Berechnetes Attribut, das die maximalen DBUs darstellt, die eine Ressource stündlich verwenden kann, einschließlich des Treiberknotens. Diese Metrik ist eine direkte Möglichkeit zum Steuern der Kosten auf der einzelnen Computeebene. Mit Bereichseinschränkung verwenden. |
cluster_type |
Schnur | Stellt den Typ des Clusters dar, der erstellt werden kann:
Zulassen oder Blockieren, dass die angegebenen Computetypen über die Richtlinie erstellt werden. Wenn der Wert all-purpose nicht zulässig ist, wird die Richtlinie im Formular zur Erstellung von Benutzeroberflächen zur Berechnung nicht angezeigt. Wenn der job -Wert nicht zulässig ist, wird die Richtlinie nicht in der Benutzeroberfläche zum Jobs Compute angezeigt. |
Spezielle Richtlinienwerte für die Auswahl der Databricks-Runtime
Das spark_version
-Attribut unterstützt spezielle Werte, die dynamisch einer Databricks-Runtime-Version basierend auf dem aktuellen Satz unterstützter Databricks-Runtime-Versionen zugeordnet werden.
Die folgenden Werte können im attribut spark_version
verwendet werden:
auto:latest
: Ordnet die neueste GA Databricks Runtime-Version zu.auto:latest-ml
: Ordnet die neueste Databricks Runtime ML-Version zu.auto:latest-lts
: Ordnet die neueste langfristige Support (LTS)-Databricks Runtime-Version zu.auto:latest-lts-ml
: Verweist auf die neueste LTS Databricks Runtime ML-Version.auto:prev-major
: Ordnet die zweitneueste GA Databricks Runtime-Version zu. Wennauto:latest
beispielsweise 14.2 ist, istauto:prev-major
13,3.auto:prev-major-ml
: Ordnet die zweitneueste GA Databricks Runtime ML-Version zu. Wennauto:latest
beispielsweise 14.2 ist, istauto:prev-major
13,3.auto:prev-lts
: Ordnet die zweitneueste LTS Databricks Runtime-Version zu. Wennauto:latest-lts
beispielsweise 13.3 ist, istauto:prev-lts
12,2.auto:prev-lts-ml
: Ordnet die zweitneueste LTS Databricks Runtime ML-Version zu. Wennauto:latest-lts
beispielsweise 13.3 ist, istauto:prev-lts
12,2.
Hinweis
Wenn Sie diese Werte verwenden, wird die Berechnung nicht automatisch aktualisiert, wenn eine neue Laufzeitversion veröffentlicht wird. Eine benutzende Person muss die Computeressource für die Databricks Runtime-Version explizit bearbeiten, um diese zu ändern.
Unterstützte Richtlinientypen
Dieser Abschnitt enthält einen Verweis für jeden der verfügbaren Richtlinientypen. Es gibt zwei Kategorien von Richtlinientypen: feste Richtlinien und einschränkende Richtlinien.
Feste Richtlinien verhindern die Benutzerkonfiguration für ein Attribut. Die beiden Typen von festen Richtlinien sind:
Das Einschränken von Richtlinien beschränkt die Optionen eines Benutzers zum Konfigurieren eines Attributs. Durch das Einschränken von Richtlinien können Sie auch Standardwerte festlegen und Attribute optional machen. Siehe Zusätzliche Einschränkungsrichtlinienfelder.
Ihre Optionen zum Einschränken von Richtlinien sind:
- Positivliste-Richtlinie
- Blocklistenrichtlinie
- Regex-Richtlinie
- Bereichsrichtlinie
- Unbegrenzte Richtlinie
Feste Richtlinie
Feste Richtlinien beschränken das Attribut auf den angegebenen Wert. Bei anderen Attributwerten als numerischen und booleschen Werten muss der Wert durch eine Zeichenfolge dargestellt oder in eine Zeichenfolge konvertiert werden.
Mit festen Richtlinien können Sie das Attribut auch auf der Benutzeroberfläche ausblenden, indem Sie das feld hidden
auf true
festlegen.
interface FixedPolicy {
type: "fixed";
value: string | number | boolean;
hidden?: boolean;
}
Diese Beispielrichtlinie legt die Databricks-Runtime-Version fest und blendet das Feld aus der Benutzeroberfläche aus.
{
"spark_version": { "type": "fixed", "value": "auto:latest-lts", "hidden": true }
}
Verbotene Richtlinie
Eine verbotene Richtlinie verhindert, dass Benutzer ein Attribut konfigurieren. Verbotene Richtlinien sind nur mit optionalen Attributen kompatibel.
interface ForbiddenPolicy {
type: "forbidden";
}
Mit dieser Richtlinie wird das Anfügen von Pools an die Berechnungen für Workerknoten untersagt. Pools sind auch für den Treiberknoten verboten, da driver_instance_pool_id
die Richtlinie erbt.
{
"instance_pool_id": { "type": "forbidden" }
}
Positivliste-Richtlinie
Eine Zulassungsliste gibt eine Liste der Werte an, die der Benutzer beim Konfigurieren eines Attributs auswählen kann.
interface AllowlistPolicy {
type: "allowlist";
values: (string | number | boolean)[];
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
In diesem Beispiel für eine Zulassungsliste kann der Benutzer zwischen zwei Databricks-Runtime-Versionen auswählen:
{
"spark_version": { "type": "allowlist", "values": ["13.3.x-scala2.12", "12.2.x-scala2.12"] }
}
Blockliste-Richtlinie
Die Blocklistenrichtlinie listet unzulässige Werte auf. Da die Werte exakt übereinstimmen müssen, funktioniert diese Richtlinie möglicherweise nicht wie erwartet, wenn das Attribut in der Darstellung des Wertes nachlässig ist (z. B. indem führende und nachgestellte Leerzeichen erlaubt werden).
interface BlocklistPolicy {
type: "blocklist";
values: (string | number | boolean)[];
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
In diesem Beispiel wird verhindert, dass der Benutzer 7.3.x-scala2.12
als Databricks-Runtime auswählt.
{
"spark_version": { "type": "blocklist", "values": ["7.3.x-scala2.12"] }
}
RegEx-Richtlinie
Eine regex-Richtlinie beschränkt die verfügbaren Werte auf diejenigen, die dem regex entsprechen. Stellen Sie sicher, dass Ihr regulärer Ausdruck am Anfang und Ende des Zeichenfolgenwerts verankert ist.
interface RegexPolicy {
type: "regex";
pattern: string;
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
In diesem Beispiel werden die Databricks-Runtime-Versionen beschränkt, aus der ein Benutzer auswählen kann:
{
"spark_version": { "type": "regex", "pattern": "13\\.[3456].*" }
}
Bereichsrichtlinie
Eine Bereichsrichtlinie beschränkt den Wert auf einen angegebenen Bereich mithilfe der Felder minValue
und maxValue
. Der Wert muss eine Dezimalzahl sein.
Die numerischen Grenzwerte müssen als doppelter Gleitkommawert dargestellt werden. Um das Fehlen eines bestimmten Grenzwerts anzuzeigen, können Sie entweder minValue
oder maxValue
weglassen.
interface RangePolicy {
type: "range";
minValue?: number;
maxValue?: number;
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
In diesem Beispiel wird die maximale Anzahl von Mitarbeitern auf 10 beschränkt:
{
"num_workers": { "type": "range", "maxValue": 10 }
}
Unbeschränkte Richtlinie
Die unbegrenzte Richtlinie wird verwendet, um Attribute erforderlich zu machen oder den Standardwert in der Benutzeroberfläche festzulegen.
interface UnlimitedPolicy {
type: "unlimited";
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
In diesem Beispiel wird dem Computer das COST_BUCKET
-Tag hinzugefügt.
{
"custom_tags.COST_BUCKET": { "type": "unlimited" }
}
So legen Sie einen Standardwert für eine Spark-Konfigurationsvariable fest, lassen aber auch das Auslassen (Entfernen) zu:
{
"spark_conf.spark.my.conf": { "type": "unlimited", "isOptional": true, "defaultValue": "my_value" }
}
Zusätzliche Felder für Einschränkungsrichtlinien
Zum Einschränken von Richtlinientypen können Sie zwei zusätzliche Felder angeben:
defaultValue
: Der Wert, der automatisch auf der Benutzeroberfläche zur Computeerstellung aufgefüllt wird.isOptional
– Eine Einschränkungsrichtlinie für ein Attribut macht sie automatisch erforderlich. Um das Attribut optional zu machen, legen Sie das feldisOptional
auftrue
fest.
Hinweis
Standardwerte werden nicht automatisch auf die Berechnung angewendet, die mit der Cluster-APIerstellt wurde. Um Standardwerte mithilfe der API anzuwenden, fügen Sie den Parameter apply_policy_default_values
zur Computedefinition hinzu, und legen Sie ihn auf true
fest.
In dieser Beispielrichtlinie ist der Standardwert id1
für den Pool für Workerknoten angegeben, jedoch als optional festgelegt. Beim Erstellen der Berechnung können Sie einen anderen Pool auswählen bzw. festlegen, dass kein Pool verwendet wird. Wenn driver_instance_pool_id
nicht in der Richtlinie oder beim Erstellen der Berechnung definiert ist, wird derselbe Pool für Arbeitsknoten und den Treiberknoten verwendet.
{
"instance_pool_id": { "type": "unlimited", "isOptional": true, "defaultValue": "id1" }
}
Schreiben von Richtlinien für Arrayattribute
Sie können Richtlinien für Arrayattribute auf zwei Arten angeben:
- Allgemeine Einschränkungen für alle Arrayelemente. Für diese Einschränkungen wird das Platzhaltersymbol
*
im Richtlinienpfad verwendet. - Spezifische Einschränkungen für ein Arrayelement bei einem bestimmten Index. Für diese Einschränkung wird eine Zahl im Pfad verwendet.
Zum Beispiel beginnen bei dem Array-Attribut init_scripts
die generischen Pfade mit init_scripts.*
und die spezifischen Pfade mit init_scripts.<n>
, wobei <n>
ein ganzzahliger Index im Array ist (beginnend bei 0).
Sie können generische und spezifische Einschränkungen kombinieren, in diesem Fall gilt die generische Einschränkung für jedes Arrayelement, das keine bestimmte Einschränkung hat. Nur eine Richtlinienbeschränkung gilt jeweils.
In den folgenden Abschnitten finden Sie Beispiele für allgemeine Beispiele, in denen Arrayattribute verwendet werden.
Voraussetzen einschlussspezifischer Einträge
Sie können keine bestimmten Werte benötigen, ohne die Reihenfolge anzugeben. Beispiel:
{
"init_scripts.0.volumes.destination": {
"type": "fixed",
"value": "<required-script-1>"
},
"init_scripts.1.volumes.destination": {
"type": "fixed",
"value": "<required-script-2>"
}
}
Erfordern eines festen Werts für die gesamte Liste
{
"init_scripts.0.volumes.destination": {
"type": "fixed",
"value": "<required-script-1>"
},
"init_scripts.*.volumes.destination": {
"type": "forbidden"
}
}
Die Nutzung gänzlich untersagen
{
"init_scripts.*.volumes.destination": {
"type": "forbidden"
}
}
Zulassen von Einträgen, die einer bestimmten Einschränkung folgen
{
"init_scripts.*.volumes.destination": {
"type": "regex",
"pattern": ".*<required-content>.*"
}
}
Korrigieren eines bestimmten Satzes von Init-Skripten
Bei init_scripts
Pfaden kann das Array eine von mehreren Strukturen enthalten, für die je nach Anwendungsfall möglicherweise alle möglichen Varianten behandelt werden müssen. Wenn Sie z. B. einen bestimmten Satz von Init-Skripts anfordern möchten und eine beliebige Variante der anderen Version nicht zulassen möchten, können Sie das folgende Muster verwenden:
{
"init_scripts.0.volumes.destination": {
"type": "fixed",
"value": "<volume-paths>"
},
"init_scripts.1.volumes.destination": {
"type": "fixed",
"value": "<volume-paths>"
},
"init_scripts.*.workspace.destination": {
"type": "forbidden"
},
"init_scripts.*.abfss.destination": {
"type": "forbidden"
},
"init_scripts.*.file.destination": {
"type": "forbidden"
}
}
Richtlinienbeispiele
Dieser Abschnitt enthält Richtlinienbeispiele, die Sie als Verweise zum Erstellen eigener Richtlinien verwenden können. Sie können auch die von Azure Databricks bereitgestellten Richtlinienfamilien als Vorlagen für allgemeine Richtlinienanwendungsfälle verwenden.
- Allgemeine Berechnungsrichtlinie
- Definieren von Grenzwerten für die DLT-Pipelineberechnung
- Einfache mittelgroße Richtlinie
- Richtlinie „Nur Aufträge“
- Richtlinie für externen Metastore
- Verhindern der Verwendung von Compute für Aufträge
- Entfernen der automatischen Skalierungsrichtlinie
- Erzwingung von benutzerdefinierten Tags
Allgemeine Computerrichtlinie
Eine allgemeine Berechnungsrichtlinie, die benutzerleitet und einige Funktionen einschränkt, wobei Tags erforderlich sind, die maximale Anzahl von Instanzen eingeschränkt und Timeout erzwungen wird.
{
"instance_pool_id": {
"type": "forbidden",
"hidden": true
},
"spark_version": {
"type": "regex",
"pattern": "12\\.[0-9]+\\.x-scala.*"
},
"node_type_id": {
"type": "allowlist",
"values": ["Standard_L4s", "Standard_L8s", "Standard_L16s"],
"defaultValue": "Standard_L16s_v2"
},
"driver_node_type_id": {
"type": "fixed",
"value": "Standard_L16s_v2",
"hidden": true
},
"autoscale.min_workers": {
"type": "fixed",
"value": 1,
"hidden": true
},
"autoscale.max_workers": {
"type": "range",
"maxValue": 25,
"defaultValue": 5
},
"autotermination_minutes": {
"type": "fixed",
"value": 30,
"hidden": true
},
"custom_tags.team": {
"type": "fixed",
"value": "product"
}
}
Definieren von Grenzwerten für die DLT-Pipelineberechnung
Hinweis
Wenn Sie Richtlinien zum Konfigurieren von DLT-Compute verwenden, empfiehlt Databricks, eine einzelne Richtlinie sowohl auf die default
als auch auf maintenance
Compute anzuwenden.
Um eine Richtlinie für eine Pipelinecomputeressource zu konfigurieren, erstellen Sie eine Richtlinie mit dem auf dlt
festgelegten Feld cluster_type
. Im folgenden Beispiel wird eine minimale Richtlinie für eine DLT-Berechnung erstellt:
{
"cluster_type": {
"type": "fixed",
"value": "dlt"
},
"num_workers": {
"type": "unlimited",
"defaultValue": 3,
"isOptional": true
},
"node_type_id": {
"type": "unlimited",
"isOptional": true
},
"spark_version": {
"type": "unlimited",
"hidden": true
}
}
Einfache mittlere Politik
Ermöglicht Benutzern das Erstellen einer mittelgroßen Berechnung mit minimaler Konfiguration. Bei der Erstellung ist der Berechnungsname das einzige erforderliche Feld. Die übrigen Felder sind feste oder verborgene Felder.
{
"instance_pool_id": {
"type": "forbidden",
"hidden": true
},
"spark_conf.spark.databricks.cluster.profile": {
"type": "forbidden",
"hidden": true
},
"autoscale.min_workers": {
"type": "fixed",
"value": 1,
"hidden": true
},
"autoscale.max_workers": {
"type": "fixed",
"value": 10,
"hidden": true
},
"autotermination_minutes": {
"type": "fixed",
"value": 60,
"hidden": true
},
"node_type_id": {
"type": "fixed",
"value": "Standard_L8s_v2",
"hidden": true
},
"driver_node_type_id": {
"type": "fixed",
"value": "Standard_L8s_v2",
"hidden": true
},
"spark_version": {
"type": "fixed",
"value": "auto:latest-ml",
"hidden": true
},
"custom_tags.team": {
"type": "fixed",
"value": "product"
}
}
Richtlinie „Nur Aufträge“
Ermöglicht Benutzern das Erstellen eines Jobs Compute zum Ausführen von Aufträgen. Benutzer können mit dieser Richtlinie keinen All-Purpose Compute erstellen.
{
"cluster_type": {
"type": "fixed",
"value": "job"
},
"dbus_per_hour": {
"type": "range",
"maxValue": 100
},
"instance_pool_id": {
"type": "forbidden",
"hidden": true
},
"num_workers": {
"type": "range",
"minValue": 1
},
"node_type_id": {
"type": "regex",
"pattern": "Standard_[DLS]*[1-6]{1,2}_v[2,3]"
},
"driver_node_type_id": {
"type": "regex",
"pattern": "Standard_[DLS]*[1-6]{1,2}_v[2,3]"
},
"spark_version": {
"type": "unlimited",
"defaultValue": "auto:latest-lts"
},
"custom_tags.team": {
"type": "fixed",
"value": "product"
}
}
Richtlinie für externen Metastore
Ermöglicht Benutzern das Erstellen einer Berechnung mit einem von Administratoren definierten Metastore, der bereits angefügt ist. Dies ist nützlich, damit Benutzer ihre eigene Berechnung erstellen können, ohne dass zusätzliche Konfiguration erforderlich ist.
{
"spark_conf.spark.hadoop.javax.jdo.option.ConnectionURL": {
"type": "fixed",
"value": "jdbc:sqlserver://<jdbc-url>"
},
"spark_conf.spark.hadoop.javax.jdo.option.ConnectionDriverName": {
"type": "fixed",
"value": "com.microsoft.sqlserver.jdbc.SQLServerDriver"
},
"spark_conf.spark.databricks.delta.preview.enabled": {
"type": "fixed",
"value": "true"
},
"spark_conf.spark.hadoop.javax.jdo.option.ConnectionUserName": {
"type": "fixed",
"value": "<metastore-user>"
},
"spark_conf.spark.hadoop.javax.jdo.option.ConnectionPassword": {
"type": "fixed",
"value": "<metastore-password>"
}
}
Verhindern der Verwendung von Compute für Aufträge
Diese Richtlinie verhindert, dass Benutzer die Berechnung zum Ausführen von Aufträgen verwenden. Benutzer können die Berechnung nur mit Notizbüchern verwenden.
{
"workload_type.clients.notebooks": {
"type": "fixed",
"value": true
},
"workload_type.clients.jobs": {
"type": "fixed",
"value": false
}
}
Richtlinie zum Entfernen der automatischen Skalierung
Diese Richtlinie deaktiviert die automatische Skalierung und ermöglicht es dem Benutzer, die Anzahl der Mitarbeiter innerhalb eines bestimmten Bereichs festzulegen.
{
"num_workers": {
"type": "range",
"maxValue": 25,
"minValue": 1,
"defaultValue": 5
}
}
Erzwingung von benutzerdefinierten Tags
Verwenden Sie das attribut custom_tags.<tag-name>
, um einer Richtlinie eine Computetagregel hinzuzufügen.
Beispielsweise muss jeder Benutzer, der diese Richtlinie verwendet, ein COST_CENTER
Tag mit 9999, 9921 oder 9531 ausfüllen, damit die Berechnung gestartet wird:
{ "custom_tags.COST_CENTER": { "type": "allowlist", "values": ["9999", "9921", "9531"] } }