matrixorigin / matrixorigin/matrixone
perf: query execution performance improvements
- Dominant language
- Go
- Stars
- 1.9k
- Forks
- 311
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 768
Description
## Summary
Umbrella issue for tracking query execution performance improvements in MatrixOne, covering both AP and TP workloads.
## AP (Analytical) Workloads
### Computation
- Branchless arithmetic kernels for hot paths
- Type promotion avoidance (keep narrow types when possible)
- Batch operation kernels with pre-computed constants
- SIMD intrinsics for vectorized computation (currently batch-level only)
### Memory
- Zero-copy data paths (reduce unnecessary row copying / shuffling)
- Reduce memmove/memclr in operator pipelines
### Aggregation
- Lightweight null tracking (count-based instead of per-row bitmap checks)
- Specialized hashmap paths for small fixed-width keys
- Reduce varlena key construction overhead
### I/O
- I/O and computation interleaving (prefetch / async decompression)
- Decompression overhead reduction
- Syscall batching
### Filter & Scan
- Short-circuit evaluation for selective predicates
- Skip row copying when selectivity is high (in-place bitmap filtering)
### Optimizer Rules
- Cost model accuracy improvements
- Statistics estimation for complex predicates
- Group join optimization (combine join + group-by into single operator)
- Delimitation join pushdown
- Redundant cast elimination
## TP (Transactional) Workloads
### Point Lookup
- Short-path execution for simple point queries (bypass full optimizer)
- Index-only scans for covering indexes
### Write Path
- WAL write coalescing
- Lock-free conflict detection for non-overlapping writes
### Concurrency
- Reduce transaction coordination overhead for single-shard operations
- Optimistic concurrency control improvements
### Latency
- Reduce plan compilation time for simple queries
- Fast-path for single-table DML without cross-node coordination
Contributor guide
Assessment
This issue has not been assessed yet.