risingwavelabs / risingwave

Best-in-class stream processing, analytics, and management. Perform continuous analytics, or build event-driven applications, real-time ETL pipelines, and feature stores in minutes. Unified streaming and batch. PostgreSQL compatible.
https://go.risingwave.com/slack
Apache License 2.0
6.87k stars 569 forks source link

feat: optimize compaction strategy #15628

Open Little-Wallace opened 6 months ago

Little-Wallace commented 6 months ago

Is your feature request related to a problem? Please describe.

When user try to create a big MView, it will keep generate a lot of data to RisingWave. If our system does not compact these data to bottom level, it may cause a back-pressure and let create job stop.

Describe the solution you'd like

There are many problems waiting us to solve:

Describe alternatives you've considered

No response

Additional context

No response

Little-Wallace commented 4 months ago

optimize each state-table in one group as separate LSM tree so that we can calculate compaction score for each of them. : https://github.com/risingwavelabs/risingwave/pull/16919