Komma åt parametervärden från en aktivitet

Få åtkomst till parametervärden från kod i dina uppgifter, inklusive Azure Databricks notebook-filer, Python skript och SQL-filer.

Parametrarna omfattar användardefinierade parametrar, värden som utdata från överordnade uppgifter och metadatavärden som genereras av jobbet. Se Parameterisera jobb.

Även om informationen varierar beroende på aktivitetstypfinns det fyra vanliga metoder som används för att referera till parametervärden från källkoden:

I vart och ett av dessa fall refererar du till parameterns nyckel för att hämta dess värde. Nyckeln kallas ibland för namnet på parametern.

Om du vill se de här teknikerna som används i ett metadatadrivet jobb som använder en SQL-uppgift och en For each uppgift läser du Använda en kontrolltabell för att köra ett For each jobb.

Använd dbutils i kod i en anteckningsbok

Notebook-kod som körs i en aktivitet kan komma åt parametrarnas värden med dbutils-biblioteket. I följande exempel visas hur du använder dbutils i Python för att hämta värdet för en year_param aktivitetsparameter som skickas till notebook-aktiviteten.

# Retrieve a job-level parameter
year_value = dbutils.widgets.get("year_param")

# Use the value in your code
display(babynames.filter(babynames.Year == year_value))

Parametrar nås via namn. Om en jobbparameter och en aktivitetsparameter delar en nyckel har jobbparametern företräde. Se Nedtryckning av jobbparametrar.

Koden ovan genererar ett fel när den körs i en fristående notebook-fil och inte som en del av ett jobb eftersom parametrar inte skickas till en fristående notebook-fil. Du kan ange ett standardvärde för parametern year_param med följande kod:

# Set a default (for when not running in a job)
dbutils.widgets.text("year_param", "2012", "Year Parameter")

# Retrieve a job-level parameter (will use default if it doesn't exist)
year_value = dbutils.widgets.get("year_param")

# Use the value in your code
display(babynames.filter(babynames.Year == year_value))

Även om detta är användbart för testning utanför ett jobb maskerar det även felkonfigurerade uppgifts- eller jobbparametrar.

Använda namngivna parametrar i SQL

När du kör SQL i en notebook- eller pipelineaktivitet kan du använda den namngivna parametersyntaxen för att hämta uppgiftsparametrar. Om du till exempel vill hämta en aktivitetsparameter med namnet year_paramkan du hämta dess värde med hjälp :year_param av i din fråga:

SELECT *
FROM baby_names_prepared
WHERE Year_Of_Birth = :year_param
GROUP BY First_Name

Åtkomst som kodargument

För vissa uppgiftstyper skickas parametrar till koden som argument. Följande aktivitetstyper har argument som skickas till dem:

  • Python script
  • Python Wheel
  • JAR
  • Spark Submit

Mer information finns i Information efter aktivitetstyp senare på den här sidan.

För dbt uppgifter skickas parametrarna genom att anropa dbt-kommandon i din uppgift.

Använd referenser för dynamiskt värde när du konfigurerar en uppgift

När du konfigurerar en uppgift i Azure Databricks användargränssnittet använder du referenssyntaxen för dynamiskt värde för att hämta jobbparametrar eller andra dynamiska värden. Om du vill hämta jobbparametrar använder du syntaxen: {{job.parameters.<name>}}. När du till exempel konfigurerar en Python wheel uppgift, du kan ange parameterns indata Key och Value för att referera till en jobbparameter med namnet year_param, till exempel year / Year_{{job.parameters.year_param}}. Förutom att ge åtkomst till parametrar i konfigurationen ger dynamiska värden även åtkomst till andra data om ditt jobb eller din uppgift, till exempel {{job.id}}. Du kan klicka på {} i aktivitetskonfigurationen för att hämta en lista över möjliga dynamiska värden och infoga dem i konfigurationen.

Information efter aktivitetstyp

Vilka av dessa metoder som du använder beror på aktivitetstypen.

Aktivitetstyp Hämta i konfigurationen Hämta i koden
Anteckningsböcker Du kan använda referenser för dynamiskt värde i Azure Databricks-användargränssnittet för att konfigurera notebook-filen (till exempel för att referera till jobbparametrar i värden för aktivitetsparametern). Du kan åsidosätta eller lägga till ytterligare parametrar när du manuellt kör en uppgift med alternativet Kör ett jobb med olika inställningar . Du kan använda antingen namngivna parametrar för SQL i notebook-filen eller dbutils.widgets i koden.
Python skript Parametrar som definierats i uppgiften skickas som argument till skriptet. Du kan använda referenser för dynamiskt värde i textrutan Parametrar. Parametrarna kan läsas som positionsargument eller parsas med modulen argparse i Python.
Python hjul Parametrar som definierats i uppgiftsdefinitionen skickas som nyckelordsargument till koden. Dina Python hjulfiler måste konfigureras för att acceptera nyckelordsargument. Du kan använda referenser för dynamiskt värde i värdena för dina parametrar. Använd nyckelordsargument för åtkomst till skriptet. Ett exempel på hur du läser argument i ett Python skript som paketeras i en Python hjulfil finns i Använd en Python hjulfil i Lakeflow Jobs.
SQL Du kan använda referenser för dynamiskt värde i aktivitetskonfigurationen. Använd namngivna parametrar för att hämta parametervärden.
Pipeline (parametrar finns i Beta) Du kan använda referenser för dynamiskt värde för att skicka parametrar som argument i textrutan Parametrar när du konfigurerar uppgiften. Använd namngivna parametrar för att hämta parametervärden.
Kontrollpanel Du kan tillämpa filtervärden på förhand genom att konfigurera instrumentpanelsfilter i uppgiften. Om ett filters URL-identifierare matchar en parameternyckel på jobbnivå tillämpar aktiviteten automatiskt parameterns värde på filtret. Ej tillämpbart.
Power BI Power BI aktiviteter stöder inte att parametrar skickas till aktiviteten. Stöds inte.
dbt Du kan använda dynamiska värdereferenser för att överföra parametrar som dbt-kommandon när du konfigurerar din uppgift. Åtkomst som dbt kommando.
GRYTBURK Du kan använda referenser för dynamiskt värde för att skicka parametrar som argument i textrutan Parametrar när du konfigurerar uppgiften. Parametrar används som argument till huvudmetoden för huvudklassen.
Spark-sändning Du kan använda referenser för dynamiskt värde för att skicka parametrar som argument i textrutan Parametrar när du konfigurerar uppgiften. Parametrar används som argument till huvudmetoden för huvudklassen.
Kör Uppgift Du kan använda referenser för dynamiskt värde för att skapa en uppsättning jobbparametrar när du konfigurerar uppgiften. Värdena kan innehålla referenser för dynamiskt värde. Ej tillämpbart.
Om/annars-villkoret Du kan använda referenser för dynamiskt värde när du konfigurerar din uppgift, till exempel i Condition. Ej tillämpbart.
För varje Du kan använda referenser för dynamiskt värde när du konfigurerar indata för din uppgift. Den kapslade aktiviteten tar emot en indata som en aktivitetsparameter för varje iteration av den kapslade aktiviteten. De kapslade aktiviteterna hämtar parametrar baserat på typen av aktivitet.
Anteckningsbok för rent rum Du kan använda referenser för dynamiskt värde i Azure Databricks-användargränssnittet för att konfigurera notebook-filen (till exempel för att referera till jobbparametrar i värden för aktivitetsparametern). Du kan använda antingen namngivna parametrar för SQL i notebook-filen eller dbutils.widgets i koden.