Parametreli Veri Akışı 2. Nesil

Doku Veri Akışı 2. Nesil'deki parametreler, veri akışının nasıl tasarlandığını şekillendiren yeniden kullanılabilir girişler tanımlamanıza olanak tanır ve genel parametreler moduyla bu girişler çalışma zamanında işlem hatları veya API'ler aracılığıyla ayarlanabilir. Tek bir veri akışını son derece esnek ve çok yönlü hale getirir, çünkü farklı değerler geçirerek birçok senaryoda aynı mantığı yeniden kullanabilir ve dönüştürmeleri yeniden yazmaya veya yinelemeye gerek kalmadan dinamik, otomatik iş akışlarını etkinleştirebilirsiniz.

Bu öğretici, şunların nasıl yapıldığını gösteren bir örnekte size yol gösterir:

  • Kaynağı parametreleştirme: Kaynak olarak WideWorldImporters örnek veri kümesiyle Lakehouse'u kullanarak
  • Mantığı parametreleştirme: Veri akışı deneyimi boyunca kullanılabilen giriş pencere öğelerini kullanma
  • Hedefi parametreleştirme: Ambarı hedef olarak kullanma
  • Parametre değerleriyle bir çalıştırma isteği gönderin: Parametre değerlerini Fabric işlem hattındaki Veri akışı etkinliği aracılığıyla iletme

Veri Akışı 2. Nesil'de parametreli veri akışı çözümü mimarisinin diyagramı.

Uyarı

Bu makalede gösterilen kavramlar, Veri Akışı 2. Nesil için evrenseldir ve burada gösterilenlerin ötesindeki diğer kaynaklar ve hedefler için geçerlidir.

Senaryo

Dataflow 2. Nesil içindeki senaryo için dimension_city adlı sorgunun ekran görüntüsü.

Bu senaryoda kullanılan veri akışı basittir, ancak açıklanan temel ilkeler tüm veri akışı türleri için geçerlidir. Bir Lakehouse'da depolanan Wide World Importers adlı örnek veri kümesindeki dimension_city adındaki tabloya bağlanır. SalesTerritory sütununun Güneydoğu'ya eşit olduğu satırları filtreler ve sonucu Bir Ambarda Şehir adlı yeni bir tabloya yükler. Lakehouse, Warehouse ve Dataflow gibi tüm bileşenler aynı Çalışma Alanında bulunur. Veri akışını dinamik hale getirmek için kaynak tabloyu, filtre değerini ve hedef tabloyu parametreleştirirsiniz. Bu değişiklikler veri akışının sabit kodlanmış değerler yerine belirli değerlerle çalışmasını sağlar.

Devam etmeden önce , Giriş sekmesine gidip Seçenekler'i seçerek ve Parametreler bölümünde Yürütme için parametrelerin bulunmasını ve geçersiz kılınmasını etkinleştir etiketli kutuyu işaretleyerek ve veri akışınızın yürütme sırasında parametreleri kabul etmesine izin vererek genel parametreler modunu etkinleştirin.

Dataflow 2. Nesil'deki seçenekler iletişim kutusunun ekran görüntüsü ve

Kaynağı parametreleştirme

Lakehouse, Warehouse veya Fabric SQL gibi Doku bağlayıcılarından herhangi birini kullanırken hepsi aynı gezinti yapısını izler ve aynı giriş biçimini kullanır. Bu senaryoda, bağlayıcıların hiçbiri bağlantı kurmak için el ile giriş gerektirmez. Ancak, her biri sorgunuzdaki gezinti adımları aracılığıyla bağlandığı çalışma alanını ve öğeyi gösterir. Örneğin, ilk gezinti adımı, sorgunun bağlandığı workspaceId'yi içerir.

dimension_city sorgusunun formül çubuğunda workspaceId değerini içeren Gezinti 1 adımının ekran görüntüsü.

Amaç, formül çubuğundaki sabit kodlanmış değerleri parametrelerle değiştirmektir. Özellikle, WorkspaceId için bir parametre ve LakehouseId için başka bir parametre oluşturmanız gerekir. Parametre oluşturmak için şeritteki Giriş sekmesine gidin, Parametreleri yönet'i seçin ve ardından açılan menüden Yeni parametre'yi seçin.

Yeni parametre oluşturmak için Giriş sekmesindeki girdinin ekran görüntüsü.

Parametreleri oluştururken her ikisinin de gerekli olarak işaretlendiğinden ve metin türüne ayarlandığından emin olun. Geçerli değerleri için, kendi ortamınızdaki karşılık gelen değerlerle eşleşen değerleri kullanın.

Parametreleri yönet iletişim kutusunda oluşturulan LakehouseId parametresinin ekran görüntüsü.

Her iki parametre de oluşturulduktan sonra sorgu betiğini sabit kodlanmış değerler yerine bunları kullanacak şekilde güncelleştirebilirsiniz. Bu, formül çubuğundaki özgün değerlerin Çalışma Alanı Kimliği ve Lakehouse Kimliği parametrelerine başvurularla el ile değiştirilmesini içerir. Özgün sorgu betiği şöyle görünür:

