Woohoo I've been eagerly awaiting this. I use redshift postgres and SQL server at work and looking to migrate from postgres to MySQL for my personal ML projects.
Window functions have been a long time coming and I personally can't wait!
There are some nice features that MySQL lacks. Personally, the thing I like best in Postgres is transactional DDL. In MySQL, if halfway through a database transformation your migration script fails, you are in a broken state and you are on your own. Postgres rolls the whole transaction back. Ofcourse there are some other features MySQL lacks, such as variable length character columns (varchar) where you don't need to specify a maximum length.
The transactional DDL seems to be introduced in MySQL per 8.0 though
The advantages of Postgres (and MariaDB) over MySQL are pretty well traveled on HN. OP wants to move from Redshift Postgres & SQL Server to MySQL - which isn't something you see very often.
> The transactional DDL seems to be introduced in MySQL per 8.0 though
I thought so as well from the release note wording, thanks to theptip for confirming in the docs that DDL is not transactional in 8.0, just crash-safe. see https://news.ycombinator.com/item?id=16876549.
Uber really just needed a key/value store. MySQL works better when used that way since PostgreSQL has MVCC and can lead to table bloat and compaction issues.
I doubt many others ever encounter this issue since picking the correct data store is step 1.
As far as I am aware there is no good reason to not use MariaDB instead of MySQL. The creator of MariaDB, Monty Widenius, was on a episode of the changelog podcast if you want to hear some background as to why.
Monty is also the CTO of the MariaDB Corporation, which is a VC-funded entity. I would fully expect him to sing MariaDB's praises in a podcast.
Large companies have come to a different conclusion, at least so far. Among companies with very large database fleets, there's much greater usage of MySQL and Percona Server than MariaDB.
Granted, Linux distributions have leaned more towards shipping MariaDB by default instead of MySQL. This makes sense given that Oracle is, well, Oracle.
We switched to MariaDB on freebsd 2 or 3 years ago. We ran into a couple performance-destroying bugs and while the devs acknowledged the issues, they made it clear they wouldn't be fixed any time soon. MySQL has been solid for us though.
Window functions have been a long time coming and I personally can't wait!