Ensure Databricks workspaces are non-trial SKUs for production workloads#
Performance Efficiency · Databricks · Rule · 2024_03 · Critical
Ensure Databricks workspaces are non-trial SKUs for production workloads.
Description#
An Azure Databricks workspace has three available SKU types to support the compute demands of a workspace.
The Trial SKU is a time-bound offer which has feature and compute limitations, making it unsuitable for production workloads. NB - The Trial SKU is a strong candidate for non-production or innovation workloads which can accept the tiers constraints.
Recommendation#
Consider configuring Databricks workspaces to use either Standard or Premium tiers, dependant on the workload demands and non-functional requirements (NFRs).
Examples#
Configure with Azure template#
To deploy workspaces that pass this rule:
- Set the sku.nameto a a non-trial tier, i.e.standard.
For example:
{
  "type": "Microsoft.Databricks/workspaces",
  "apiVersion": "2023-02-01",
  "name": "[parameters('name')]",
  "location": "[parameters('location')]",
  "sku": {
    "name": "standard"
  },
  "properties": {
    "managedResourceGroupId": "[subscriptionResourceId('Microsoft.Resources/resourceGroups', 'example-mg')]",
    "publicNetworkAccess": "Disabled",
    "parameters": {
      "enableNoPublicIp": {
        "value": true
      }
    }
  }
}
Configure with Bicep#
To deploy workspaces that pass this rule:
- Set the sku.nameto a a non-trial tier, i.e.standard.
For example:
resource databricks 'Microsoft.Databricks/workspaces@2023-02-01' = {
  name: name
  location: location
  sku: {
    name: 'standard'
  }
  properties: {
    managedResourceGroupId: managedRg.id
    publicNetworkAccess: 'Disabled'
    parameters: {
      enableNoPublicIp: {
        value: true
      }
    }
  }
}
Links#
- PE:03 Selecting services
- Databricks Setup
- Databricks Tier Features
- Databricks Workspace API
- Azure Databricks architecture overview
- Azure resource deployment