A Data Factory paraméterei a Microsoft Fabricben

Ez a dokumentum azt ismerteti, hogyan használhat paramétereket a folyamatokban a Data Factory in Fabricben.

Paraméterek, kifejezések és függvények használata folyamatokban a Data Factory in Fabricben

Ebben a dokumentumban az alapvető fogalmak megismerésére összpontosítunk, különböző példákkal, amelyekből megtudhatja, hogy a Data Factoryben létrehozhat-e paraméteres adatfolyamatokat. A paraméterezés és a dinamikus kifejezések rengeteg időt takaríthatnak meg, és sokkal rugalmasabb kinyerési, átalakítási, betöltési (ETL) vagy kinyerési, betöltési, átalakítási (ELT) megoldást tehetnek lehetővé, ami jelentősen csökkenti a megoldáskarbantartás költségeit, és felgyorsítja az új funkciók implementálását a meglévő folyamatokban. Ennek az az oka, hogy a paraméterezés minimalizálja a kemény kódolás mennyiségét, és növeli az újrafelhasználható objektumok és folyamatok számát egy megoldásban.

Paraméter- és kifejezésfogalmak

A paraméterekkel külső értékeket adhat át a folyamatoknak. Miután a paramétert átadta az erőforrásnak, nem módosítható. Az erőforrások paraméterezésével minden alkalommal más-más értékekkel használhatja fel őket. A paraméterek külön-külön vagy a kifejezések részeként is használhatók. A definíció paraméterértékei lehetnek konstansok vagy futásidőben kiértékelt kifejezések.

A kifejezések bárhol megjelenhetnek egy sztringértékben, és mindig létrehoznak egy másik sztringértéket. Itt a jelszó egy folyamatparaméter a kifejezésben. Ha egy paraméterérték kifejezés, a rendszer az at-sign (@) eltávolításával nyeri ki a kifejezés törzsét. Ha @-val kezdődő literális sztringre van szükség, akkor a @@használatával kell megszabadulnia. Az alábbi példák a kifejezések kiértékelésének módját mutatják be.

Paraméter értéke Eredmény
"paraméterek" A rendszer a "paraméterek" karaktereket adja vissza.
"paraméterek[1]" A rendszer a "parameters[1]" karaktereket adja vissza.
"@@" A függvény egy 1 karakteres sztringet ad vissza, amely "@" karaktert tartalmaz.
" @" A függvény egy 2 karakteres sztringet ad vissza, amely a "@" karaktert tartalmazza.

A kifejezések sztringeken belül is megjelenhetnek egy sztring interpoláció nevű funkcióval, amelyben a kifejezések be vannak csomagolva@{ ... }. A következő sztring például paraméterértékeket és literális sztringértékeket tartalmaz:

"Utónév: @{pipeline().parameters.firstName} Vezetéknév: @{pipeline().parameters.lastName}"

Sztring interpolációval az eredmény mindig sztring. Ha például a következőként definiálta a myString következőt myNumber42foo:

Paraméter értéke Eredmény
"@pipeline().parameters.myString" Sztringként ad foo vissza.
"@{pipeline().parameters.myString}" Sztringként ad foo vissza.
"@pipeline().parameters.myNumber" 42 Számként adja vissza.
"@{pipeline().parameters.myNumber}" Sztringként ad 42 vissza.
"Válasz: @{pipeline().parameters.myNumber}" A sztringet Answer is: 42adja vissza.
"@concat('Válasz: ', string(pipeline().parameters.myNumber))" A sztring visszaadása Answer is: 42
"Válasz: @@{pipeline().parameters.myNumber}" A sztringet Answer is: @{pipeline().parameters.myNumber}adja vissza.

Példák paraméterek kifejezésben való használatára

Paraméterek létrehozása és használata

Paraméterek létrehozásához válassza ki a folyamatszerkesztő vásznának hátterét, majd alul a Tulajdonságok ablak Paraméterek lapját. Az + Új gombra kattintva új paramétert vehet fel a folyamatba, adjon neki nevet, adattípust és alapértelmezett értéket:

Screenshot showing the Parameters editor on the properties pages for a pipeline.

