Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EPIC: Statistics improvements #5

Open
edmondop opened this issue Jan 21, 2025 · 0 comments
Open

EPIC: Statistics improvements #5

edmondop opened this issue Jan 21, 2025 · 0 comments
Labels
enhancement New feature or request

Comments

@edmondop
Copy link
Owner

Is your feature request related to a problem or challenge?

Is your feature request related to a problem or challenge?
We would like to use "statistics" in our project for transformations that rely on the statisics being "correct" (e.g. that the there are no values outside the min and max range).

DataFusion has several optimizations like this too that rely on statistics being correct such as skipping file scans with limits such as in https://github.com/apache/arrow-datafusion/blob/e54894c39202815b14d9e7eae58f64d3a269c165/datafusion/core/src/datasource/statistics.rs#L34-L33. There are also suggestions of additional such optimizations like apache#6672

However the current Statistics code seems to make it hard to manage the 'are the statistics exact and can they be guaranteed for transformations' (@crepererum noted this quite some time ago on apache#5613). This has recently lead to several bugs such as

apache#8049
apache#8094
We would like to make it clearer what is known and what is an estimate is know (e.g. the min/max of row counts may be known, but the actual value may be an estimate after a filter). This is described in more detail on apache#8078

As we began exploring this concept we ran into several issues with Statistics and I think it is getting big enough to warrant its own tracking epic

Related items

apache#8110

apache#8111

apache#8295

apache#8229

apache#8228

apache#8078

apache#8133

apache#8099

apache#7490

apache#5614

apache#5613

apache#8309

apache#2976

apache#8334

apache#8335

apache#7925

apache#8342
Pruning Improvements (maybe should be its own epic)

apache#7869

apache#8376
Describe the solution you'd like
No response

Describe alternatives you've considered
No response

Additional context
This is somewhat related

Describe the solution you'd like

No response

Describe alternatives you've considered

No response

Additional context

No response

@edmondop edmondop added the enhancement New feature or request label Jan 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant