Control plane, data plane, durable storage: structuring a managed search engine in Rust

How I split one search engine into three systems in Rust: Postgres for metadata, tantivy for the index, object storage for durability. The ordering a create request takes, and the quota race it avoids.