Dela via


Konfigurera beräkning för en Delta Live Tables-pipeline

Den här artikeln innehåller instruktioner och överväganden när du konfigurerar anpassade beräkningsinställningar för Delta Live Tables-pipelines.

Serverlösa pipelines tillhandahåller inte konfigurationsalternativ för beräkning. Se Konfigurera en serverlös Delta Live Tables-pipeline.

Välj en klusterprincip

Användare måste ha behörighet att distribuera beräkning för att konfigurera och uppdatera Delta Live Tables-pipelines. Arbetsyteadministratörer kan konfigurera klusterprinciper för att ge användare åtkomst till beräkningsresurser för Delta Live Tables. Se Definiera gränser för pipelineberäkning i Delta Live Tables.

Kommentar

  • Klusterprinciper är valfria. Kontakta arbetsyteadministratören om du saknar de beräkningsbehörigheter som krävs för Delta Live Tables.

  • För att säkerställa att standardvärdena för klusterprinciper tillämpas korrekt anger du apply_policy_default_values till true i klusterkonfigurationer i pipelinekonfigurationen:

    {
      "clusters": [
        {
          "label": "default",
          "policy_id": "<policy-id>",
          "apply_policy_default_values": true
        }
      ]
    }
    

Konfigurera klustertaggar

Du kan använda klustertaggar för att övervaka användningen av dina pipelinekluster. Lägg till klustertaggar i Delta Live Tables-användargränssnittet när du skapar eller redigerar en pipeline eller genom att redigera JSON-inställningarna för dina pipelinekluster.

Välj instanstyper för att köra en pipeline

Som standard väljer Delta Live Tables instanstyperna för pipelinens drivrutins- och arbetsnoder. Du kan också konfigurera instanstyperna.

Välj till exempel instanstyper för att förbättra pipelineprestanda eller åtgärda minnesproblem när du kör pipelinen. Du kan konfigurera instanstyper när du skapa eller redigera en pipeline med REST-API:et eller i Delta Live Tables-användargränssnittet.

Så här konfigurerar du instanstyper när du skapar eller redigerar en pipeline i Delta Live Tables-användargränssnittet:

  1. Klicka på knappen Inställningar .
  2. I avsnittet Avancerat i pipelineinställningarna, välj instanstyperna för pipelinen i rullgardinsmenyerna för Arbetstyp och Drivertyp.

Avancerade beräkningskonfigurationer

Kommentar

Eftersom beräkningsresurser hanteras fullständigt för serverlösa DLT-pipelines är beräkningsinställningarna inte tillgängliga när du väljer Serverlös för en pipeline.

Varje Delta Live Tables-pipeline har två associerade kluster:

  • Klustret updates bearbetar pipelineuppdateringar.
  • Klustret maintenance kör dagliga underhållsaktiviteter.

Beräkningsinställningar som anges via arbetsytans pipeline-konfigurationsgränssnitt gäller både uppdaterings- och underhållskluster. Du måste redigera JSON-konfigurationen för att ändra inställningarna oberoende av varandra.

Konfigurationen som dessa kluster använder bestäms av det clusters attribut som anges i pipelineinställningarna.

Med hjälp av klusteretiketter kan du lägga till beräkningsinställningar som endast gäller för en viss klustertyp. Det finns tre etiketter som du kan använda när du konfigurerar pipelinekluster:

Kommentar

Du kan utelämna inställningen för klusteretiketter om du bara definierar en klusterkonfiguration. Etiketten default tillämpas på klusterkonfigurationer om ingen inställning för etiketten anges. Inställningen för klusteretiketter krävs endast om du behöver anpassa inställningarna för olika klustertyper.

  • Etiketten default definierar beräkningsinställningar för både klustren updates och maintenance . Om samma inställningar tillämpas på båda klustren förbättras tillförlitligheten för underhållskörningar genom att nödvändiga konfigurationer, till exempel autentiseringsuppgifter för dataåtkomst för en lagringsplats, tillämpas på underhållsklustret.
  • Etiketten maintenance definierar beräkningsinställningar som endast maintenance gäller för klustret. Du kan också använda maintenance etiketten för att åsidosätta inställningar som konfigurerats av default etiketten.
  • Etiketten updates definierar inställningar som endast gäller för klustret updates . Använd den för att konfigurera inställningar som inte ska tillämpas på maintenance klustret.

