Introducing Crunchy Data Warehouse: A next-generation Postgres-native data warehouse. Crunchy Data Warehouse Learn more

Missive | A Crunchy Case Study

Missive Migrates to Crunchy Bridge for a Big Performance Boost

performance increase
1.8x
migration
10 minute

Missive is a productivity app aimed at team inbox and chat tools, serving companies across the globe and growing by leaps and bounds each year. Its database has grown to over three terabytes and the company was spending quite a bit of its internal resources managing the database. They were particularly burdened with memory and IOPS issues and wanted to scale the CPU separately from its storage needs. They started using Heroku private spaces but weren’t happy about the cost increase.

Missive also knew they were coming up against Heroku’s 4TB disk limit. While it's not a hard line, customers on managed Postgres around 4TB know that they will need to find a new provider before too long.

Missive started looking at database providers and were excited to learn that Crunchy Bridge offered CPU separate from storage so they could add more CPU easily.

Crunchy gives us much much more CPU for our dollar.

Rafael MassonCTO, Missive

Crunchy Bridge vs RDS

Missive took a look at RDS for fully managed Postgres and realized early in their search that they wanted a more hands on approach with their new vendor.

We looked at RDS. Yes, it is fully managed too. But I really wanted a more hands-on approach. Having a close relationship with the Crunchy Bridge team was important to me. The support is what distinguishes you the most compared to other providers.

Rafael MassonCTO, Missive

Missive was also excited that Crunchy Bridge is cloud agnostic since they may have a replica in the future and possibly analytics running on Google Cloud. “We don’t know about everything coming in the next few years but we’re excited to be able to leverage Google Cloud as well,” said Rafael.

10 Minute Migration

Missive was also concerned that moving their database to a new provider would result in a lot of downtime. Luckily, Crunchy Bridge has built-in tools for streaming data from their original database to the new location. So a migration can be as simple as stopping the old database and pointing their application at the new one.

The big selling point was the migration. For most businesses, a complete shutdown of several hours is just a non-starter. When I realized Crunchy could get us migrated in just a few seconds, I was really excited.

Rafael MassonCTO, Missive

Right around the time Missive was planning its migration to Crunchy Bridge, the support team let them know about checking collations, something we also published on the Crunchy Data blog, since reindexing during a migration might be a time consuming task. Rafael said that our support team’s proactive work on collations with them, along with other common migration tasks, saved them several hours.

Crunchy Data and Missive ended up migrating 3.3 TB in less than 10 minutes of total downtime. The Crunchy Data support team was on call, helping one-on-one to make sure everything went according to plan.

CPU and IOPS Issues Resolved

Rafael also noted that before working with Crunchy Data, the vacuum process was a struggle. Autovacuum would kick off at peak hours using critical resources at the wrong time. To troubleshoot, Missive wrote custom code that manually vacuums tables at off-hours to try to mitigate this. But with Crunchy Bridge, they’re not having any issues like this anymore. Now they have more CPU and a larger burst capacity for IOPS. Prior to Crunchy we estimate they had 9k IOPS and now they have around 30k.

Missive often works with Crunchy Data support and has opened several tickets to try to understand the IOPS and the metrics behind it. Rafael notes that, “I’ve always felt reassured by support.”

Missive is now in a much better place in terms of performance.

CPU wise we’re in a much better place. Our load average is rarely above 0.5. We have much more leeway for scaling and welcoming future customers.

Rafael MassonCTO, Missive