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 az adatfolyamoknak. 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óban szereplő paraméterértékek lehetnek literális értékek vagy olyan kifejezések, amelyeket futásidőben értékelnek ki.
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 egy szó szerinti karakterláncra van szükség, amely @-jellel kezdődik, akkor @@ használatával kell azt escape-elni. 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 a karakterlánc-interpoláció nevű funkcióval, ahol a kifejezések @{ ... }
vannak becsomagolva. 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}"
Karakterlánc interpolációval az eredmény mindig karakterlánc. Ha például a myNumber
definiálva van mint 42
, és a myString
mint foo
:
Paraméter értéke | Eredmény |
---|---|
"@pipeline().parameters.myString" | Sztringként adja vissza a foo . |
"@{pipeline().parameters.myString}" | Karakterláncként adja vissza a foo . |
"@pipeline().parameters.myNumber" | A 42 számként adja vissza. |
"@{pipeline().parameters.myNumber}" | A 42 sztringként adja vissza. |
"Válasz: @{pipeline().parameters.myNumber}" | Visszaadja a Answer is: 42 sztringet. |
"@concat('Válasz: ', string(pipeline().parameters.myNumber))" | Visszaadja a sztringet Answer is: 42 |
"Válasz: @@{pipeline().parameters.myNumber}" | A Answer is: @{pipeline().parameters.myNumber} karakterláncot adja vissza. |
Példák paraméterek kifejezésben való használatára
Paraméterek létrehozása és használata
A paraméterek létrehozásához válassza ki a folyamatszerkesztő vásznának hátterét, majd a tulajdonságok ablakának alján található Paraméterek fület. A + Új gombot választva adjon hozzá egy új paramétert a folyamathoz, adjon neki nevet, adattípust és alapértelmezett értéket:
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 a másolási tevékenység tulajdonságlapjainak Forrás lapján.
Megjelenik a Dinamikus tartalom hozzáadása ablak, amely lehetővé teszi bármilyen dinamikus tartalom megadását, beleértve a paramétereket, rendszerváltozókat, függvényeketvagy 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.
Ö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ára hivatkozik. Ha egy almezőre kiértékelt folyamatparaméterre szeretne hivatkozni, használja a [] szintaxist pont(.) operátor helyett (az almező1 és az almező2 helyett)
@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. Például a tartalomszerkesztőben a következő tartalom egy kifejező függvény használatával végzett szöveg interpolációja:
@{toUpper('myData')}
A dinamikus tartalomszerkesztő az előző 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 a eseményindító ténylegesen elindította a folyamatfuttatást, é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. A Microsoft Fabricben a "csoport" olyan kapcsolódó erőforrások gyűjteményére utal, amelyek együttesen kezelhetők. A csoportok az erőforrásokhoz való hozzáférés rendszerezésére és szabályozására szolgálnak, így egyszerűbbé válik az engedélyek kezelése és a tevékenységek figyelése több folyamaton keresztül. |
@pipeline()?. KiváltvaÁltalPipelineNév | Az a feltolócső neve, amely a folyamatfuttatást indítja. Akkor alkalmazható, ha a folyamatfuttatást egy ExecutePipeline-tevékenység aktiválja. Értékeld nullának, ha más körülmények között használják. Figyeljen a kérdőjelre @pipeline() után |
@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ékelje Null értékre, amikor más körülmények között használja. Jegyezze meg a kérdőjelet @pipeline() után. |
Jegyzet
Az eseményindítóval kapcsolatos dátum-/időrendszerváltozók (mind a folyamat, mind az eseményindító hatókörében) az UTC dátumokat ISO 8601 formátumban adják vissza, például 2017-06-01T22:20:00.4061448Z
.
Sztringfüggvények
A karakterláncok használatához használhatja ezeket a karakterláncfüggvényeket, valamint néhány gyűjteményfüggvényt is. A karaktersorfüggvények csak karaktersorokon működnek.
Sztringfüggvény | Feladat |
---|---|
konkat | Két vagy több karakterlánc egyesítése, és adja vissza az egyesített karakterláncot. |
végződik-gyel | 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 | Adja vissza egy részszöveg kezdőpozícióját. |
lastIndexOf | Az utolsó előfordulás kezdő pozícióját adja vissza egy részszöveg esetén. |
cserélje-re | Cserélje le az alsztringet a megadott sztringre, és adja vissza a frissített sztringet. |
felosztott | 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. |
kezdődik-gyel | Ellenőrizze, hogy egy sztring egy adott részsztringgel kezdődik-e. |
részlánc | 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. |
szegélyezé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
A gyűjteményekkel való munkavégzéshez, amely általában tömböket, sztringeket és néha szótárakat jelent, használhatja ezeket a gyűjteményfüggvényeket.
Gyűjtőfüggvény | Feladat |
---|---|
tartalmazza a-et | 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 elemei. |
csatlakozz | Adjon vissza egy szöveget, amely tartalmazza a az összes elemet egy tömbből, a megadott karakterrel elválasztva. |
utolsó | Egy gyűjtemény utolsó elemének visszaadása. |
hossz | Egy sztring vagy tömb elemeinek számát adja vissza. |
kihagyása | Távolítsa el az elemeket a gyűjtemény elejéről, és adja vissza az összes többi elemet. |
vegye | A gyűjtemény elejéről ad vissza elemeket. |
szövetség | Olyan gyűjteményt ad vissza, amely a megadott gyűjtemények elemeit. |
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 | Feladat |
---|---|
é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. |
nagyobb vagy egyenlő | 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. |
kisebb vagy egyenlő | 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:
- sztring
- egész szám
- lebeg
- Logikai érték
- Tömbök
- Szótárak
Konvertálási függvény | Feladat |
---|---|
tömb | Tömb visszaadása egyetlen megadott bemenetből. Több bemenet esetén lásd createArray. |
base64 | Adja vissza egy karakterlánc Base64-kódolású verzióját. |
base64ToBinary | Egy base64 kódolású sztring bináris verzióját adja vissza. |
base64ToString | Adja vissza egy base64-kódolt karakterlánc karakterlánc verzióját. |
bináris | Adja vissza egy bemeneti érték bináris verzióját. |
bool | Adja vissza egy bemeneti érték logikai verzióját. |
egyesít | 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át. |
dataUriToBinary | Adja vissza egy adat URI bináris verzióját. |
dataUriToString | Adja vissza egy adat-URI sztring formáját. |
decodeBase64 | A base64 kódolású karakterlánc karakterláncváltozatát adja vissza. |
decodeDataUri | Adja vissza egy adat URI bináris verzióját. |
decodeUriComponent | Visszaad egy stringet, amely az escape 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. |
lebegőpont | Egy bemeneti érték lebegőpontos számát adja vissza. |
Adja vissza a sztring egész szám verzióját. | |
json | Adja vissza egy sztring vagy XML JavaScript Object Notation (JSON) típusértékét vagy objektumát. |
sztring | 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 az URI-kódolt karaktersorozat szöveges változatát. |
xml |
Adja vissza egy sztring XML-verzióját. |
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ámok és lebegőpontos.
Matematikai függvény | Feladat |
---|---|
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. |
maximális | Számkészletből vagy tömbből a legmagasabb értéket adja vissza. |
minimális | A legkisebb értéket adja vissza számkészletből vagy tömbből. |
mod | A maradékot adja vissza két szám osztásábó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 | Feladat |
---|---|
addDays | Adjon hozzá néhány napot egy időbélyeghez. |
Órák hozzáadása | 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. |
átalakítUtcából | 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. |
időzóna-konvertálás | Időbélyeg konvertálása a forrás időzónából a cél időzónává. |
konvertálásUtc-be | Időbélyeg konvertálása a forrás időzónából univerzális idő koordinált (UTC) időzónává. |
hónap napja | 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. |
évNapja | Az év napját adja vissza egy időbélyegből. |
dátumIdőFormázás | Az időbélyeget sztringként adja vissza opcionális formátumban. |
futureTime lekérése | Adja vissza az aktuális időbélyeget és a megadott időegységeket. Lásd még addToTime. |
múltIdőget | Az aktuális időbélyeget adja vissza a megadott időegységekkel együtt. Lásd még: kivonás az időből. |
startOfDay | Az időbélyeg napjának kezdetét adja vissza. |
óra kezdete | Az óra kezdetét adja vissza egy adott időbélyeghez. |
startOfMonth | Adja vissza a hónap kezdetét egy időbélyeghez. |
levon az időből | Vonjon ki több időegységet egy időbélyegből. Lásd még getPastTime. |
pipálja ki | Adja vissza egy adott időbélyeg ticks tulajdonságértékét. |
utcNow | Adja vissza az aktuális időbélyeget sztringként. |