優步(Uber)近日在博客中宣布已經把數據庫從Postgres切換到了MySQL,該公司負責的工程師表示,本次切換數據庫主要原因就在于應用架構已發生改變,轉變到了微服務模型和新的數據平臺。
從博客中得知,Uber早期架構是由Python語言編寫的后端應用構成,使用了Postgres數據庫。但由于隨后優步應用的架構發生明顯改變,轉型為微服務模型和新數據平臺,因此需要改用基于MySQL的數據庫分片層。切換到Schemaless和其它基于MySQL的后端服務最主要的原因是Postgres數據復制效率低下,需要重寫每一個行索引,而MySQL只更新改變的索引。
Uber切換數據庫和日益增長的業務需求也有直接關系,特別是在該公司進入中國后,業務量今非昔比,因此使用更加合理高效的數據庫尤為重要,這對于公司和用戶都大有好處。