GopherCon India 2017
Deep dive into Vulcan, DigitalOcean’s Prometheus-compatible distributed timeseries database written in Go.
Outline (from the deck)
- Why Go for NoSQL/NewSQL (Prometheus, Cockroach, Influx, etcd…)
- Timeseries properties: write-heavy, compressible, lossy-friendly
- From hash-sharded Prometheus to a pipelined microservice architecture
- Kafka ingestion, Cassandra/chunk storage, schema evolution (V1 series → V2 chunks + index)
- In-memory query engine and downsampling
- Hard numbers we designed for: multi-Gbit/s, 100k writes/s, tens of TB
Links
- Speaker Deck
- Open source context: digitalocean/vulcan (historical)