/plushcap/analysis/mux/mux-migrating-to-badgerdb

Scaling data processing with an embedded key-value store: insights from our migration to BadgerDB

What's this blog post about?

The Mux Data team migrated from a shared, distributed Riak key-value (KV) store to the BadgerDB embedded KV store, resulting in lower operational costs, boosted scalability, and reduced latency. This change was made due to challenges with scaling up and down in response to changing load on their databases. The team found that managing the number of Riak nodes was a manual process and that it led to poor utilization of resources. They also experienced issues with stream processing latency as Riak often became a write-throughput bottleneck during large live events. By scoping the cache to a Kafka topic partition, they were able to follow a "Shared Nothing" architecture, which allowed them to optimize for the performance of frequently occurring activities and reduce operational costs. The team chose BadgerDB due to its high performance writes and reads, control over garbage collection frequency, granular data layout on disk, and compression capabilities. Since migrating from Riak to BadgerDB, they have seen significantly lower latency and been able to handle larger-scale events without any scaling concerns.

Company
Mux

Date published
July 6, 2023

Author(s)
Scott Kidder

Word count
2019

Language
English

Hacker News points
3


By Matt Makai. 2021-2024.