let
  Source = Lakehouse.Contents([]),
  #"Navigation 1" = Source{[workspaceId = "8b325b2b-ad69-4103-93ae-d6880d9f87c6"]}[Data],
  #"Navigation 2" = #"Navigation 1"{[lakehouseId = "2455f240-7345-4c8b-8524-c1abbf107d07"]}[Data],
  #"Navigation 3" = #"Navigation 2"{[Id = "dimension_city", ItemKind = "Table"]}[Data],
  #"Filtered rows" = Table.SelectRows(#"Navigation 3", each ([SalesTerritory] = "Southeast")),
  #"Removed columns" = Table.RemoveColumns(#"Filtered rows", {"ValidFrom", "ValidTo", "LineageKey"})
in
  #"Removed columns"

Gezinti adımlarındaki referansları güncelledikten sonra güncellenmiş betiğiniz şu şekilde görünebilir:

let
  Source = Lakehouse.Contents([]),
  #"Navigation 1" = Source{[workspaceId = WorkspaceId]}[Data],
  #"Navigation 2" = #"Navigation 1"{[lakehouseId = LakehouseId]}[Data],
  #"Navigation 3" = #"Navigation 2"{[Id = "dimension_city", ItemKind = "Table"]}[Data],
  #"Filtered rows" = Table.SelectRows(#"Navigation 3", each ([SalesTerritory] = "Southeast")),
  #"Removed columns" = Table.RemoveColumns(#"Filtered rows", {"ValidFrom", "ValidTo", "LineageKey"})
in
  #"Removed columns"

Veri akışı düzenleyicisinde veri önizlemesini yine de doğru şekilde değerlendirdiğini fark edeceksiniz.

Mantığı parametreleştirme

Kaynak artık parametreleri kullandığına göre, veri akışının dönüştürme mantığını parametreleştirmeye odaklanabilirsiniz. Bu senaryoda, filtre adımı mantığın uygulandığı yerdir ve şu anda Güneydoğu olarak sabit kodlanmış olan filtrelenen değer bir parametreyle değiştirilmelidir. Bunu yapmak için Territory adlı yeni bir parametre oluşturun, veri türünü metne ayarlayın, gerekli değil olarak işaretleyin ve geçerli değerini Mideast olarak ayarlayın.

Parametreleri yönet iletişim kutusunda oluşturulan Territory parametresinin ekran görüntüsü.

Filtre adımınızın kullanıcı arabirimi kullanılarak oluşturulduğu göz önünde bulundurulduğunda, Filtrelenmiş satırlar adımına gidebilir, iki kez seçebilir ve filtre adımının ayarlar iletişim kutusunu alabilirsiniz. Bu iletişim kutusu, statik değer yerine parametre kullanmak istiyorsanız giriş pencere öğesi aracılığıyla seçim yapmanızı sağlar:

Filtre satırları iletişim kutusundaki, bir parametreye başvurabilme seçeneğiyle birlikte giriş bileşeninin ekran görüntüsü.

Parametre seçin seçeneğini seçtikten sonra, gerekli veri türüyle eşleşen tüm kullanılabilir parametreleri göstermek için bir açılan menü görüntülenir. Bu listeden yeni oluşturulan Territory parametresini seçebilirsiniz.

Filtre satırları iletişim kutusundan giriş pencere öğesi içinde seçilen Territory parametresinin ekran görüntüsü.

Tamam'ı seçtiğinizde, diyagram görünümünün yeni oluşturulan parametre ile kullanımdaki sorgu arasındaki bağlantıyı önceden oluşturduğuna dikkat edin. Yalnızca bu değil, veri önizlemesinde artık Mideast bölgesiyle ilgili bilgiler de gösterilir.

Mideast SalesTerritory verilerini gösteren dimension_city sorgusu için Diyagram görünümünün, Sorgu ayarlarının ve Veri önizlemesinin ekran görüntüsü.

Hedefi parametreleştirme

Uyarı

Dataflow 2. Nesil'deki veri hedefleri kavramını ve karma betiğinin veri hedefleri ve yönetilen ayarlar hakkındaki makaleden nasıl oluşturulduğunu anlamanız önerilir

Bu senaryoda parametreleştirilecek son bileşen hedeftir. Bunu yapmak için, Power Query M kodunu kullanarak hedef sorgu betiğini doğrudan Veri Akışı düzenleyicisinde değiştirmenizi sağlayan veri hedefi sorguları için gelişmiş düzenleme özelliğini kullanırsınız.

Dimension_city sorgusunun veri hedefi ayarlarını içeren açılır pencerenin ekran görüntüsü.

Başlamadan önce WarehouseId adlı bir parametre oluşturun. Geçerli değer olarak Ambarınızın karşılık gelen kimliğini kullandığınızdan, gerektiği gibi ayarladığınızdan ve metin veri türüne ayarladığınızdan emin olun.

Veri hedefi sorguları için gelişmiş düzenlemeyi etkinleştirme

