|
|
|
|
|
by mumblemumble
2433 days ago
|
|
Yep. Because the tooling is stronger. The developer ergonomics are better. The performance is better, meaning you'll be able to do more with fewer servers. MSSQL has a boatload of useful features that PostgreSQL lacks. (Clustered indexes and table-valued parameters are the ones I like to fixate on.) And so on. I can only personally speak to the developer story, but my experience has been that the productivity difference is huge. There's a night and day difference in the information you can get out of an EXPLAIN on each of them, for example, and I would get detailed emails warning me if a MSSQL query plan unexpectedly changed in production. With PostgreSQL you're more likely to need to build your own tooling for that sort of stuff, or just wait for a user to complain. On the DBA side, I'm hazier on the details, but I've seen PostgreSQL DBA's sinking hours' or sometimes even days' worth of effort into grinding through tasks tasks that an MSSQL DBA can bang out by spending a couple minutes clicking through a wizard dialog. If you're a tiny startup, the differences won't amount to all that much, and it will be hard to justify MSSQL's price tag, which is fine, because, yeah, you can't afford it, anyway. If you're an enterprise or otherwise have large database needs, the differences can very quickly become apparent, and easily worth the money. |
|
By far, PostgreSQL has more knowledge sharing and documented edge cases. Not to mention that the official PostgreSQL documentation is probably one of the best documented software systems ever. This makes PostgreSQL a lot easier to learn and use and that also affects the amount of money you need to spend.
SQL Server has some annoying edge cases, licensing is a real pain point these days, but so are the technical issues like lack of schema support in the JDBC driver. Other things are that you cannot pipe the backup. I would love to take backup of an Azure SQL service to my local machine with SSH.