Delen via


Aanbevolen procedures voor pools

In dit artikel wordt uitgelegd wat pools zijn en hoe u ze het beste kunt configureren. Zie de naslaginformatie over de poolconfiguratie voor meer informatie over het maken van een pool.

Notitie

Als uw workload serverloze berekeningen ondersteunt, raadt Databricks aan om serverloze berekeningen te gebruiken in plaats van pools om te profiteren van always-on, schaalbare rekenkracht. Zie Verbinding maken met serverloze berekeningen.

Overwegingen voor pools

Houd rekening met het volgende bij het maken van een pool:

  • Pools maken met behulp van exemplaartypen en Azure Databricks-runtimes op basis van doelworkloads.
  • Vul indien mogelijk pools met spot-exemplaren om de kosten te verlagen. Gebruik alleen spot-pools als werkknooppunten. Het stuurprogrammaknooppunt moet on-demand exemplaren gebruiken.
  • Vul pools met instanties op aanvraag voor taken met korte uitvoeringstijden en strikte uitvoeringstijdvereisten.
  • Gebruik pooltags en clustertags om facturering te beheren.
  • Vul pools vooraf in om ervoor te zorgen dat exemplaren beschikbaar zijn wanneer clusters ze nodig hebben.

Pools maken op basis van workloads

U kunt de aanschaftijd van exemplaren minimaliseren door een pool te maken voor elk exemplaartype en Azure Databricks Runtime die uw organisatie vaak gebruikt. Als de meeste data engineering-clusters bijvoorbeeld exemplaartype A gebruiken, gebruiken data science-clusters exemplaartype B en analyseclusters exemplaartype C, maakt u een pool met elk exemplaartype.

Spot-exemplaarpools gebruiken

Als uw stuurprogrammaknooppunt en werkknooppunten verschillende vereisten hebben, gebruikt u verschillende pools voor elk.

Azure Databricks raadt aan geen spot-exemplaren te gebruiken voor uw stuurprogrammaknooppunt. Als u een spot-pool gebruikt voor uw werkknooppunt, select u een on-demand pool als uw stuurprogrammatype.

Configureer pools voor het gebruik van on-demand exemplaren voor taken met korte uitvoeringstijden en strikte uitvoeringstijdvereisten. Gebruik instanties op aanvraag om te voorkomen dat verworven exemplaren verloren gaan naar een hogere bieder op de spotmarkt.

Configureer pools voor het gebruik van spot-exemplaren voor clusters die ondersteuning bieden voor interactieve ontwikkeling of taken die kostenbesparingen ten opzichte van betrouwbaarheid prioriteren.

Pools taggen om kosten en facturering te beheren

Door pools te taggen naar de juiste kostenplaats kunt u kosten en gebruik terugstortingen beheren. U kunt meerdere aangepaste tags gebruiken om meerdere kostenplaatsen aan een pool te koppelen. Het is echter belangrijk om te begrijpen hoe tags worden doorgegeven wanneer een cluster wordt gemaakt op basis van pools. Tags van pools worden doorgegeven aan de onderliggende cloudproviderexemplaren, maar de tags van het cluster niet. Pas alle aangepaste tags toe die nodig zijn voor het beheer van de terugstorting van de rekenkosten van de cloudprovider op de pool.

Pooltags en clustertags worden beide doorgegeven aan Azure Databricks-facturering. U kunt de combinatie van cluster- en pooltags gebruiken om terugstorting van Azure Databricks-eenheden te beheren.

Zie Gebruik bewaken met behulp van tags voor meer informatie.

Pools configureren om kosten te beheren

U kunt de volgende configuratieopties gebruiken om de kosten van pools te beheren:

  • Set de min inactieve instanties tot 0 om te voorkomen dat er wordt betaald voor instanties die niet werken. De afweging is een mogelijke toename in de tijd waarin een cluster een nieuw exemplaar moet verkrijgen.
  • Set de maximale capaciteit op basis van verwacht gebruik. Hiermee stelt u het maximale aantal gebruikte en inactieve exemplaren in de pool in. Als een taak of cluster een exemplaar aanvraagt bij een pool met de maximale capaciteit, mislukt de aanvraag en krijgt het cluster niet meer exemplaren. Daarom raadt Databricks aan dat u alleen de maximale capaciteit set als er een strikt exemplaarquotum of budget constraintis.
  • Set de automatische beëindiging van het niet-actieve exemplaar tijd om een buffer op te geven tussen het moment waarop het exemplaar uit het cluster wordt vrijgegeven en wanneer deze uit de pool wordt verwijderd. Set dit voor een periode waarmee u de kosten kunt minimaliseren en tegelijkertijd de beschikbaarheid van exemplaren voor geplande taken kunt garanderen. Taak A wordt bijvoorbeeld gepland om 8:00 uur uit te voeren en duurt 40 minuten. Taak B is gepland om 9:00 uur te worden uitgevoerd en het duurt 30 minuten om te voltooien. Set de waarde voor automatische beëindiging van het niet-actieve exemplaar tot 20 minuten om ervoor te zorgen dat exemplaren die naar de pool worden geretourneerd wanneer taak A is voltooid, beschikbaar zijn wanneer taak B wordt gestart. Tenzij ze door een ander cluster worden geclaimd, worden deze exemplaren 20 minuten na het einde van taak B beëindigd.

Vooraf ingevulde pools

Als u volledig wilt profiteren van pools, kunt u zojuist gemaakte pools vooraf vullen. Set de min niet-actieve exemplaren groter dan nul in de poolconfiguratie. Als u de aanbeveling volgt om deze waarde te set op nul, kunt u ook een starterstaak gebruiken om ervoor te zorgen dat nieuwe groepen beschikbare exemplaren hebben voor clusters voor toegang.

Met de benadering van de starterstaak plant u een taak met flexibele uitvoeringstijdvereisten om uit te voeren voordat taken met strengere prestatievereisten of voordat gebruikers interactieve clusters gaan gebruiken. Nadat de taak is voltooid, worden de exemplaren die voor de taak worden gebruikt, weer naar de pool vrijgegeven. Set minimale instelling exemplaar inactief op 0 en set de niet-actieve instantie automatisch beëindigen tijd hoog genoeg om ervoor te zorgen dat niet-actieve exemplaren beschikbaar blijven voor volgende taken.

Met behulp van een starterstaak kunnen de poolexemplaren worden uitgevoerd, de pool vullen en beschikbaar blijven voor downstreamtaak of interactieve clusters.