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 berekeningen zijn beschikbaar voor notebooks, taken en Delta Live Tables. 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
Bij de volgende aanbevelingen wordt ervan uitgegaan dat u onbeperkte clusters hebt gemaakt. 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 overloop tijdens willekeurige volgordes en caching.
Aanvullende overwegingen zijn onder andere het type werkexemplaren en de grootte, die ook van invloed zijn op de bovenstaande factoren. Overweeg bij het aanpassen van de grootte van uw rekenproces 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 taakverdeling tussen het aantal werkrollen en de grootte van werkrolexemplaren. 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 vereisen, wat leidt tot veel willekeurige bewerkingen. Een rekenresource met een kleiner aantal grotere knooppunten kan het netwerk en de I/O van de schijf verminderen die nodig zijn om deze willekeurige volgordes 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.
Basic batch ETL
Eenvoudige BATCH ETL-taken waarvoor geen brede transformaties nodig zijn, zoals joins of aggregaties, profiteren doorgaans van Photon. Selecteer dus een exemplaar voor algemeen gebruik dat Photon ondersteunt.
Exemplaren met lagere vereisten voor geheugen en opslag kunnen leiden tot kostenbesparingen ten opzichte van andere werkrollen.
Complexe batch ETL
Voor een complexe ETL-taak, zoals een taak waarvoor samenvoegingen en joins in meerdere tabellen zijn vereist, raadt Databricks aan om minder werkrollen te gebruiken om de hoeveelheid gegevens in willekeurige volgorde te verminderen. Als u wilt compenseren dat er minder werkrollen zijn, vergroot u de grootte van uw exemplaren.
Complexe transformaties kunnen rekenintensief zijn. Als u aanzienlijke overloop op schijf- of OOM-fouten ziet, verhoogt u de hoeveelheid geheugen die beschikbaar is op uw exemplaren.
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 moet één knooppunt berekenen met een groot knooppunttype voor de eerste experimenten met het trainen van machine learning-modellen. Als u minder knooppunten hebt, vermindert u de impact van willekeurige volgordes.
Het toevoegen van meer werknemers kan helpen met stabiliteit, maar u moet voorkomen dat er te veel werkrollen worden toegevoegd vanwege de overhead van het versnipperen 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.