Hedef sorguyu doğrudan Veri Akışı düzenleyicisinde değiştirmek için önce gelişmiş düzenleme özelliğini etkinleştirmeniz gerekir:

  1. Şeritteki Giriş sekmesinde Seçenekler'i seçin.

  2. Seçenekler iletişim kutusunda, aşağı kaydırarak Veri hedefleri bölümüne gelin.

  3. Veri hedefi sorguları için gelişmiş düzenlemeyi etkinleştir onay kutusunu seçin.

  4. Hedef sorguları değiştirmenin beklenmeyen davranışlara neden olabileceğini veya veri akışını bozabileceğini açıklayan bir uyarı iletişim kutusu görüntülenir. Uyarıyı dikkatlice okuyun ve onaylamak için Tamam'ı seçin.

  5. Seçenekler iletişim kutusunu kapatmak için Tamam'ı seçin.

Hedef sorguyu değiştirme

Gelişmiş düzenlemeyi etkinleştirdikten sonra, veri hedefiniz için hedef sorguya erişebilir ve bunları değiştirebilirsiniz:

  1. Sorgular bölmesinde, yapılandırılan hedeflerinizi gösteren veri hedefi bölümünü bulun.

  2. dimension_city adlı hedef sorguya sağ tıklayın.

  3. Bağlam menüsünde Gelişmiş düzenleyici'yi seçin.

Hedef sorgu aşağıdaki gibi görünür:

let
  Pattern = Fabric.Warehouse([HierarchicalNavigation = null, CreateNavigationProperties = false]),
  Navigation_1 = Pattern{[workspaceId = "8b325b2b-ad69-4103-93ae-d6880d9f87c6"]}[Data],
  Navigation_2 = Navigation_1{[warehouseId = "527ba9c1-4077-433f-a491-9ef370e9230a"]}[Data],
  TableNavigation = Navigation_2{[Item = "City", Schema = "dbo"]}?[Data]?
in
  TableNavigation

Lakehouse kaynağının betiğine benzer şekilde, hedef için bu betik de workspaceId ve warehouseId değerlerini sabit kodladığı benzer bir desen izler. Bu sabit değerleri parametrelerin tanımlayıcılarıyla değiştirin ve betiğiniz aşağıdaki gibi görünür:

let
  Pattern = Fabric.Warehouse([HierarchicalNavigation = null, CreateNavigationProperties = false]),
  Navigation_1 = Pattern{[workspaceId = WorkspaceId]}[Data],
  Navigation_2 = Navigation_1{[warehouseId = WarehouseId]}[Data],
  TableNavigation = Navigation_2{[Item = "City", Schema = "dbo"]}?[Data]?
in
  TableNavigation

Değişikliklerinizi gelişmiş düzenleyicide kaydetmek için Tamam'ı seçin.

Önemli

Gelişmiş düzenlemeyi kullanarak bir hedef sorguyu değiştirdikten sonra, bu hedefi değiştirmek için standart kullanıcı arabirimi artık çalışmaz. Bu hedefte daha fazla değişiklik yapmak için gelişmiş düzenleyiciyi kullanmaya devam etmeniz gerekir. Daha fazla bilgi için bkz. Veri hedefi sorguları için gelişmiş düzenleme.

Veri hedefini ve eklenmiş olan önceki parametre başvurularını gözden geçirerek tüm değişikliklerin yerinde olduğunu doğrulayabilirsiniz. Bu işlem, Veri akışınızın tüm parametreleştirmesini son haline dönüştürür ve artık yürütme için parametre değerlerini geçirerek Veri akışınızı çalıştırmaya geçebilirsiniz.

parametre değerleriyle istek çalıştırma

Doku REST API'sini kullanarak belirli bir çalıştırma işlemine ilişkin parametre değerlerinizi içeren özel bir yüke sahip bir çalıştırma isteği gönderebilir ve veri akışı parametrelerini bulmak ve Veri Akışının bir çalıştırmayı tetikleyebilmesi için ne beklediğini anlamak için REST API'yi de kullanabilirsiniz. Bu öğreticide, Fabric işlem hatları için Veri Akışı etkinliği deneyimini kullanacaksınız. bir İşlem Hattı oluşturarak başlayın ve tuvale yeni bir veri akışı etkinliği ekleyin. Etkinliğin ayarlarında Veri Akışınızın bulunduğu çalışma alanını bulun ve açılan listeden Veri Akışı'nı seçin.

İşlem hattı içindeki parametrelerle Veri Akışı etkinliğinin ekran görüntüsü.

Veri Akışı parametreleri bölümü, Veri Akışı'ndaki tüm kullanılabilir parametreleri ve bunların varsayılan değerlerini gösterecek şekilde genişletilebilir. Buradaki tüm değerleri değiştirebilirsiniz ve geçirilen değerler veri akışı çalıştırmanızı değerlendirmek için hangi kaynakların, mantığın ve hedefin kullanılacağını tanımlamak için kullanılır. Ayrıca, yeni senaryoları deneyebilirsiniz; bunun için yeni bir depo oluşturup değerlendirme için WarehouseId değerini değiştirebilir veya WorkspaceId ve diğer parametrelerin ilgili ortamdaki doğru öğelere işaret etmesi gereken bir dağıtım işlem hattında bu deseni kullanabilirsiniz.