Rust in Production

InfluxData with Paul Dix

16 snips
Dec 14, 2023
Paul Dix, the CTO of InfluxData, discusses the inception of InfluxDB, a powerful open-source time series database. He shares the challenges faced in early development and the pivotal shift from Scala to Go. Dix highlights the advantages of transitioning to Rust, including enhanced performance and error handling. He elaborates on the significant upgrades from InfluxDB version 1.0 to 2.0, along with strategies for managing high data volumes. The importance of community contributions and ongoing learning in Rust completes this insightful conversation.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
ANECDOTE

Learning Rust By Building An Interpreter

  • Paul learned Rust deliberately by reimplementing a toy interpreter and reading books until the borrow checker clicked.
  • He became convinced Rust was worth exploring after async/await matured in 2019.
ADVICE

Reuse Mature Open-Source Building Blocks

  • Evaluate and reuse mature open-source components instead of rewriting everything from scratch.
  • Paul picked DataFusion (Rust) rather than porting a large C/C++ SQL engine into their stack.
ADVICE

Adopt Async Rust For IO-Heavy Servers

  • Use Async Rust for high-concurrency IO workloads to avoid blocking many network and object-store calls.
  • Paul credits Tokio and widespread async patterns for simplifying networked, concurrent server code.
Get the Snipd Podcast app to discover more snips from this episode
Get the app