Skip to content

Use pipeline aggregation when data is implicitly sorted by group-by keys #19655

@NGA-TRAN

Description

@NGA-TRAN

Is your feature request related to a problem or challenge?

We have a use case where the query groups by columns that are implicitly sorted, and we would like DataFusion to recognize that ordering so it can apply pipeline aggregation.

Consider the following query:

SELECT ...
FROM t
GROUP BY a, b;

In our data, the input is explicitly sorted only by a. However, b is always unique within each (a, b) pair, which means the data is implicitly sorted by (a, b) even though only a appears in the physical sort order.

If DataFusion could infer or be informed that the data is effectively sorted by (a, b), it would be able to use pipeline aggregation, resulting in better performance.

This is related to #16899

Describe the solution you'd like

We need to define and propagate the uniqueness-based sort order.

Describe alternatives you've considered

No response

Additional context

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions