264 karma · joined October 29, 2022
The SQL optimizations like predicate pushdown and early projection are all there already in the dataframe API, similar to Polars.
time series target release by April this year. main challenge is supporting them in the SQL API -- execution engine support is already done
Secondly quokka tries to be fault tolerant. I.e. it can handle worker failures intra query and not have to start over. This is quite important in real world spark deployments with thousands of nodes running many hours. AFAIK this is not well supported by most spark alternatives.
Finally quokka has a much stronger focus on time series data analytics. It is meant to excel at workloads like range joins and asof/PIT joins used for feature engineering. (This part isn't too stable yet so is not open source)
This means quokka optimizes on a different point in the UDF/performance/fault tolerance tradeoff space than something like arrow ballista or starrocks, which I think are pure performance plays
Quokka supports checkpointing but does not enable that by default to prevent this common problem from killing normal operation performance.