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 | Tulos |
---|---|
"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 interpoloinnin jossa lausekkeet rivitetään @{ ... }
. 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 esimerkiksi määrität myNumber
42
ja myString
foo
:
Parametrin arvo | Tulos |
---|---|
"@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 Parametrit välilehden alareunan Ominaisuudet-ikkunassa. Valitse + Uusi -painike ja lisää siihen uusi parametri. Anna sille nimi, tietotyyppi ja oletusarvo:
Voit sitten käyttää parametria missä tahansa jakson osassa, jossa tuetaan dynaamista sisältöä. Tässä esimerkissä parametrin avulla lakehouse-tietosäilön nimi annetaan dynaamisesti kopiointitoiminnon ominaisuussivujen Source -välilehdellä.
Näyttöön tulee Lisää dynaaminen sisältö -
Esimerkki monimutkaisesta lausekkeesta
Seuraavassa esimerkissä on monimutkainen esimerkki, joka viittaa toiminnan tulosten syvään alikenttään. Jos haluat viitata putkiparametriin, joka antaa tulokseksi alikentän, käytä []-syntaksia dot(.)-operaattorin sijaan (kuten alikentässä1 ja alikentässä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 edellisen 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 käynnistynyt putken suorituksen kutsumiseksi, ja se voi erota hieman käynnistimen ajoitetusta ajasta. |
@pipeline().GroupId | Sen ryhmän tunnus, johon jakson suoritus kuuluu. Microsoft Fabricissa ryhmä viittaa kokoelmaan toisiinsa liittyviä resursseja, joita voidaan hallita yhdessä. Ryhmien avulla järjestetään ja hallitaan resurssien käyttöoikeuksia, mikä helpottaa käyttöoikeuksien hallintaa ja useiden jaksojen toimintoja. |
@pipeline()? TriggeredByPipelineName | Sen putken nimen, joka käynnistää putken suorituksen. Käytettävissä, kun ExecutePipeline-toiminto käynnistää putken suorituksen. Laske arvoksi Null kun sitä käytetään muissa tilanteissa. Huomaa kysymysmerkki @pipeline() jälkeen |
@pipeline()? TriggeredByPipelineRunId | Suorita sen putken tunnus, joka käynnistää putken suorituksen. Käytettävissä, kun ExecutePipeline-toiminto käynnistää putken suorituksen. Laske arvoksi Null kun sitä käytetään muissa tilanteissa. Huomaa kysymysmerkki @pipeline() jälkeen |
Muistiinpano
Käynnistimeen liittyvät päivämäärä- ja aikajärjestelmämuuttujat (sekä putkissa että käynnistinlaajennuissa) palauttavat UTC-päivämäärät ISO 8601 -muodossa, esimerkiksi 2017-06-01T22:20:00.4061448Z
.
Merkkijonofunktiot
Voit käsitellä merkkijonoja käyttämällä näitä merkkijonofunktioita ja myös kokoelmafunktioita. Merkkijonofunktiot toimivat vain merkkijonoissa.
Merkkijonofunktio | Tehtävä |
---|---|
Yhdistä vähintään kaksi merkkijonoa ja palauta yhdistetty merkkijono. | |
päättyy | Tarkista, päättyykö merkkijono määritettyyn alimerkkijonoon. |
Guid | Luo guiD-tunnus merkkijonona. |
indexOf | Palauta alimerkkijonon aloituskohta. |
lastIndexOf | Palauta alimerkkijonon viimeisen esiintymän aloituskohta. |
korvaa | Korvaa alimerkkijono määritetyllä merkkijonolla ja palauta päivitetty merkkijono. |
jakaminen | Palauta matriisi, joka sisältää pilkuilla eroteltuja alimerkkijonoja, suuremmasta merkkijonosta alkuperäisen merkkijonon määritetyn erottimen perusteella. |
startsWith | Tarkista, alkaako merkkijono tietyllä alimerkkijonolla. |
-alimerkkijonon | Palauta merkit merkkijonosta aloittaen määritetystä sijainnista. |
Palauta merkkijono pienin kirjaimin. | |
toUpperin | Palauta merkkijono isoilla kirjaimilla. |
rajauksen | 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. |
Palauta kokoelma, jossa on vain yleisiä kohteita määritetyissä kokoelmissa. | |
liity | Palauta merkkijono, joka on kaikki kohteet matriisissa määritetyllä meerillä eroteltuna. |
viimeisimmän | Palauta viimeinen kohde kokoelmasta. |
pituus | Palauta merkkijonon tai matriisin kohteiden määrä. |
ohittaa | Poista kohteita kokoelman edestä ja palauta kaikki muut kohteet. |
ota | Palauta kohteet kokoelman edestä. |
liittoa | Palauta kokoelma, jossa on kaikki kohteita määritetyistä kokoelmista. |
Loogiset funktiot
Nämä funktiot ovat hyödyllisiä olosuhteiden sisällä, ja niiden avulla voidaan arvioida mitä tahansa logiikkaa.
Looginen vertailufunktio | Tehtävä |
---|---|
ja | Tarkista, onko kaikki lausekkeet tosia. |
on yhtä suuri kuin | Tarkista, ovatko molemmat arvot toisiaan vastaavia. |
suurempi | Tarkista, onko ensimmäinen arvo suurempi kuin toinen arvo. |
suurempiArvoinen | 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. |
Muuntifunktiot
Näiden funktioiden avulla muunnetaan kunkin kielen alkuperäistyypin välillä:
- merkkijono
- kokonaisluku
- kellua
- Boolean
- Matriiseja
- Sanakirjat
Muuntamisfunktio | Tehtävä |
---|---|
matriisin | Palauta matriisi yksittäisestä määritetystä syötteestä. Katso useita syötteitä kohdasta createArray. |
64 | Palauta merkkijonolle base64-koodattu versio. |
base64ToBinary | Palauta base64-koodatun merkkijonon binaariversio. |
base64ToString | Palauta base64-koodatun merkkijonon merkkijonoversio. |
binaarista | 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ä. |
liukuluku | Palauta liukuluku syötearvolle. |
int | Palauta merkkijonon kokonaislukuversio. |
json | Palauta JavaScript Object Notation (JSON) -tyyppiarvo tai -objekti merkkijonolle tai XML:lle. |
merkkijonon | 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 voi käyttää jommassakummassa lukutyypissä: kokonaislukuja ja liukulukuja.
Matemaattinen funktio | Tehtävä |
---|---|
lisätä | Palauta tulos kahden numeron lisäämisen jälkeen. |
div- | Palauta tulos kahden numeron jakamisesta. |
|
Palauta suurin arvo lukujen tai matriisin joukosta. |
minuutin | Palauta pienin arvo lukujen tai matriisin joukosta. |
Palauta jakojääne kahden numeron jakamisesta. | |
Palauta tuote kahden numeron kertomisesta. | |
rand | Palauta satunnainen kokonaisluku määritetyltä alueelta. |
alueen | Palauta kokonaislukumatriisi, joka alkaa määritetystä kokonaisluvusta. |
ali | Palauta tulos toisen luvun vähentämästä ensimmäisestä luvusta. |
Päivämääräfunktiot
Päivämäärä- tai aikafunktio | Tehtävä |
---|---|
lisääPäivät- | Lisää aikaleimaan päivien määrä. |
lisätä Tunnit- | Lisää aikaleimaan tuntimäärä. |
lisääMinutes- | Lisää aikaleimaan minuuttien määrä. |
lisääSeconds- | Lisää aikaleimaan sekuntien määrä. |
lisääToTime- | Lisää aikayksiköiden määrä aikaleimaan. Katso myös getFutureTime. |
convertFromUtc | Muunna aikaleima UTC-aikavyöhykkeestä kohdeaikavyöhykkeeksi. |
muunnaTimeZone- | Muunna aikaleima lähdeaikavyöhykkeestä kohdeaikavyöhykkeeksi. |
convertToUtc | Aikaleiman muuntaminen lähdeaikavyöhykkeestä UTC-ajaksi (Universal Time Coordinated). |
päivänOfMonth- | Palauta kuukauden päivän osa aikaleimasta. |
päivänOfWeek- | Palauta viikonpäiväosa aikaleimasta. |
päivänOfYear- | Palauta vuoden päiväosa aikaleimasta. |
formatDateTime- | Palauta aikaleima merkkijonona valinnaisessa muodossa. |
getFutureTime | Palauta nykyinen aikaleima ja määritetyt aikayksiköt. Katso myös LisääToTime. |
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. |
vähentääFromTime- | Vähentää aikayksiköiden määrän aikaleimasta. Katso myös getPastTime. |
jakoviivojen | Palauta määritetyn aikaleiman ticks -ominaisuuden arvo. |
utcNow | Palauta nykyinen aikaleima merkkijonona. |