Veri akışlarında sütun adlarını dinamik olarak ayarlama

ŞUNLARA UYGULANIR: Azure Data Factory Azure Synapse Analytics

İpucu

Microsoft Fabric'daki Data Factory, daha basit bir mimariye, yerleşik yapay zekaya ve yeni özelliklere sahip yeni nesil Azure Data Factory. Veri tümleştirmeyi yeni kullanmaya başladıysanız Fabric Data Factory ile başlayın. Mevcut ADF iş yükleri veri bilimi, gerçek zamanlı analiz ve raporlama genelinde yeni özelliklere erişmek için Fabric yükseltebilir.

Çoğu zaman, ETL işleri için verileri işlerken sonuçları yazmadan önce sütun adlarını değiştirmeniz gerekir. Bazen bu, sütun adlarını iyi bilinen bir hedef şemayla hizalamak için gereklidir. Diğer zamanlarda, değişen şemaları temel alarak çalışma zamanında sütun adlarını ayarlamanız gerekebilir. Bu öğreticide, dış yapılandırma dosyalarını ve parametrelerini kullanarak hedef dosyalarınızın ve veritabanı tablolarınızın sütun adlarını dinamik olarak ayarlamak için veri akışlarını kullanmayı öğreneceksiniz.

Azure Data Factory'ye yeniyseniz, Azure Data Factory'e Giriş'e bakın.

Önkoşullar

  • Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce free Azure hesabı oluşturun.
  • Azure depolama hesabı. ADLS depolama alanını kaynak ve havuz veri depoları olarak kullanırsınız. Depolama hesabınız yoksa, oluşturma adımları için bkz. Azure depolama hesabı oluşturma.

Veri fabrikası oluşturma

Bu adımda bir veri fabrikası oluşturacak ve Data Factory UX'yi açarak veri fabrikasında işlem hattı oluşturacaksınız.

  1. Microsoft Edge veya Google Chrome açın. Şu anda Data Factory kullanıcı arabirimi yalnızca Microsoft Edge ve Google Chrome web tarayıcılarında desteklenmektedir.
  2. Sol menüde Kaynak oluştur>Entegrasyon>Data Factory'yi seçin
  3. Yeni veri fabrikası sayfasındaki Ad alanına ADFTutorialDataFactory girin
  4. Veri fabrikasını oluşturmak istediğiniz Azure subscription seçin.
  5. Kaynak Grubu için aşağıdaki adımlardan birini uygulayın:
  6. Sürüm bölümünde V2'yi seçin.
  7. Konum bölümünden veri fabrikası için bir konum seçin. Açılan listede yalnızca desteklenen konumlar görüntülenir. Veri fabrikası tarafından kullanılan veri depoları (örneğin, Azure Depolama ve SQL Veritabanı) ve işlem (örneğin, Azure HDInsight) diğer bölgelerde olabilir.
  8. Oluştur'u belirleyin.
  9. Oluşturma işlemi tamamlandıktan sonra Bildirim merkezi'nde bildirimi görürsünüz. Veri fabrikası sayfasına gitmek üzere Kaynağa git'i seçin.
  10. Data Factory Kullanıcı Arabirimini (UI) ayrı bir sekmede başlatmak için Author & Monitor'u seçin.

Veri akışı etkinliğiyle işlem hattı oluşturun

Bu adımda, veri akışı etkinliği içeren bir işlem hattı oluşturacaksınız.

  1. ADF giriş sayfasından İşlem Hattı Oluştur'u seçin.

  2. İşlem hattının Genel sekmesinde, işlem hattının Adı için DeltaLake girin.

  3. Fabrika üst çubuğunda Veri Akışı debug kaydırıcısını açın. Hata ayıklama modu, dinamik bir Spark kümesinde dönüştürme mantığının etkileşimli olarak test edilmesini sağlar. Veri Akışı kümelerin ısınması 5-7 dakika sürer ve kullanıcıların Veri Akışı geliştirme yapmayı planlıyorlarsa önce hata ayıklamayı açmaları önerilir. Daha fazla bilgi için bkz. Hata Ayıklama Modu.

    Veri Akışı Etkinliği

  4. Etkinlikler bölmesinde Taşı ve Dönüştür akordeonunu genişletin. bölmeden Veri Akışı etkinliğini sürükleyip işlem hattı tuvaline bırakın.

    Ekran görüntüsü, Veri Akışı aktivitesini bırakabileceğiniz işlem hattı tuvalini göstermektedir.

  5. Adding Veri Akışı açılır penceresinde Yeni Veri Akışı öğesini seçin ve ardından data flow DynaCols olarak adlandırın. İşiniz bittiğinde Son'u seçin.

Veri akışlarında dinamik sütun eşlemesi oluşturma

Bu öğreticide bir örnek film derecelendirme dosyası kullanacağız ve kaynaktaki alanlardan birkaçını zaman içinde değişebilecek yeni bir hedef sütun kümesine yeniden adlandıracağız. Aşağıda oluşturacağınız veri kümeleri, Blob Depolama veya ADLS 2. Nesil depolama hesabınızdaki bu filmler CSV dosyasına işaret etmelidir. Film dosyasını buraya yükleyin ve dosyayı Azure depolama hesabınızda depolayın.

Son akış

Öğretici hedefleri

Veri akışı kullanarak sütun adlarını dinamik olarak ayarlamayı öğreneceksiniz

  1. Filmler CSV dosyası için bir kaynak veri kümesi oluşturun.
  2. Bir alan eşleme JSON yapılandırma dosyası için arama veri kümesi oluşturun.
  3. Sütunları kaynaktan hedef sütun adlarınıza dönüştürün.