Inställningar som definieras med etiketterna default och updates sammanfogas för att skapa den slutliga konfigurationen updates för klustret. Om samma inställning definieras med både default och updates etiketter åsidosätter inställningen som definierats med updates etiketten inställningen som definierats med default etiketten.

I följande exempel definieras en Spark-konfigurationsparameter som endast läggs till i konfigurationen updates för klustret:

{
  "clusters": [
    {
      "label": "default",
      "autoscale": {
        "min_workers": 1,
        "max_workers": 5,
        "mode": "ENHANCED"
      }
    },
    {
      "label": "updates",
      "spark_conf": {
         "key": "value"
      }
    }
  ]
}

Delta Live Tables har liknande alternativ för klusterinställningar som annan beräkning i Azure Databricks. Precis som andra pipelineinställningar kan du ändra JSON-konfigurationen för kluster för att ange alternativ som inte finns i användargränssnittet. Se Beräkning.

Kommentar

Eftersom Delta Live Tables-körningen hanterar livscykeln för pipelinekluster och kör en anpassad version av Databricks Runtime kan du inte manuellt ange vissa klusterinställningar i en pipelinekonfiguration, till exempel Spark-versionen eller klusternamnen. Se Klusterattribut som inte kan användas.

Konfigurera instanstyper för uppdaterings- och underhållskluster

Om du vill konfigurera instanstyper i pipelinens JSON-inställningar klickar du på JSON-knappen och anger konfigurationer av instanstyp i klusterkonfigurationen:

Kommentar

För att undvika att tilldela onödiga resurser till det maintenance klustret använder det här exemplet etiketten updates för att ange instanstyperna för endast det updates klustret. Om du vill tilldela instanstyperna till både updates och maintenance kluster använder du default etiketten eller utelämnar inställningen för etiketten. Etiketten default tillämpas på konfigurationer av pipelinekluster om ingen inställning för etiketten anges. Se Avancerade beräkningskonfigurationer.

{
  "clusters": [
    {
      "label": "updates",
      "node_type_id": "Standard_D12_v2",
      "driver_node_type_id": "Standard_D3_v2",
      "..." : "..."
    }
  ]
}

Fördröj beräkningsavstängning

Om du vill styra beteendet för klusteravstängning kan du använda utvecklings- eller produktionsläge eller använda pipelines.clusterShutdown.delay inställningen i pipelinekonfigurationen. I följande exempel anges värdet pipelines.clusterShutdown.delay till 60 sekunder:

{
    "configuration": {
      "pipelines.clusterShutdown.delay": "60s"
    }
}

När läget production är aktiverat har pipelines.clusterShutdown.delay standardvärdet 0 seconds. När läget development är aktiverat är standardvärdet 2 hours.

Kommentar

Eftersom ett Delta Live Tables-kluster stängs av automatiskt när det inte används resulterar det i fel om du refererar till en klusterprincip som anger autotermination_minutes i klusterkonfigurationen.

Skapa ett kluster med en nod

Om du anger num_workers till 0 i klusterinställningar skapas klustret som ett kluster med en enda nod. Om du konfigurerar ett kluster för automatisk skalning och ställer in min_workers till 0 och max_workers till 0 skapas ett kluster med en nod.

Om du konfigurerar ett kluster för automatisk skalning och endast anger min_workers till 0 skapas inte klustret som ett kluster med en enda nod. Klustret har minst en aktiv arbetare hela tiden tills det avslutas.

Ett exempel på klusterkonfiguration för att skapa ett kluster med en nod i Delta Live Tables:

{
    "clusters": [
      {
        "num_workers": 0
      }
    ]
}