# Inefficient BI queries driving excessive compute usage

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/inefficient-bi-queries-driving-excessive-compute-usage

Business Intelligence dashboards and ad-hoc analyst queries frequently drive Databricks compute usage - especially when: Dashboards are auto-refreshed...

By: Scott Shulman

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

# Inefficient BI Queries Driving Excessive Compute Usage

[Scott Shulman](https://www.linkedin.com/in/shulmanscott/)

Automation and FinOps Evangelist @ Arrow Electronics

Databricks service

[Interactive Clusters](https://www.pointfive.co/efficiency-hub/cloud-services/interactive-clusters)

Category

[Compute](https://www.pointfive.co/efficiency-hub/service-category/compute)

Reference

CER-0216

Type

Inefficient Architecture

## Explanation

Why the waste happens and who it affects.

Business Intelligence dashboards and ad-hoc analyst queries frequently drive Databricks compute usage - especially when:

- Dashboards are auto-refreshed too frequently

- Queries scan full datasets instead of leveraging filtered views or materialized tables

- Inefficient joins or large broadcast operations are used

- Redundant or exploratory queries are triggered during interactive exploration This often results in clusters staying active for longer than necessary, or being autoscaled up to handle inefficient workloads, leading to unnecessary DBU consumption.

## Billing model

The pricing dimensions that drive this cost.

Databricks usage is billed per DBU (Databricks Unit) per hour, depending on the cluster type and size. BI dashboards and ad-hoc SQL queries can keep interactive or all-purpose clusters running, consuming DBUs even when queries are poorly optimized or overly frequent.

## How to detect

6 checks to find it in your estate.

- Review Databricks SQL query history (or the system.query.history table) and interactive cluster logs to identify:

- Query patterns that scan large volumes of data repeatedly

- Dashboards with auto-refresh settings that exceed business needs

- Repeated ad-hoc queries with similar structure but different filters

- Long-running queries due to unoptimized joins, filters, or aggregations

- High DBU usage attributed to BI users or SQL warehouses with low result value

## How to fix

5 ways to remove the waste.

- Refactor BI queries to limit scan scope and reduce complexity

- Materialize frequently used intermediate results into temp or Delta tables

- Reduce auto-refresh frequency of dashboards unless real-time data is essential

- Educate analyst teams on query efficiency and impact on backend costs

- Enable query result caching or switch to serverless SQL warehouses if feasible

## Documentation

Vendor references for pricing and configuration.

- [Azure Databricks Pricing  azure.microsoft.com](https://azure.microsoft.com/en-us/pricing/details/databricks/)

- [Power BI with Azure Databricks  learn.microsoft.com](https://learn.microsoft.com/en-us/azure/databricks/partners/bi/power-bi/)

- [Query history  learn.microsoft.com](https://learn.microsoft.com/en-us/azure/databricks/sql/user/queries/query-history)

- [Query history system table reference  learn.microsoft.com](https://learn.microsoft.com/en-us/azure/databricks/admin/system-tables/query-history)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- Databricks Workflows  CER-0528

### [Always-On Structured Streaming Jobs for Batch-Tolerant Databricks Workloads](https://www.pointfive.co/efficiency-hub/inefficiencies/always-on-structured-streaming-jobs-for-batch-tolerant-databricks-workloads)

Structured Streaming jobs are often deployed as 24x7 jobs - a continuous job trigger or a run that never ends - so that ingestion from Kafka, Auto Loader or Delta sources is processed as soon as data lands. That keeps job compute running...

Compute

- Databricks Workflows  CER-0114

### [Inefficient Use of Job Clusters in Databricks Workflows](https://www.pointfive.co/efficiency-hub/inefficiencies/inefficient-use-of-job-clusters-in-databricks-workflows)

When multiple tasks within a workflow are executed on separate job clusters - despite having similar compute requirements - organizations incur unnecessary overhead. Each cluster must initialize independently, adding latency and cost. This...

Compute

- Databricks Clusters  CER-0098

### [On-Demand-Only Configuration for Non-Production Databricks Clusters](https://www.pointfive.co/efficiency-hub/inefficiencies/on-demand-only-configuration-for-non-production-databricks-clusters)

In non-production environments - such as development, testing, and experimentation-many teams default to on-demand nodes out of habit or caution. However, Databricks offers built-in support for using spot instances safely. Its job...

Compute

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

