Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Referens för JSON-konfigurationsinställningar för pipeline och tabellegenskaper. Mer information om hur du använder dessa egenskaper och konfigurationer finns i följande artiklar:
Konfiguration av Lakeflow-pipelines och Apache Spark-deklarativa™ pipelines
Lakeflow-pipelines bygger på Apache Spark™ Deklarativa pipelines (SDP). Pipelinekonfigurationen är till stor del en superuppsättning av SDP-projektspecifikationen. Skillnader i egenskapsanvändningen mellan SDP- och Lakeflow-pipelines noteras. En jämförelse av de funktioner som Lakeflow-pipelines och SDP delar finns i Apache Spark Deklarativa pipelines.
Hur man sätter egenskaper
Du sätter de flesta pipeline-egenskaper på ett av följande sätt:
-
Pipeline JSON eller YAML: Lägg till egenskapen i pipeline-specifikationen, antingen i pipeline-inställningarnas UI eller i en Deklarative Automation Bundles-konfigurationsfil. Pipeline-nivåinställningar såsom
catalog,channel, ocheditionär satta på detta sätt. -
Objektet
configuration: Spark-konfigurationsegenskaper (egenskaper med prefix )pipelines.kan ställas in för hela pipelinen genom att lägga till dem iconfigurationobjektet i pipeline-specifikationen. Se Konfigurera arbetsflöden. -
SQL: I en SQL-källkodsfil, sätt en Spark-konfigurationsegenskap för datamängderna som följer med
SET. -
Python: I en Python-källfil, sätt en Spark-konfigurationsegenskap på en enskild datamängd med argumentet
spark_conffrån dataset decorator.
Att sätta en egenskap i SQL eller Python applicerar den på datamängdsnivå, vilket åsidosätter pipelinenivåvärdet från objektetconfiguration. Inte alla egenskaper stöder alla metoder: pipeline-nivåinställningar kan endast ställas in i specifikationen, medan Spark-konfigurationsegenskaper kan ställas in på antingen pipeline- eller datasetnivå.
Pipelinekonfigurationer
idTyp:
stringEn globalt unik identifierare för den här pipelinen. Identifieraren tilldelas av systemet och kan inte ändras.
Endast Lakeflow-pipelines. SDP tilldelar ingen pipelineidentifierare
nameTyp:
stringEtt användarvänligt namn för den här pipelinen. Namnet kan användas för att identifiera pipelinejobb i användargränssnittet.
Tillgängligt i SDP som obligatoriskt
namefältconfigurationTyp:
objectEn valfri lista med inställningar som ska läggas till i Spark-konfigurationen för klustret som kör pipelinen. De här inställningarna läss av pipelinekörningen och är tillgängliga för pipelinefrågor via Spark-konfigurationen.
Elementen måste formateras som
key:value-par.Tillgänglig i SDP som
configurationparametersTyp:
objectImportant
Den här funktionen finns i Beta. Arbetsyteadministratörer kan styra åtkomsten till den här funktionen från sidan Förhandsversioner . Se Hantera förhandsversioner av Azure Databricks.
En valfri karta över nyckel/värde-par som källkoden för pipelinen kan referera till med hjälp av namngiven parametersyntax (till exempel
:source_catalog). Använd parametrar för att återanvända samma pipeline-källkod i miljöer eller datauppsättningar utan att redigera källan.Nycklar kan innehålla alfanumeriska tecken, understreck (
_), bindestreck (-) och punkter (.). Värden är alltid strängar.Du kan åsidosätta dessa standardvärden när du startar en uppdatering, på en pipelineaktivitet i ett jobb eller med nedtryckta jobbparametrar. Pipelineparametrar kan bara refereras från SQL-källkod. Se Använd parametrar med pipelines.
Endast lakeflow-pipelines
librariesTyp:
array of objectsEn matris med kodfiler som innehåller pipelinekoden och nödvändiga artefakter.
Finns i SDP som
libraries, som anges som en lista över klotmönster för källfiler i stället för en matris med kodfilobjektclustersTyp:
array of objectsEn matris med specifikationer för de kluster som ska köra pipelinen.
Om detta inte anges väljer pipelines automatiskt en standardklusterkonfiguration för pipelinen.
Endast Lakeflow-pipelines. SDP hanterar inte beräkning
developmentTyp:
booleanEn flagga som anger om pipelinen ska köras i läge
developmentellerproduction.Standardvärdet är
false.Endast lakeflow-pipelines
notificationsTyp:
array of objectsEn valfri matris med specifikationer för e-postmeddelanden när en pipelineuppdatering slutförs, misslyckas med ett nytt försöksfel, misslyckas med ett fel som inte kan försökas igen eller om ett flöde misslyckas.
Endast lakeflow-pipelines
continuousTyp:
booleanEn flagga som anger om pipelinen ska köras kontinuerligt.
Standardvärdet är
false.Endast lakeflow-pipelines
catalogTyp:
stringNamnet på standardkatalogen för pipelinen, där alla datauppsättningar och metadata för pipeline publiceras. Om du anger det här värdet aktiveras Unity Catalog för pipelinen.
Om den lämnas oangiven publiceras pipelinen till det äldre Hive-metadatalagret med hjälp av den plats som anges i
storage.I äldre publiceringsläge anger du katalogen som innehåller målschemat där alla datauppsättningar från den aktuella pipelinen publiceras. Se LIVE-schemat (äldre).
Tillgänglig i SDP som
catalogschemaTyp:
stringNamnet på standardschemat för pipelinen, där alla datauppsättningar och metadata för pipelinen publiceras som standard. Se Ange målkatalogen och schemat.
Finns i SDP som
database, som också accepterar aliasetschematarget(äldre)Typ:
stringNamnet på standardschemat för pipelinen, där alla datauppsättningar och metadata för pipelinen publiceras som standard. Att använda
schemai ställettargetför är att föredra.Endast lakeflow-pipelines
storage(äldre)Typ:
stringEn plats i DBFS eller molnlagring där utdata och metadata som krävs för pipelinekörning lagras. Tabeller och metadata lagras i underkataloger på den här platsen.
När inställningen
storageinte har angetts är systemet som standard en plats idbfs:/pipelines/.Det går inte att ändra inställningen
storagenär en pipeline har skapats.Tillgängligt i SDP som obligatoriskt
storagefält. I Lakeflow-pipelinesstorageär en äldre inställningchannelTyp:
stringDen version av pipelinekörningen som ska användas. De värden som stöds är:
-
previewför att testa din pipeline med kommande ändringar i körmiljön. -
currentför att använda den aktuella körmiljöversionen.
Fältet
channelär valfritt. Standardvärdet ärcurrent. Databricks rekommenderar att du använder den aktuella körningsversionen för produktionsarbetsbelastningar.Endast lakeflow-pipelines
-
editionSkriv
stringProduktutgåvan som ska köra pipelinen. Med den här inställningen kan du välja den bästa produktutgåvan baserat på kraven för din pipeline:
-
COREför att köra strömmande inmatningsarbetsflöden. -
PROför att köra strömmande inmatningsprocesser och ändringsdatafångst (CDC). -
ADVANCEDför att köra strömmande inmatningsarbetsbelastningar, CDC-arbetsbelastningar och arbetsbelastningar som kräver förväntningar för att framtvinga datakvalitetsbegränsningar.
Fältet
editionär valfritt. Standardvärdet ärADVANCED.Endast lakeflow-pipelines
-
photonTyp:
booleanEn flagga som anger om du vill använda Vad är Photon? för att köra pipelinen. Photon är Spark-motorn med höga prestanda i Azure Databricks. Photon-aktiverade pipelines faktureras till olika taxa än pipelines utan Photon.
Fältet
photonär valfritt. Standardvärdet ärfalse.Endast lakeflow-pipelines
serverlessTyp:
booleanEn flagga som anger om pipelinen använder serverlös beräkning. Se Konfigurera en serverlös pipeline.
Endast lakeflow-pipelines
event_logTyp:
objectKonfiguration för pipelinens händelseloggmål, som ett objekt med
namefälten ,catalogochschemasom publicerar händelseloggen till en Unity Catalog-tabell. Se Händelselogg för pipeline.Endast lakeflow-pipelines
tagsTyp:
objectEn valfri karta över användardefinierade taggar för pipelinen. Högst 25 taggar kan läggas till.
Endast lakeflow-pipelines
budget_policy_idTyp:
stringID:t för den serverlösa budgetprincip som ska tillämpas på den här pipelinen, som används för att tillskriva serverlös användning för kostnadsspårning. Det här fältet visas endast i JSON- eller YAML-konfigurationen när du uttryckligen anger en princip. Om den inte har angetts löser Azure Databricks automatiskt en standardprincip. Den lösta principen visas i användargränssnittet för pipelineinställningar, men den skrivs inte till JSON- eller YAML-konfigurationen.
Endast lakeflow-pipelines
root_pathTyp:
stringRotsökvägen för pipelinen. När den här katalogen har angetts läggs den till
sys.pathvid körning av Python källfiler, så att moduler kan importeras i förhållande till den.Endast lakeflow-pipelines
environmentTyp:
objectEn miljöspecifikation som används för att installera Python beroenden för pipelinen.
Endast lakeflow-pipelines
pipelines.maxFlowRetryAttemptsTyp:
intOm ett återförsöksbart fel inträffar under en pipelineuppdatering är detta det maximala antalet gånger som ett flöde försöker igen innan pipelineuppdateringen misslyckas.
Använd detta för att binda återförsök i ett enda flöde som kan försöka igen så att det inte kan stoppa en hel uppdatering.
Standard: Två återförsök. När ett återförsöksbart fel inträffar försöker pipelinekörningen köra flödet tre gånger, inklusive det ursprungliga försöket.
Endast lakeflow-pipelines
pipelines.numUpdateRetryAttemptsTyp:
intOm ett återförsöksbart fel inträffar under en uppdatering är detta det maximala antalet gånger som uppdateringen ska försöka igen innan uppdateringen misslyckas permanent. Återförsöket körs som en fullständig uppdatering.
Använd detta för att binda återförsök för en hel uppdatering, så en fast uppdatering misslyckas permanent i stället för att försöka igen på obestämd tid.
Den här parametern gäller endast för pipelines med hjälp av automatiskt återförsök och omstartsbeteende. Återförsök görs inte för ad hoc-uppdateringar som körs från redigeraren eller när du kör en
Validateuppdatering.Standardvärde:
- Fem för aktiverade pipelines.
- Obegränsat för kontinuerliga pipelines.
Endast lakeflow-pipelines
Egenskaper för pipelinetabell
Förutom de tabellegenskaper som stöds av Delta Lake kan du ange följande tabellegenskaper.
pipelines.autoOptimize.zOrderColsStandard: Ingen
En valfri sträng som innehåller en kommaavgränsad lista med kolumnnamn för att z-beställa tabellen efter. Till exempel:
pipelines.autoOptimize.zOrderCols = "year,month"Databricks rekommenderar flytande klustring i stället för Z-beställning för att optimera datalayouten i pipelinetabeller. Om du vill låta Databricks välja och underhålla klustringskolumnerna automatiskt använder du
CLUSTER BY AUTO(cluster_by_auto=Truei Python). Se Använda flytande klustring för tabeller.Endast lakeflow-pipelines
pipelines.reset.allowedStandardvärde:
trueStyr om en fullständig uppdatering tillåts för den här tabellen.
Tillgänglig i SDP som
pipelines.reset.allowedpipelines.autoOptimize.managedStandardvärde:
trueAktiverar eller inaktiverar automatiskt schemalagd optimering av den här tabellen.
För pipelines som hanteras av förutsägelseoptimering används inte den här egenskapen.
Endast lakeflow-pipelines
utlösarintervall för rörledningar
Du kan ange ett pipelineutlösarintervall för hela pipelinen eller som en del av en datamängdsdeklaration. Se Ange utlösarintervall för kontinuerliga pipelines.
pipelines.trigger.intervalStandardvärdet baseras på flödestyp:
- Fem sekunder för strömmande förfrågningar.
- En minut för fullständiga frågor när alla indata kommer från Delta-källor.
- Tio minuter för fullständiga frågor när vissa datakällor kan vara icke-Delta.
Värdet är ett tal plus tidsenheten. Följande är giltiga tidsenheter:
-
second,seconds -
minute,minutes -
hour,hours -
day,days
Du kan använda singular- eller pluralenheten när du definierar värdet, till exempel:
{"pipelines.trigger.interval" : "1 hour"}{"pipelines.trigger.interval" : "10 seconds"}{"pipelines.trigger.interval" : "30 second"}{"pipelines.trigger.interval" : "1 minute"}{"pipelines.trigger.interval" : "10 minutes"}{"pipelines.trigger.interval" : "10 minute"}
Endast lakeflow-pipelines
Databricks rekommenderar att du ställer in pipelines.trigger.interval på enskilda tabeller eftersom strömnings- och batchfrågor har olika standardvärden. Sätt värdet på pipelinen endast när bearbetningen kräver kontrollerade uppdateringar för hela pipelinegrafen.
För att sätta intervallet i en tabell i Python, använd argumentetspark_conf:
@dp.table(
spark_conf={"pipelines.trigger.interval" : "10 seconds"}
)
def <function-name>():
return (<query>)
För att sätta intervallet på datamängderna som följer i SQL, använd SET:
SET pipelines.trigger.interval=10 seconds;
CREATE OR REFRESH MATERIALIZED VIEW TABLE_NAME
AS SELECT ...
För att sätta intervallet på hela pipelinen, lägg till det i objektet configuration i pipelinespecifikationen:
{
"configuration": {
"pipelines.trigger.interval": "10 seconds"
}
}
Klusterattribut som inte kan användas av användaren
Eftersom pipelines hanterar klusterlivscykler anges många klusterinställningar av systemet och kan inte konfigureras manuellt av användare, antingen i en pipelinekonfiguration eller i en klusterprincip som används av en pipeline. I följande tabell visas de här inställningarna och varför de inte kan anges manuellt.
Endast Lakeflow-pipelines. SDP hanterar inte beräkning, så dessa klusterattribut gäller inte
cluster_nameSDP anger namnen på de kluster som används för att köra pipelineuppdateringar. Dessa namn kan inte åsidosättas.
data_security_modeaccess_modeDessa värden anges automatiskt av systemet.
spark_versionSDP-kluster körs på en anpassad version av Databricks Runtime som uppdateras kontinuerligt för att inkludera de senaste funktionerna. Versionen av Spark paketeras med Databricks Runtime-versionen och kan inte åsidosättas.
autotermination_minutesEftersom SDP hanterar logik för automatisk avslutning och återanvändning av kluster kan inte tiden för automatisk avslutning av klustret åsidosättas.
runtime_engineÄven om du kan styra det här fältet genom att aktivera Photon för din pipeline kan du inte ange det här värdet direkt.
effective_spark_versionDet här värdet anges automatiskt av systemet.
cluster_sourceDet här fältet skapas av systemet och är skrivskyddat.
docker_imageEftersom SDP hanterar klusterlivscykeln kan du inte använda en anpassad container med pipelinekluster.
workload_typeDet här värdet anges av systemet och kan inte åsidosättas.
Käll- och frågealternativ
Vissa datainmatnings- och bearbetningsbeteenden konfigureras på datakällan eller frågan i stället för som pipelineegenskaper. Dessa inkluderar schemautveckling, schematips och slutsatsdragning, inmatningshastighetsgränser och filfiltrering. Om du vill konfigurera dem använder du alternativen för read_files och automatisk inläsning. Information om schemautveckling med from_jsonfinns i Härled och utveckla schemat med hjälp av from_json i pipelines.