For your vector database, I'd recommend:
Start with WAL-only checkpoints - much more efficient
Use compression - LZ4 or similar for operations
Create checkpoints frequently - every 1000 operations or 5 minutes
Implement incremental recovery - faster than full replay
Consider hybrid approach - WAL checkpoints + occasional full snapshots