Referensi kebijakan komputasi
Artikel ini adalah referensi untuk definisi kebijakan komputasi. Artikel ini mencakup referensi atribut kebijakan dan jenis batasan yang tersedia. Ada juga contoh kebijakan yang dapat Anda referensikan untuk kasus penggunaan umum.
Apa itu definisi kebijakan?
Definisi kebijakan adalah aturan kebijakan individual yang dinyatakan dalam JSON. Definisi dapat menambahkan aturan ke salah satu atribut yang dikontrol dengan API Kluster. Misalnya, definisi ini menetapkan waktu penentuan otomatis default, melarang pengguna menggunakan kumpulan, dan menerapkan penggunaan Photon:
{
"autotermination_minutes" : {
"type" : "unlimited",
"defaultValue" : 4320,
"isOptional" : true
},
"instance_pool_id": {
"type": "forbidden",
"hidden": true
},
"runtime_engine": {
"type": "fixed",
"value": "PHOTON",
"hidden": true
}
}
Hanya ada satu batasan per atribut. Jalur atribut mencerminkan nama atribut API. Untuk atribut berlapis, jalur menggabungkan nama atribut berlapis menggunakan titik. Atribut yang tidak ditentukan dalam definisi kebijakan tidak akan dibatasi.
Atribut yang didukung
Kebijakan mendukung semua atribut yang dikontrol dengan API Kluster. Jenis pembatasan yang dapat Anda tempatkan pada atribut dapat bervariasi per pengaturan berdasarkan jenisnya dan kaitannya dengan elemen UI. Anda tidak dapat menggunakan kebijakan untuk menentukan izin komputasi.
Anda juga dapat menggunakan kebijakan untuk mengatur DBA maks per jam dan jenis kluster. Lihat Jalur atribut virtual.
Tabel berikut mencantumkan jalur atribut kebijakan yang didukung:
Jalur atribut | Tipe | Deskripsi |
---|---|---|
autoscale.max_workers |
angka opsional | Ketika disembunyikan, hapus bidang jumlah pekerja maksimum dari UI. |
autoscale.min_workers |
angka opsional | Ketika disembunyikan, hapus bidang jumlah pekerja minimal dari UI. |
autotermination_minutes |
number | Nilai 0 mewakili tanpa penghentian otomatis. Ketika disembunyikan, hapus kotak centang penghentian otomatis dan input nilai dari UI. |
azure_attributes.availability |
string | Mengontrol komputasi menggunakan instans sesuai permintaan atau spot (ON_DEMAND_AZURE atau SPOT_WITH_FALLBACK_AZURE ). |
azure_attributes.first_on_demand |
number | Mengontrol jumlah simpul yang akan diletakkan pada instans sesuai permintaan. |
azure_attributes.spot_bid_max_price |
number | Mengontrol harga maksimum untuk instans spot Azure. |
cluster_log_conf.path |
string | URL tujuan dari file log. |
cluster_log_conf.type |
string | Jenis tujuan log. DBFS adalah satu-satunya nilai yang dapat diterima. |
cluster_name |
string | Nama kluster. |
custom_tags.* |
string | Kontrol nilai tag tertentu dengan menambahkan nama tag, misalnya: custom_tags.<mytag> . |
data_security_mode |
string | Mengatur mode akses kluster. Katalog Unity memerlukan SINGLE_USER atau USER_ISOLATION (mode akses bersama di UI). Nilai NONE berarti tidak ada fitur keamanan yang diaktifkan. |
docker_image.basic_auth.password |
string | Kata sandi untuk autentikasi dasar citra Databricks Container Services. |
docker_image.basic_auth.username |
string | Nama pengguna untuk autentikasi dasar citra Databricks Container Services. |
docker_image.url |
string | Mengontrol URL citra Databricks Container Services. Ketika disembunyikan, menghapus bagian Databricks Container Services dari UI. |
driver_node_type_id |
string opsional | Ketika disembunyikan, menghapus pilihan jenis node driver dari UI. |
enable_local_disk_encryption |
Boolean | Atur ke true untuk mengaktifkan, atau false untuk menonaktifkan, mengenkripsi disk yang dilampirkan secara lokal ke kluster (seperti yang ditentukan melalui API). |
init_scripts.*.workspace.destination init_scripts.*.volumes.destination init_scripts.*.abfss.destination init_scripts.*.file.destination |
string | * mengacu pada indeks skrip init dalam larik atribut. Lihat Menulis kebijakan untuk atribut array. |
instance_pool_id |
string | Mengontrol pool yang digunakan oleh node pekerja jika driver_instance_pool_id juga ditentukan, atau jika tidak untuk semua node kluster. Jika Anda menggunakan pool untuk node pekerja, Anda juga harus menggunakan pool untuk node driver. Ketika disembunyikan, menghapus pilihan pool dari UI. |
driver_instance_pool_id |
string | Jika ditentukan, mengonfigurasi berbagai pool untuk node driver daripada untuk node pekerja. Jika tidak ditentukan, mewarisi instance_pool_id . Jika Anda menggunakan pool untuk node pekerja, Anda juga harus menggunakan pool untuk node driver. Ketika disembunyikan, menghapus pilihan pool driver dari UI. |
node_type_id |
string | Ketika disembunyikan, menghapus pilihan jenis node pekerja dari UI. |
num_workers |
angka opsional | Ketika disembunyikan, menghapus spesifikasi angka pekerja dari UI. |
runtime_engine |
string | Menentukan apakah kluster menggunakan Photon atau tidak. Nilai yang mungkin adalah PHOTON atau STANDARD . |
single_user_name |
string | Nama pengguna untuk kredensial memintasi akses pengguna tunggal. |
spark_conf.* |
string opsional | Mengontrol nilai konfigurasi tertentu dengan menambahkan nama kunci konfigurasi, misalnya: spark_conf.spark.executor.memory . |
spark_env_vars.* |
string opsional | Mengontrol nilai variabel lingkungan Spark tertentu dengan menambahkan variabel lingkungan, misalnya: spark_env_vars.<environment variable name> . |
spark_version |
string | Nama versi gambar Spark seperti yang ditentukan melalui API (Databricks Runtime). Anda juga dapat menggunakan nilai kebijakan khusus yang secara dinamis memilih Databricks Runtime. Lihat Nilai kebijakan khusus untuk pemilihan Databricks Runtime. |
workload_type.clients.jobs |
Boolean | Menentukan apakah sumber daya komputasi dapat digunakan untuk pekerjaan. Lihat Mencegah komputasi digunakan dengan pekerjaan. |
workload_type.clients.notebooks |
Boolean | Menentukan apakah sumber daya komputasi dapat digunakan dengan notebook. Lihat Mencegah komputasi digunakan dengan pekerjaan. |
Jalur atribut virtual
Tabel ini mencakup dua atribut sintetis tambahan yang didukung oleh kebijakan:
Jalur atribut | Tipe | Deskripsi |
---|---|---|
dbus_per_hour |
number | Atribut terhitung yang mewakili DBA maksimum yang dapat digunakan sumber daya setiap jam termasuk simpul driver. Metrik ini adalah cara langsung untuk mengontrol biaya pada tingkat komputasi individual. Gunakan dengan batasan rentang. |
cluster_type |
string | Mewakili jenis kluster yang dapat dibuat: * all-purpose untuk komputasi serba guna Azure Databricks* job untuk komputasi pekerjaan yang dibuat oleh penjadwal pekerjaan* dlt untuk komputasi yang dibuat untuk alur Tabel Langsung DeltaIzinkan atau blokir jenis komputasi yang ditentukan untuk dibuat dari kebijakan. all-purpose Jika nilai tidak diizinkan, kebijakan tidak ditampilkan di UI komputasi buat semua tujuan. job Jika nilai tidak diizinkan, kebijakan tidak ditampilkan di UI komputasi pekerjaan buat. |
Nilai kebijakan khusus untuk pemilihan Databricks Runtime
Atribut spark_version
ini mendukung nilai khusus yang secara dinamis memetakan ke versi Databricks Runtime berdasarkan kumpulan versi Databricks Runtime yang didukung saat ini.
Nilai berikut dapat digunakan dalam spark_version
atribut :
auto:latest
: Peta ke versi GA Databricks Runtime terbaru.auto:latest-ml
: Peta ke versi ML Databricks Runtime terbaru.auto:latest-lts
: Peta ke versi Runtime Databricks dukungan jangka panjang (LTS) terbaru.auto:latest-lts-ml
: Peta ke versi ML LTS Databricks Runtime terbaru.auto:prev-major
: Peta ke versi RUNTIME GA Databricks terbaru kedua. Misalnya, jikaauto:latest
adalah 14.2, makaauto:prev-major
adalah 13.3.auto:prev-major-ml
: Peta ke versi ML Runtime GA Databricks terbaru kedua. Misalnya, jikaauto:latest
adalah 14.2, makaauto:prev-major
adalah 13.3.auto:prev-lts
: Peta ke versi LTS Databricks Runtime terbaru kedua. Misalnya, jikaauto:latest-lts
adalah 13.3, makaauto:prev-lts
adalah 12.2.auto:prev-lts-ml
: Peta ke versi ML LTS Databricks Runtime terbaru kedua. Misalnya, jikaauto:latest-lts
adalah 13.3, makaauto:prev-lts
adalah 12.2.
Catatan
Menggunakan nilai-nilai ini tidak membuat komputasi pembaruan otomatis saat versi runtime baru dirilis. Pengguna harus secara eksplisit mengedit komputasi agar versi Databricks Runtime berubah.
Jenis kebijakan yang didukung
Bagian ini mencakup referensi untuk setiap jenis kebijakan yang tersedia. Ada dua kategori jenis kebijakan: kebijakan tetap dan kebijakan pembatasan.
Kebijakan tetap mencegah konfigurasi pengguna pada atribut. Dua jenis kebijakan tetap adalah:
Membatasi kebijakan membatasi opsi pengguna untuk mengonfigurasi atribut. Membatasi kebijakan juga memungkinkan Anda mengatur nilai default dan membuat atribut opsional. Lihat Bidang kebijakan pembatasan tambahan.
Opsi Anda untuk membatasi kebijakan adalah:
- Kebijakan daftar izin
- Kebijakan daftar blokir
- Kebijakan regex
- Kebijakan rentang
- Kebijakan tidak terbatas
Kebijakan tetap
Kebijakan tetap membatasi atribut ke nilai yang ditentukan. Untuk nilai atribut selain numerik dan boolean, nilai harus diwakili oleh atau dikonversi ke string.
Dengan kebijakan tetap, Anda juga dapat menyembunyikan atribut dari UI dengan mengatur hidden
bidang ke true
.
interface FixedPolicy {
type: "fixed";
value: string | number | boolean;
hidden?: boolean;
}
Contoh kebijakan ini memperbaiki versi Databricks Runtime dan menyembunyikan bidang dari UI pengguna:
{
"spark_version": { "type": "fixed", "value": "auto:latest-lts", "hidden": true }
}
Kebijakan terlarang
Kebijakan terlarang mencegah pengguna mengonfigurasi atribut. Kebijakan terlarang hanya kompatibel dengan atribut opsional.
interface ForbiddenPolicy {
type: "forbidden";
}
Kebijakan ini melarang melampirkan kumpulan ke komputasi untuk simpul pekerja. Pool juga dilarang untuk node driver, karena driver_instance_pool_id
mewarisi kebijakan.
{
"instance_pool_id": { "type": "forbidden" }
}
Kebijakan daftar izin
Kebijakan daftar yang diizinkan menentukan daftar nilai yang dapat dipilih pengguna saat mengonfigurasi atribut.
interface AllowlistPolicy {
type: "allowlist";
values: (string | number | boolean)[];
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
Contoh daftar izin ini memungkinkan pengguna untuk memilih antara dua versi Databricks Runtime:
{
"spark_version": { "type": "allowlist", "values": [ "13.3.x-scala2.12", "12.2.x-scala2.12" ] }
}
Kebijakan daftar blokir
Kebijakan daftar blokir mencantumkan nilai yang tidak diizinkan. Karena nilai harus sama persis, kebijakan ini mungkin tidak berfungsi seperti yang diharapkan ketika atribut bersifat lenient dalam bagaimana nilai diwakili (misalnya, memungkinkan spasi di depan dan di belakang).
interface BlocklistPolicy {
type: "blocklist";
values: (string | number | boolean)[];
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
Contoh ini memblokir pengguna untuk memilih 7.3.x-scala2.12
sebagai Databricks Runtime.
{
"spark_version": { "type": "blocklist", "values": [ "7.3.x-scala2.12" ] }
}
Kebijakan regex
Kebijakan regex membatasi nilai yang tersedia untuk nilai yang cocok dengan regex. Untuk keamanan, pastikan regex Anda berlabuh ke awal dan akhir nilai string.
interface RegexPolicy {
type: "regex";
pattern: string;
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
Contoh ini membatasi versi Databricks Runtime yang dapat dipilih pengguna dari:
{
"spark_version": { "type": "regex", "pattern": "13\\.[3456].*" }
}
Kebijakan rentang
Kebijakan rentang membatasi nilai ke rentang tertentu menggunakan minValue
bidang dan maxValue
. Nilai harus berupa angka desimal.
Batas numerik harus dapat diwakili sebagai nilai poin floating ganda. Untuk menunjukkan kurangnya batas tertentu, Anda dapat menghilangkan salah satu minValue
atau maxValue
.
interface RangePolicy {
type: "range";
minValue?: number;
maxValue?: number;
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
Contoh ini membatasi jumlah maksimum pekerja hingga 10:
{
"num_workers": { "type": "range", "maxValue": 10 }
}
Kebijakan tidak terbatas
Kebijakan tidak terbatas digunakan untuk membuat atribut yang diperlukan atau untuk mengatur nilai default di UI.
interface UnlimitedPolicy {
type: "unlimited";
defaultValue?: string | number | boolean;
isOptional?: boolean;
}
Contoh ini menambahkan COST_BUCKET
tag ke komputasi:
{
"custom_tags.COST_BUCKET": { "type": "unlimited" }
}
Untuk mengatur nilai default untuk variabel konfigurasi Spark, tetapi juga memungkinkan menghilangkan (menghapus) variabel tersebut:
{
"spark_conf.spark.my.conf": { "type": "unlimited", "isOptional": true, "defaultValue": "my_value" }
}
Bidang kebijakan pembatasan tambahan
Untuk membatasi jenis kebijakan, Anda dapat menentukan dua bidang tambahan:
defaultValue
- Nilai yang secara otomatis terisi dalam UI komputasi buat.isOptional
- Kebijakan pembatasan pada atribut secara otomatis membuatnya diperlukan. Untuk membuat atribut opsional, atur bidang keisOptional
true
.
Catatan
Nilai default tidak secara otomatis diterapkan ke komputasi yang dibuat dengan API Kluster. Untuk menerapkan nilai default menggunakan API, tambahkan parameter apply_policy_default_values
ke definisi komputasi dan atur ke true
.
Kebijakan contoh ini menentukan nilai default id1
untuk pool bagi node pekerja, tetapi membuatnya bersifat opsional. Saat membuat komputasi, Anda dapat memilih kumpulan yang berbeda atau memilih untuk tidak menggunakannya. Jika driver_instance_pool_id
tidak ditentukan dalam kebijakan atau saat membuat komputasi, kumpulan yang sama digunakan untuk simpul pekerja dan simpul driver.
{
"instance_pool_id": { "type": "unlimited", "isOptional": true, "defaultValue": "id1" }
}
Menulis kebijakan untuk atribut array
Anda dapat menentukan kebijakan untuk atribut larik dengan dua cara:
- Pembatasan generik untuk semua elemen larik. Pembatasan ini menggunakan simbol wildcard
*
di jalur kebijakan. - Pembatasan khusus untuk elemen larik pada indeks tertentu. Pembatasan ini menggunakan nomor di jalur.
Misalnya, untuk atribut larik init_scripts
, jalur generik dimulai dengan init_scripts.*
dan jalur tertentu dengan init_scripts.<n>
, di mana <n>
adalah indeks bilangan bulat dalam larik (dimulai dengan 0).
Anda dapat menggabungkan pembatasan generik dan khusus, dalam hal ini pembatasan generik berlaku untuk setiap elemen larik yang tidak memiliki pembatasan tertentu. Dalam setiap kasus hanya satu pembatasan kebijakan yang akan berlaku.
Bagian berikut menunjukkan contoh contoh umum yang menggunakan atribut array.
Memerlukan entri khusus inklusi
Anda tidak dapat memerlukan nilai tertentu tanpa menentukan perintah. Contohnya:
{
"init_scripts.0.volumes.destination": {
"type": "fixed",
"value": "<required-script-1>"
},
"init_scripts.1.volumes.destination": {
"type": "fixed",
"value": "<required-script-2>"
}
}
Memerlukan nilai tetap dari seluruh daftar
{
"init_scripts.0.volumes.destination": {
"type": "fixed",
"value": "<required-script-1>"
},
"init_scripts.*.volumes.destination": {
"type": "forbidden"
}
}
Melarang penggunaan sama sekali
{
"init_scripts.*.volumes.destination": {
"type": "forbidden"
}
}
Perbolehkan entri yang mengikuti pembatasan tertentu
{
"init_scripts.*.volumes.destination": {
"type": "regex",
"pattern": ".*<required-content>.*"
}
}
Memperbaiki sekumpulan skrip init tertentu
Dalam kasus jalur init_scripts
, larik dapat berisi salah satu dari beberapa struktur di mana semua kemungkinan varian perlu dihandel tergantung dari kasus penggunaan. Misalnya, untuk memerlukan satu set skrip init tertentu, dan melarang varian apa pun dari versi lain, Anda dapat menggunakan pola berikut:
{
"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"
}
}
Contoh kebijakan
Bagian ini mencakup contoh kebijakan yang dapat Anda gunakan sebagai referensi untuk membuat kebijakan Anda sendiri. Anda juga dapat menggunakan keluarga kebijakan yang disediakan Azure Databricks sebagai templat untuk kasus penggunaan kebijakan umum.
- Kebijakan komputasi umum
- Menentukan batas pada komputasi alur Delta Live Tables
- Kebijakan berukuran sedang sederhana
- Kebijakan khusus pekerjaan
- Kebijakan metastore eksternal
- Mencegah komputasi digunakan dengan pekerjaan
- Menghapus kebijakan penskalakan otomatis
- Penerapan tag kustom
Kebijakan komputasi umum
Kebijakan komputasi tujuan umum dimaksudkan untuk memandu pengguna dan membatasi beberapa fungsionalitas, sambil memerlukan tag, membatasi jumlah maksimum instans, dan memberlakukan batas waktu.
{
"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"
}
}
Menentukan batas pada komputasi alur Delta Live Tables
Catatan
Saat menggunakan kebijakan untuk mengonfigurasi komputasi Tabel Langsung Delta, Databricks merekomendasikan penerapan satu kebijakan ke komputasi default
dan maintenance
.
Untuk mengonfigurasi kebijakan untuk komputasi alur, buat kebijakan dengan bidang yang cluster_type
diatur ke dlt
. Contoh berikut membuat kebijakan minimal untuk komputasi Tabel Langsung Delta:
{
"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
}
}
Kebijakan berukuran sedang sederhana
Memungkinkan pengguna membuat komputasi berukuran sedang dengan konfigurasi minimal. Satu-satunya bidang yang diperlukan pada waktu pembuatan adalah nama komputasi; sisanya diperbaiki dan disembunyikan.
{
"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"
}
}
Kebijakan khusus pekerjaan
Memungkinkan pengguna membuat komputasi pekerjaan untuk menjalankan pekerjaan. Pengguna tidak dapat membuat komputasi semua tujuan menggunakan kebijakan ini.
{
"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"
}
}
Kebijakan metastore eksternal
Memungkinkan pengguna membuat komputasi dengan metastore yang ditentukan admin yang sudah dilampirkan. Ini berguna untuk memungkinkan pengguna membuat komputasi mereka sendiri tanpa memerlukan konfigurasi tambahan.
{
"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>"
}
}
Mencegah komputasi digunakan dengan pekerjaan
Kebijakan ini mencegah pengguna menggunakan komputasi untuk menjalankan pekerjaan. Pengguna hanya akan dapat menggunakan komputasi dengan notebook.
{
"workload_type.clients.notebooks": {
"type": "fixed",
"value": true
},
"workload_type.clients.jobs": {
"type": "fixed",
"value": false
}
}
Menghapus kebijakan penskalakan otomatis
Kebijakan ini menonaktifkan penskalaan otomatis dan memungkinkan pengguna untuk mengatur jumlah pekerja dalam rentang tertentu.
{
"num_workers": {
"type": "range",
"maxValue": 25,
"minValue": 1,
"defaultValue": 5
}
}
Penerapan tag kustom
Untuk menambahkan aturan tag komputasi ke kebijakan, gunakan custom_tags.<tag-name>
atribut .
Misalnya, setiap pengguna yang menggunakan kebijakan ini perlu mengisi COST_CENTER
tag dengan 9999, 9921, atau 9531 agar komputasi dapat diluncurkan:
{"custom_tags.COST_CENTER": {"type":"allowlist", "values":["9999", "9921", "9531" ]}}
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk