Azure Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Factory Data Kompleks Data Dönüşümleri için Akış
Azure Data Factory Data Flows'a Giriş
Azure Data Factory (ADF) tamamen yönetilen, bulut tabanlı veri entegrasyonu servisi, güçlü kuruluşların orkestra ve otomatik veri hareket ve dönüşümü yönetmesine olanak sağlar.ADF, ETL ve ELT boru hatları oluşturmak için tamamen ücretsiz bir görsel ortamı sağlar.En güçlü yetenekleri arasında, ADFS akış) özelliği, hangi veri mühendislerinin geleneksel kod yazmak yerine karmaşık veri dönüşümünü tasarlamasını sağlar.
Data Flows, Azure tarafından yönetilen Apache Spark kümeleri üzerinde inşa edilmiştir, elastik, yüksek performanslı infaz sağlar. Bu dönüşümleri daha az teknik kullanıcı için engeli azaltır ve heterojen veri kaynakları dahil, temizlik akışı verileri ve özel ifadeler uygulamanız gerekir - makine öğrenimi için hazırlayın, ADF Data Flows daha az teknik kullanıcı için engel sağlar ve bu dönüşümleri koruyabilir ve denetimlenebilir hale getirir.
ADF Data Flows Mimarlıkını Anlamak
Data Flows'ı etkili bir şekilde kullanmak için, alt yapısını anlamak önemlidir. Her Veri Akışı, uygulama zamanından sonra sona ermiş ve tamamlanmadan sonra sona ermiş geçici bir Spark kümesi üzerinde çalışır.Bu tasarım maliyet verimliliği sağlar - sadece dönüşüm sırasında tüketilen hesaplama kaynakları için ödersiniz.
Execution Modes
ADF Data Flows iki birincil yürütme modlarını destekler:
- [FONT=0)Debug Mode[Dönetici:0)[Dönetici test ve geliştirme için kullanılır. Küçük bir Spark kümesi (8 temel üzerinde çalışır ve her dönüşüm aşamasında verileri önizlemenize izin verir.Debug modu üretim dağıtımdan önce doğrulama mantığı için gereklidir.
- [FONT:0)Pipeline Run Mode[[Dönetici: 1) Planlanan veya üretim infazları için kullanılır.You can specify cluster settings such as hesaplama type (General Amaç, Memory Optimized), temel sayı ve zaman-iletişim (TTL) maliyet ve performans için optimize etmek için.
Bu ayrımı anlamak, maliyetleri ve performansı korkutmak için önemlidir. Üretimde, her zaman Debug modundaki dönüşümleri boru hatlarına dağıtmadan önce yerel olarak test eder.
Data Flow vs. Copy Activity
ADF'nin Kopya Aktivitesi yüksek hızlı, şema-agnostic veri hareketi için tasarlanmıştır. Data Flows, conversely, şema-aware dönüşümleri gerektiren senaryolar için kullanılır.Test Aktivitesi basit haritalar ve tür dönüşümler kullanılarak kullanılabilir.[Döneticiler:0)Mapping).
Bir Data Flow'ın Anahtar Bileşenleri
Her veri akışı, üç ana bileşenden oluşur: Kaynak, Dönüşümler ve Lavabolar. Ek olarak, [[Parametreler) ve [[Dönemliler[Dönemliler) dinamik akışlarınızı ve yeniden kullanılabilirliğinizi sağlamak için kullanılabilir.
1. Kaynak 1.
Kaynak, verinizin nereden geldiğini tanımlar. Azure Data Factory, Azure Blob Storage, Azure Data Lake Storage Gen2, Azure SQL Database, Synapse Analytics, Amazon S3, Google Cloud Storage ve on-premises databases aracılığıyla her kaynak şemalarında otomatik olarak yapılandırılabilir.
En iyi uygulama, köşe depolama ve sıkıştırma verimliliği nedeniyle kaynak ve lavabo için formatlar için veya ).
2. Dönüşümler
ADF Data Flows zengin bir dönüşüm faaliyetleri kütüphanesi sunar. Bunlar kategorize edilebilir:
- [FONT:0]Row Modifiers:[[Dönder:[Dönder:)[Düzücüler:[Dönderler:)
- [FONT:0)Column Modifiers:[Dönetici:[Dönekli Köşe, Aggregate, Pencere, Lenovo, Unpivot ve Ranking.
- [FONT:0) Çok sayıda giriş /Outputs: Katıl, Bakup, Vars, Union ve Durumsal Split.
- [FONT:0]Schema Modifiers:[Dönetici: [Dönetici: 1) Yeni Branş, Assert (data kaliteli kurallar), ve Surrogate Key.
[FONT=0]Derived Köşesi[Dönetici:0) Dönüşüm özellikle güçlüdür - "FirstName" ve "SonName" bir uzay ile işlev içeren yeni bir sütun oluşturabilirsiniz.
3. Lavabo 3.
Lavabo, veri topraklarının nereden geldiğini belirler. kaynaklar gibi, lavabolar desteklenmez bir veri deposu olabilir. EĞİTİM ayarlar dosya, bölüm stratejisi (Hash, Dynamic, Round Robin, veya File Name), ve çıkış modu (Append vs. Overwrite).For Delta Lake lavabos, you canOURFLT:0)Merge}Örnek, veya RAMT: 3 veya FileExFLT:)[D)
Kompleks Dönüşümleri Uygulama: A detailed Scenario
Gerçek dünya örneği üzerinden yürüyelim: 0.Müşteri 360 Zenginleştirme[Dönetici: 1) Üç ham veri kaynağınız olduğunu düşünün:
- Müşteri Profilleri ( Blob Storage'danCSV)
- İşlem Tarihi ( ADLS Gen2)
- Ürün Kataloğu (Azure SQL Database)
Hedef her müşteri için içeren tek zenginleştirilmiş veri kümesi oluşturmak: demografikleri, toplam harcamaları, ürün kategorisi tercihleri ve bir sadakat katmanı etiketi. Bu dönüşüm, bir boru hattında yapılan birden çok veri akış adımını içerecektir.
Adım 1: Yük ve Temiz Kaynaklar
Üç Kaynak düğümü ekleyin. Müşteri Profilleri için, "DateOfOneth" formatını standartlaştırmak ve sıralamaları çıplak e-posta adresleriyle kaldırmak için bir tür sütun kullanın.For Transactions, filter out returnsed transactions ( where "Amount < 0").
Adım 2: Müşterilerle Girin
Bir işlem yapmadan dışlama için bir iç katılım yapın.([Dönetici:0)Join[DÜDÜDÜDÜDÜDÜDÜDÜDÜDÜDÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞ
Adım 3: Müşteri başına Saldırganlık
Buna ek olarak, "Aggregate" (Ceff) [Cesurd.com) ve "Müşteri" (TransactionDate)[D)[D)[D)[D)[D)[D)[D)[D)[D)[D)[D))[D)[D)[D)))[D)) [Düzücükler, ve hesapla-)[değiştir | kaynağı değiştir)[değiştir | kaynağı değiştir)
Adım 4: Ürün Tercihleri ile Zengin
Ürün Kataloğunu "ÜrünID" (Et İşlem kaynağında var olan) takmak için ikinci bir Join to add the Product Catalog on "ÜrünID" (bu, İşlem kaynağında var olan). o zaman bir “süresel davranış” matrisi ekleyin.
Adım 5: Loyalty Tier
Bir deyim: 0,0)Derived Sütun[Döntgenlik: 1)) “Bronze”, “Altın”, “Toplantı”, “Bronze”, “Gerekmiş”, “Bronze” (İngilizce).
Adım 6: En Zenginleştirilmiş Data
Azure SQL Database tablosunu veya ADLS Gen2'deki Delta Lake klasörünü kullanarak son çıktıya bağlanın.[Dönder][Dönder][Dönder:0)Demek[Döndergi # 1) üzerinde davranış “Müşteriler” üzerinde, sonraki mevcut kayıtların yerine getirilmesini sağlar.
Bu tüm süreç görsel olarak tasarlanmıştır, Debug modunda her adım test edilebilir. Sonuç boru kullanılabilir, kendini ödüllendirici ve günlük olarak planlanabilir.
Yüksek seviyeli Data Flows için en iyi uygulamalar
Data Flow performansını optimize etmek, bu kanıtlanmış uygulamaları takip etmek için terabaylarla çalışmak önemlidir:
- [FONT:0) Uygun küme boyutlandırmayı kullanın: [Dönetici için, en az 16-32 temel seçin. hafıza yoğun işlemleri için (örneğin, kontenjan veya aggregasyonlar gibi), Memory Optimized hesaplamayı seçin.
- [[Dönetici:0) Verilerinizi Kısmetin:[Döneticileri kullanarak bölümleme Seçenekleri kullanarak bölmeyi etkinleştirin. sadece ilgili bölümler okumak için bir klasör yolu kalıbı oluşturun.
- [[Döneticileri: 0|0|Döneticileri ve aggregasyonlar kümedeki sıkı operasyonların neden olduğu gibi, önceden kayıt verileri katılmadan önce.Use.D:2.Broadcast[Dış tablolar için) küçük bir gözlüğün (örneğin, 1 MB boyut masası) için[Düzüğün.
- [FONT=0) Dosya formatlarını optimize edin:[Dönetici:[Dönetici:0) Kaynak veya Delta'yı kaynaklar ve lavabolar için tercih edin. Bu sütun formatları I/O'yu azaltır ve predikate itdown'u azaltır.
- [FONT:0)Reduce dönüşüm şubeleri:[Dönetici: 1 ) Her Yeni Branş veri akışını tekrarlar. sadece gerekli olduğunda koşullu Split kullanın; aksi takdirde, Türlü Köşelerdeki koşulları birleştirin.
- [FONT:0) Data Flow izleme: [Dönetici: [Dönetici:0]Use Data Flow monitoring:[Döneticileri izlemek için veri akışı uygulama girişlerini kontrol edin. uzun süren dönüşümlere bakın ve onları daha küçük adımlara ayır.
Dış kaynak:0)Microsoft'un ADF Data Flows için resmi performans rehberliği[Dönemli kaynak:0)
İzleme ve Debugging Data Flows
Etkili izleme, veri boru hatlarınızın güvenilir bir şekilde çalışmasını sağlar. ADF, Data Flows için yerleşik izleme yetenekleri sağlar. Her aşamada, her aşamadaki yürütme durumunu görebilirsiniz ve dönüşüm için harcanan zaman. Key metrics to watch:
- [0]Processing Time[[Dönetici:0)[Dönemli: Toplam Spark kümesi tükeniyor.
- [FONT:0)Data Skew[[[Dönetici:0)[[Döneticiler arası verilerin dağıtımı, sahne çıkışında görünür.
- [FONT:0]Row Counts[[Dönemli sıralar filtre veya sorunlara katılabilir.
Debugging için, kullanım [[0)Data Flow Debug modu[[Dönetici: 1 ) Küçük bir küme üzerinde çalışır ve her dönüşümün çıktısını interaktif olarak incelemenize izin verirsiniz. Daha fazla teşhis karmaşık ifadeler için, [FONTD:2]Assert) veri kalitesini kontrol etmek için dönüşüm (örneğin, “isNotNull(MüşteriID) ve başarısızlıkları yakalamanıza izin verirsiniz.
Güvenlik Önergeleri
Data flows genellikle hassas bilgileri ele alır. ADF, Azure Key Vault ile bağlantı dizeleri ve kimlikleri depolama hesabı anahtarları üzerinde yönetilen kimlik veya hizmet ana doğrulamasını sağlar.For data in Transit, Data Flows use TLS; for data at rest, ensure your storage locations arecrypt (sube Storage şifrelemesi varsayılan olarak etkinleştirilir). ek olarak, HTMLD'ler gibi durumlarda maskeleme veya veri akış ifadeleri ile kontrol edilebilir.
Data Flows with Other Azure Services
ADF Data Flows izolasyonda çalışmazlar. Son uç boru hatları oluşturmak için diğer ADF faaliyetleriyle orkestraya konulabilirler:
- [FONT=0) Boru hattı faaliyetini yerine getirir:[Dönetici:[Dönetici:0) Data Flow tamamlanmadan sonra başka bir ADF boru hattı çalıştırın.
- [FONT:0]Databricks Defteri:[Dönetici veya ML inference için, Databricks ile Data Flow bir araya getirin.
- [FONT=0) Azure Functions:[Dönetici:[Dönetici:0) Üçüncü taraf API'leri gerektiren zenginleştirme için özel sunucusuz kod çağırın.
- [FONT=0)Power BI:[Dönetici: 0 3) Değiştirilen verileri doğrudan ADF'nin Power BI bağlantı aracılığıyla Power BI veri setlerine kadar alır.
Dış kaynak:0)Azure Data Factory Data Flow genel dokümanı).
Ortak Pitfalls ve Them'dan Nasıl Kaçırmak
- [FONT:0) Tamamen karmaşık tek Data Flow:[Dönetici:[Dönetici:0) 50-transformasyon canavarı, çeşitli Veri Akışları ile stilize tablolarla birlikte çok sayıda veri akışlarına ayırın.Bu, yönetilebilirliği artırır ve kısmi yeniden işletmelere izin verir.
- [FONT:0)Sahmin edici şemaları görmezden gelir:[Dönetici: 1 ) Kaynakta bulunan ve yeni sütunları boru hattı başarısızlık olmadan ele almak için kaynaklanan seçenekler.
- [0]Zamanı yaşamak için zaman ayırın (TTL): [Dönetici: 1) Üretim kümenizde, aynı boru hattında sonraki Data Flows için sıcak kaynakları korumak için bir TTL setinizi ayarlayın.This can reduce start overhead important.
- [FONT:0) Parametreleri kullanmamak:[Dönlendirme masası isimleri veya dosya yolları boru hatları katı hale getirir. Boru hattı parametrelerini kullanın ve en yüksek reusability için Data Flow parametrelerine geçin.
Gerçek Dünya ADF Data Flows için Vakaları Kullanıyor
Data Lakehouse ELT
Birçok kuruluş, Data Flows'ı bir Data Lakehouse'da ham bronz / silver/altın katmanlarını dönüştürmek için kullanıyor. Örneğin, bir perakende şirketi bronz bölgeye ham satış verileri satın alıyor, sonra Data Flows'ı temiz, deduplicate ve nihayet analiz için altın bir katman oluşturmak için boyutlarını zenginleştiriyor.
Dashboards için Gerçek Zamanlı Aggregation
Veri Akışları, arsa-vardırıcılar ile birleştirin (örneğin, IoT sensör okumaları) yakın zamanlı bir programda veri akışları oluşturmaları için her 1-5 dakika çalıştırılabilir.
Data Maskeing for Compliance
Finansal kurumlar, veri akışlarını kişisel olarak tanımlanabilir bilgi (PII) kullanarak, üretimden test ortamlara kadar verileri test etmek için kullanır. Türlü Köşe ifadeleri kullanarak, "koncat(sol(Email,1), " @örekül.com" ve hash Social Security Numbers ile e-posta adreslerini değiştirirler.
Azure Databricks ile Karşılaştırma
Her iki ADF Data Flows ve Azure Databricks karmaşık dönüşümleri gerçekleştirebilirken, farklı kişiye hizmet ederler. Data Flows standart ETL temizlik ve aggregasyon tasarımını tercih eden ve yönetilen yönetişim için uygun bir veri akışları sunar. Databricks, gelişmiş analitik model veya eğitim için tam kontrole ihtiyaç duyan bilim adamları ve mühendisler için bir dizüstü bilgisayar arayüzü sunar.
Dış kaynak:0) ADF Data Flow ve Azure DatabricksComparison ).
Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç
Azure Data Factory Data Flows, kodsuz korumayı sürdürürken güçlü, ölçeklenebilir ve görsel bir platform sağlar.Bu makalede usta kaynaklar, dönüşümler, lavabolar ve konfigürasyonları, veri mühendisleri, sağlam bir ETL/ELT boru hatları oluşturabilir ve yavaş yavaş yavaş yavaş kurumsal ölçek akışları sürdürürken.
Daha fazla okuma için, resmi Microsoft dokümanını www.D:0)Data Flow Debug modu[Dönetici:2) ve [[Döneticileri referans[Döneticileri ile ilgili olarak).