Jaa


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 myNumber42 ja myStringfoo:

Parametrin arvo Tulos
"@pipeline().parameters.myString" Palauttaa foo merkkijonona.
"@{pipeline().parameters.myString}" Palauttaa foo merkkijonona.
"@pipeline().parameters.myNumber" Palauttaa 42lukuna.
"@{pipeline().parameters.myNumber}" Palauttaa 42merkkijonona.
"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:

Näyttökuva, jossa parametrieditori näkyy putken ominaisuussivuilla.

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ökuva, joka näyttää kopiointiaktiviteetin ominaisuussivujen Lähde-välilehden ja korostaa Lisää dynaaminen sisältö -vaihtoehtoa.

Näyttöön tulee Lisää dynaaminen sisältö --ikkuna, jonka avulla voit määrittää mitä tahansa dynaamista sisältöä, mukaan lukien parametrit, järjestelmämuuttujat,, funktiot- tai putkimuuttujia. Tässä esimerkissä aiemmin määritetty parametri on valittuna ja dynaamisen sisällön ikkuna täytetään automaattisesti oikealla lausekkeella viittaamaan parametriin.

Näyttökuva, jossa näkyy Lisää dynaaminen sisältö -ikkuna, jossa on valittuna putkiparametri.

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.
enint. 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.