Stories
Slash Boxes
Comments

SoylentNews is people

posted by n1 on Thursday July 28 2016, @06:30AM   Printer-friendly
from the they-forgot-about-mssql dept.

[redacted] Coward writes:

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

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. 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.

[...] We encountered many Postgres limitations:

Inefficient architecture for writes
Inefficient data replication
Issues with table corruption
Poor replica MVCC support
Difficulty upgrading to newer releases


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 0) by Anonymous Coward on Thursday July 28 2016, @02:57PM

    by Anonymous Coward on Thursday July 28 2016, @02:57PM (#381212)

    12 indexes on 1 table shows a need for a different schema usually. With that many I would venture a guess and say it was a very wide table or badly designed indexes. It could be the redesign took care of that.

    I have seen a few systems like this in the past. It seems to be a slow moving SQL anti pattern. Basically some key table starts picking up columns. They get wider and wider. Then some perf issue shows up and the table picks up a new index.

    I have no 'skin' in the game on this one. I am a MSSQL guy. But I have seen the same sorts of decisions made before. Pretty much every time it is 'while we are doing this lets fix...'.

    With a table like that it probably needed a star topology. It really just depends on do you want to tune for reads or writes. In this case they tuned for reads. But writes were a bigger issue so they needed to tune for that. Another way to fix this would be to have a 2 stage commit where you blast the data into the DB then have another service come by and fix it up. But at that point you should start looking into a NoSQL sort of solution.

  • (Score: 2, Funny) by Anonymous Coward on Thursday July 28 2016, @04:04PM

    by Anonymous Coward on Thursday July 28 2016, @04:04PM (#381230)

    12 indexes on 1 table shows a need for a different schema usually.

    Maybe you didn't read TFS carefully, but those 12 indexes are part of an Über schema ;-)

  • (Score: 0) by Anonymous Coward on Thursday July 28 2016, @08:05PM

    by Anonymous Coward on Thursday July 28 2016, @08:05PM (#381304)

    I am a MSSQL guy

    i love it when microsoft whores act like their "choice" is legitimate. stupid @#%$

    • (Score: 0) by Anonymous Coward on Thursday July 28 2016, @09:23PM

      by Anonymous Coward on Thursday July 28 2016, @09:23PM (#381332)

      Dont know its done alright by me. By my last estimate I would say ~1.5 million in earned income.

      I did not disparage mysql or Postgres. MSSQL is a very competent SQL implementation. When the boss (who is cutting the checks) says we are using MSSQL you figure it out....

      I have used just about every SQL out there. I am most proficient in MSSQL. You wooshed my point to make fun of me. Sad. I will restate it simply for your small troll mind. My point was the redesign probably did more good than switching databases.