Boş bir veri akışı tuvalinden başlama

İlk olarak, ADLS 2. Nesil'deki giriş verileri için aşağıda açıklanan mekanizmaların her biri için veri akışı ortamını ayarlayalım.

  1. Kaynak dönüşümünde bir seçin ve adını movies1 koyun.

  2. Alt panelde veri kümesinin yanındaki yeni düğmeyi seçin.

  3. moviesDB.csv dosyasını yukarıdan depoladığınız yere bağlı olarak Blob veya ADLS 2. Nesil'i seçin.

  4. Alan eşlemelerini aramak için yapılandırma JSON dosyasının kaynağını oluşturmak için kullanacağımız ikinci bir kaynak ekleyin.

  5. Bunu columnmappings olarak adlandırın.

  6. Veri kümesi için, sütun eşlemeye yönelik bir yapılandırmayı depolayacak yeni bir JSON dosyasına işaret edin. Bu öğretici örneği için JSON dosyasına yapıştırabilirsiniz:

    [
    {"prevcolumn":"title","newcolumn":"movietitle"},
    {"prevcolumn":"year","newcolumn":"releaseyear"}
    ]
    
  7. Bu kaynak ayarını olarak array of documentsayarlayın.

  8. Üçüncü bir kaynak ekleyin ve adına movies2 deyin. Bunu movies1 ile tam olarak aynı şekilde yapılandırın.

Parametreli sütun eşlemesi

Bu ilk senaryoda, gelen alanları, sütun adları için bir dize dizisi olan ve her dizi dizinini gelen sütun sıralı konumuyla eşleştiren bir parametreyle eşleştirerek sütun eşlemesi haritasını yaparak veri akışınızda çıkış sütun adlarını belirleyeceksiniz. Bu veri akışını bir işlem hattından yürütürken, bu dize dizisi parametresini veri akışı etkinliğine göndererek her işlem hattı yürütmesinde farklı sütun adları ayarlayabilirsiniz.

Parametreler

  1. Veri akışı tasarımcısına geri dönün ve yukarıda oluşturulan veri akışını düzenleyin.

  2. Parametreler sekmesinden seçin

  3. Yeni bir parametre oluşturun ve dize dizisi veri türünü seçin

  4. Varsayılan değer için ['a','b','c']

  5. Bu dizi değerleriyle eşlemek üzere sütun adlarını değiştirmek için en üstteki movies1 kaynağı kullanın

  6. Select dönüştürmesi ekleyin. Select dönüşümü, gelen sütunları çıktı için yeni sütun adlarına eşlemek için kullanılır.

  7. İlk üç sütun adını parametresinde tanımlanan yeni adlar olarak değiştireceğiz

  8. Bunu yapmak için alt bölmeye üç kural tabanlı eşleme girdisi ekleyin

  9. İlk sütun için eşleşen kural, position==1 ad ise $parameter1[1]

  10. 2. ve 3. sütun için aynı deseni izleyin

    Dönüştürmeyi seçin

  11. Yeni sütun adı değerlerini görüntülemek için Dönüştürmeyi seç'in İncele ve Veri Önizleme sekmelerinde (a,b,c) özgün filmin, başlığın, türlerin sütun adlarının yerini seçin

Dış sütun eşlemeleri için önbelleğe alınmış arama oluşturma

Ardından, daha sonraki bir arama için önbelleğe alınmış bir havuz oluşturacağız. Önbellek, veri akışınızın her işlem hattı yürütmesinde sütunları dinamik olarak yeniden adlandırmak için kullanılabilecek bir dış JSON yapılandırma dosyasını okur.

  1. Veri akışı tasarımcısına geri dönün ve yukarıda oluşturulan veri akışını düzenleyin. Kaynağa havuz dönüşümü columnmappings ekleyin.
  2. Lavabo türünü Cache olarak ayarlayın.
  3. Ayarlar'ın altında anahtar sütunu olarak seçin prevcolumn .

Önbelleğe alınmış veri havuzundan sütun adlarını arama

Yapılandırma dosyası içeriğini belleğe depoladığınıza göre, gelen sütun adlarını yeni giden sütun adlarına dinamik olarak eşleyebilirsiniz.

  1. Veri akışı tasarımcısına geri dönün ve yukarıda oluşturduğunuz veri akışını düzenleyin. movies2 üzerinde kaynak dönüşümünü seçin.
  2. Select dönüştürmesi ekleyin. Bu kez, önbelleğe alınmış havuza depolanmakta olan JSON yapılandırma dosyasındaki hedef ada göre sütun adlarını yeniden adlandırmak için Dönüştürmeyi seç'i kullanacağız.
  3. Kural tabanlı eşleme ekleyin. Eşleşen Koşul için şu formülü kullanın: !isNull(cachedSink#lookup(name).prevcolumn).
  4. Çıkış sütunu adı için şu formülü kullanın: cachedSink#lookup($$).newcolumn.
  5. Yaptığımız şey, dış JSON yapılandırma dosyasından prevcolumn özelliğiyle eşleşen tüm sütun adlarını bulmak ve her eşleşeni yeni newcolumn adıyla yeniden adlandırmaktır.
  6. Dönüştürmeyi seç'teki Veri Önizleme ve İncele sekmelerini seçtiğinizde artık dış eşleme dosyasındaki yeni sütun adlarını görmeniz gerekir.

Kaynak 2

  • Bu öğreticiden tamamlanan işlem hattı buradan indirilebilir
  • Veri akışı havuzları hakkında daha fazla bilgi edinin.