Aracılığıyla paylaş


Eşleme veri akışında dönüştürmeyi seçme

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!

Veri akışları hem Azure Data Factory'de hem de Azure Synapse Pipelines'da kullanılabilir. Bu makale, eşleme veri akışları için geçerlidir. Dönüştürmeler hakkında yeniyseniz lütfen eşleme veri akışı kullanarak verileri dönüştürme başlıklı giriş makalesine bakın.

Sütunları yeniden adlandırmak, bırakmak veya yeniden sıralamak için seçme dönüştürmesini kullanın. Bu dönüştürme satır verilerini değiştirmez, ancak hangi sütunların aşağı akışa yayileceğini seçer.

Belirli bir dönüştürmede kullanıcılar sabit eşlemeler belirtebilir, kural tabanlı eşleme yapmak için desenleri kullanabilir veya otomatik eşlemeyi etkinleştirebilir. Sabit ve kural tabanlı eşlemelerin her ikisi de aynı seçme dönüştürmesi içinde kullanılabilir. Bir sütun tanımlı eşlemelerden biriyle eşleşmezse bırakılır.

Sabit eşleme

Projeksiyonunuzda tanımlanan 50'den az sütun varsa, tüm tanımlı sütunların varsayılan olarak sabit eşlemesi olur. Sabit eşleme tanımlı, gelen bir sütun alır ve bunu tam bir adla eşler.

Sabit eşleme

Not

Sabit eşleme kullanarak sürüklenen sütunu eşleyemez veya yeniden adlandıramazsınız

Hiyerarşik sütunları eşleme

Hiyerarşik sütunun alt sütununu en üst düzey sütuna eşlemek için sabit eşlemeler kullanılabilir. Tanımlanmış bir hiyerarşiniz varsa, bir alt sütun seçmek için sütun açılan listesini kullanın. Seçme dönüştürmesi, alt sütunun değeri ve veri türüyle yeni bir sütun oluşturur.

hiyerarşik eşleme

Kural tabanlı eşleme

Aynı anda birçok sütunu eşlemek veya kaydırılan sütunları aşağı akışa geçirmek istiyorsanız, sütun desenlerini kullanarak eşlemelerinizi tanımlamak için kural tabanlı eşlemeyi kullanın. , , typeve streamposition sütunlarını nametemel alarak eşleştirin. Sabit ve kural tabanlı eşlemelerin herhangi bir birleşimine sahip olabilirsiniz. Varsayılan olarak, 50'den büyük sütuna sahip tüm projeksiyonlar, her sütunda eşleşen ve giriş yapılan adı veren kural tabanlı eşlemeye varsayılan olarak ayarlanır.

Kural tabanlı eşleme eklemek için Eşleme ekle'ye tıklayın ve Kural tabanlı eşleme'yi seçin.

Eşleme ekle bölümünden seçilen Kural tabanlı eşlemeyi gösteren ekran görüntüsü.

Her kural tabanlı eşleme iki giriş gerektirir: hangi koşula göre eşleştirilir ve eşlenen her sütunun adı. her iki değer de ifade oluşturucusu aracılığıyla girilir. Sol ifade kutusuna boole eşleştirme koşulunuzu girin. Sağ ifade kutusunda, eşleşen sütunun hangi sütuna eşleneceğini belirtin.

Eşlemeyi gösteren ekran görüntüsü.

Eşleşen bir sütunun giriş adına başvurmak için söz dizimini kullanın $$ . Yukarıdaki görüntüyü örnek olarak kullanarak, bir kullanıcının adları altı karakterden kısa olan tüm dize sütunlarında eşleştirmek istediğini söyleyebiliriz. Gelen bir sütun olarak adlandırılmışsa test, ifade $$ + '_short' sütununu test_shortyeniden adlandırır. Var olan tek eşleme buysa, koşulu karşılamayen tüm sütunlar çıktı verilerinden bırakılır.

Desenler hem kaymış hem de tanımlanmış sütunlarla eşleşiyor. Bir kural tarafından eşlenen tanımlı sütunları görmek için kuralın yanındaki gözlük simgesine tıklayın. Veri önizlemesini kullanarak çıkışınızı doğrulayın.

Regex eşlemesi

Aşağı doğru köşeli çift ayraç simgesine tıklarsanız, bir regex eşleme koşulu belirtebilirsiniz. Bir regex eşleme koşulu, belirtilen regex koşuluyla eşleşen tüm sütun adlarla eşleşir. Bu, standart kural tabanlı eşlemelerle birlikte kullanılabilir.

Hiyerarşi düzeyi ve Ad eşleşmeleri ile regex eşleme koşulunu gösteren ekran görüntüsü.

Yukarıdaki örnek, regex deseni (r) veya küçük harf r içeren herhangi bir sütun adıyla eşleşir. Standart kural tabanlı eşlemeye benzer şekilde, eşleşen tüm sütunlar söz dizimi kullanılarak sağdaki koşul tarafından $$ değiştirilir.

