I built Foyer: a Rust hybrid cache that slashes S3 latency
8 months ago
- #S3
- #Rust
- #caching
- S3在现代数据系统中被广泛使用,因其无限容量、持久性和低成本而备受青睐,但存在高延迟问题。
- 流式数据库RisingWave因实时处理需求,在使用S3时面临显著的延迟挑战。
- Foyer是RisingWave用Rust开发的混合缓存库,通过结合内存与磁盘缓存来降低S3延迟。
- Foyer架构包含低延迟访问的内存缓存、大容量的磁盘缓存,以及协调两层资源的统一管理器。
- Foyer支持两种模式:混合模式(内存+磁盘)和纯内存模式,并提供一致的API接口。
- 通过Foyer的混合缓存,可减少S3请求、降低延迟与成本,同时保持扩展性和数据持久性。
- RisingWave将Foyer深度集成至存储层,用于管理磁盘I/O、数据预取和缓存预热。
- Foyer的设计使RisingWave能平衡S3的成本优势与流处理所需的低延迟。
- 混合缓存对基于S3等对象存储的实时工作负载至关重要,使其能支撑高吞吐量应用场景。