Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
İşlem hattı parametreleri, ortamlar veya veri kümeleri arasında aynı işlem hattı kaynak kodunu yeniden kullanmanıza olanak tanır. Örneğin, aynı dönüştürmeleri dev ve prod kataloglarına karşı çalıştırabilir veya her çalıştırmada farklı bir kaynak yoldan veri alımı yapabilirsiniz. İşlem hattında parametreler tanımlarsınız (veya güncelleştirme başlatırken bunları geçersiz kılarsınız) ve SQL kaynak kodunuzdan bunlara başvurursunuz.
Önemli
Bu özellik Beta sürümündedir. Çalışma alanı yöneticileri Bu özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
Bu sayfada SQL kaynak kodu için kullanılabilen işlem hattı parametreleri özelliği açıklanmaktadır. bir işlem hattındaki Python kaynak kodunu parametreleştirmek için, yapılandırma alanını kullanarak Reference parametrelerinde açıklandığı gibi Configuration alanını kullanmaya devam edin. Yapılandırma, işlem hatlarının çalışma zamanında okuduğu Spark yapılandırma değerlerini ayarlamak için de kullanılır. Spark yapılandırma ayarlarıyla ilgili ayrıntılar için İşlem hattı özellikleri başvuru bölümüne bakın.
İşlem hattı parametreleri nedir?
İşlem hattı parametreleri, şunları yapmanıza olanak tanıyan anahtar-değer çiftleridir:
- İşlem hattı ayarlarında varsayılan olarak bildirin.
- İşlem hattı kullanıcı arabiriminden, Start update API aracılığıyla veya Farklı ayarlarla çalıştır iletişim kutusundan bir güncelleştirme başlatırken geçersiz kılın.
- bir işteki işlem hattı görevini, iş düzeyi parametrelerinin isteğe bağlı olarak aşağı iterek geçersiz kılın.
- Adlandırılmış parametre söz dizimini kullanarak SQL kaynak kodundan başvurun.
Parametre değerleri her zaman dizedir. Tuşlar alfasayısal karakterler, alt çizgi (_), kısa çizgi (-) ve nokta (.) içerebilir.
İşlem hattı parametreleri ve Yapılandırma alanı farklı amaçlara hizmet eder:
| Parameters öğesini ... için kullanın. | Yapılandırmayı kullan... |
|---|---|
| Güncelleştirmeler arasında değişen değerler (hedef katalog, kaynak yol, tarih aralığı). | İşlem hattı davranışını denetleyan Spark yapılandırması (pipelines.enzyme.enabled, pipelines.clusterLabelsV2Enabled). |
| bir iş veya görevden aşağı gönderilmesini istediğiniz değerler. | Statik, yapısal işlem hattı özellikleri. |
| ADLANDıRıLMıŞ parametre söz dizimi ile SQL'de başvurabileceğiniz değerler. | SQL'de ${key} söz dizimi veya Python spark.conf.get("key") ile başvurabileceğiniz değerler. |
İşlem hattı parametrelerini tanımlama
İşlem hattı ayarlarında varsayılan parametre değerlerini tanımlayabilirsiniz. Bir güncelleştirme geçersiz kılmalar olmadan çalıştırıldığında işlem hattı bu varsayılanları kullanır.
İşlem hattı kullanıcı arabirimini kullanma
- Çalışma alanınızda
Kenar çubuğunda İşler ve İşlem Hatları'nı seçip işlem hattınızı seçin.
- Ayarlar'a tıklayın.
- İşlem hattı ayarları kenar çubuğunda Parametreler bölümünü bulun ve Düzenle'ye tıklayın.
- Anahtar ve Değer girdileri ekledikten sonra Kaydet'e tıklayın.
JSON veya REST API kullanma
İşlem hattı tanımına bir parameters haritası ekleyin:
{
"name": "Sales pipeline",
"parameters": {
"source_catalog": "dev_catalog",
"source_schema": "sales",
"start_date": "2026-01-01"
}
}
İşlem hattı JSON başvurusunun tamamı için bkz. İşlem hattı yapılandırmaları.
SQL kaynak kodunda başvuru parametreleri
Anahtarın başına iki nokta üst üste koyarak bir parametreye başvurun. Azure Databricks değeri güncelleştirme zamanında dize olarak bağlar:
CREATE OR REFRESH MATERIALIZED VIEW transaction_summary AS
SELECT account_id,
COUNT(txn_id) AS txn_count,
SUM(txn_amount) AS account_revenue
FROM :source_catalog.sales.transactions
WHERE txn_date >= :start_date
GROUP BY account_id
Bir parametreyi katalog, şema veya tablo adı gibi bir tanımlayıcı konumunda kullanmak için parametreyi IDENTIFIER() ile sarmalayın:
USE CATALOG IDENTIFIER(:source_catalog);
USE SCHEMA IDENTIFIER(:source_schema);
CREATE OR REFRESH MATERIALIZED VIEW daily_sales AS
SELECT date(timestamp) AS date,
SUM(price) AS total_sales
FROM transactions
GROUP BY date;
Kaynak kodunuz güncelleştirme zamanında değeri olmayan bir parametreye başvuruda bulunuyorsa güncelleştirme bir hatayla başarısız olur. İşlem hattı, kodun kullanmadığı ek parametreleri yok sayar.
Güncelleştirme zamanında parametreleri geçersiz kılma
Kaydedilen varsayılan değerleri değiştirmeden tek bir güncelleştirme için parametre değerlerini geçersiz kılabilirsiniz.
- İşlem hattı kullanıcı arabiriminde Farklı ayarlarla çalıştır'a tıklayın ve Parametreler bölümünü düzenleyin.
- Bir işteki işlem hattı görevinden, görevin Parameters alanında parametre geçersiz kılmalarını ayarlayın. Bkz. Parametreler.
- API'den
parametersisteğinde bir harita geçirin.
Azure Databricks, güncelleştirme geçmişinde belirli bir güncelleştirmenin parametrelerini kaydeder ve bunları işlem hattı çalıştırma listesinin Run parametreleri sütununda görüntüler.
Parametre önceliği
Aynı anahtarı birden fazla yerde tanımladığınızda, en yüksek önceliğe sahip değer kazanır. En yüksekten en düşüğe:
- İş yürütme parametreleri: tek bir iş yürütmesi için sağlanan değerler (geçersiz kılma değerleri).
- İş parametreleri: Üst işte tanımlanan varsayılan değerler.
- İşlem hattı görev parametreleri: işlem hattı görevinde ayarlanan değerler.
- Ardışık düzen parametreleri: ardışık düzen ayarlarında tanımlanan varsayılan değerler.
Bu, diğer iş parametresi görev türleri tarafından kullanılan öncelik sırası ile aynıdır.
Lakeflow Jobs'ta işlem hattı parametreleri
bir işlem hattını bir işte işlem hattı görevi olarak zamanladığınızda, görev işlem hattının varsayılanlarını geçersiz kılan parametreler sağlayabilir. Parametre değerleri, dinamik değer başvurularını kullanarak {{job.trigger.time.iso_date}} veya {{job.parameters.region}} gibi iş çalıştırma zamanı değerlerini yerleştirebilir.
Lakeflow İşleri ayrıca tüm iş parametrelerini, tıpkı bunları not defteri ve SQL görevlerine ilettiği gibi, ardışık düzen görevlerine de otomatik olarak iletir. İşlem hattı kaynak kodu, adlandırılmış parametre söz dizimine sahip herhangi bir aşağı gönderilen değere başvurabilir. İşlem hattı ayarlarında bir parametre tanımlamak isteğe bağlıdır ve yalnızca geçersiz kılma yapılmayan çalıştırmalar için varsayılan belirler.
Uyarılar ve bilinen sınırlamalar
İşlem hatları bir kerede bir güncelleştirme çalıştırır: İşlem hattı aynı anda yalnızca tek bir güncelleştirmeyi çalıştırabilir. Birden çok güncelleştirmenin aksi takdirde çakışacağı durumlarda işlerin başarısız olmasını önlemek amacıyla Azure Databricks, eşzamanlılığı iki senaryoda 1 ile sınırlar:
- Bir işlem hattı görevi içeren ve birden fazla
max_concurrent_runsile yapılandırılmış iş. - Yineleme sayısından bağımsız olarak, for-each görevi içine sarılmış bir işlem hattı görevi.
İş arayüzü, bu sınır devreye girdiğinde bir bildirim gösterir. Birçok parametre bileşimiyle çalıştırmayı planladığınız parametreli işlem hatlarını tasarlarken üst sınırın etrafında planlayın.
- Bir işlem hattı görevi içeren ve birden fazla
Tarih filtreleri tam yenilemeleri tetikleyebilir: Sık karşılaşılan parametreleme kullanım örneği, verileri tarihe göre filtrelemektir. Yüklemlere dikkat edin: Bir tarih aralığının her iki ucunda filtreleme yapmak, somutlaştırılmış görünümlerde artımlı işlemeyi geçersiz kılar ve her güncellemede tam yenilemeyi tetikler.
-- Triggers a full refresh on each update CREATE OR REFRESH MATERIALIZED VIEW recent_orders AS SELECT * FROM orders WHERE order_date >= :start_date AND order_date < :end_date;-- Processes incrementally CREATE OR REFRESH MATERIALIZED VIEW recent_orders AS SELECT * FROM orders WHERE order_date >= :start_date;Adlandırılmış parametreler yalnızca SQL'tir: Bu Beta sürümünde adlandırılmış parametre söz dizimi yalnızca SQL kaynak kodunda kullanılabilir. Python kaynak kodunu parametreleştirmek için ile
spark.conf.get()alanını kullanmaya devam edin. Bkz. Yapılandırma alanını kullanarak referans parametreleri.
Yapılandırma alanını kullanarak referans parametreleri
İşlem hattındaki Yapılandırma alanı Spark yapılandırma değerleri olarak sunulan rastgele anahtar-değer çiftlerini kabul eder. Bu eski parametreleştirme mekanizmasıdır ve işlem hattı parametreleriyle birlikte çalışmaya devam eder. Python kaynak kodu ve adlandırılmış parametre söz dizimi yerine spark.conf.get() ile okumak istediğiniz anahtarlar için kullanın.
Aşağıdaki örnek, geliştirme mypipeline.start_date işlem hattını giriş verilerinin bir alt kümesiyle sınırlamak için bir yapılandırma değeri kullanır:
SQL
CREATE OR REFRESH MATERIALIZED VIEW customer_events
AS SELECT * FROM source_table WHERE date > '${mypipeline.start_date}';
Piton
from pyspark import pipelines as dp
from pyspark.sql.functions import col
@dp.table
def customer_events():
start_date = spark.conf.get("mypipeline.start_date")
return spark.read.table("source_table").where(col("date") > start_date)
Yapılandırma değerlerini işlem hattı ayarlarının Yapılandırma bölümünde veya configuration işlem hattı JSON alanında ayarlarsınız. Ayrılmış işlem hattı veya Apache Spark yapılandırma değerleriyle çakışan anahtarlardan kaçının.