Traditionally, MySQL has been used to power most of the backend services at Bolt. We’ve designed our schemas in a way that they’re sharded into different MySQL clusters. Each MySQL cluster contains a subset of data and consists of one primary and multiple replication nodes.

Once data is persisted to the database, we use the Debezium MySQL Connector to capture data change events and send them to Kafka. This gives us an easy and reliable way to communicate changes between back-end microservices.

Vitess at Bolt

Bolt has grown considerably over the past few years, and so did the volume of data written to…

Kewei Shang

Sr. Software Engineer at Bolt. Author of Debezium Vitess Kafka Connector. Focusing on Kafka, Change Data Capture, and real-time analytics. Twitter: @keweishang

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store