Sütun adınızda birden çok regex eşleşmesi varsa, 'n' hangi eşleşmeye başvuruyorsa kullanarak $n belirli eşleşmelere başvurabilirsiniz. Örneğin, '$2' sütun adı içindeki ikinci eşleşmeye başvurur.

Kural tabanlı hiyerarşiler

Tanımlı projeksiyonunuzun hiyerarşisi varsa, hiyerarşi alt sütunlarını eşlemek için kural tabanlı eşlemeyi kullanabilirsiniz. Eşleşen bir koşul ve alt sütunlarını eşlemek istediğiniz karmaşık sütunu belirtin. Eşleşen her alt sütun sağda belirtilen 'Ad olarak adlandır' kuralı kullanılarak çıkarılır.

Hiyerarşi için kullanılan kural tabanlı eşlemeyi gösteren ekran görüntüsü.

Yukarıdaki örnek, karmaşık sütunun atüm alt sütunlarında eşleşir. a iki alt sütun b ve ciçerir. Çıkış şeması iki sütun b içerir ve c 'Ad olarak adlandır' koşulu olarak kullanılır $$.

Parameterization

Kural tabanlı eşlemeyi kullanarak sütun adlarını parametreleştirebilirsiniz. Gelen sütun adlarını bir parametreyle eşleştirmek için anahtar sözcüğünü name kullanın. Örneğin, bir veri akışı parametreniz mycolumnvarsa, değerine eşit mycolumnolan herhangi bir sütun adıyla eşleşen bir kural oluşturabilirsiniz. Eşleşen sütunu 'iş anahtarı' gibi sabit kodlanmış bir dize olarak yeniden adlandırabilir ve buna açıkça başvurabilirsiniz. Bu örnekte, eşleşen koşul ve name == $mycolumn ad koşulu 'iş anahtarı' şeklindedir.

Otomatik eşleme

Seçme dönüştürmesi eklerken, Otomatik eşleme kaydırıcısı değiştirilerek Otomatik eşleme etkinleştirilebilir. Otomatik eşleme ile, seçme dönüştürmesi girişleri ile aynı ada sahip yinelenenleri hariç tutarak tüm gelen sütunları eşler. Bu, sürüklenen sütunları içerir; bu da çıkış verilerinin şemanızda tanımlanmamış sütunlar içerebileceği anlamına gelir. Sürüklenen sütunlar hakkında daha fazla bilgi için bkz . şema kayma.

Otomatik eşleme

Otomatik eşleme açıkken, seçme dönüştürmesi yinelenen ayarları atlamayı kabul eder ve mevcut sütunlar için yeni bir diğer ad sağlar. Diğer ad, aynı akışta ve kendi kendine katılma senaryolarında birden çok birleştirme veya arama yaparken kullanışlıdır.

Yinelenen sütunlar

Varsayılan olarak, seçme dönüştürmesi hem giriş hem de çıkış projeksiyonunda yinelenen sütunları bırakır. Yinelenen giriş sütunları genellikle birleştirme ve arama dönüşümlerinden gelir ve burada sütun adları birleştirmenin her tarafında çoğaltılır. İki farklı giriş sütununu aynı ada eşlerseniz yinelenen çıkış sütunları oluşabilir. Onay kutusunu açıp kapatarak yinelenen sütunların bırakılıp bırakılmayacağını veya geçirileceğini seçin.

Yinelenenleri Atla

Sütunları sıralama

Eşleme sırası, çıkış sütunlarının sırasını belirler. Bir giriş sütunu birden çok kez eşlenirse, yalnızca ilk eşleme uygulanır. Yinelenen sütun bırakma işlemi için ilk eşleşme korunur.

Veri akışı betiği

Sözdizimi

<incomingStream>
    select(mapColumn(
        each(<hierarchicalColumn>, match(<matchCondition>), <nameCondition> = $$), ## hierarchical rule-based matching
        <fixedColumn>, ## fixed mapping, no rename
        <renamedFixedColumn> = <fixedColumn>, ## fixed mapping, rename
        each(match(<matchCondition>), <nameCondition> = $$), ## rule-based mapping
        each(patternMatch(<regexMatching>), <nameCondition> = $$) ## regex mapping
    ),
    skipDuplicateMapInputs: { true | false },
    skipDuplicateMapOutputs: { true | false }) ~> <selectTransformationName>

Örnek

Aşağıda bir seçme eşlemesi ve veri akışı betiği örneği verilmiştir:

Betik örneği seçme

DerivedColumn1 select(mapColumn(
        each(a, match(true())),
        movie,
        title1 = title,
        each(match(name == 'Rating')),
        each(patternMatch(`(y)`),
            $1 + 'regex' = $$)
    ),
    skipDuplicateMapInputs: true,
    skipDuplicateMapOutputs: true) ~> Select1
  • Sütunları yeniden adlandırmak, yeniden sıralamak ve diğer ad kullanmak için Seç'i kullandıktan sonra, verilerinizi bir veri deposuna getirmek için Havuz dönüştürmesini kullanın.