Microsoft Fabricin Data Factory -parametrit
Tässä asiakirjassa kuvataan, miten voit käyttää parametreja Fabricin Data Factory -putkissa.
Parametrien, lausekkeiden ja funktioiden käyttäminen Fabricin Data Factory -putkissa
Tässä asiakirjassa keskitytään oppimaan peruskäsitteitä erilaisilla esimerkeillä, joiden avulla tutkimme mahdollisuutta luoda parametrisoituja tietoputkia Fabricin Data Factoryssa. Parametrisointi ja dynaamiset lausekkeet voivat säästää valtavasti aikaa ja mahdollistaa paljon joustavamman Poimi,Muunna, Lataa (ETL) tai Poimi, Lataa, Muunna (ELT) -ratkaisun, mikä pienentää merkittävästi ratkaisun ylläpitokustannuksia ja nopeuttaa uusien ominaisuuksien käyttöönottoa olemassa oleviin jaksoihin. Nämä voitot johtuvat siitä, että parametrisointi pienentää kiinteän koodauksen määrää ja kasvattaa ratkaisun uudelleenkäytettäviä objekteja ja prosesseja.
Parametri- ja lausekekäsitteet
Parametrien avulla voit välittää ulkoisia arvoja jaksoihin. Kun parametri on välitetty resurssiin, sitä ei voi muuttaa. Parametrisoimalla resursseja voit käyttää niitä uudelleen eri arvoilla joka kerta. Parametreja voidaan käyttää yksitellen tai lausekkeiden osana. Määrityksen parametriarvot voivat olla literaalia tai lausekkeita, jotka arvioidaan suorituksen aikana.
Lausekkeet voivat esiintyä missä tahansa merkkijonoarvon kohdassa, ja ne luovat aina toisen merkkijonoarvon. Tässä salasana on lausekkeen putkiparametri. Jos parametrin arvo on lauseke, lausekkeen leipäteksti poimitaan poistamalla at-sign (@). Jos literaalimerkkijono on pakollinen ja alkaa merkkijonolla @, se on poistettava käyttämällä @@-merkkiä. Seuraavissa esimerkeissä näytetään, miten lausekkeita arvioidaan.
Parametrin arvo | Result |
---|---|
"parametrit" | Merkit "parametrit" palautetaan. |
"parameters[1]" | Merkit "parameters[1]" palautetaan. |
"@@" | Yksi merkkimerkkijono, joka sisältää merkin @, palautetaan. |
" @" | Palautetaan 2 merkkimerkkijono, jonka sisällä on merkki @. |
Lausekkeet voivat myös näkyä merkkijonojen sisällä käyttäen ominaisuutta nimeltä merkkijonon interpolointi , jossa lausekkeet rivitetään :ssa @{ ... }
. Esimerkiksi seuraava merkkijono sisältää parametriarvot ja literaalimerkkijonon arvot:
"Etunimi: @{pipeline().parameters.firstName} Sukunimi: @{pipeline().parameters.lastName}"
Merkkijonon interpoloinnin avulla tulos on aina merkkijono. Jos olet esimerkiksi määrittäjä myNumber
ja 42
myString
muodossa foo
:
Parametrin arvo | Result |
---|---|
"@pipeline().parameters.myString" | Palauttaa foo merkkijonona. |
"@{pipeline().parameters.myString}" | Palauttaa foo merkkijonona. |
"@pipeline().parameters.myNumber" | Palauttaa 42 lukuna. |
"@{pipeline().parameters.myNumber}" | Palauttaa 42 merkkijonona. |
"Vastaus on: @{pipeline().parameters.myNumber}" | Palauttaa merkkijonon Answer is: 42 . |
"@concat('Answer on: ', string(pipeline().parameters.myNumber))" | Palauttaa merkkijonon Answer is: 42 |
"Vastaus on: @@{pipeline().parameters.myNumber}" | Palauttaa merkkijonon Answer is: @{pipeline().parameters.myNumber} . |
Esimerkkejä parametrien käytöstä lausekkeissa
Parametrien luominen ja käyttäminen
Voit luoda parametreja valitsemalla putkieditorin pohjan taustan ja sitten ominaisuudet-välilehden Parametrit-välilehden alareunassa. Valitse + Uusi -painike, jos haluat lisätä putkeen uuden parametrin, antaa sille nimen, tietotyypin ja oletusarvon:
Voit sitten käyttää parametria missä tahansa jakson osassa, jossa tuetaan dynaamista sisältöä. Tässä esimerkissä parametrin avulla annetaan dynaamisesti Lakehouse-tietosäilön nimi Kopioi toiminto -ominaisuussivujen Lähde-välilehdessä .
Näyttöön avautuu Lisää dynaaminen sisältö -ikkuna, jossa voit määrittää mitä tahansa dynaamista sisältöä, mukaan lukien parametrit, järjestelmämuuttujat, funktiot tai putkimuuttujat. Tässä esimerkissä aiemmin määritetty parametri on valittuna ja dynaamisen sisällön ikkuna täytetään automaattisesti oikealla lausekkeella viittaamaan parametriin.
Esimerkki monimutkaisesta lausekkeesta
Alla olevassa esimerkissä näytetään monimutkainen esimerkki, joka viittaa toiminnan tulosten syvään alikenttään. Voit viitata putkiparametriin, joka antaa tulokseksi alikentän, käyttämällä []-syntaksia dot(.)-operaattorin sijaan (kuten alikenttien alikenttä1 ja alikenttä2)
@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*
Dynaaminen sisältöeditori
Dynaaminen sisältöeditori ohittaa sisällön merkit automaattisesti, kun olet lopettanut muokkauksen. Esimerkiksi seuraava sisältö sisältöeditorissa on merkkijonon interpolointi lausekefunktiolla:
@{toUpper('myData')}
Dynaaminen sisältöeditori muuntaa yllä olevan sisällön seuraavaksi lausekkeeksi:
MYDATA
Funktioiden ja muuttujien käyttäminen lausekkeissa
Voit kutsua funktioita ja käyttää muuttujia lausekkeissa. Seuraavissa osissa on tietoja funktioista, joita voidaan käyttää lausekkeessa.
Putken vaikutusalueen muuttujat
Näihin järjestelmämuuttujiin voidaan viitata missä tahansa jakson JSON-tiedostossa.
Muuttujan nimi | Kuvaus |
---|---|
@pipeline().DataFactory | Sen tiedon tai Synapse-työtilan nimi, jossa putki suoritetaan |
@pipeline().Pipeline | Putken nimi |
@pipeline().RunId | Tietyn jakson suorituksen tunnus |
@pipeline().TriggerId | Putken käynnistämen käynnistimen tunnus |
@pipeline().TriggerName | Putken käynnistämen käynnistimen nimi |
@pipeline().TriggerTime | Putken käynnistämen käynnistimen suorituksen aika. Tämä on aika, jolloin käynnistin todella laukaistiin putken suorituksen kutsumiseksi, ja se saattaa poiketa hieman käynnistimen ajoitetusta ajasta. |
@pipeline().GroupId | Sen ryhmän tunnus, johon jakson suoritus kuuluu. |
@pipeline()?. TriggeredByPipelineName | Sen putken nimen, joka käynnistää putken suorituksen. Käytettävissä, kun ExecutePipeline-toiminto käynnistää putken suorituksen. Jos niitä käytetään muissa tilanteissa, laske arvoksi Null . Huomaa kysymysmerkki sen jälkeen @pipeline() |
@pipeline()?. TriggeredByPipelineRunId | Suorita sen putken tunnus, joka käynnistää putken suorituksen. Käytettävissä, kun ExecutePipeline-toiminto käynnistää putken suorituksen. Jos niitä käytetään muissa tilanteissa, laske arvoksi Null . Huomaa kysymysmerkki sen jälkeen @pipeline() |
Muistiinpano
Käynnistimeen liittyvät päivämäärä- ja aikajärjestelmämuuttujat (sekä putkissa että käynnistinlaajuissa) palauttavat UTC-päivämäärät ISO 8601 -muodossa, 2017-06-01T22:20:00.4061448Z
esimerkiksi .
Merkkijonofunktiot
Voit käsitellä merkkijonoja käyttämällä näitä merkkijonofunktioita ja myös kokoelmafunktioita. Merkkijonofunktiot toimivat vain merkkijonoissa.
Merkkijonofunktio | Tehtävä |
---|---|
concat | Yhdistä vähintään kaksi merkkijonoa ja palauta yhdistetty merkkijono. |
endsWith | Tarkista, päättyykö merkkijono määritettyyn alimerkkijonoon. |
Guid | Luo guiD-tunnus merkkijonona. |
indexOf | Palauta alimerkkijonon aloituskohta. |
lastIndexOf | Palauta alimerkkijonon viimeisen esiintymän aloituskohta. |
replace | Korvaa alimerkkijono määritetyllä merkkijonolla ja palauta päivitetty merkkijono. |
split | Palauta matriisi, joka sisältää pilkuilla eroteltuja alimerkkijonoja, suuremmasta merkkijonosta alkuperäisen merkkijonon määritetyn erottimen perusteella. |
startsWith | Tarkista, alkaako merkkijono tietyllä alimerkkijonolla. |
Alimerkkijono | Palauta merkit merkkijonosta aloittaen määritetystä sijainnista. |
ToLower | Palauta merkkijono pienin kirjaimin. |
ToUpper | Palauta merkkijono isoilla kirjaimilla. |
Leikata | Poista alussa ja lopussa olevat välilyönnit merkkijonosta ja palauta päivitetty merkkijono. |
Kokoelmafunktiot
Voit käyttää kokoelmia, yleensä matriiseja, merkkijonoja ja joskus sanastoja, käyttämällä näitä kokoelmafunktioita.
Collection-funktio | Tehtävä |
---|---|
Sisältää | Tarkista, onko kokoelmalla tietty kohde. |
tyhjä | Tarkista, onko kokoelma tyhjä. |
Ensimmäinen | Palauta kokoelman ensimmäinen kohde. |
Risteys | Palauta kokoelma, jossa on vain määritettyjen kokoelmien yhteiset kohteet. |
Liittyä | Palauta merkkijono, jossa on kaikki kohteet matriisissa määritetyllä meerillä eroteltuna. |
Viime | Palauta viimeinen kohde kokoelmasta. |
Pituus | Palauta merkkijonon tai matriisin kohteiden määrä. |
Ohittaa | Poista kohteita kokoelman edustasta ja palauta kaikki muut kohteet. |
Ottaa | Palauta kohteet kokoelman edestä. |
Unionin | Palauta kokoelma, joka sisältää kaikki määritetyn kokoelman kohteet. |
Loogiset toiminnot
Nämä funktiot ovat hyödyllisiä olosuhteiden sisällä, ja niiden avulla voidaan arvioida mitä tahansa logiikkaa.
Looginen vertailufunktio | Tehtävä |
---|---|
and | Tarkista, onko kaikki lausekkeet tosia. |
Vastaa | Tarkista, ovatko molemmat arvot toisiaan vastaavia. |
suurempi | Tarkista, onko ensimmäinen arvo suurempi kuin toinen arvo. |
greaterOrEquals | Tarkista, onko ensimmäinen arvo suurempi tai yhtä suuri kuin toinen arvo. |
Jos | Tarkista, onko lauseke tosi vai epätosi. Palauta määritetty arvo tuloksen perusteella. |
vähemmän | Tarkista, onko ensimmäinen arvo pienempi kuin toinen arvo. |
lessOrEquals | Tarkista, onko ensimmäinen arvo pienempi tai yhtä suuri kuin toinen arvo. |
Ei | Tarkista, onko lauseke epätosi. |
tai | Tarkista, onko vähintään yksi lauseke tosi. |
Muuntofunktiot
Näiden funktioiden avulla muunnetaan kunkin kielen alkuperäistyypin välillä:
- merkkijono
- integer
- liukuluku
- boolean
- Matriiseja
- Sanakirjat
Muuntamisfunktio | Tehtävä |
---|---|
Array | Palauta matriisi yksittäisestä määritetystä syötteestä. Katso useita syötteitä kohdasta createArray. |
perus64 | Palauta merkkijonolle base64-koodattu versio. |
base64ToBinary | Palauta base64-koodatun merkkijonon binaariversio. |
base64ToString | Palauta base64-koodatun merkkijonon merkkijonoversio. |
Binary | Palauta syötearvon binaariversio. |
Bool | Palauta syötearvon totuusarvoversio. |
coalesce | Palauta ensimmäinen muu kuin tyhjäarvo yhdestä tai useammasta parametrista. |
createArray | Palauta matriisi useista syötettä. |
dataUri | Palauta syötearvon tietojen URI-osoite. |
dataUriToBinary | Palauta datan URI-ohjaimen binaariversio. |
dataUriToString | Palauta datan URI-ohjaimen merkkijonoversio. |
decodeBase64 | Palauta base64-koodatun merkkijonon merkkijonoversio. |
decodeDataUri | Palauta datan URI-ohjaimen binaariversio. |
decodeUriComponent | Palauta merkkijono, joka korvaa escape-merkit koodatuilla versioilla. |
encodeUriComponent | Palauta merkkijono, joka korvaa URL-osoitteet suojaattomat merkit escape-merkeillä. |
Float | Palauta liukuluku syötearvolle. |
Int | Palauta merkkijonon kokonaislukuversio. |
Json | Palauta JavaScript Object Notation (JSON) -tyyppiarvo tai -objekti merkkijonolle tai XML:lle. |
Merkkijono | Palauta syötearvon merkkijonoversio. |
URIComponent | Palauta syötearvon URI-koodattu versio korvaamalla URL-suojaamattomia merkkejä escape-merkeillä. |
uriComponentToBinary | Palauta URI-koodatun merkkijonon binaariversio. |
URIComponentToString | Palauta URI-koodatun merkkijonon merkkijonoversio. |
Xml | Palauta merkkijonon XML-versio. |
Xpath | Tarkista XML:stä solmut tai arvot, jotka vastaavat XPath (XML Path Language) -lauseketta, ja palauta vastaavat solmut tai arvot. |
Matemaattiset funktiot
Näitä funktioita voidaan käyttää jommassakummassa lukutyypissä: kokonaisluvuissa ja liukuluvuissa.
Matemaattinen funktio | Tehtävä |
---|---|
Lisää | Palauta tulos kahden numeron lisäämisen jälkeen. |
Div | Palauta tulos kahden numeron jakamisesta. |
Max | Palauta suurin arvo lukujen tai matriisin joukosta. |
Min | Palauta pienin arvo lukujen tai matriisin joukosta. |
Mod | Palauta jakojääne kahden numeron jakamisesta. |
Mul | Palauta tuote kahden numeron kertomisesta. |
Randi | Palauta satunnainen kokonaisluku määritetyltä alueelta. |
range | Palauta kokonaislukumatriisi, joka alkaa määritetystä kokonaisluvusta. |
Osa | Palauta tulos toisen luvun vähentämästä ensimmäisestä luvusta. |
Päivämääräfunktiot
Päivämäärä- tai aikafunktio | Tehtävä |
---|---|
addDays | Lisää aikaleimaan päivien määrä. |
lisää tunnit | Lisää aikaleimaan tuntimäärä. |
addMinutes | Lisää aikaleimaan minuuttien määrä. |
addSeconds | Lisää aikaleimaan sekuntien määrä. |
addToTime | Lisää aikayksiköiden määrä aikaleimaan. Katso myös getFutureTime. |
convertFromUtc | Muunna aikaleima UTC-aikavyöhykkeestä kohdeaikavyöhykkeeksi. |
convertTimeZone | Muunna aikaleima lähdeaikavyöhykkeestä kohdeaikavyöhykkeeksi. |
convertToUtc | Aikaleiman muuntaminen lähdeaikavyöhykkeestä UTC-ajaksi (Universal Time Coordinated). |
dayOfMonth | Palauta kuukauden päivän osa aikaleimasta. |
dayOfWeek | Palauta viikonpäiväosa aikaleimasta. |
dayOfYear | Palauta vuoden päiväosa aikaleimasta. |
formatDateTime | Palauta aikaleima merkkijonona valinnaisessa muodossa. |
getFutureTime | Palauta nykyinen aikaleima ja määritetyt aikayksiköt. Katso myös addToTime. |
getPastTime | Palauta nykyinen aikaleima vähennettynä määritetyillä aikayksiköillä. Katso myös subtractFromTime. |
startOfDay | Palauta aikaleima päivän alkuun. |
startOfHour | Palauta tunnin alku aikaleimalle. |
startOfMonth | Palauta aikaleima kuukauden alkuun. |
subtractFromTime | Vähentää aikayksiköiden määrän aikaleimasta. Katso myös getPastTime. |
Punkit | Palauta määritetyn ticks aikaleiman ominaisuuden arvo. |
utcNow | Palauta nykyinen aikaleima merkkijonona. |