Lakeflow işlem hatlarındaki havuzlar

Varsayılan olarak, işlem hattı akışları sonuçlarını Unity Catalog tarafından yönetilen Delta tablolarına, genellikle akış tablolarına veya somutlaştırılmış görünümlere yazar. Alıcılar, dönüştürülmüş verileri olay akışı hizmetleri veya özel veri depoları gibi Databricks tarafından yönetilen depolama alanı dışındaki hedeflere yazmanıza olanak tanıyan alternatif çıktı hedefleridir.

Havuzlar ekleme akışlarıyla birlikte kullanılır. Sink API’lerinden birini kullanarak bir sink tanımlayın, ardından target tanımınızda buna append_flow olarak başvurun.

Havuzlar ne zaman kullanılır?

Databricks, aşağıdaki durumlarda havuzları kullanmanızı önerir:

  • Sahtekarlık algılama, gerçek zamanlı analiz veya verilerin bulut depolama yerine ileti veriyoluna akması gereken müşteri önerileri gibi düşük gecikme süresine sahip operasyonel kullanım örnekleri oluşturun. Milisaniyelik gecikme süresi gerektiren iş yükleri için bkz. Lakeflow işlem hatlarında gerçek zamanlı modu kullanma.
  • Dönüştürülen verileri, Unity Catalog tarafından yönetilen tablolar ve harici tablolar dahil olmak üzere, harici bir Delta örneği tarafından yönetilen tablolara yazın.
  • İşlenen verilerin Azure Databricks dışında tüketilmesi için Apache Kafka topic’lerine geri yazılması gibi işlemlerle dış sistemlere ters ETL gerçekleştirin.
  • Python özel veri kaynaklarını kullanarak Azure Databricks tarafından yerel olarak desteklenmeyen bir biçime yazın.

Havuz türleri

İşlem hatları aşağıdaki havuz türlerini destekler:

Lavabo türü Description
Delta tablo havuzları Unity Kataloğu’ndaki yönetilen veya harici Delta tablolarına yazın. Bir dosya yolu veya tam nitelikli tablo adı belirtin.
Apache Kafka çıkışları İşlem hattı çalışma zamanına dahil edilen Kafka bağlayıcısını kullanarak Apache Kafka konularına yazın.
Azure Event Hubs hedefleri Kafka arabirimini kullanarak Azure Event Hubs’a veri yazın. Kafka havuzlarıyla aynı seçenekleri kullanır.
Python için özel sink'ler spark.dataSource.register ile kaydedilmiş bir Python özel veri kaynağı kullanarak herhangi bir veri deposuna yazın.
ForEachBatch alıcıları Akış verilerinin her mikro toplu işlemine özel Python mantığı uygulayın. Birden çok hedefe yazmanız, ekleme/güncelleme (upsert) işlemleri yapmanız veya akış halinde yazmayı yerleşik olarak desteklemeyen hedefler kullanmanız gerektiğinde kullanın.

Havuz API'leri

İşlem hatları havuz oluşturmak için iki API sağlar:

Her iki sink türü de bir target öğesinin append_flow olarak adlandırılır.

Sınırlamalar

  • Sink’ler yalnızca Python’da kullanılabilir. SQL desteklenmez.
  • Yalnızca akış sorguları desteklenir. Batch sorguları desteklenmez.
  • Yalnızca append_flow havuzlara yazabilir ve create_auto_cdc_flow diğer akış türleri desteklenmez.
  • Havuzlar için işlem hattı beklentileri desteklenmez.
  • Tam yenileme çalıştırılırken havuzlardaki önceden yazılmış veriler temizlenmez.

Ek kaynaklar