SE-Radio Episode 285: James Cowling on Dropbox’s Distributed Storage System

Topics covered
Popular Clips
Episode Highlights
Migration Strategy
James Cowling from Dropbox shares insights into the strategic migration from Amazon S3 to their own storage system, Magic Pocket. He emphasizes the importance of having an "undo button" to ensure a seamless transition, allowing users to migrate without noticing any disruption 1. Cowling explains that the decision to build a new system was initially uncertain but became clear as they gradually increased confidence through extensive testing and validation 2.
Our job was really to build a very smooth transition trajectory where we ramp the system up very slowly.
---
This approach allowed Dropbox to avoid controversy and ensure a smooth transition 3.
Operational Challenges
The migration to Magic Pocket presented significant operational challenges, particularly in maintaining seamless operations while transitioning data. Cowling describes the gradual process of storing data in both Magic Pocket and S3, ensuring zero tolerance for errors during the production validation phase 4. He reflects on the lessons learned, highlighting the importance of investing in operational automation early to reduce manual interventions and improve system reliability 5.
If you had that many boxes, they break in all sorts of weird, wonderful ways, and we had to manually fix them.
---
This experience underscored the need for a strong site reliability engineering team to automate processes and maintain system integrity.
Data Integrity
Ensuring data integrity was a critical aspect of Dropbox's migration strategy. Cowling discusses the role of invariants in maintaining system reliability and facilitating faster development by quickly identifying issues 6. He emphasizes the importance of rigorous testing and verification to ensure data durability and correctness, which was crucial for the success of Magic Pocket.
If you're building a large system that has to be durable with, you know, twelve plus nine s of durability, the invariants and the test coverage make you move faster.
---
This meticulous approach to data integrity allowed Dropbox to confidently transition to their new storage system.
Related Episodes


SE Radio 619: James Strong on Kubernetes Networking
Answers 383 questions

SE Radio 592: Jaxon Repp on Distributed Data Infrastructure
Answers 383 questions

Episode 217: James Turnbull on Docker
Answers 383 questions

SE-Radio Episode 264: James Phillips on Service Discovery
Answers 383 questions

SE Radio 571: Jeroen Mulder on Multi-Cloud Governance
Answers 383 questions

SE-Radio-Episode-259:-John-Purrier-on-OpenStack
Answers 383 questions
Episode 369: Derek Collison on Messaging Systems and NATS
Answers 383 questions
SE Radio 560: Sugu Sougoumarane on Distributed SQL Databases
Answers 383 questions

Episode 498: James Socol on Continuous Integration and Continuous Delivery (CICD)
Answers 383 questions

SE-Radio Episode 354: Avi Kivity on ScyllaDB.mp3
Answers 383 questions

Episode 216: Adrian Cockcroft on the Modern Cloud-based Platform
Answers 383 questions

SE Radio 631: Abhay Paroha on Cloud Migration for Oil and Gas Operations
Answers 383 questions

SE-Radio Episode 314: Scott Piper on Cloud Security
Answers 383 questions













