Principle:Apache Druid Visual Filter Configuration
| Knowledge Sources | |
|---|---|
| Domains | Visual_Exploration, Data_Filtering |
| Last Updated | 2026-02-10 00:00 GMT |
Overview
A visual filter building pattern that constructs SQL WHERE clauses through form-based interactions for exploratory data analysis.
Description
Visual Filter Configuration provides a non-SQL interface for building WHERE clause conditions in the Explore view. Users create filters through a form that supports:
- Contains/Not contains: Substring matching on string columns
- Regex: Regular expression matching
- Values: Exact multi-value selection (IN clause)
- Comparison: Numeric/time range comparisons (>, <, >=, <=, =, !=)
- Time-relative: Relative time filters (last N hours/days/months)
- Custom: Freeform SQL expression
Each filter condition is represented as a FilterPattern and converted to a SqlExpression for the WHERE clause. Multiple filters are combined with AND logic.
Usage
Use this pattern during visual data exploration when the user wants to narrow the dataset without writing SQL. Filters are applied to all visualization modules simultaneously.
Theoretical Basis
Visual filter configuration follows a pattern-to-SQL compilation pattern:
FilterPattern types:
contains(column, value) → column LIKE '%value%'
regex(column, pattern) → REGEXP_LIKE(column, pattern)
values(column, [v1, v2]) → column IN ('v1', 'v2')
comparison(column, op, v) → column op v
timeRelative(n, unit) → __time >= CURRENT_TIMESTAMP - INTERVAL 'n' unit
Combination:
[filter1, filter2, ...] → filter1 AND filter2 AND ...