Aracılığıyla paylaş


İşlem hattı güncellemesini çalıştır

Bu makalede işlem hattı güncelleştirmeleri açıklanır ve güncelleştirmenin nasıl tetiklenmesine ilişkin ayrıntılar sağlanır.

Bir işlem hattı güncellemesi nedir?

İşlem hattı oluşturduktan ve çalıştırmaya hazır olduktan sonra bir güncelleştirmebaşlatırsınız. İşlem hattı güncelleştirmesi aşağıdakileri yapar:

  • Doğru yapılandırmaya sahip bir küme başlatır.
  • Tüm tanımlı tabloları ve görünümleri bulur ve geçerli sütun adları, eksik bağımlılıklar ve söz dizimi hataları gibi analiz hatalarını denetler.
  • Kullanılabilir en son verilerle tabloları ve görünümleri oluşturur veya güncelleştirir.

Bir kuru çalıştırma kullanarak, tabloların oluşturulmasını veya güncelleştirilmeyi beklemeden işlem hattının kaynak kodundaki sorunları de kontrol edebilirsiniz. Bu özellik, işlem hattınızda yanlış tablo veya sütun adları gibi hataları hızla bulup düzeltmenize olanak sağladığından işlem hatlarını geliştirirken veya test ederken kullanışlıdır.

İşlem hattı güncelleştirmeleri nasıl tetikleniyor?

İşlem hattı güncelleştirmelerini başlatmak için aşağıdaki seçeneklerden birini kullanın:

Güncelleştirme tetikleyicisi Ayrıntılar
Manual İşlem hattı güncelleştirmelerini Lakeflow Pipelines Düzenleyicisi'nden veya işlem hatları listesinden el ile tetikleyebilirsiniz. Bkz. İşlem hattı güncelleştirmesini el ile tetikleme.
Scheduled İşlem hatları için güncelleştirmeleri, işleri kullanarak zamanlayabilirsiniz. bkz . İşler için işlem hattı görevi.
Programmatic Üçüncü taraf araçları, API'leri ve CLI'leri kullanarak program aracılığıyla güncelleştirmeleri tetikleyebilirsiniz. Bkz Bir iş akışında işlem hatlarını çalıştırma ve işlem hattı REST API'si.

İşlem hattı güncelleştirmesini el ile tetikleme

İşlem hattı güncelleştirmesini el ile tetikleme için aşağıdaki seçeneklerden birini kullanın:

  • Lakeflow Pipelines Düzenleyicisi'nden tam işlem hattını veya işlem hattının bir alt kümesini (tek bir kaynak dosya veya tek bir tablo) çalıştırın. Daha fazla bilgi için bkz. İşlem hattı kodunu çalıştırma.
  • İşler ve İşlem Hatları listesinden tüm işlem hattını çalıştırın. Yürüt simgesine tıklayın. Listedeki işlem hattıyla aynı satırda.
  • İşlem hattı izleme sayfasında LDP Başlangıç Simgesi düğmesine tıklayın.

Uyarı

El ile tetiklenen işlem hattı güncelleştirmeleri için varsayılan davranış, işlem hattında tanımlanan tüm veri kümelerini yenilemektir.

İşlem hattı yenileme semantiği

Aşağıdaki tabloda gerçekleştirilmiş görünümler ve akış tabloları için varsayılan yenileme, tam yenileme ve sıfırlama denetim noktaları davranışı açıklanmaktadır:

Güncelleştirme türü Gerçekleştirilmiş görünüm Akış tablosu
Yenile (varsayılan) Sonuçları, tanımlama sorgusunun geçerli sonuçlarını yansıtacak şekilde güncelleştirir. Maliyetleri inceler ve daha uygun maliyetliyse artımlı yenileme gerçekleştirir. Akış tabloları ve süreçlerinde tanımlanan mantığa göre yeni kayıtları işler.
Tam yenileme Sonuçları, tanımlama sorgusunun geçerli sonuçlarını yansıtacak şekilde güncelleştirir. Akış tablolarındaki verileri temizler, akışlardan durum bilgilerini (denetim noktaları) temizler ve veri kaynağındaki tüm kayıtları yeniden işler.
Akış akışı denetim noktalarını sıfırlama Gerçekleştirilmiş görünümler için geçerli değildir. Akışlardan durum bilgilerini (denetim noktaları) temizler, ancak akış tablolarındaki verileri temizlemez ve veri kaynağındaki tüm kayıtları yeniden işler.

Varsayılan olarak, işlem hattındaki tüm materyalize edilmiş görünümler ve akış tabloları her güncellemede yenilenir. aşağıdaki özellikleri kullanarak isteğe bağlı olarak güncelleştirmelerden tabloları atlayabilirsiniz:

Bu özelliklerin her ikisi de varsayılan yenileme semantiğini veya tam yenilemeyi destekler. İsteğe bağlı olarak Yenileme için tablo seç iletişim kutusunu kullanarak başarısız tablolar için yenileme çalıştırırken ek tabloları hariç tutabilirsiniz.

