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äufig verwendete Anwendungsfälle verweisen können.
Was sind die Azure Policy-Definitionen?
Richtliniendefinitionen sind einzelne Richtlinienregeln, die in JSON ausgedrückt werden. Eine Definition kann einem der Attribute, die mit der Cluster-API gesteuert 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 festgelegt werden. 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-API gesteuert 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 Berechnungsberechtigungen 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 | Type | BESCHREIBUNG |
---|---|---|
autoscale.max_workers |
optionale Zahl | Wird dieses Attribut ausgeblendet, wird das Feld für die maximale Anzahl von Workern von der Benutzeroberfläche entfernt. |
autoscale.min_workers |
optionale Zahl | Wird dieses Attribut ausgeblendet, wird das Feld für die Mindestanzahl von Workern von der Benutzeroberfläche entfernt. |
autotermination_minutes |
number | Der Wert 0 bedeutet, dass keine automatische Beendigung erfolgt. Wenn dieses Attribut ausgeblendet wird, werden das Kontrollkästchen für die automatische Beendigung und die Werteingabe von der Benutzeroberfläche entfernt. |
azure_attributes.availability |
Zeichenfolge | Steuert, ob die Computeressource bedarfsgesteuerte Instanzen oder Spot-Instanzen verwendet (ON_DEMAND_AZURE oder SPOT_WITH_FALLBACK_AZURE ). |
azure_attributes.first_on_demand |
Zahl | Steuert die Anzahl der Knoten, die in bedarfsgesteuerten Instanzen platziert werden sollen. |
azure_attributes.spot_bid_max_price |
Zahl | Steuert den maximalen Preis für Azure-Spot-Instanzen. |
cluster_log_conf.path |
Zeichenfolge | Die Ziel-URL der Protokolldateien. |
cluster_log_conf.type |
Zeichenfolge | Der Typ des Protokollziels. DBFS ist der einzige zulässige Wert. |
cluster_name |
Zeichenfolge | Den Clusternamen. |
custom_tags.* |
Zeichenfolge | Steuern Sie bestimmte Tagwerte, indem Sie den Tagnamen anfügen, z. B.: custom_tags.<mytag> . |
data_security_mode |
Zeichenfolge | Legt den Zugriffsmodus des Clusters fest. Unity Catalog erfordert SINGLE_USER oder USER_ISOLATION (Zugriffsmodus „Freigegeben“ auf der Benutzeroberfläche). Der Wer NONE bedeutet, dass keine Sicherheitsfeatures aktiviert sind. |
docker_image.basic_auth.password |
Zeichenfolge | Das Kennwort für die Standardauthentifizierung des Databricks Container Services-Images. |
docker_image.basic_auth.username |
Zeichenfolge | Der Benutzername für die Standardauthentifizierung des Databricks Container Services-Images. |
docker_image.url |
Zeichenfolge | Steuert die Image-URL von Databricks Container Services. Ist dieses Attribut ausgeblendet, wird der Databricks Container Services-Abschnitt von der Benutzeroberfläche entfernt. |
driver_node_type_id |
optionale Zeichenfolge | Ist dieses Attribut ausgeblendet, wird die Auswahl des Treiberknotentyps von der Benutzeroberfläche entfernt. |
enable_local_disk_encryption |
boolean | Legen Sie diese Einstellung auf true oder auf false fest, um die Verschlüsselung von Datenträgern zu aktivieren bzw. zu deaktivieren, die lokal an den Cluster angefügt sind (gemäß Angabe über die API). |
init_scripts.*.workspace.destination init_scripts.*.volumes.destination init_scripts.*.abfss.destination init_scripts.*.file.destination |
Zeichenfolge | * verweist auf den Index des Initialisierungsskripts im Attributarray. Siehe Schreiben von Richtlinien für Arrayattribute. |
instance_pool_id |
Zeichenfolge | Wenn driver_instance_pool_id ebenfalls definiert ist, steuert dieses Attribut den Pool, der von Workerknoten verwendet wird. Anderenfalls wird der Pool für alle Clusterknoten definiert. Wenn Sie Pools für Workerknoten verwenden, müssen Sie auch Pools für den Treiberknoten verwenden. Ist dieses Attribut ausgeblendet, wird die Poolauswahl von der Benutzeroberfläche entfernt. |
driver_instance_pool_id |
Zeichenfolge | Bei Angabe dieses Attributs wird für den Treiberknoten ein anderer Pool konfiguriert als für Workerknoten. Ohne Angabe wird instance_pool_id geerbt. Wenn Sie Pools für Workerknoten verwenden, müssen Sie auch Pools für den Treiberknoten verwenden. Ist dieses Attribut ausgeblendet, wird die Treiberpoolauswahl von der Benutzeroberfläche entfernt. |
node_type_id |
Zeichenfolge | Ist dieses Attribut ausgeblendet, wird die Auswahl des Workerknotentyps von der Benutzeroberfläche entfernt. |
num_workers |
optionale Zahl | Ist dieses Attribut ausgeblendet, wird die Angabe der Workeranzahl von der Benutzeroberfläche entfernt. |
runtime_engine |
Zeichenfolge | Bestimmt, ob der Cluster Photon verwendet oder nicht. Mögliche Werte sind PHOTON und STANDARD . |
single_user_name |
Zeichenfolge | Der Benutzername für den Einzelbenutzerzugriff mit Passthrough-Anmeldeinformationen. |
spark_conf.* |
optionale Zeichenfolge | Steuert bestimmte Konfigurationswerte, indem der Name des Konfigurationsschlüssels angefügt wird, z. B.: spark_conf.spark.executor.memory . |
spark_env_vars.* |
optionale Zeichenfolge | Steuert bestimmte Werte von Spark-Umgebungsvariablen, indem die Umgebungsvariable angefügt wird, z. B.: spark_env_vars.<environment variable name> . |
spark_version |
Zeichenfolge | Der Name der Spark-Bildversion gemäß der Angabe über die API (die Databricks Runtime). Sie können auch spezielle Richtlinienwerte verwenden, welche die Databricks Runtime dynamisch auswählen. Siehe Spezielle Richtlinienwerte für die Auswahl der Databricks Runtime. |
workload_type.clients.jobs |
boolean | Definiert, ob die Computeressource für Aufträge verwendet werden kann. Weitere Informationen finden Sie unter Verhindern der Verwendung von Compute für Aufträge. |
workload_type.clients.notebooks |
boolean | Definiert, ob die Compute-Ressource für Notebooks verwendet werden kann. Weitere Informationen finden Sie unter 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 | Type | Beschreibung |
---|---|---|
dbus_per_hour |
Zahl | Berechnetes Attribut, das die maximalen DBUs darstellt, die eine Ressource stündlich verwenden kann, einschließlich des Treiberknotens. Über diese Metrik lassen sich die Kosten auf Ebene einzelner Cluster direkt steuern. Verwenden Sie es mit Bereichsbeschränkung. |
cluster_type |
Zeichenfolge | Gibt den Typ von Cluster an, der erstellt werden kann: - all-purpose für universelle Azure Databricks-Berechnungen- job für die vom Auftragsplaner erstellte Auftragsberechnungen- dlt für Berechnungen, die für Delta Live-Tabellenpipelines erstellt wurdenZulassen oder Blockieren, dass die angegebenen Berechnungsarten ü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 zur Auftragsberechnung 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 der aktuellen Menge unterstützter Databricks Runtime-Versionen zugeordnet werden.
Die folgenden Werte können im spark_version
-Attribut 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
: Ordnet die neueste LTS Databricks Runtime ML-Version zu.auto:prev-major
: Ordnet die zweitneueste GA Databricks Runtime-Version zu. Wenn z. Bauto:latest
14.2 ist, dann istauto:prev-major
13.3.auto:prev-major-ml
: Ordnet die zweitneueste GA Databricks Runtime ML-Version zu. Wenn z. Bauto:latest
14.2 ist, dann istauto:prev-major
13.3.auto:prev-lts
: Ordnet die zweitneueste LTS Databricks Runtime-Version zu. Wenn z. Bauto:latest-lts
13.3 ist, dann istauto:prev-lts
12.2.auto:prev-lts-ml
: Ordnet die zweitneueste LTS Databricks Runtime ML-Version zu. Wenn z. Bauto:latest-lts
13.3 ist, dann istauto:prev-lts
12.2.
Hinweis
Die Verwendung dieser Werte führt nicht dazu, dass die Berechnung automatisch aktualisiert wird, wenn eine neue Laufzeitversion veröffentlicht wird. Ein Benutzer muss die Berechnung 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 Arten von festen Richtlinien sind:
Einschränkende Richtlinien beschränkt die Optionen eines Benutzers zum Konfigurieren eines Attributs. Durch einschränkende Richtlinien können Sie auch Standardwerte festlegen und Attribute optional machen. Siehe Zusätzliche Einschränkungsrichtlinienfelder.
Ihre Optionen zum Einschränken von Richtlinien sind:
- Allowlist-Richtlinie
- Blocklist-Richtlinie
- RegEx-Richtlinie
- Bereichsrichtlinie
- Unbeschränkte Richtlinie
Feste Richtlinie
Feste Richtlinien beschränken das Attribut auf den angegebenen Wert. Bei anderen Attributwerten als numerischen oder booleschen Werten muss der Wert des Attributs durch eine Zeichenfolge dargestellt werden bzw. in eine Zeichenfolge konvertierbar sein.
Mit festen Richtlinien können Sie das Attribut auch auf der Benutzeroberfläche ausblenden, indem Sie das hidden
-Feld auf true
einstellen.
interface FixedPolicy {
type: "fixed";
value: string | number | boolean;
hidden?: boolean;
}
Diese Beispielrichtlinie behebt die Databricks-Runtime-Version und blendet das Feld aus der Benutzeroberfläche des Benutzers aus:
{
"spark_version": { "type": "fixed", "value": "auto:latest-lts", "hidden": true }
}
Unzulässige 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. Darüber hinaus sind Pools auch für den Treiberknoten unzulässig, da driver_instance_pool_id
die Richtlinie erbt.
{
"instance_pool_id": { "type": "forbidden" }
}
Allowlist-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" ] }
}
Blocklist-Richtlinie
Die Blocklistenrichtlinie listet unzulässige Werte auf. Da die Werte genau übereinstimmen müssen, funktioniert diese Richtlinie möglicherweise nicht wie erwartet, wenn das Attribut keine konkrete Vorgabe für die Darstellung des Werts umfasst (wenn z. B. vorstehende und nachfolgende Leerzeichen zulässig sind).
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 Richtlinie für reguläre Ausdrücke beschränkt die verfügbaren Werte auf diejenigen, die dem regulären Ausdruck 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 denen 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 können. Wenn ein bestimmter Grenzwert fehlen soll, können Sie 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 unbeschränkte 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 das COST_BUCKET
-Tag zur Berechnung hinzugefügt:
{
"custom_tags.COST_BUCKET": { "type": "unlimited" }
}
So legen Sie einen Standardwert für eine Spark-Konfigurationsvariable fest, lassen aber auch das Weglassen (Entfernen) dieses Werts zu:
{
"spark_conf.spark.my.conf": { "type": "unlimited", "isOptional": true, "defaultValue": "my_value" }
}
Zusätzliche einschränkende Richtlinienfelder
In den einschränkenden Richtlinienarten können zwei zusätzliche Felder angegeben werden:
defaultValue
– Der Wert, der automatisch in der erstellten Berechnungsbenutzeroberfläche aufgefüllt wird.isOptional
– Eine Einschränkungsrichtlinie für ein Attribut macht sie automatisch erforderlich. Wenn das Attribut als optional festgelegt werden soll, setzen Sie das FeldisOptional
auftrue
.
Hinweis
Standardwerte werden nicht automatisch auf die Berechnung angewendet, die mit der Cluster-API erstellt wurde. Um Standardwerte mithilfe der API anzuwenden, fügen Sie den Parameter apply_policy_default_values
zur Berechnungsdefinition 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
in der Richtlinie nicht angegeben oder beim Erstellen der Berechnung nicht definiert wird, wird für Workerknoten und den Treiberknoten derselbe Pool 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:
- Generische Einschränkungen für alle Arrayelemente. Für diese Einschränkungen wird das Platzhaltersymbol
*
im Richtlinienpfad verwendet. - Spezifische Einschränkungen für ein Arrayelement an einem bestimmten Index. Für diese Einschränkung wird eine Zahl im Pfad verwendet.
Für das Arrayattribut init_scripts
beginnen die generischen Pfade z. B. mit init_scripts.*
und die spezifischen Pfade mit init_scripts.<n>
. Dabei ist <n>
ein ganzzahliger Index innerhalb des Arrays (beginnend mit 0).
Sie können generische und spezifische Einschränkungen kombinieren. In diesem Fall gilt die generische Einschränkung für jedes Arrayelement, für das keine bestimmte Einschränkung festgelegt wurde. In jedem Fall gilt nur eine Richtlinienbeschränkung.
In den folgenden Abschnitten finden Sie Beispiele für allgemeine Beispiele, in denen Arrayattribute verwendet werden.
Einschlussspezifische Einträge erfordern
Es ist nicht möglich, bestimmte Werte als erforderlich festzulegen, 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>"
}
}
Feste Werte der gesamten Liste erfordern
{
"init_scripts.0.volumes.destination": {
"type": "fixed",
"value": "<required-script-1>"
},
"init_scripts.*.volumes.destination": {
"type": "forbidden"
}
}
Verwendung generell untersagen
{
"init_scripts.*.volumes.destination": {
"type": "forbidden"
}
}
Zulassen von Einträgen, die eine bestimmte Beschränkungen einhalten
{
"init_scripts.*.volumes.destination": {
"type": "regex",
"pattern": ".*<required-content>.*"
}
}
Korrigieren einer bestimmten Gruppe von Init-Skripts
Bei init_scripts
-Pfaden kann das Array eine von mehreren Strukturen enthalten, für die je nach Anwendungsfall möglicherweise alle möglichen Varianten verarbeitet werden müssen. Wenn beispielsweise bestimmte Initialisierungsskripts als erforderlich und alle Varianten der anderen Version als unzulässig festgelegt werden sollen, 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"
}
}
Beispiele für Richtlinien
Dieser Abschnitt enthält Richtlinienbeispiele, die Sie als Referenzen 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 Delta Live Tables-Pipelineberechnungen
- Richtlinie für einfache mittlere Cluster
- Richtlinie „Nur Aufträge“
- Richtlinie für externen Metastore
- Verhindern der Verwendung von Compute für Aufträge
- Richtlinie zum Entfernen der automatischen Skalierung
- Erzwingung von benutzerdefinierten Tags
Allgemeine Berechnungsrichtlinie
Mit einer universellen Berechnungsrichtlinie sollen Benutzer angeleitet und bestimmte Funktionen eingeschränkt werden. Dazu können Tags als erforderlich festgelegt, die maximale Anzahl an Instanzen eingeschränkt und ein Timeout erzwungen werden.
{
"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 Delta Live Tables-Pipelineberechnungen
Hinweis
Wenn Sie Richtlinien zum Konfigurieren von Delta Live Tables-Berechnungen verwenden, empfiehlt Databricks, eine einzelne Richtlinie auf die beiden Berechnungen default
und maintenance
anzuwenden.
Um eine Richtlinie für eine Pipelineberechnung zu konfigurieren, erstellen Sie eine Richtlinie mit dem cluster_type
-Feldsatz festgelegt auf dlt
. Im folgenden Beispiel wird eine minimale Richtlinie für eine Delta Live Tables-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
}
}
Richtlinie für einfache mittlere Cluster
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 von Auftragsberechnungen zum Ausführen von Aufträgen. Benutzer können mit dieser Richtlinie keine universelle Berechnung 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 eigene Berechnungen erstellen können, ohne zusätzliche Konfigurationsschritte durchführen zu müssen.
{
"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*innen Compute zum Ausführen von Aufträgen verwenden. Benutzer*innen können Compute nur mit Notebooks 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 den Benutzer*innen, die Anzahl der Worker in einem bestimmten Bereich festzulegen.
{
"num_workers": {
"type": "range",
"maxValue": 25,
"minValue": 1,
"defaultValue": 5
}
}
Erzwingung von benutzerdefinierten Tags
Verwenden Sie das custom_tags.<tag-name>
-Attribut, um die Tag-Regel für Berechnungen einer Richtlinie hinzuzufügen.
Ein Benutzer, der diese Richtlinie verwendet, muss zum Beispiel ein COST_CENTER
-Tag mit 9999, 9921 oder 9531 eingeben, damit die Berechnung gestartet wird:
{"custom_tags.COST_CENTER": {"type":"allowlist", "values":["9999", "9921", "9531" ]}}