Eşleme veri akışında şema kayması
UYGULANANLAR: Azure Data Factory Azure Synapse Analytics
İpucu
Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!
Şema kayması, kaynaklarınızın meta verileri sıklıkla değiştirdiği durumdur. Alanlar, sütunlar ve türler anında eklenebilir, kaldırılabilir veya değiştirilebilir. Şema kaymasını işlemeden veri akışınız yukarı akış veri kaynağı değişikliklerine karşı savunmasız hale gelir. Tipik ETL desenleri, gelen sütunlar ve alanlar değiştiğinde başarısız olur çünkü bunlar bu kaynak adlara bağlı olma eğilimindedir.
Şema kaymasına karşı koruma sağlamak için, Veri Mühendisi olarak şunları yapmanızı sağlayan bir veri akışı aracında tesislerin olması önemlidir:
- Değiştirilebilir alan adları, veri türleri, değerler ve boyutlara sahip kaynakları tanımlama
- Sabit kodlanmış alanlar ve değerler yerine veri desenleriyle çalışabilecek dönüştürme parametrelerini tanımlama
- Adlandırılmış alanları kullanmak yerine gelen alanlarla eşleşecek desenleri anlayan ifadeler tanımlama
Azure Data Factory, veri akışlarınızı yeniden derlemeye gerek kalmadan genel veri dönüştürme mantığı oluşturabilmeniz için yürütmeden yürütmeye değişen esnek şemaları yerel olarak destekler.
Akışınızda şema kaymasını kabul etmek için veri akışınızda mimari bir karar vermeniz gerekir. Bunu yaptığınızda kaynaklardan gelen şema değişikliklerine karşı koruma sağlayabilirsiniz. Ancak, veri akışınızda sütunlarınızın ve türlerinizin erken bağlamalarını kaybedersiniz. Azure Data Factory, şema kayması akışlarını geç bağlama akışları olarak kabul eder, dolayısıyla dönüşümlerinizi oluşturduğunuzda, sürüklenen sütun adları akış genelindeki şema görünümlerinde kullanılamaz.
Bu video, veri akışının şema kayması özelliğiyle Azure Data Factory veya Synapse Analytics işlem hatlarında kolayca oluşturabileceğiniz bazı karmaşık çözümlere giriş niteliğindedir. Bu örnekte, esnek veritabanı şemalarını temel alarak yeniden kullanılabilir desenler oluşturacağız:
Kaynakta şema kayma
Kaynak tanımınızdan veri akışınıza gelen sütunlar, kaynak projeksiyonunuzda mevcut olmadığında "sürüklenmiş" olarak tanımlanır. Kaynak dönüştürmedeki projeksiyon sekmesinden kaynak projeksiyonunuzu görüntüleyebilirsiniz. Kaynağınız için bir veri kümesi seçtiğinizde, hizmet otomatik olarak veri kümesinden şemayı alır ve bu veri kümesi şema tanımından bir projeksiyon oluşturur.
Kaynak dönüştürmede şema kayması, veri kümesi şemanızda tanımlanmayan okuma sütunları olarak tanımlanır. Şema kaymasını etkinleştirmek için kaynak dönüştürmenizde şema kaymasına izin ver seçeneğini işaretleyin.
Şema kayması etkinleştirildiğinde, yürütme sırasında tüm gelen alanlar kaynağınızdan okunur ve akışın tamamı Havuza geçirilir. Varsayılan olarak, sürüklenen sütunlar olarak bilinen yeni algılanan tüm sütunlar dize veri türü olarak gelir. Veri akışınızın sürüklenen sütunlardan oluşan veri türlerini otomatik olarak çıkarmasını istiyorsanız kaynak ayarlarınızda Sürüklenen sütun türlerini çıkarsa seçeneğini işaretleyin.
Havuzdaki şema kayması
Havuz dönüşümünde, şema kayması, havuz veri şemasında tanımlananların üzerine ek sütunlar yazdığınız zamandır. Şema kaymasını etkinleştirmek için havuz dönüştürmenizde şema kaymasına izin ver'i işaretleyin.
Şema kaymasını etkinleştirdiyseniz Eşleme sekmesindeki Otomatik eşleme kaydırıcısının açık olduğundan emin olun. Bu kaydırıcı açıkken, tüm gelen sütunlar hedefinize yazılır. Aksi takdirde, sürüklenen sütunlar yazmak için kural tabanlı eşleme kullanmanız gerekir.
Sürüklenen sütunları dönüştürme
Veri akışınızda sütunlar kaydığında, dönüşümlerinizde bunlara aşağıdaki yöntemlerle erişebilirsiniz:
- Bir sütuna
byPosition
ada veya konum numarasına göre açıkça başvurmak için vebyName
ifadelerini kullanın. - Türetilmiş Sütuna veya Toplama dönüşümüne herhangi bir ad, akış, konum, kaynak veya tür bileşimiyle eşleşecek şekilde sütun deseni ekleme
- Sürüklenen sütunları bir desen aracılığıyla sütun diğer adlarına eşleştirmek için Select veya Sink dönüşümünde kural tabanlı eşleme ekleme
Sütun desenlerini uygulama hakkında daha fazla bilgi için bkz . Eşleme veri akışında sütun desenleri.
Sürüklenen sütunları eşleme hızlı işlemi
Sürüklenen sütunlara açıkça başvurmak için, bir veri önizleme hızlı işlemi aracılığıyla bu sütunlar için hızla eşlemeler oluşturabilirsiniz. Hata ayıklama modu açık olduğunda Veri Önizleme sekmesine gidin ve Veri önizlemesini getirmek için Yenile'ye tıklayın. Veri fabrikası sürüklenen sütunların mevcut olduğunu algılarsa, SürüklenenLeri Eşle'ye tıklayabilir ve şema görünümlerindeki tüm sürüklenen sütunlara başvurmanızı sağlayan türetilmiş bir sütun oluşturabilirsiniz.
Oluşturulan Türetilmiş Sütun dönüşümünde, sürüklenen her sütun algılanan adı ve veri türüyle eşlenir. Yukarıdaki veri önizlemesinde 'movieId' sütunu tamsayı olarak algılanır. Harita Kaydı'ya tıklandıktan sonra movieId, Türetilmiş Sütun'da olarak toInteger(byName('movieId'))
tanımlanır ve aşağı akış dönüşümlerinde şema görünümlerine eklenir.
İlgili içerik
Veri Akışı İfade Dili'nde sütun desenleri ve şema kayması için "byName" ve "byPosition" gibi ek olanaklar bulacaksınız.