Teams | Collaboration | Customer Service | Project Management


DynamoDB Key Partition Strategies for SaaS

Amazon DynamoDB is a fully managed NoSQL database service built for scalability and high performance. It’s one of the most popular databases used at SaaS companies, including Courier. We selected DynamoDB for the same reasons as everyone else: autoscaling, low cost, zero down time. However, at scale, DynamoDB can present serious performance issues.

Hacking PostgreSQL Internals to Deliver Push Notifications

PostgreSQL announced their latest version (PostgreSQL 14) on September 30th, which includes a bunch of features like pipeline API, gathering statistics on replication slots, query parallelism improvements and so on. While the origin of PostgreSQL can be traced back to 1986, it has been in active development for the past 30 years.

Etched in memory: How we designed our DBaaS backup and recovery process

In this blog (Part III), we will discuss the motivation and high-level architecture of the DBaaS Backup and Recovery procedure for databases hosted on DBaaS. This blog discusses the motivations behind the Backup/Recovery process and it’s high-level design and architecture of the various components that constitute it.] These are the high-level motivations/goals for the Backup and Recovery design for DBaaS. There are two major design components.

DBaaS origins: The making of a self-hosted DB solution at Freshworks

Teams at Freshworks primarily use MySQL for their database needs. Freshworks being an AWS shop, RDS MySQL has been our primary, go-to solution. Sometime back a team was formed and tasked with building a self-hosted DB solution. We called ourselves the DBaaS (Database as a service) team and started with a DBaaS solution for MySQL. In this blog post (part I of the series) we discuss the motivation and high-level architecture of the DBaaS solution.

Tuning MySQL and the Ghost of Index Merge Intersection

Optimizing SQL queries is always fun—except when it isn’t. If you’re a MySQL veteran and have read the title, you already know where this is heading 😉. In that case, allow me to regale the uninitiated reader. This is the story of an (apparently) smart optimization to a SQL query that backfired spectacularly—and how we finally fixed it. It started off with a customer noticing that a SQL query was running slowly in their environment.

New SQL databases integration - easily add metrics from MySQL, PostgreSQL and Redshift databases to your dashboard

For all the many, many tools and services your business might be using day-to-day, there’s a good chance your most important business metrics are stored in a humble database. First developed in the late 1970s, SQL databases remain the de facto medium for logging and storing important business information, from sign-ups to stock levels - important business information that would be useful to display on a TV dashboard if only there was an easy way to do so...