Akış tabloları için, ilişkili akış tablolarındaki verileri değil, seçili akışlar için akış denetim noktalarını temizlemeyi seçebilirsiniz. Seçili akışların denetim noktalarını temizlemek için Databricks REST API'sini kullanarak yenileme başlatın. Seçmeli akış akışlarının denetim noktalarını temizlemek için bkz. İşlem hattı güncelleştirmesini başlatma.

Tam yenileme mi kullanmalıyım?

Databricks, tam yenilemelerin yalnızca gerektiğinde çalıştırılmasını önerir. Tam yenileme, veri kümesini tanımlayan mantık aracılığıyla her zaman belirtilen veri kaynaklarından tüm kayıtları yeniden işler. Tam yenilemenin tamamlanması için gereken süre ve kaynaklar, kaynak verilerin boyutuyla ilişkilendirilir.

Gerçekleştirilmiş görünümler, varsayılan veya tam yenileme kullanılsa da aynı sonuçları döndürür. Akış tablolarıyla tam yenileme kullanıldığında tüm durum işleme ve denetim noktası bilgileri sıfırlanır ve giriş verileri artık mevcut değilse kayıt kayıplarına neden olabilir.

Databricks yalnızca giriş veri kaynakları tablonun veya görünümün istenen durumunu yeniden oluşturmak için gereken verileri içerdiğinde tam yenileme önerir. Giriş kaynağı verilerinin artık kullanılamadığı aşağıdaki senaryoları ve tam yenileme çalıştırmanın sonucunu göz önünde bulundurun:

Veri kaynağı Neden giriş verileri yok Tam yenilemenin sonucu
Kafka Kısa bekletme eşiği Kafka kaynağında artık mevcut olmayan kayıtlar hedef tablodan bırakılır.
Nesne depolamadaki dosyalar Yaşam döngüsü ilkesi Kaynak dizinde artık mevcut olmayan veri dosyaları hedef tablodan bırakılır.
Tablodaki kayıtlar Uyumluluk için silindi Yalnızca kaynak tabloda bulunan kayıtlar işlenir.

Tam yenilemelerin bir tabloda veya görünümde çalıştırılmasını önlemek için, pipelines.reset.allowed tablo özelliğini falseolarak ayarlayın. Bkz İşlem hattı tablosu özellikleri. Tam yenileme gerektirmeden verileri mevcut bir akış tablosuna eklemek için ekleme akışı de kullanabilirsiniz.

Seçili tablolar için işlem hattı güncelleştirmesi başlatma

İsteğe bağlı olarak yalnızca işlem hattınızdaki seçili tablolar için verileri yeniden işleyebilirsiniz. Örneğin, geliştirme sırasında yalnızca tek bir tabloyu değiştirir ve test süresini kısaltmak istersiniz veya işlem hattı güncelleştirmesi başarısız olur ve yalnızca başarısız tablolarıyenilemek istersiniz.

Lakeflow Pipelines Düzenleyicisi'nde kaynak dosyayı, seçili tabloları veya tek bir tabloyu yeniden işleme seçenekleri vardır. Ayrıntılar için bkz. İşlem hattı kodunu çalıştırma.

Başarısız tablolar için işlem hattı güncelleştirmesi başlatma

İşlem hattı grafiğindeki bir veya daha fazla tablodaki hatalar nedeniyle işlem hattı güncelleştirmesi başarısız olursa, yalnızca başarısız tabloların ve aşağı akış bağımlılıklarının güncelleştirmesini başlatabilirsiniz.

Uyarı

Dışlanan tablolar, başarısız bir tabloya bağlı olsalar bile güncellenmez.

Başarısız tabloları güncelleştirmek için işlem hattı izleme sayfasında Başarısız tabloları yenile'ye tıklayın.

İşlem hattını izleme sayfasında yalnızca seçili başarısız tabloları güncellemek için:

  1. Butona Bas düğmesine tıklayın ve Başarısız tabloları yenile düğmesinin yanındaki Yenileme için tabloları seçseçeneğine tıklayın. Yenileme için tabloları seçme iletişim kutusu görüntülenir.

  2. Yenilenmesi gereken tabloları seçmek için her tabloya tıklayın. Seçili tablolar vurgulanır ve etiketlenir. Bir tabloyu güncelleştirmeden kaldırmak için tabloya yeniden tıklayın.

  3. "Yenile'yi seçin vetıklayın."

    Uyarı

    Seçimi yenile düğmesi, seçili tabloların sayısını parantez içinde görüntüler.

Seçili tablolar için zaten alınmış olan verileri yeniden işlemek için, Blue Down CaretBlue Down CaretYenileme seçimi düğmesinin yanındaki 'ne tıklayın ve Tam Yenileme seçimitıklayın.

Seçmeli akış akışlarının denetim noktalarını temizlemek için işlem hattı güncelleştirmesi başlatma

İsteğe bağlı olarak, önceden alınmış verileri temizlemeden işlem hattınızdaki seçili akış akışları için verileri yeniden işleyebilirsiniz.

Uyarı

