Handlinger for distribusjonsplan (forhåndsvisning)

En handling er en kjøring av et arbeidsområdeelement som en distribusjon utfører rundt utrullingen av et annet element. Handlinger er hvordan en distribusjonsplan gjør arbeid som distribusjon av objektmetadata alene ikke kan gjøre, som å fylle en lakehouse-tabell før en lagervisning som leser den distribueres.

En handling tilhører en deployeringsgruppe, og en gruppe deployerer nøyaktig ett element. Gruppens handlinger dreier seg rundt utplasseringen av det aktuelle objektet.

Important

Denne funksjonen er i forhåndsversjon.

Handlinger før og etter utplassering

Hver distribusjonsgruppe har to sett med handlinger:

  • Pre-deploy-handlinger kjøres før gruppens gjenstand deployeres.
  • Post-deploy-handlinger utføres etter at gruppens gjenstand er deployert.

En pre-deploy-handling kan ikke kjøre det samme elementet som sin egen gruppe deployer, fordi det elementet ikke er deployert ennå når handlingen kjøres.

Skjermbilde av en utplasseringsgruppe på lerretet, med forhåndsutplasseringsplassen markert over den utplasserte gjenstanden og postutplasseringsplassen markert under.

Gjenstandstyper du kan kjøre som en handling

Følgende objekttyper kan kjøres som deployeringsplan-handlinger:

Varetype Jobbtype
Notebook Execute
Dataforløp Execute
Dataflyt gen2 Execute
Kopier jobb Execute
Brukerdata-funksjon Execute

For definisjonsstruktur og jobbegenskaper, se definisjon av utrullingsplan.

Hver handling kjører gjenstanden. Elementet definerer hva handlingen gjør og hvilke parametere den aksepterer, ikke planen.

Ingen andre gjenstandstyper kan kjøres som en handling. For varetyper som vurderes, men ikke støttes, se Vurderinger og begrensninger.

Ordre handlinger innenfor en utrullingsgruppe

Kjedehandlinger for å kontrollere rekkefølgen de kjører i. Når du lenker én handling til en annen, kjører distribusjonen dem i den rekkefølgen, så du kan bestille en handling som laster data før handlingen som validerer den.

Skjermbilde av en lakehouse-distribusjonsgruppe med Refresh Sales lenket før Validate Sales, etterfulgt av en lagergruppe med en Notify pre-deploy-handling.

I det foregående bildet går Refresh_Sales kjeden i lakehouse-gruppen foran Validate_Sales. Følgende lagergruppe kjører Notify før den deployerer lageret.

Følgende regler gjelder:

  • Du kan kjede en handling til andre handlinger i samme deployeringsgruppe. I planfilen er en kjede en avhengighet av navnet på en annen handling.
  • Handlingsnavn må være unike innenfor deres distribusjonsgruppe, fordi en kjede refererer til en handling ved navn.
  • En kjede kan ikke gå i en løkke tilbake på seg selv. Systemet avviser en avhengighetssyklus når du lagrer planen.
  • Handlingene skjer én om gangen. Handlinger du ikke lenker til hverandre kjører fortsatt ikke parallelt.

En distribusjonsoperasjon stopper ved første feil, og systemet ruller ikke tilbake noen endringer. For mer informasjon, se Hvis en operasjon feiler.

Send parametere til en handling

En handling kan bære parametere, som planen sender videre til det elementet handlingen kjører. Hver parameter har et navn og en verdi, og parameternavn må være unike innenfor en handling.

Skjermbilde av parameterpanelet for en handling, som viser et navn- og verdipar med en literal verdi og et annet par som refererer til en variabelbibliotekvariabel.

En parameterverdi er enten en literal verdi eller en referanse til en variabel i et variabelbibliotek. En variabelreferanse lar en enkelt plan levere ulike verdier per miljø, i stedet for å hardkode en verdi som bare er korrekt i ett arbeidsområde.

En variabelreferanse som ikke løses til en kjent variabeltype, blir avvist når planen lagres.

Siden planen sender verdiene videre til varen, oppgi de parameterne som varen forventer. For hvilke parametere et element aksepterer, se dokumentasjonen for den aktuelle typen.

Hensyn og begrensninger

Generelle begrensninger i utplasseringsplanen

  • Du kan ikke bruke én plan til å deploye til mer enn ett arbeidsområde i én og samme kjøring.
  • Du kan bare knytte én distribusjonsplan til en distribusjonsoperasjon.

Begrensninger ved å legge ved en plan

  • Et planvedlegg gjelder kun for den nåværende driften. Du kan ikke konfigurere en plan som standard for fremtidige utrullinger eller planlegge selve planen. Hvis et distribusjonsverktøy planlegger en operasjon, må operasjonen legge ved planen hver gang den kjøres.
  • Du kan ikke knytte en plan til en enkelt importoperasjon.
  • Biblioteket fabric-cicd støtter ikke utrullingsplaner.

Begrensninger under en utplassering

  • Du kan ikke sette opp uavhengige distribusjonsgrupper parallelt.
  • En mislykket deployering rulles ikke tilbake. Gjenstander som allerede er distribuert forblir i målarbeidsområdet, og senere gjenstander deployeres ikke.

Begrensninger for planhandlinger

  • Kun støttede kombinasjoner av gjenstander og jobbtyper kan kjøres som handlinger før eller etter utrulling. Se Gjenstandstyper du kan kjøre som en handling.
  • Du kan ikke bruke samme Dataflow Gen2-element i mer enn én handling i en plan. Oppdateringsjobben kan ikke kjøres mer enn én gang om gangen, så lerretet advarer deg når du legger til den andre forekomsten, og den andre forekomsten blokkeres under distribusjonen.
  • Du kan ikke returnere mer enn 512 KB fra en user data function action. Større produksjon er avkortet. Handlingen lykkes likevel.
  • Du kan ikke gjøre en handling og vente på at tjenestene den leverer skal ta igjen. En handling fullføres når selve handlingen avsluttes, slik at neste handling kan starte før dataene den produserte er spørrbare.
  • Når en distribusjonsplan spesifiserer et aktivt verdisett for et variabelbibliotek, brukes dette verdisettet i målarbeidsområdet når du bruker planen. Du kan ikke overstyre dette valget under utplassering. For å bruke et annet verdisett, rediger distribusjonsplanen.

Begrensninger for planutarbeidelse

  • Du kan ikke legge til mer enn ett element i en deployeringsgruppe.
  • Lerretet støtter kun automatisk layout.

Grenser for utrullingsplanens størrelse

En plan som overskrider noen av disse grensene blir avvist når den er lagret. Begrensningene håndheves hver gang en plan lagres, så de gjelder både lerretet, REST API, en henting fra Git og eksterne verktøy.

Element Grense
Planstørrelse 1 MB
Lengden på et gruppe- eller trinnnavn 60 tegn
Grupper i en plan 1,000
Avhengigheter av en gruppe 1,000
Forhåndsutplasseringshandlinger i en gruppe 20
Handlinger etter utplassering i en gruppe 20
Avhengigheter av en handling 20
Parametere på en handling 20