Tech Brand Mgr, Office of CTO at Uber·

Our most popular (& controversial!) article to date on the Uber Engineering blog in 3+ yrs. Why we moved from PostgreSQL to MySQL. In essence, it was due to a variety of limitations of Postgres at the time. Fun fact -- earlier in Uber's history we'd actually moved from MySQL to Postgres before switching back for good, & though we published the article in Summer 2016 we haven't looked back since:

The early architecture of Uber consisted of a monolithic backend application written in Python that used Postgres for data persistence. Since that time, the architecture of Uber has changed significantly, to a model of microservices and new data platforms. Specifically, in many of the cases where we previously used Postgres, we now use Schemaless, a novel database sharding layer built on top of MySQL (https://eng.uber.com/schemaless-part-one/). In this article, we’ll explore some of the drawbacks we found with Postgres and explain the decision to build Schemaless and other backend services on top of MySQL:

https://eng.uber.com/mysql-migration/

READ LESS
Why Uber Engineering Switched from Postgres to MySQL | Uber Engineering Blog (eng.uber.com)
23 upvotes·2 comments·2M views
Adrien Nayrat
Adrien Nayrat
·
December 21st 2018 at 5:47PM

https://thebuild.com/presentations/uber-perconalive-2017.pdf

https://blog.2ndquadrant.com/thoughts-on-ubers-list-of-postgres-limitations/

https://use-the-index-luke.com/blog/2016-07-29/on-ubers-choice-of-databases

·
Reply
Isabelle Foster
Isabelle Foster
·
January 20th 2020 at 2:41PM

it` s interesting question!

·
Reply
Avatar of Conor Myhrvold

Conor Myhrvold

Tech Brand Mgr, Office of CTO at Uber