Ezután a paramétert bárhol használhatja a folyamatban, ahol a dinamikus tartalom támogatott. Ebben a példában a paraméterrel dinamikusan megadhatja egy Lakehouse-adattár nevét egy másolási tevékenység tulajdonságlapjának Forrás lapján.

Screenshot showing the Source tab of a copy activity's property pages, highlighting the Add dynamic content option.

Megjelenik a Dinamikus tartalom hozzáadása ablak, amely lehetővé teszi bármilyen dinamikus tartalom megadását, beleértve a paramétereket, a rendszerváltozókat, a függvényeket vagy a folyamatváltozókat. Ebben a példában a korábban definiált paraméter van kiválasztva, és a dinamikus tartalomablak automatikusan feltöltődik a megfelelő kifejezéssel a paraméterre való hivatkozáshoz.

Screenshot showing the Add dynamic content window with a pipeline parameter selected.

Összetett kifejezési példa

Az alábbi példa egy összetett példát mutat be, amely a tevékenység kimenetének egy mély almezőjére hivatkozik. Ha egy almezőre kiértékelt folyamatparaméterre szeretne hivatkozni, használja a pont(.) operátor helyett a [] szintaxist (mint az almező1 és az almező2 esetén)

@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*

Dinamikus tartalomszerkesztő

A dinamikus tartalomszerkesztő automatikusan feloldja a tartalomban lévő karaktereket a szerkesztés befejezésekor. A tartalomszerkesztőben például a következő tartalom egy kifejezésfüggvény sztring interpolációja:

@{toUpper('myData')}

A dinamikus tartalomszerkesztő a fenti tartalmat a következő kifejezéssé alakítja:

MYDATA

Függvények és változók használata kifejezésekben

Függvényeket hívhat meg, és változókat használhat a kifejezéseken belül. A következő szakaszok a kifejezésekben használható függvényekről nyújtanak információkat.

Folyamat hatókörének változói

Ezek a rendszerváltozók a folyamat JSON-jában bárhol hivatkozhatók.

Változó neve Leírás
@pipeline().DataFactory Annak az adatnak vagy Synapse-munkaterületnek a neve, amelyben a folyamat fut
@pipeline().Pipeline A folyamat neve
@pipeline().RunId Az adott folyamatfuttatás azonosítója
@pipeline().TriggerId A folyamatot meghívó eseményindító azonosítója
@pipeline().TriggerName A folyamatot meghívó eseményindító neve
@pipeline().TriggerTime A folyamatot meghívó eseményindító futtatásának időpontja. Ez az az időpont, amikor az eseményindító ténylegesen aktiválódott a folyamatfuttatás meghívásához, és kissé eltérhet az eseményindító ütemezett időpontjától.
@pipeline().GroupId Annak a csoportnak az azonosítója, amelyhez a folyamatfuttatás tartozik.
@pipeline()?. TriggerByPipelineName A folyamatfuttatást kiváltó folyamat neve. Akkor alkalmazható, ha a folyamatfuttatást egy ExecutePipeline-tevékenység aktiválja. Kiértékelése null értékre, ha más körülmények között használják. Jegyezze fel a kérdőjelet a következő után: @pipeline()
@pipeline()?. TriggerByPipelineRunId A folyamatfuttatást kiváltó folyamat futtatási azonosítója. Akkor alkalmazható, ha a folyamatfuttatást egy ExecutePipeline-tevékenység aktiválja. Kiértékelése null értékre, ha más körülmények között használják. Jegyezze fel a kérdőjelet a következő után: @pipeline()

Feljegyzés

Az eseményindítóhoz kapcsolódó dátum- és időrendszerváltozók (mind a folyamat, mind az eseményindító hatókörében) AZ UTC dátumokat ad vissza ISO 8601 formátumban, például 2017-06-01T22:20:00.4061448Z.

Sztringfüggvények

A sztringek használatához használhatja ezeket a sztringfüggvényeket és néhány gyűjteményfüggvényt is. A sztringfüggvények csak sztringeken működnek.

