Federico Ramallo

Jul 30, 2024

How Stripe Achieved 99.999% Uptime with DocDB

Federico Ramallo

Jul 30, 2024

How Stripe Achieved 99.999% Uptime with DocDB

Federico Ramallo

Jul 30, 2024

How Stripe Achieved 99.999% Uptime with DocDB

Federico Ramallo

Jul 30, 2024

How Stripe Achieved 99.999% Uptime with DocDB

Federico Ramallo

Jul 30, 2024

How Stripe Achieved 99.999% Uptime with DocDB

Stripe's engineering team has developed an advanced database infrastructure to support its vast and growing operations, ensuring high reliability and scalability. At the core of this infrastructure is DocDB, a database-as-a-service (DBaaS) built on MongoDB Community. DocDB serves over five million queries per second, supporting Stripe's products with low latency and diverse access to petabytes of financial data across thousands of database shards.

The key innovation within DocDB is the Data Movement Platform, designed to handle horizontal scaling and online data migrations without downtime. This platform enables Stripe to efficiently manage and distribute data across database shards, maintaining performance and availability even during traffic surges. The Data Movement Platform supports the migration of data chunks from source shards to target shards, ensuring data consistency, completeness, and minimal performance impact on the source shards.

When Stripe launched in 2011, MongoDB was chosen for its developer productivity and flexibility in handling large volumes of real-time data. Over time, Stripe customized its deployment to create a robust and scalable database infrastructure. This involved developing a fleet of database proxy servers that enforce reliability, scalability, admission control, and access control, using sharding to distribute data across thousands of smaller database shards.

The Data Movement Platform comprises several components, including the Coordinator, which orchestrates the various steps involved in data migrations. These steps include chunk migration registration, bulk data import, asynchronous replication, correctness checks, traffic switching, and chunk migration deregistration.

During chunk migration, the system registers the intent to move data, builds indexes on target shards, and uses a snapshot of the data at a specific time to perform bulk data import. Asynchronous replication ensures that any changes made to the source shards after the snapshot are also reflected in the target shards. A correctness check confirms the data integrity before switching traffic from the source to the target shards. The traffic switch protocol involves updating version tokens to ensure smooth redirection of reads and writes to the target shards, minimizing downtime.

The Data Movement Platform has significantly improved Stripe's database infrastructure utilization. In 2023, Stripe used this platform to migrate 1.5 petabytes of data, consolidating thousands of underutilized databases and reducing the total number of DocDB shards by approximately three-quarters. This not only enhanced efficiency but also allowed for seamless upgrades to newer versions of MongoDB without the need for intermediate steps.

Looking ahead, Stripe is working on further innovations, such as a heat management system to balance data across shards based on size and throughput, and shard autoscaling to dynamically respond to changes in traffic patterns. These developments aim to ensure that Stripe's database infrastructure continues to scale effectively with the growth of the internet economy.

Stripe's commitment to solving complex distributed systems problems underpins its ability to maintain a 99.999% uptime and handle a total payments volume of $1 trillion in 2023. The engineering team remains focused on building a reliable and scalable foundation that supports Stripe's diverse and expanding product offerings.

In summary, Stripe's advanced database infrastructure, centered around DocDB and the Data Movement Platform, exemplifies the company's dedication to reliability, scalability, and innovation. By continuously evolving its infrastructure, Stripe ensures that it can meet the demands of its growing user base and maintain its position as a leader in the financial technology industry.

Source

Stripe's engineering team has developed an advanced database infrastructure to support its vast and growing operations, ensuring high reliability and scalability. At the core of this infrastructure is DocDB, a database-as-a-service (DBaaS) built on MongoDB Community. DocDB serves over five million queries per second, supporting Stripe's products with low latency and diverse access to petabytes of financial data across thousands of database shards.

The key innovation within DocDB is the Data Movement Platform, designed to handle horizontal scaling and online data migrations without downtime. This platform enables Stripe to efficiently manage and distribute data across database shards, maintaining performance and availability even during traffic surges. The Data Movement Platform supports the migration of data chunks from source shards to target shards, ensuring data consistency, completeness, and minimal performance impact on the source shards.

When Stripe launched in 2011, MongoDB was chosen for its developer productivity and flexibility in handling large volumes of real-time data. Over time, Stripe customized its deployment to create a robust and scalable database infrastructure. This involved developing a fleet of database proxy servers that enforce reliability, scalability, admission control, and access control, using sharding to distribute data across thousands of smaller database shards.

The Data Movement Platform comprises several components, including the Coordinator, which orchestrates the various steps involved in data migrations. These steps include chunk migration registration, bulk data import, asynchronous replication, correctness checks, traffic switching, and chunk migration deregistration.

During chunk migration, the system registers the intent to move data, builds indexes on target shards, and uses a snapshot of the data at a specific time to perform bulk data import. Asynchronous replication ensures that any changes made to the source shards after the snapshot are also reflected in the target shards. A correctness check confirms the data integrity before switching traffic from the source to the target shards. The traffic switch protocol involves updating version tokens to ensure smooth redirection of reads and writes to the target shards, minimizing downtime.

