Skip to main content

State Compression

Compression techniques for efficient state storage using LZ4 and zlib.

Overview

State compression reduces storage costs and improves performance for large states.

Compression Types

See State Persistence for detailed compression configuration.

  • Fast compression/decompression
  • Good compression ratio
  • Suitable for most use cases

Zlib Compression

  • Higher compression ratio
  • Slower than LZ4
  • Best for long-term storage

Configuration

from recoagent.state import RedisStatePersistence, CompressionType

# LZ4 compression
persistence = RedisStatePersistence(
redis_url="redis://localhost:6379/0",
compression_type=CompressionType.LZ4
)

# Zlib compression
persistence = RedisStatePersistence(
redis_url="redis://localhost:6379/0",
compression_type=CompressionType.ZLIB
)

Best Practices

  1. Use LZ4 for Speed: Best balance of speed and compression
  2. Use Zlib for Storage: When storage is more important than speed
  3. Monitor Performance: Track compression ratios