Sztringfüggvény Feladatok
Concat Két vagy több sztring egyesítése és az egyesített sztring visszaadása.
endsWith Ellenőrizze, hogy egy sztring a megadott részsztringgel végződik-e.
Guid Globálisan egyedi azonosító (GUID) létrehozása sztringként.
indexOf Egy részszúrás kezdőpozíciójának visszaadása.
lastIndexOf Adja vissza az alsztring utolsó előfordulásának kezdő pozícióját.
Helyettesít Cserélje le az alsztringet a megadott sztringre, és adja vissza a frissített sztringet.
hasít Olyan tömböt ad vissza, amely vesszővel elválasztott részsztringeket tartalmaz egy nagyobb sztringtől az eredeti sztring megadott elválasztó karaktere alapján.
startsWith Ellenőrizze, hogy egy sztring egy adott részsztringgel kezdődik-e.
Substring Karaktereket ad vissza egy sztringből, a megadott pozíciótól kezdve.
toLower Kisbetűs karakterláncot ad vissza.
toUpper Karakterláncot ad vissza nagybetűs formátumban.
Berendezés Távolítsa el a kezdő és záró szóközt egy sztringből, és adja vissza a frissített sztringet.

Gyűjteményfüggvények

Gyűjtemények, általában tömbök, sztringek és néha szótárak használatához használhatja ezeket a gyűjteményfüggvényeket.

Gyűjteményfüggvény Feladatok
Tartalmaz Ellenőrizze, hogy egy gyűjtemény tartalmaz-e egy adott elemet.
Üres Ellenőrizze, hogy egy gyűjtemény üres-e.
Első Egy gyűjtemény első elemének visszaadása.
Kereszteződés Olyan gyűjteményt ad vissza, amely csak a megadott gyűjtemények közös elemeit tartalmazza.
csatlakozás Olyan sztringet ad vissza, amely egy tömb összes elemét tartalmazza, a megadott karakterrel elválasztva.
Utolsó Egy gyűjtemény utolsó elemének visszaadása.
length (hossz) Egy sztring vagy tömb elemeinek számát adja vissza.
Ugrál Távolítsa el az elemeket a gyűjtemény elejéről, és adja vissza az összes többi elemet.
take Elemeket ad vissza a gyűjtemény elejéről.
Unió Olyan gyűjteményt ad vissza, amely a megadott gyűjtemények összes elemét tartalmazza.

Logikai függvények

Ezek a függvények a feltételeken belül hasznosak, bármilyen típusú logika kiértékelésére használhatók.

Logikai összehasonlító függvény Feladatok
És Ellenőrizze, hogy az összes kifejezés igaz-e.
Egyenlő Ellenőrizze, hogy mindkét érték egyenértékű-e.
Nagyobb Ellenőrizze, hogy az első érték nagyobb-e a másodiknál.
greaterOrEquals Ellenőrizze, hogy az első érték nagyobb-e, mint a második érték.
Ha Ellenőrizze, hogy egy kifejezés igaz vagy hamis-e. Az eredmény alapján adjon vissza egy megadott értéket.
Kevesebb Ellenőrizze, hogy az első érték kisebb-e a másodiknál.
lessOrEquals Ellenőrizze, hogy az első érték kisebb-e, mint a második érték.
Nem Ellenőrizze, hogy egy kifejezés hamis-e.
vagy Ellenőrizze, hogy legalább egy kifejezés igaz-e.

Konverziós függvények

Ezek a függvények a nyelv natív típusai közötti konvertálásra szolgálnak:

  • húr
  • egész szám
  • float
  • Logikai
  • Tömbök
  • Szótárak