The Data Movement Platform has significantly improved Stripe's database infrastructure utilization. In 2023, Stripe used this platform to migrate 1.5 petabytes of data, consolidating thousands of underutilized databases and reducing the total number of DocDB shards by approximately three-quarters. This not only enhanced efficiency but also allowed for seamless upgrades to newer versions of MongoDB without the need for intermediate steps.

Looking ahead, Stripe is working on further innovations, such as a heat management system to balance data across shards based on size and throughput, and shard autoscaling to dynamically respond to changes in traffic patterns. These developments aim to ensure that Stripe's database infrastructure continues to scale effectively with the growth of the internet economy.

Stripe's commitment to solving complex distributed systems problems underpins its ability to maintain a 99.999% uptime and handle a total payments volume of $1 trillion in 2023. The engineering team remains focused on building a reliable and scalable foundation that supports Stripe's diverse and expanding product offerings.

In summary, Stripe's advanced database infrastructure, centered around DocDB and the Data Movement Platform, exemplifies the company's dedication to reliability, scalability, and innovation. By continuously evolving its infrastructure, Stripe ensures that it can meet the demands of its growing user base and maintain its position as a leader in the financial technology industry.

Source

Stripe's engineering team has developed an advanced database infrastructure to support its vast and growing operations, ensuring high reliability and scalability. At the core of this infrastructure is DocDB, a database-as-a-service (DBaaS) built on MongoDB Community. DocDB serves over five million queries per second, supporting Stripe's products with low latency and diverse access to petabytes of financial data across thousands of database shards.

The key innovation within DocDB is the Data Movement Platform, designed to handle horizontal scaling and online data migrations without downtime. This platform enables Stripe to efficiently manage and distribute data across database shards, maintaining performance and availability even during traffic surges. The Data Movement Platform supports the migration of data chunks from source shards to target shards, ensuring data consistency, completeness, and minimal performance impact on the source shards.

When Stripe launched in 2011, MongoDB was chosen for its developer productivity and flexibility in handling large volumes of real-time data. Over time, Stripe customized its deployment to create a robust and scalable database infrastructure. This involved developing a fleet of database proxy servers that enforce reliability, scalability, admission control, and access control, using sharding to distribute data across thousands of smaller database shards.

The Data Movement Platform comprises several components, including the Coordinator, which orchestrates the various steps involved in data migrations. These steps include chunk migration registration, bulk data import, asynchronous replication, correctness checks, traffic switching, and chunk migration deregistration.

During chunk migration, the system registers the intent to move data, builds indexes on target shards, and uses a snapshot of the data at a specific time to perform bulk data import. Asynchronous replication ensures that any changes made to the source shards after the snapshot are also reflected in the target shards. A correctness check confirms the data integrity before switching traffic from the source to the target shards. The traffic switch protocol involves updating version tokens to ensure smooth redirection of reads and writes to the target shards, minimizing downtime.

The Data Movement Platform has significantly improved Stripe's database infrastructure utilization. In 2023, Stripe used this platform to migrate 1.5 petabytes of data, consolidating thousands of underutilized databases and reducing the total number of DocDB shards by approximately three-quarters. This not only enhanced efficiency but also allowed for seamless upgrades to newer versions of MongoDB without the need for intermediate steps.

Looking ahead, Stripe is working on further innovations, such as a heat management system to balance data across shards based on size and throughput, and shard autoscaling to dynamically respond to changes in traffic patterns. These developments aim to ensure that Stripe's database infrastructure continues to scale effectively with the growth of the internet economy.

Stripe's commitment to solving complex distributed systems problems underpins its ability to maintain a 99.999% uptime and handle a total payments volume of $1 trillion in 2023. The engineering team remains focused on building a reliable and scalable foundation that supports Stripe's diverse and expanding product offerings.

In summary, Stripe's advanced database infrastructure, centered around DocDB and the Data Movement Platform, exemplifies the company's dedication to reliability, scalability, and innovation. By continuously evolving its infrastructure, Stripe ensures that it can meet the demands of its growing user base and maintain its position as a leader in the financial technology industry.

Source

Stripe's engineering team has developed an advanced database infrastructure to support its vast and growing operations, ensuring high reliability and scalability. At the core of this infrastructure is DocDB, a database-as-a-service (DBaaS) built on MongoDB Community. DocDB serves over five million queries per second, supporting Stripe's products with low latency and diverse access to petabytes of financial data across thousands of database shards.

The key innovation within DocDB is the Data Movement Platform, designed to handle horizontal scaling and online data migrations without downtime. This platform enables Stripe to efficiently manage and distribute data across database shards, maintaining performance and availability even during traffic surges. The Data Movement Platform supports the migration of data chunks from source shards to target shards, ensuring data consistency, completeness, and minimal performance impact on the source shards.

