Live data from Hacker News

PostgreSQL vs. MS SQL

pg-versus-ms.com

101–106 of 106 posts

Re: PostgreSQL vs. MS SQL

#101

I scrolled to a random page. It was totally absurd, stopped right there. "Crucially, because open-source software tends to be written by people who care deeply about its quality (often because they have a direct personal stake in ensuring that the software works as well as possible), it is often of the very highest standard (PostgreSQL, Linux, MySQL, XBMC, Hadoop, Android, VLC, Neo4JS, Redis, 7Zip, FreeBSD, golang, P…

I know numerous guys on the SQL Server team and it actually causes me a bit of anger when I read a clueless statement like that, for the author I feel sorry for his ignorance; the anger comes from the fact that lots of clueless people will actually read this and believe it to be authoritarian because of the verbosity of it alone.

I wouldn't let it anger you. I care about quality but every for-profit-company development team I've been on, I was forced to hold my nose at some point/many points/constantly due to some feature demand(s) that had nothing to do with providing a higher quality product and everything to do with either a customer and/or a manager that was a complete and total moron.

Re: PostgreSQL vs. MS SQL

#102
Alright so somebody with experience in a wide variety of DBs help me out here. Are the enterprise solutions really any more scalable than something like postgresql or is it more that they're more accommodating an enterprise mentality where you'll tend to run into more skill level diversity on the extremes and team A often doesn't necessarily have team B's expertise at stuff? By accommodating of course I mean willingness to take a buttload of money to help teams out with problems when needed and/or to blame when their mistakes explode in their faces and to never ever try to tell anybody that they're doing it wrong once VIPs with enough hit dice are invested in that sort of thing.

I do gather that a lot of DB admins that aren't very political about it do in fact respect MS SQL for some of its more competitive features. I'm just wondering if there's any reason to start with it for a low-cost startup scenario that could ultimately result in a non-trivial but fairly straightforward DB schema with potential for being used by very large institutions (universities at the largest I'd imagine).

I'm ignorant enough (primary experience is in web UI) that I'm leaning towards postgresql because I like the way the Django guys think and they seem to dig it. Also the no-nonsense license and yes, the not-profit-motivated thing is nice when backed by a strong core group which I gather postgres has.

But do the enterprise DB solutions handle severely massive amounts of scale better for some reason? Or is it more that they're culture-friendly to the sorts of companies that typically handle DBs of this nature?

Re: PostgreSQL vs. MS SQL

#103

As a DBA, that has years of experience with both. I disagree with you. I stopped reading after the very first bullet, and just skimmed through most of the titles. First, you can import/export csv's. Hell all you need to do to export, is right click the view and hit export, then select .csv. Second, you don't want such a simple installation, MSSQL has several options/packages/configurations. If you don't need it you t…

Although I've had experience with both PostgreSQL and MS SQL, well over 90% of my experience is with the former. When exporting data to CSV where a text field contains the delimiter, PostgreSQL will do the correct thing every time: wrap that field in quotes. MS SQL...will not.

That's where MS tends to bug me. Why wasn't that fixed within a few hours of somebody discovering the problem? I ran into a similar issue on an app I just wrote that spits out CSVs. I googled, found a stackoverflow post about how to escape CSVs properly with Excel in mind, and fixed it. One primarily JavaScript dev and maybe an hour of testing, diagnosis and repair.

Re: PostgreSQL vs. MS SQL

#104
post #57

Earlier quoted context omitted.

In all honesty it would take hours to write a proper rebuttal. There are many factual errors but there are also many errors that are mostly incorrect. CSV import/export is one of the first things he calls out and he never mentions BCP or SSIS, which are the methods for CSV import in SQL Server. It would be like saying Apache does not support SSL - it is just factually wrong.

I've been using MS SQL Server for over 10 years, including versions as early as 2000. I have extensively used CSVs in every version

Then you're well aware of how broken MS SQL is when it comes to exporting CSVs where the delimiter is in one of the string fields or where a field has an EOL character, etc. PostgreSQL handles all of that with no problems whatsoever. MS SQL doesn't even attempt to follow RFC 4180.

I've actually written small wrapper scripts that feed a query into MS SQL, fetch the results row by row and--with a proper CSV writer (eg Python's csv, Perl's Text::CSV, etc), dump to file. It's relatively slow, but at least it works.

Re: PostgreSQL vs. MS SQL

#105

MSSQL has some problems, some of which the post talks about. However, I tried pg out, planned to use it instead of MSSQL. 1. HA, via replication, clustering, etc. are all fantastic as well as easy and trivial to setup. Once PG can offer a simple little wizard and setup replication, or shared-nothing clustering with automatic fail over, awesome. Or even tx log shipping with a few clicks. Instead, last I tried (9.0 I t…

Interesting that you mention HA/replication, reading the article I was swept along with the pg evangelism but I fully expected at least a grudging concession to mssql on replication.

We use both pg and mssql, I was surprised the article didn't mention replication. While one might be justified in describing pg as more "developer friendly", mssql is more "enterprise friendly". As a developer, I prefer pg, but as a stack designer, I still lean more toward mssql. Put another way, if I'm joining a project as a developer, I hope they're using pg, but if I'm consulting and designing a stack for a company I'll probably recommend mssql, almost definitely if they're doing something that requires replication, and/or the team isn't going to have lots of db expertise.

I guess this is quite self-contradictory on one level but I think it's a fairly common view (having checked with some colleagues).

I know that pg has support for replication, but it certainly isn't as easy to set up as mssql, and you need to do a LOT of reading to figure out what flavor you should use, and it's not entirely obvious what features you get with each, or which ones are really recommended and which are semi-deprecated.

CTO: Do you support replication? mssql: yes, and it's pretty easy to set up. pg: well, we've got 3 or 4 ways of doing that, depending on what you want exactly, method A isn't really maintained any more, and method D looks like it's going to be great in a release or two, so maybe that's the one to bet on, but in the meantime you have to put up with a bit of pain.

(dramatisation, probably inaccurate paraphrase, but that's what the cto heard)

Re: PostgreSQL vs. MS SQL

#106

MSSQL has some problems, some of which the post talks about. However, I tried pg out, planned to use it instead of MSSQL. 1. HA, via replication, clustering, etc. are all fantastic as well as easy and trivial to setup. Once PG can offer a simple little wizard and setup replication, or shared-nothing clustering with automatic fail over, awesome. Or even tx log shipping with a few clicks. Instead, last I tried (9.0 I t…

Interesting that you mention HA/replication, reading the article I was swept along with the pg evangelism but I fully expected at least a grudging concession to mssql on replication. We use both pg and mssql, I was surprised the article didn't mention replication. While one might be justified in describing pg as more "developer friendly", mssql is more "enterprise friendly". As a developer, I prefer pg, but as a stac…

I've actually found MSSQL to be easier to use as a developer than PG. Setting up local instances, quickly making backups and what not, designing databases, are all much easier with MSSQL because of their incredibly easy to use tools.

I keep wanting to switch to PG every few months because it's open source, but keep being stumped by the lack of good tooling. pgAdmin is a joke, rarely have I ever used a more unintuitive piece of software.

Post reply on HN