Konvertálási függvény Feladatok
Tömb Tömb visszaadása egyetlen megadott bemenetből. Több bemenet esetén lásd: createArray.
base64 Visszaadja egy sztring base64 kódolású verzióját.
base64ToBinary Egy base64 kódolású sztring bináris verzióját adja vissza.
base64ToString Egy base64 kódolású sztring sztringverzióját adja vissza.
Bináris Adja vissza egy bemeneti érték bináris verzióját.
Bool Adja vissza egy bemeneti érték logikai verzióját.
coalesce Az első nem null értéket adja vissza egy vagy több paraméterből.
createArray Több bemenetből származó tömböt ad vissza.
dataUri Adja vissza egy bemeneti érték adat URI-jának értékét.
dataUriToBinary Adja vissza egy adat URI bináris verzióját.
dataUriToString Az adat URI sztringverziójának visszaadása.
decodeBase64 Egy base64 kódolású sztring sztringverzióját adja vissza.
decodeDataUri Adja vissza egy adat URI bináris verzióját.
decodeUriComponent Visszaad egy sztringet, amely a feloldó karaktereket dekódolt verziókra cseréli.
encodeUriComponent Olyan sztringet ad vissza, amely az URL-cím szempontjából nem biztonságos karaktereket feloldó karakterekre cseréli.
Úszó Egy bemeneti érték lebegőpontos számát adja vissza.
Int Egy sztring egész verziójának visszaadása.
Json Adja vissza egy sztring vagy XML JavaScript Object Notation (JSON) típusértékét vagy objektumát.
húr Adja vissza egy bemeneti érték sztringverziójának értékét.
uriComponent Adja vissza egy bemeneti érték URI-kódolású verzióját úgy, hogy az URL-cím szempontjából nem biztonságos karaktereket feloldó karakterekre cseréli.
uriComponentToBinary Adja vissza az URI-kódolt sztring bináris verzióját.
uriComponentToString Adja vissza egy URI-kódolt sztring sztringverzióját.
xml Sztring XML-verzióját adja vissza.
Xpath Ellenőrizze az XML-ben az XPath (XML Path Language) kifejezésnek megfelelő csomópontokat vagy értékeket, és adja vissza az egyező csomópontokat vagy értékeket.

Matematikai függvények

Ezek a függvények bármilyen típusú számhoz használhatók: egész számokhoz és lebegőpontosakhoz.

Matematikai függvény Feladatok
Hozzáadása Két szám hozzáadásának eredményét adja vissza.
Div Két szám osztásából származó eredményt adja vissza.
Max Számkészletből vagy tömbből a legmagasabb értéket adja vissza.
Min A legkisebb értéket adja vissza számkészletből vagy tömbből.
Mod A maradékot adja vissza két szám felosztásától.
Mul Adja vissza a szorzatot két szám szorzásából.
Rand Véletlenszerű egész számot ad vissza egy megadott tartományból.
Tartomány Adott egész számból induló egész tömböt ad vissza.
Al A második szám kivonásának eredményét adja vissza az első számból.

Dátumfüggvények

Dátum- vagy időfüggvény Feladatok
addDays Adjon hozzá néhány napot egy időbélyeghez.
addHours Adjon hozzá több órát egy időbélyeghez.
addMinutes Adjon hozzá néhány percet egy időbélyeghez.
addSeconds Adjon hozzá néhány másodpercet egy időbélyeghez.
addToTime Adjon hozzá több időegységet egy időbélyeghez. Lásd még : getFutureTime.
convertFromUtc Időbélyeg konvertálása az univerzális idő szerint koordinált (UTC) időzónából a cél időzónába.
convertTimeZone Időbélyeg konvertálása a forrás időzónából a cél időzónává.
convertToUtc Időbélyeg konvertálása a forrás időzónából univerzális idő koordinált (UTC) időzónává.
dayOfMonth Adja vissza a hónap napját egy időbélyegből.
dayOfWeek A hét napját adja vissza egy időbélyegből.
dayOfYear Az év napját adja vissza egy időbélyegből.
formatDateTime Az időbélyeget sztringként adja vissza opcionális formátumban.
getFutureTime Adja vissza az aktuális időbélyeget és a megadott időegységeket. Lásd még : addToTime.
getPastTime Az aktuális időbélyeget adja vissza a megadott időegységekkel együtt. Lásd még : subtractFromTime.
startOfDay Az időbélyeg napjának kezdetét adja vissza.
startOfHour Az óra kezdetét adja vissza egy időbélyeghez.
startOfMonth Adja vissza a hónap kezdetét egy időbélyeghez.
subtractFromTime Vonjon ki több időegységet egy időbélyegből. Lásd még : getPastTime.
Kullancsok ticks Adott időbélyeg tulajdonságértékének visszaadása.
utcNow Az aktuális időbélyeg visszaadása sztringként.