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.
Kaynak tabloların güncellendiğini bildiğinizde bağımsız bir somutlaştırılmış görünümü veya akış tablosunu manuel olarak yenileyebilirsiniz. Bununla birlikte, yenilemeler için zamana, kaynak tabloların güncelleştirildiği zamanlara veya düzenlemeye göre bir zamanlama da ayarlayabilirsiniz.
Ayrıca bildirimler oluşturabilir ve zamanlanmış yenilemeleriniz için performans modunu ayarlayabilirsiniz.
Zamanlama oluşturma
Tek başına işlem hattını, tanımlı bir zamanlamaya göre otomatik olarak yenilenmek veya yukarı akış verileri değiştirildiğinde tetiklemek için yapılandırabilirsiniz. Aşağıdaki tabloda yenilemeleri zamanlamak için farklı seçenekler gösterilmektedir.
| Method | Description | Örnek kullanım örneği |
|---|---|---|
| Kılavuz | SQL REFRESH deyimi kullanarak veya çalışma alanı kullanıcı arabirimi aracılığıyla isteğe bağlı yenileme. |
Geliştirme, test, geçici güncelleştirmeler. |
TRIGGER ON UPDATE |
Yukarı akış verileri değiştiğinde işlem hattını otomatik olarak yenilenmek üzere zamanlayın. | Veri tazeliği SLA'ları veya öngörülemeyen yenileme dönemlerine sahip üretim iş yükleri. |
SCHEDULE |
İşlem hattını tanımlı zaman aralıklarında yenilenmek üzere zamanlayın. | Tahmin edilebilir, zamana bağlı yenileme gereksinimleri. |
| bir işteki SQL görevi | Yenileme, Lakeflow İşleri aracılığıyla yapılır. | Sistemler arası bağımlılıklara sahip karmaşık işlem hatları. |
Yenilemeleri planlamış olsanız bile, güncelleştirilmiş verilere ihtiyacınız olduğunda istediğiniz zaman manuel bir yenileme çalıştırabilirsiniz.
El ile yenileme
İşlem hattını el ile yenilemek için Databricks SQL'den yenileme çağırabilir veya çalışma alanı kullanıcı arabirimini kullanabilirsiniz.
REFRESH açıklama
Databricks SQL kullanarak işlem hattını yenilemek için:
SQL Düzenleyicisi, aşağıdaki deyimi çalıştırın:
REFRESH MATERIALIZED VIEW <table-name>;
Akış tablolarını aktarmak içinkullanın.
Daha fazla bilgi için bkz REFRESH . (MATERIALIZED VIEW veya STREAMING TABLE).
Çalışma Alanı Kullanıcı Arabirimi
Çalışma alanı kullanıcı arabirimindeki bir işlem hattını yenilemek için:
- Azure Databricks çalışma alanında
İşler ve İşlem Hatları.
- Listeden yenilemek istediğiniz işlem hattını seçin.
- Başlangıç düğmesine tıklayın.
İşlem hattı yenilendikçe, kullanıcı arabiriminde güncelleştirmeleri görürsünüz.
Güncelleştirmede tetikleme
Üst akış kaynağı verileri değiştiğinde TRIGGER ON UPDATE koşulu işlem hattını otomatik olarak yeniler. Bu işlem hatları arasında zamanlamaları koordine etme gereksinimini ortadan kaldırır. Veri kümesi, kullanıcının yukarı akış işlerinin ne zaman tamamlandığını bilmeyi veya karmaşık zamanlama mantığını yönetmesini gerektirmeden güncel kalır.
Bu, özellikle yukarı akış bağımlılıkları öngörülebilir zamanlamalarda çalıştırılmadığında üretim iş yükleri için önerilen yaklaşımdır. Güncelleştirme sırasında tetikleyici yapılandırıldıktan sonra işlem hattı kaynak tablolarını izler ve yukarı akış kaynaklarından herhangi birinde değişiklikler algılandığında otomatik olarak yenilenir.
Limitations
- Yukarı akış bağımlılık sınırları: İşlem hattı en fazla 10 yukarı akış tablosu ve 30 yukarı akış görünümü izleyebilir. Daha fazla bağımlılık için mantığı birden çok işlem hattına bölün.
- Çalışma alanı sınırları: Çalışma alanı başına en fazla 1.000 işlem hattı
TRIGGER ON UPDATEetiketiyle olabilir. 1.000'den fazla gerekiyorsa Databricks desteğine başvurun. - En düşük aralık: Minimum tetikleyici aralığı 1 dakikadır.
Aşağıdaki örneklerde, işlem hattı tanımlanırken güncelleştirme sırasında tetikleyicinin nasıl ayarlanacağı gösterilmektedir.
Güncelleme tetikleyicisi ile işlem hattı oluşturma
Kaynak veriler değiştiğinde otomatik olarak yenilenecek bir işlem hattı oluşturmak için, TRIGGER ON UPDATE koşulunu CREATE ifadesine ekleyin.
Aşağıdaki örnek, müşteri siparişlerini alan ve kaynak orders tablosu her güncellendiğinde yenilenen bir akış tablosu oluşturur.
CREATE OR REFRESH STREAMING TABLE catalog.schema.customer_orders
TRIGGER ON UPDATE
AS SELECT
o.customer_id,
o.name,
o.order_id
FROM catalog.schema.orders o;
Yenileme sıklığını kontrol etme
Yukarı akış verileri sık sık yenileniyorsa, görünümün ne sıklıkta yenilendiğini sınırlamak ve işlem maliyetlerini sınırlamak için kullanın AT MOST EVERY . Bu, kaynak tabloların sık sık güncelleştirildiğinden ancak aşağı akış tüketicilerinin gerçek zamanlı verilere ihtiyacı olmadığında kullanışlıdır. anahtar INTERVAL sözcüğü, saat değerinden önce gereklidir.
Aşağıdaki örnek, kaynak veriler daha sık değişse bile akış tablosunu en fazla 5 dakikada bir yenilenmek üzere sınırlar:
CREATE OR REFRESH STREAMING TABLE catalog.schema.customer_orders
TRIGGER ON UPDATE AT MOST EVERY INTERVAL 5 MINUTES
AS SELECT
o.customer_id,
o.name,
o.order_id
FROM catalog.schema.orders o;
Zamanlanmış yenileme
Yenileme zamanlamaları, görünümü sabit zaman aralıklarında yenilemek için doğrudan işlem hattı tanımında tanımlanabilir. Bu yaklaşım, veri güncelleştirme temposu bilindiğinde ve tahmin edilebilir yenileme zamanlaması istendiğinde kullanışlıdır.
Yenileme zamanlaması olduğunda, güncelleştirilmiş veriler istiyorsanız istediğiniz zaman el ile yenileme çalıştırabilirsiniz.
Databricks iki zamanlama söz dizimlerini destekler: SCHEDULE EVERY basit aralıklar ve SCHEDULE CRON kesin zamanlama için.
SCHEDULE ve SCHEDULE REFRESH anahtar sözcükleri, sembolik olarak eşdeğerdir.
Söz dizimi ve SCHEDULE yan tümcesinin kullanımıyla ilgili ayrıntılar için bkz: CREATE STREAMING TABLE SCHEDULE yan tümcesi veya CREATE MATERIALIZED VIEW SCHEDULE yan tümcesi.
Bir zamanlama oluşturulduğunda, güncelleştirmeyi işlemek için otomatik olarak yeni bir Databricks işi yapılandırılır.
Zamanlamayı görüntülemek için aşağıdakilerden birini yapın:
- Azure Databricks kullanıcı arabiriminde SQL düzenleyicisinden
DESCRIBE EXTENDEDdeyimini çalıştırın. Bkz. DESCRIBE TABLE. - Veri kümesini görüntülemek için Katalog Gezgini'ni kullanın. Zamanlama, Genel Bakış sekmesinde, Yenileme durumu altında listelenir. Bkz . Katalog Gezgini nedir?.
Aşağıdaki örnekler, bir zamanlama ile malzemeleştirilmiş bir görünümün nasıl oluşturulacağını göstermektedir.
Her zaman aralığını zamanlama
Bu örnek, her saat bir yenileme planlar. yan tümcesi EVERY saat, gün ve hafta aralıklarını destekler. Saatlik alt aralıklar için bunun yerine kullanın SCHEDULE CRON .
CREATE OR REPLACE MATERIALIZED VIEW catalog.schema.hourly_metrics
SCHEDULE EVERY 1 HOUR
AS SELECT
date_trunc('hour', event_time) AS hour,
count(*) AS events
FROM catalog.schema.raw_events
GROUP BY 1;
Cron kullanarak zamanlama
Bu örnek, UTC saat diliminin çeyrek saatinde, her 15 dakikada bir zamanlanmış yenileme yapılmasını planlar.
CREATE OR REPLACE MATERIALIZED VIEW catalog.schema.regular_metrics
SCHEDULE CRON '0 */15 * * * ?' AT TIME ZONE 'UTC'
AS SELECT
date_trunc('minute', event_time) AS minute,
count(*) AS events
FROM catalog.schema.raw_events
WHERE event_time > current_timestamp() - INTERVAL 1 HOUR
GROUP BY 1;
bir işteki SQL görevi
İşlem hattı yenilemeleri, REFRESH komutlarını içeren SQL görevleri oluşturarak Lakeflow İşleri aracılığıyla koordine edilebilir. Bu yaklaşım, işleri kullanarak işlem hattı yenilemelerini mevcut düzenlemeyle tümleştirir.
Akış tablolarını yenilemek için iş oluşturmanın iki yolu vardır:
-
SQL Düzenleyicisi'nden: Komutunu yazın
REFRESHve doğrudan sorgudan iş oluşturmak için Zamanla düğmesine tıklayın. -
İşler kullanıcı arabiriminden: Yeni bir iş oluşturun, bir SQL görev türü ekleyin ve
REFRESHkomutunu kullanarak bir SQL sorgusu veya not defterini ekleyin.
Aşağıdaki örnekte, akış tablosunu yenileyen bir SQL görevi içindeki SQL deyimi gösterilmektedir:
REFRESH STREAMING TABLE catalog.schema.sales;
Note
Bağımsız somutlaştırılmış görünümler ve akış tabloları için, yenilemeyi bir iş aracılığıyla düzenlemek bunların sürekli çalışmasını sağlamaz. Her iş çalışması tek bir tetiklenmiş yenileme gerçekleştirir. Bir iş üzerinden sürekli yürütme yalnızca Lakeflow boru hatları için geçerlidir. Bkz. Sürekli bir görevle sürekli işlem hattı çalıştırma.
Bu yaklaşım aşağıdaki durumlarda uygundur:
- Karmaşık çok adımlı işlem hatlarının sistemler arasında bağımlılıkları vardır.
- Mevcut iş orkestrasyonu ile entegrasyon gereklidir.
- İş düzeyinde uyarı ve izleme gereklidir.
SQL görevleri hem işe eklenmiş SQL ambarını hem de yenilemeyi yürüten sunucusuz işlemi kullanır. Akış tablosu tanımı tabanlı zamanlamanın kullanılması gereksinimleri karşılıyorsa, iş akışına geçiş yapmak TRIGGER ON UPDATE veya SCHEDULE iş akışını basitleştirebilir.
Mevcut işlem hattına zamanlama ekleme
Oluşturma işleminden sonra zamanlamayı ayarlamak için ALTER STREAMING TABLE veya ALTER MATERIALIZED VIEW deyimlerini kullanın. Örneğin:
-- Alters the schedule to refresh the streaming table when its upstream
-- data gets updated.
ALTER STREAMING TABLE sales
ADD TRIGGER ON UPDATE;
Mevcut bir zamanlamayı veya tetikleyiciyi değiştirme
Bir işlem hattının zaten ilişkili bir zamanlaması veya tetikleyicisi varsa, yenileme yapılandırmasını değiştirmek için ALTER SCHEDULE veya ALTER TRIGGER ON UPDATE kullanın. Bu, bir zamanlamadan diğerine, bir tetikleyiciden diğerine geçiş yapma veya zamanlama ile tetikleyici arasında geçiş yapma işlemleri için geçerlidir.
Aşağıdaki örnek, mevcut bir zamanlamayı 5 dakikada bir yenilenmek üzere değiştirir. yan tümcesi EVERY dakika aralıklarını desteklemediğinden, saatlik alt zamanlamalar için bir CRON ifade kullanın:
ALTER STREAMING TABLE catalog.schema.my_table
ALTER SCHEDULE CRON '0 */5 * * * ?';
Zamanlamayı veya tetikleyiciyi bırakma
Zamanlamayı kaldırmak için kullanın ALTER ... DROP:
ALTER STREAMING TABLE catalog.schema.my_table
DROP SCHEDULE;
Yenilemenin durumunu izleme
İşlem Hatları arayüzünde işlem hattını görüntüleyerek veya veri kümesi için komutu kullanılarak döndürülen DESCRIBE EXTENDED görüntüleyerek yenilemenin durumunu görebilirsiniz.
DESCRIBE TABLE EXTENDED <table-name>;
Alternatif olarak, veri kümesini Katalog Gezgini'nde görüntüleyebilir ve yenileme durumunu burada görebilirsiniz:
-
Kenar çubuğunda katalog.
- Sol taraftaki Katalog Gezgini ağacında kataloğu açın ve veri kümenizin bulunduğu şemayı seçin.
- Seçtiğiniz şemanın altındaki Tablolar öğesini açın ve akış tablosuna veya gerçekleştirilmiş görünüme tıklayın.
Buradan, veri kümesiyle ilgili bilgileri görüntülemek ve düzenlemek için veri kümesi adının altındaki sekmeleri kullanabilirsiniz, örneğin:
- Durumu ve geçmişi yenile
- Tablo şeması
- Örnek veriler (etkin işlem gerektirir)
- Permissions
- Bu veri setinin bağlı olduğu tablolar ve diğer işlem hatları dahil olmak üzere veri soyağacı
- Kullanımla ilgili içgörüler
- Bu veri kümesi için oluşturduğunuz monitörler
Etkin yenilemeyi durdurma
Azure Databricks kullanıcı arabiriminde etkin yenilemeyi durdurmak için İşlem hattı ayrıntıları sayfasında Durdur'a tıklayarak işlem hattı güncelleştirmesini durdurun. Yenilemeyi Databricks CLI veya POST /api/2.0/pipelines/{pipeline_id}/stop işlemiyle pipelines REST API'sinde de durdurabilirsiniz.
Zamanlanmış yenileme için çalıştırma geçmişini görüntüleme
Veri kümenizi Katalog Gezgini'nde açarsanız, çalışma alanının sağ tarafındaki ayrıntılar bölmesinde Yenileme zamanlaması gösterilir. Zamanlamaya (örneğin, Her 1 saat) tıklanması sizi zamanlamayı yürüten (sistem tarafından yönetilen) işin iş sayfasına götürür. Çalıştırmaların geçmişini, başarı veya başarısızlık durumlarını ve geçen süreyi de içeren son 48 saatin çalıştırma grafiğiyle birlikte görebilirsiniz. Daha fazla ayrıntı almak için bir specifc çalıştırmasına tıklayabilirsiniz.
Bu sistem tarafından yönetilen işi düzenleyemezsiniz. Zamanlamada değişiklik yapmak için, CREATE OR REFRESH veya ALTER kullanarak işlem hattının tanımını düzenleyin. Bkz . Var olan bir zamanlamayı veya tetikleyiciyi değiştirme.
Yenilemeler için zaman aşımları
İşlem hattı yenilemeleri, çalışabilecekleri süreyi sınırlayan zaman aşımı ile çalıştırılır. 14 Ağustos 2025 tarihinde veya sonrasında oluşturulan ya da güncelleştirilen bağımsız işlem hatları için, CREATE OR REFRESH komutunu çalıştırarak güncelleştirme yaptığınızda zaman aşımı kaydedilir:
-
STATEMENT_TIMEOUTayarlanırsa, bu değer kullanılır. Bkz. STATEMENT_TIMEOUT. - Aksi takdirde, komutu çalıştırmak için kullanılan SQL ambarından zaman aşımı kullanılır. Bkz. İfade zaman aşımı.
- Ambarda yapılandırılmış bir zaman aşımı yoksa varsayılan olarak 2 gün geçerlidir.
Zaman aşımı ilk oluşturmada kullanılır, ancak izleyen zamanlanmış yenilemelerde de kullanılır.
En son 14 Ağustos 2025'den önce güncelleştirilen akış tabloları için zaman aşımı 2 gün olarak ayarlanır.
Örnek: Yenileme için zaman aşımı ayarlama Veri kümesini oluştururken veya güncelleştirirken deyim düzeyinde bir zaman aşımı ayarlayarak yenilemenin ne kadar süreyle çalışmasına izin verilip verilmeyebileceğini açıkça denetleyebilirsiniz:
SET STATEMENT_TIMEOUT = 21600;
CREATE OR REFRESH MATERIALIZED VIEW my_catalog.my_schema.my_mv
SCHEDULE EVERY 12 HOURS
AS SELECT * FROM large_source_table;
Bu, gerçekleştirilmiş görünümü 12 saatte bir yenilenecek şekilde ayarlar ve yenileme 6 saatten uzun sürerse zaman aşımına uğrar ve bir sonraki zamanlanmış yenilemeyi bekler.
Zamanlanmış yenilemeler zaman aşımlarını nasıl ele alır?
Zaman aşımları, yalnızca CREATE OR REFRESH açıkça çalıştırdığınızda eşitlenir.
- Zamanlanmış yenilemeler, en son
CREATE OR REFRESHsırasında yakalanan zaman aşımını kullanılmaya devam eder. - Yalnızca ambar zaman aşımının değiştirilmesi mevcut zamanlanmış yenilemeleri etkilemez.
Important
Bir ambar zaman aşımını değiştirdikten sonra, yeni zaman aşımını gelecekteki planlanmış yenilemelere uygulamak için CREATE OR REFRESH bir kez daha çalıştırın.
Zamanlanmış yenilemeler için bildirim alma
Important
DDL zamanlanmış yenilemeler özelliğine yönelik bildirimler Beta sürümündedir. Çalışma alanı yöneticileri, Gerçekleştirilmiş Görünümler ve Akış Tabloları için Sistem-Tarafından Yönetilen İş önizlemesini kabul ederek, özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
İşlem hattınız için bir zamanlama oluşturduğunuzda, bildirim almak için zamanlamayı düzenleyebilirsiniz. İşlem hatlarını zamanlamanın birden çok yolu vardır ve bildirim almak aşağıdaki yöntemlerden hangisini seçtiğinize bağlıdır:
Bir görev ile zamanlandı: Lakeflow Jobs'ta bir SQL görevinin bildirimlerini almak için görevi düzenleyin ve bildirimler ekleyin. İşler için SQL görevine bakınız.
Alınacak bildirimler ve bunların nasıl alınabilmesi için çok çeşitli seçenekleriniz vardır. Bkz. İşe bildirim ekleme
Bir
SCHEDULEyan tümce aracılığıyla programlandı: SQL tanımında bir yan tümce ile programlanmış birSCHEDULEişlem hattından bildirim almak istiyorsanız, Katalog Gezgini'nde düzenleyin:Veri kümesini Katalog Gezgini'nde açın.
Genel Bakış sekmesindeki Yenileme zamanlaması'nın altında
Bildirim almak istediğiniz zamanlamayı düzenlemek için.
Diğer seçenekler'in altında bildirimleri ekleyin veya değiştirin.
Zamanlanmış yenilemenin başlangıcında, başarılı olduğunda veya başarısız olduğunda e-posta yoluyla bildirim alma seçeneğiniz vardır. Varsayılan olarak, sahibine yalnızca hatayla ilgili bildirim gönderilir.
E-posta, zamanlamanızı düzenleyen sistem tarafından yönetilen işin çalıştırma geçmişini size götüren bir bağlantı içerir. Bkz. Zamanlanmış yenileme için çalıştırma geçmişini görüntüleme.
Zamanlanmış yenilemeler için bir performans modu seçin
İşlem hattı tarafından kullanılan sunucusuz işlem, kullanıcı arabiriminde çalıştırıldığında Performans için iyileştirilmiş modda çalışır.
SQL tanımında zamanlanan işlem hatları için, Katalog Gezgini'ndeki Performans için iyileştirilmiş ayarını kullanarak sunucusuz işlem performansı modunu seçebilirsiniz. Bu ayar devre dışı bırakıldığında (varsayılan), işlem hattı standart performans modunu kullanır. Standart performans modu, biraz daha yüksek başlatma gecikme süresinin kabul edilebilir olduğu iş yüklerinin maliyetlerini azaltmak üzere tasarlanmıştır. Standart performans modunu kullanan sunucusuz iş yükleri genellikle işlem kullanılabilirliğine ve iyileştirilmiş zamanlamaya bağlı olarak tetiklendikten sonra dört-altı dakika içinde başlar.
Performans optimize edildiğinde, işlem hattınız performans için en iyi hale getirilir ve bu sayede zamana duyarlı iş yükleri için daha hızlı başlatma ve yürütme sağlanır.
Her iki mod da aynı SKU'yu kullanır, ancak standart performans modu daha az DSU kullanır ve bu da daha düşük işlem kullanımını yansıtır.
Important
Zamanlanmış yenilemeler için performans modunun değiştirilmesi Beta sürümündedir. Çalışma alanı yöneticileri, Gerçekleştirilmiş Görünümler ve Akış Tabloları için Sistem-Tarafından Yönetilen İş önizlemesini kabul ederek, özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
İşlem hatları varsayılan olarak kullanıcı arabiriminde etkileşimli olarak çalıştırıldığında performans için iyileştirilmiş modu, sql göreviyle zamanlandığında işin Performans için iyileştirilmiş ayarını ve zamanlandığında standart modu kullanır. Tanımdaki bir SCHEDULE yan tümcesi tarafından zamanlanan işlem hatları için işlem modunu ayarlamak için Katalog Gezgini'nde zamanlamayı düzenleyin:
- Veri kümesini Katalog Gezgini'nde açın.
-
Genel Bakış sekmesindeki Yenileme zamanlaması'nın altında
Değiştirmek istediğiniz zamanlamayı düzenlemek için.
- Gelecekteki zamanlanmış yenilemelerde performans için iyileştirilmiş modu kullanmak için performans için iyileştirilmiş seçeneğini işaretleyin.