Seçili olmayan akışlar, REFRESH güncellemesi kullanılarak çalıştırılır. Diğer tabloları seçmeli olarak yenilemek için full_refresh_selection veya refresh_selection de belirtebilirsiniz.

Seçili akış denetim noktalarını yenilemek üzere bir güncelleştirme başlatmak için Lakeflow Spark Bildirimli İşlem Hatları REST API'sindeki güncelleştirme isteğini kullanın. Aşağıdaki örnek, curl komutunu kullanarak updates isteğini çağırarak bir işlem hattı güncellemesini başlatır:

curl -X POST \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"reset_checkpoint_selection": [<streaming flow1>, <streaming flow 2>...]
}' \
https://<your-databricks-instance>/api/2.0/pipelines/<your-pipeline-id>/updates

Tabloların güncelleştirilesini beklemeden işlem hattında hata olup olmadığını denetleme

Önemli

İşlem hattı Dry run özelliği Genel Önizleme aşamasındadır.

Bir işlem hattının kaynak kodunun tam güncelleme yapmadan geçerli olup olmadığını denetlemek için deneme çalıştırması kullanın. Bir kuru çalıştırma, işlem hattında tanımlanan veri kümelerinin ve akışların tanımlarını çözümler, ancak hiçbir veri kümesini gerçekleştirmez veya yayımlamaz. Ön çalışma sırasında tespit edilen, yanlış tablo veya sütun isimleri gibi hatalar, kullanıcı arabiriminde bildirilir.

Bir kuru çalıştırma başlatmak için Blue Down CaretBlue Down CaretBaşlat'ın yanındaki işlem hattı ayrıntıları sayfasında ve ardından Kuru çalıştır'a tıklayın.

Kuru çalıştırma tamamlandıktan sonra, alt paneldeki olay tepsisinde tüm hatalar gösterilir. Olay tepsisine tıklanırken alt panelde bulunan sorunlar görüntülenir. Ayrıca, olay günlüğü yalnızca kuru çalıştırmayla ilgili olayları gösterir ve DAG'da hiçbir ölçüm görüntülenmez. Hatalar bulunursa, ayrıntılar olay günlüğünde kullanılabilir.

Yalnızca en son kuru çalıştırma sonuçlarını görebilirsiniz. Kuru çalıştırma en son çalıştırılan güncelleştirmeyse güncelleştirme geçmişinde seçerek sonuçları görebilirsiniz. Kuru çalıştırmadan sonra başka bir güncelleştirme çalıştırılırsa sonuçlar artık kullanıcı arabiriminde kullanılamaz.

Geliştirme modu

İşlem hatları Lakeflow Pipelines Düzenleyicisi'nden çalıştırılır ve geliştirme modu açıktır. Varsayılan olarak zamanlanan işlem hatları geliştirme modu kapalı olarak çalışır. İşlem hattının üretimde nasıl çalışacağını test etmek istiyorsanız, düzenleyicideki açılan listeden Farklı ayarlarla çalıştır'ı seçerek geliştirme modunun kullanılıp kullanılmayacağını etkileşimli olarak seçebilirsiniz.

Uyarı

Eski not defteri düzenleyicisiyle oluşturulan işlem hatları varsayılan olarak geliştirme modunu kullanır. İşlem hattı izleme sayfasında Ayarlar'ı seçerek ayarı denetleyebilir veya değiştirebilirsiniz. İzleme sayfası, çalışma alanınızın sol tarafındaki İşler ve İşlem Hatları düğmesinden kullanılabilir. İşlem hattı varlıkları tarayıcısında çalıştırma sonuçlarına tıklayarak işlem hattı düzenleyicisinden doğrudan izleme sayfasına da atlayabilirsiniz.

İşlem hattınızı geliştirme modunda çalıştırdığınızda, Lakeflow Spark Bildirimli İşlem Hatları sistemi aşağıdakileri yapar:

  • Yeniden başlatmaların yükünü önlemek için kümeyi tekrar kullanır. Varsayılan olarak, geliştirme modu etkinleştirildiğinde kümeler iki saat boyunca çalışır. Bunu pipelines.clusterShutdown.delay ayarıyla değiştirebilirsiniz.
  • İşlem hattı yeniden denemelerini devre dışı bırakır, böylece hataları hemen algılayabilir ve düzeltebilirsiniz.

Geliştirme modu kapalıyken sistem aşağıdakileri yapar:

  • Bellek sızıntıları ve eski kimlik bilgileri de dahil olmak üzere belirli kurtarılabilir hatalar için kümeyi yeniden başlatır.
  • Belirli hatalar, örneğin bir kümeyi başlatma hatası, gerçekleştiğinde yürütme yeniden denenir.

Uyarı

Geliştirme modunun açık ve kapalı olması yalnızca küme ve işlem hattı yürütme davranışını denetler. Yayımlama tabloları için katalogdaki depolama konumları ve hedef şemalar işlem hattı ayarlarının bir parçası olarak yapılandırılmalıdır ve modlar arasında geçiş yaparken etkilenmez.