When Stripe launched in 2011, MongoDB was chosen for its developer productivity and flexibility in handling large volumes of real-time data. Over time, Stripe customized its deployment to create a robust and scalable database infrastructure. This involved developing a fleet of database proxy servers that enforce reliability, scalability, admission control, and access control, using sharding to distribute data across thousands of smaller database shards.

The Data Movement Platform comprises several components, including the Coordinator, which orchestrates the various steps involved in data migrations. These steps include chunk migration registration, bulk data import, asynchronous replication, correctness checks, traffic switching, and chunk migration deregistration.

During chunk migration, the system registers the intent to move data, builds indexes on target shards, and uses a snapshot of the data at a specific time to perform bulk data import. Asynchronous replication ensures that any changes made to the source shards after the snapshot are also reflected in the target shards. A correctness check confirms the data integrity before switching traffic from the source to the target shards. The traffic switch protocol involves updating version tokens to ensure smooth redirection of reads and writes to the target shards, minimizing downtime.

The Data Movement Platform has significantly improved Stripe's database infrastructure utilization. In 2023, Stripe used this platform to migrate 1.5 petabytes of data, consolidating thousands of underutilized databases and reducing the total number of DocDB shards by approximately three-quarters. This not only enhanced efficiency but also allowed for seamless upgrades to newer versions of MongoDB without the need for intermediate steps.

Looking ahead, Stripe is working on further innovations, such as a heat management system to balance data across shards based on size and throughput, and shard autoscaling to dynamically respond to changes in traffic patterns. These developments aim to ensure that Stripe's database infrastructure continues to scale effectively with the growth of the internet economy.

Stripe's commitment to solving complex distributed systems problems underpins its ability to maintain a 99.999% uptime and handle a total payments volume of $1 trillion in 2023. The engineering team remains focused on building a reliable and scalable foundation that supports Stripe's diverse and expanding product offerings.

In summary, Stripe's advanced database infrastructure, centered around DocDB and the Data Movement Platform, exemplifies the company's dedication to reliability, scalability, and innovation. By continuously evolving its infrastructure, Stripe ensures that it can meet the demands of its growing user base and maintain its position as a leader in the financial technology industry.

Source

Stripe's engineering team has developed an advanced database infrastructure to support its vast and growing operations, ensuring high reliability and scalability. At the core of this infrastructure is DocDB, a database-as-a-service (DBaaS) built on MongoDB Community. DocDB serves over five million queries per second, supporting Stripe's products with low latency and diverse access to petabytes of financial data across thousands of database shards.

The key innovation within DocDB is the Data Movement Platform, designed to handle horizontal scaling and online data migrations without downtime. This platform enables Stripe to efficiently manage and distribute data across database shards, maintaining performance and availability even during traffic surges. The Data Movement Platform supports the migration of data chunks from source shards to target shards, ensuring data consistency, completeness, and minimal performance impact on the source shards.

When Stripe launched in 2011, MongoDB was chosen for its developer productivity and flexibility in handling large volumes of real-time data. Over time, Stripe customized its deployment to create a robust and scalable database infrastructure. This involved developing a fleet of database proxy servers that enforce reliability, scalability, admission control, and access control, using sharding to distribute data across thousands of smaller database shards.

The Data Movement Platform comprises several components, including the Coordinator, which orchestrates the various steps involved in data migrations. These steps include chunk migration registration, bulk data import, asynchronous replication, correctness checks, traffic switching, and chunk migration deregistration.

During chunk migration, the system registers the intent to move data, builds indexes on target shards, and uses a snapshot of the data at a specific time to perform bulk data import. Asynchronous replication ensures that any changes made to the source shards after the snapshot are also reflected in the target shards. A correctness check confirms the data integrity before switching traffic from the source to the target shards. The traffic switch protocol involves updating version tokens to ensure smooth redirection of reads and writes to the target shards, minimizing downtime.

The Data Movement Platform has significantly improved Stripe's database infrastructure utilization. In 2023, Stripe used this platform to migrate 1.5 petabytes of data, consolidating thousands of underutilized databases and reducing the total number of DocDB shards by approximately three-quarters. This not only enhanced efficiency but also allowed for seamless upgrades to newer versions of MongoDB without the need for intermediate steps.

Looking ahead, Stripe is working on further innovations, such as a heat management system to balance data across shards based on size and throughput, and shard autoscaling to dynamically respond to changes in traffic patterns. These developments aim to ensure that Stripe's database infrastructure continues to scale effectively with the growth of the internet economy.

Stripe's commitment to solving complex distributed systems problems underpins its ability to maintain a 99.999% uptime and handle a total payments volume of $1 trillion in 2023. The engineering team remains focused on building a reliable and scalable foundation that supports Stripe's diverse and expanding product offerings.

In summary, Stripe's advanced database infrastructure, centered around DocDB and the Data Movement Platform, exemplifies the company's dedication to reliability, scalability, and innovation. By continuously evolving its infrastructure, Stripe ensures that it can meet the demands of its growing user base and maintain its position as a leader in the financial technology industry.

Source