Azure Databricks'te veri dönüştürme nedir?
Veri dönüştürme, verileri kullanılabilir bir biçime dönüştürme, temizleme ve yapılandırma işlemidir. Veri dönüştürme genellikle Databricks madalyon mimarisini izler verileri hamdan iş tarafından kullanılabilen bir biçime artımlı olarak iyileştirir.
Aşağıdaki diyagramda, bu örnekte müşteri adı olmayan müşteri verilerini bırakarak raw_customers
veri kümesini clean_customers
veri kümesine dönüştüren bir dizi veri dönüştürmesi içeren bir veri işlem hattı gösterilmektedir.
raw_transactions
verileri, sıfır dolar değeri olan işlemler çıkarılarak clean_transactions
’e dönüştürülür.
sales_report
adlı veri kümesi, clean_customers
ve clean_transactions
'nin birleştirildiği sonuçtur. Analistler analiz ve iş zekası için sales_report
kullanabilir.
Veri dönüştürme türleri
Databricks iki tür veri dönüştürmesini dikkate alır: bildirim temelli ve yordamsal. Önceki örnekteki veri işlem hattı paradigma kullanılarak ifade edilebilir.
Bildirim temelli dönüşümler, bunu nasıl başarmak yerine istenen sonuca odaklanır. Dönüştürmenin mantığını üst düzey soyutlamalar kullanarak belirtirsiniz ve DLT bunu yürütmenin en verimli yolunu belirler.
Yordamsal veri dönüştürmeleri, açık yönergeler aracılığıyla hesaplama gerçekleştirmeye odaklanır. Bu hesaplamalar, verileri işlemek için tam işlem sırasını tanımlar. Prosedürel yaklaşım, uygulama üzerinde daha fazla kontrol sağlar, ancak daha fazla karmaşıklık ve daha yüksek bakım gereksinimi karşılığında.
Bildirim temelli ve yordamsal veri dönüştürme arasında seçim
DLT kullanarak bildirim temelli veri dönüşümü aşağıdaki durumlarda en iyisidir:
- Hızlı geliştirme ve dağıtıma ihtiyacınız vardır.
- Veri işlem hatlarınızın yürütme üzerinde alt düzey denetim gerektirmeyen standart desenleri vardır.
- Yerleşik veri kalitesi denetimleri gerekir.
- Bakım ve okunabilirlik en önemli önceliklerdir.
Apache Spark kodu kullanarak yordamsal veri dönüşümü en iyi yöntemdir:
- Mevcut bir Apache Spark kod tabanını Databricks'e geçiriyorsunuz.
- Yürütme üzerinde ayrıntılı denetime ihtiyacınız var.
-
MERGE
veyaforeachBatch
gibi alt düzey API'lere erişmeniz gerekir. - Kafka veya dış Delta tablolarına veri yazmanız gerekir.