Aanbevelingen voor compute-configuratie
Dit artikel bevat aanbevelingen en aanbevolen procedures met betrekking tot de rekenconfiguratie.
Als uw workload wordt ondersteund, raadt Databricks aan om serverloze berekeningen te gebruiken in plaats van uw eigen rekenresource te configureren. Serverloze berekening is de eenvoudigste en betrouwbaarste rekenoptie. Er is geen configuratie vereist, is altijd beschikbaar en wordt geschaald op basis van uw workload. Serverloze rekenkracht is beschikbaar voor notebooks, taken en DLT. Zie Verbinding maken met serverloze berekeningen.
Daarnaast kunnen gegevensanalisten serverloze SQL-warehouses gebruiken om gegevens op Databricks op te vragen en te verkennen. Zie Wat zijn serverloze SQL-warehouses?
Rekenbeleid gebruiken
Als u volledig nieuwe berekeningen maakt, raadt Databricks het gebruik van rekenbeleid aan. Met rekenbeleid kunt u vooraf geconfigureerde rekenresources maken die zijn ontworpen voor specifieke doeleinden, zoals persoonlijke rekenkracht, gedeelde rekenkracht, energiegebruikers en taken. Beleidsregels beperken de beslissingen die u moet nemen bij het configureren van rekeninstellingen.
Als u geen toegang hebt tot beleid, neemt u contact op met uw werkruimtebeheerder. Zie Standaardbeleid en beleidsfamilies.
Overwegingen voor het berekenen van de grootte
Notitie
De volgende aanbevelingen gaan ervan uit dat u onbeperkt clusters kunt aanmaken. Werkruimtebeheerders mogen deze bevoegdheid alleen verlenen aan geavanceerde gebruikers.
Mensen denken vaak aan rekenkracht in termen van het aantal werknemers, maar er zijn andere belangrijke factoren om rekening mee te houden:
- Totaal aantal uitvoerkernen (compute): het totale aantal kernen voor alle uitvoerders. Dit bepaalt de maximale parallelle uitvoering van een rekenproces.
- Totaal geheugen voor uitvoerders: de totale hoeveelheid RAM-geheugen voor alle uitvoerders. Hiermee bepaalt u hoeveel gegevens in het geheugen kunnen worden opgeslagen voordat deze naar de schijf worden overgeslagen.
- Lokale opslag van uitvoerprogramma: het type en de hoeveelheid lokale schijfopslag. Lokale schijf wordt voornamelijk gebruikt in het geval van uitvallen tijdens shuffle-processen en caching.
Aanvullende overwegingen zijn onder andere het type en de grootte van de werkexemplaren, die ook van invloed zijn op de bovenstaande factoren. Overweeg bij het bepalen van de grootte van uw computing capaciteit het volgende:
- Hoeveel gegevens verbruikt uw workload?
- Wat is de rekenkundige complexiteit van uw workload?
- Waar leest u gegevens vandaan?
- Hoe worden de gegevens gepartitioneerd in externe opslag?
- Hoeveel parallelle uitvoering hebt u nodig?
Als u deze vragen beantwoordt, kunt u optimale rekenconfiguraties bepalen op basis van workloads.
Er is een evenwichtsoefening tussen het aantal werknemers en de grootte van de types van werknemers-instanties. Het configureren van rekenkracht met twee werkrollen, elk met 16 kernen en 128 GB RAM, heeft dezelfde rekenkracht en hetzelfde geheugen als het configureren van rekenkracht met 8 werkrollen, elk met 4 kernen en 32 GB RAM.
Voorbeelden van rekenconfiguratie
In de volgende voorbeelden ziet u aanbevelingen voor berekeningen op basis van specifieke typen workloads. Deze voorbeelden omvatten ook configuraties om te voorkomen en waarom deze configuraties niet geschikt zijn voor de workloadtypen.
Notitie
Alle voorbeelden in deze sectie (naast machine learning-training) kunnen profiteren van het gebruik van serverloze berekeningen in plaats van een nieuwe rekenresource te maken. Als uw workload niet wordt ondersteund op serverloos, gebruikt u de onderstaande aanbevelingen om uw rekenresource te configureren.
Gegevensanalyse
Gegevensanalisten voeren doorgaans verwerking uit die gegevens van meerdere partities nodig heeft, wat leidt tot veel shuffle-bewerkingen. Een rekenresource met een kleiner aantal grotere knooppunten kan de netwerk- en schijf-I/O verminderen die nodig zijn om deze shuffles uit te voeren.
Een rekenproces met één knooppunt met een groot VM-type is waarschijnlijk de beste keuze, met name voor één analist.
Analytische werkbelastingen vereisen waarschijnlijk dat dezelfde gegevens herhaaldelijk worden gelezen, dus aanbevolen knooppunttypen zijn geoptimaliseerd voor opslag met schijfcache ingeschakeld of exemplaren met lokale opslag.
Aanvullende functies die worden aanbevolen voor analytische workloads zijn onder andere:
- Schakel automatische beëindiging in om ervoor te zorgen dat de berekening wordt beëindigd na een periode van inactiviteit.
- Overweeg automatische schaalaanpassing in te schakelen op basis van de typische workload van de analist.
Basisbatch-ETL
Eenvoudige batch ETL-taken waarvoor geen brede transformaties nodig zijn, zoals bij samenvoegingen of aggregaties, hebben doorgaans voordelen van Photon. Selecteer dus een exemplaar voor algemeen gebruik dat Photon ondersteunt.
Instellingen met lagere vereisten voor geheugen en opslag kunnen leiden tot kostenbesparingen ten opzichte van andere soorten werkers.
Complexe batch ETL
Voor een complexe ETL-taak, zoals een taak die unions en joins tussen meerdere tabellen vereist, raadt Databricks aan om minder workers te gebruiken om de hoeveelheid verplaatste gegevens te verminderen. Om te compenseren voor het hebben van minder werknemers, verhoogt u de grootte van uw instanties.
Complexe transformaties kunnen rekenintensief zijn. Als u aanzienlijke overloop naar schijven of 'Out of Memory'-fouten tegenkomt, verhoog dan de hoeveelheid geheugen die beschikbaar is op uw instanties.
U kunt pools desgewenst gebruiken om de starttijden van rekenprocessen te verlagen en de totale runtime te verminderen bij het uitvoeren van taakpijplijnen.
Machine Learning-modellen trainen
Als u machine learning-modellen wilt trainen, raadt Databricks aan om een rekenresource te maken met behulp van het persoonlijke rekenbeleid .
U zou een enkelvoudige knooppunt-configuratie met een groot knooppunttype moeten gebruiken voor de eerste experimenten met het trainen van machine learning-modellen. Minder knooppunten verminderen de impact van herverdelingen.
Het toevoegen van meer werknemers kan helpen met stabiliteit, maar u moet voorkomen dat er te veel werknemers worden toegevoegd vanwege de overhead van het verplaatsen van gegevens.
Aanbevolen werkroltypen zijn geoptimaliseerd voor opslag met schijfcaching ingeschakeld, of een exemplaar met lokale opslag om rekening te houden met herhaalde leesbewerkingen van dezelfde gegevens en om caching van trainingsgegevens mogelijk te maken.
Aanvullende functies die worden aanbevolen voor machine learning-workloads zijn onder andere:
- Schakel automatische beëindiging in om ervoor te zorgen dat de berekening wordt beëindigd na een periode van inactiviteit.
- Gebruik pools, waarmee rekenkracht wordt beperkt tot het vooraf goedgekeurde exemplaartype.
- Zorg voor consistente rekenconfiguraties met behulp van beleid.