Databricks Cost Optimizer

Help, m’n Databricks-rekening explodeert! Grip op DBU’s en clusters, zonder in te leveren op snelheid

In het kort

Voor wie: organisaties waarvan de Databricks-rekening sneller stijgt dan het gebruik.

Doorlooptijd: kostenanalyse op basis van system tables in de eerste week; quick wins en structurele verbeteringen in de weken daarna.

Vorm: vaste scope en vaste prijs voor analyse en quick wins.

Resultaat: een kostenmodel per team of product, cluster policies en tagging, en een kostendashboard met budgetalerts.

Azure Databricks is een krachtig platform voor data engineering en AI. Een cluster is zo gestart, een SQL-warehouse zo aangemaakt en een job zo ingepland. Maar die flexibiliteit heeft een keerzijde: zonder duidelijke afspraken groeit het aantal clusters, draaien ze langer dan nodig en weet niemand meer waar de DBU’s heen gaan.

De uitdaging

Databricks rekent af per Databricks Unit (DBU) bovenop de onderliggende Azure-resources. Interactieve clusters blijven aan staan, productiejobs draaien op dure all-purpose compute, tabellen worden steeds volledig herladen en kosten zijn niet toe te wijzen aan teams of projecten. Hierdoor stijgen de kosten bij veel organisaties na verloop van tijd sterk.

Vervolgens is het de uitdaging om deze kosten te verlagen, bij een gelijkblijvende of betere performance. De Databricks Cost Optimizer in combinatie met de Powerdobs Databricks kennis helpt daarbij.

De knoppen waaraan we draaien

Acht knoppen om Databricks-kosten te verlagen
  • Het juiste type compute: productiejobs op job compute of serverless in plaats van op all-purpose clusters. Het verschil in DBU-tarief is aanzienlijk.
  • Cluster policies: afspraken over maximale clustergrootte, toegestane node types, verplichte auto-termination en tags, afgedwongen via policies.
  • Autoscaling en auto-termination: clusters die meegroeien met de belasting en stoppen zodra ze niet meer gebruikt worden.
  • Right sizing van nodes: de juiste verhouding tussen geheugen en rekenkracht per workload, en spot-instances voor workers waar dat verantwoord is.
  • Photon bewust inzetten: Photon versnelt veel SQL- en DataFrame-workloads, maar verhoogt het DBU-tarief. We meten per workload of het per saldo goedkoper is.
  • SQL-warehouses: de juiste grootte, auto-stop en serverless waar de opstarttijd of het gebruikspatroon daarom vraagt.
  • Efficiënte data: incrementeel verwerken waar mogelijk in plaats van zware volledige reloads.
  • Inkoop: vooraf ingekochte Databricks-capaciteit levert korting op ten opzichte van pay-as-you-go, mits het verbruik voorspelbaar is.

Inzicht met system tables

Grip begint met inzicht. Databricks registreert het verbruik in de system tables. Met consistente tags per team en project wordt elke DBU toe te wijzen. Een eenvoudig voorbeeld van een analyse die we in de eerste week uitvoeren:

-- DBU-verbruik per SKU en per team, laatste 30 dagen
SELECT
  sku_name,
  custom_tags['team']          AS team,
  ROUND(SUM(usage_quantity), 0) AS dbus
FROM system.billing.usage
WHERE usage_date >= current_date() - INTERVAL 30 DAYS
GROUP BY sku_name, custom_tags['team']
ORDER BY dbus DESC;

Door dit te combineren met de prijzen uit system.billing.list_prices en het gebruik van clusters en jobs, zie je direct waar de grootste kostenposten zitten en welke teams of jobs verantwoordelijk zijn.

De Databricks Cost Optimizer

  1. Inventariseren: met system tables en Azure Cost Management brengen we in kaart welke workspaces, clusters, jobs en warehouses de meeste kosten veroorzaken.
  2. Analyseren: we toetsen elke grote kostenpost op compute-type, clusterconfiguratie, runtijd en dataverwerking.
  3. Quick wins: auto-termination, verplaatsen van jobs naar job compute of serverless, opschonen van ongebruikte clusters en warehouses.
  4. Structureel verbeteren: cluster policies, tagging, incrementele verwerking, tabeloptimalisatie en inkoopadvies.
  5. Borgen: een kostendashboard op basis van system tables en budgetalerts.

Wat levert het op?

Lagere, voorspelbare Databricks-kosten en een kostenmodel dat per team of product toe te wijzen is. Goedkopere jobs door betere compute-keuzes en waar mogelijk incrementele verwerking. Afgedwongen afspraken via policies in plaats van handmatige controle, en een dashboard met het actuele verbruik.

Verder lezen

Vraag een kostenanalyse aan

Stijgt je Databricks-rekening harder dan je verwacht? We starten met een kostenanalyse op basis van je system tables. Vertel ons hoeveel workspaces je hebt en wat je maandelijkse verbruik ongeveer is; dan plannen we de intake.

    Naam

    E-mailadres

    Organisatie

    Je vraag of situatie

    Of mail direct naar info@powerdobs.nl.