Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Principle:Apache Druid Dimension Measure Configuration

From Leeroopedia


Knowledge Sources
Domains Visual_Exploration, Data_Modeling
Last Updated 2026-02-10 00:00 GMT

Overview

A visual query configuration pattern that maps columns to dimensions (split-by) and measures (aggregations) for visualization modules.

Description

Dimension and Measure Configuration provides the parameter input mechanism for visualization modules. Each module defines typed parameters that users configure through two UI panels:

  • ControlPane: Renders parameter-specific input controls (column pickers, time bucket selectors, measure selectors, boolean toggles). Each parameter type (column, columns, measure, measures, option, boolean, string, number) has a dedicated editor widget.
  • ResourcePane: Shows all available columns and measures from the QuerySource, organized by type. Users can drag columns into dimension or measure parameter slots, or use context menus to apply quick actions (filter, show, split, aggregate).

The configured parameters drive SQL query generation — dimensions become GROUP BY columns, measures become aggregate expressions in the SELECT clause.

Usage

Use this pattern after datasource introspection and module selection. The control and resource panes are the primary interaction mechanism for building visualizations without writing SQL.

Theoretical Basis

Dimension/measure configuration follows a parameter binding pattern:

ModuleDefinition.parameters = {
  splitColumn: { type: 'column', ... },
  measures: { type: 'measures', ... },
  timeBucket: { type: 'option', options: ['PT1M', 'PT5M', 'PT1H', 'P1D'] },
  showColumn: { type: 'columns', ... },
}

User selections:
  splitColumn = 'country'    → GROUP BY "country"
  measures = [SUM(value)]    → SELECT SUM("value") AS sum_value
  timeBucket = 'PT1H'        → TIME_FLOOR(__time, 'PT1H')

Related Pages

Implemented By

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment