Cockroach Labs Estate economics What idle nodes, provisioned bytes and peak-sized bills cost, worked out from your estate.

Estate summary

  1. Nodes 1,500 baseline
  2. Avg CPU utilization 15.0% idle hardware
  3. Storage provisioned 6.0 TB 1.0 TB of data
  4. Est. monthly saving 0%

Step 1 of 8 - Virtualization

You're running an estate, not a cluster

Every cluster below was sized for its own peak, so every one of them idles.

100 standalone clusters, 1500 nodes in totalcluster-0110% CPU15 nodescluster-025% CPU15 nodescluster-0321% CPU15 nodescluster-0416% CPU15 nodescluster-058% CPU15 nodescluster-0613% CPU15 nodescluster-0710% CPU15 nodescluster-0817% CPU15 nodescluster-0914% CPU15 nodescluster-1012% CPU15 nodescluster-119% CPU15 nodescluster-1218% CPU15 nodescluster-1318% CPU15 nodescluster-1424% CPU15 nodescluster-1512% CPU15 nodescluster-1613% CPU15 nodescluster-1717% CPU15 nodescluster-1823% CPU15 nodescluster-1913% CPU15 nodescluster-2014% CPU15 nodescluster-2112% CPU15 nodescluster-2216% CPU15 nodescluster-2319% CPU15 nodescluster-2415% CPU15 nodescluster-2518% CPU15 nodescluster-2617% CPU15 nodescluster-2711% CPU15 nodescluster-2827% CPU15 nodescluster-2912% CPU15 nodescluster-3022% CPU15 nodescluster-3120% CPU15 nodescluster-321% CPU15 nodescluster-3314% CPU15 nodescluster-349% CPU15 nodescluster-3517% CPU15 nodescluster-3614% CPU15 nodescluster-3715% CPU15 nodescluster-3814% CPU15 nodescluster-3915% CPU15 nodescluster-4027% CPU15 nodescluster-418% CPU15 nodescluster-4214% CPU15 nodescluster-4322% CPU15 nodescluster-4414% CPU15 nodescluster-4513% CPU15 nodescluster-4610% CPU15 nodescluster-4713% CPU15 nodescluster-4820% CPU15 nodescluster-4911% CPU15 nodescluster-5010% CPU15 nodescluster-5119% CPU15 nodescluster-5214% CPU15 nodescluster-5312% CPU15 nodescluster-546% CPU15 nodescluster-5516% CPU15 nodescluster-5614% CPU15 nodescluster-5712% CPU15 nodescluster-5822% CPU15 nodescluster-595% CPU15 nodescluster-6014% CPU15 nodescluster-6116% CPU15 nodescluster-6218% CPU15 nodescluster-6321% CPU15 nodescluster-6413% CPU15 nodescluster-6521% CPU15 nodescluster-6621% CPU15 nodescluster-6726% CPU15 nodescluster-6811% CPU15 nodescluster-6915% CPU15 nodescluster-7015% CPU15 nodescluster-7124% CPU15 nodescluster-7210% CPU15 nodescluster-7310% CPU15 nodescluster-7413% CPU15 nodescluster-7514% CPU15 nodescluster-7619% CPU15 nodescluster-776% CPU15 nodescluster-788% CPU15 nodescluster-799% CPU15 nodescluster-809% CPU15 nodescluster-8123% CPU15 nodescluster-8214% CPU15 nodescluster-8315% CPU15 nodescluster-8410% CPU15 nodescluster-8527% CPU15 nodescluster-8622% CPU15 nodescluster-8718% CPU15 nodescluster-8817% CPU15 nodescluster-8914% CPU15 nodescluster-9021% CPU15 nodescluster-9118% CPU15 nodescluster-9218% CPU15 nodescluster-9310% CPU15 nodescluster-9411% CPU15 nodescluster-9515% CPU15 nodescluster-9611% CPU15 nodescluster-9723% CPU15 nodescluster-9811% CPU15 nodescluster-9918% CPU15 nodescluster-10016% CPU15 nodesEstate before consolidation100 separate clusters of around 15 nodes each, 1500 nodes in total, averaging 15.0% CPU utilization.
15%Average CPUAverage CPU CPU utilization15.0% of provisioned CPU is in use.

1,500 nodes running 1,800 vCPU of actual work.

The arithmetic, in full
StepWorkingResult
Provisioned today100 clusters of 15 nodes each, 1500 in total x 8 vCPU12000 vCPU
Mean demand12000 vCPU x 15.0% estate average utilization (per-cluster 0.5% to 27.5%, sd 5.2%)1800 vCPU
Aggregate peak1800.0 vCPU x (1 + (2.23 - 1) / sqrt(100)), a pooled peak-to-mean of 1.1232021 vCPU
Consolidated, sized once for the peakmax(3, ceil(2021.0 vCPU / (8 vCPU x 37.5% target))) = max(3, ceil(673.68)); the mean sits well under that peak674 nodes, averaging 33.4%
Auto-scaled through the daythe pool follows the pooled curve in whole nodes, 30 minutes behind it, holding its size for 2 hours before shrinking610 nodes on average, at 36.9% CPU
Utilization across the day33.7% to 38.4% against a 37.5% setpoint: the pool runs hot while it's a bucket behind a rise, and cool while the cooldown is still holding capacity after a peak33.7%-38.4%

Assumptions

  • 8 vCPU per node. Standalone clusters are drawn around 15 nodes, snapped to an odd number for quorum and held between 3 and 15; in this estate they're all 15, because a spread centred on the end of that range has nowhere to go, for 1500 nodes in total.
  • Each standalone cluster's CPU is a draw from a normal distribution centred on 15.0% and held between 0% and 100%; in this estate they run 0.5% to 27.5%, a 5.2-point standard deviation. The published band is 10-15% today against a 30-45% auto-scaled target, and this Private Host Cluster is set to 37.5%.
  • The Private Host Cluster floors at 3 nodes and must reach 674 at peak.
  • The auto-scaler sizes for what it saw 30 minutes ago and waits 2 hours before shrinking, so the pool averages 36.9% rather than sitting on its 37.5% setpoint.
  • Workloads are independent; consolidation moves where work runs, not how much there is.
What a virtual cluster gives an app team

Its own connection string, databases, schemas, users, roles and backups, and no visibility into the Private Host Cluster or any other virtual cluster.