Unfinished Business with Postgres
craigkerstiens.com
craigkerstiens.com
1. Postgres 7 supporting windows (I _think_ 7 was the first). That brought a ton of users into the community
2. Oracle's acquisition of mysql, and subsequent forking. That caused a lot of people to look around for other solutions
3. Amazon RDS
It was this one for me.
I was not one of those people though, but lucky enough to have had PostgreSQL running on DEC Alpha and GNU/Linux (Red Hat) as the core tool for the relational database course while I was getting my degree in computer science / information technology. A whole semester spent at the psql prompt doing SQL and programming the web application talking to it in PHP. That was back in the 20th century.
At the same time, a lot of people kept trying to just use it as a dumb data store like MySQL without realizing exactly how much you could do with it. 90% of the time you don't need a dedicated search engine syncing and all the headaches that come with it, for example.
I was on the other side of this trade. My experience was that everyone used Oracle. Then PostgreSQL and MySQL appeared as OSS alternatives. After spending a day reading the dev mailing lists for both it was very clear to me I would never deploy MySQL in any situation where I had control over the DB choice. History seems to have proven that to be a reasonable position.
Pg always looked like a better choice than mysql to me. As evidenced during an early job I did where mysql disappeared some of my data it really shouldn't have done due to its well understood but not by me back then pitfalls.
I mean yeah whatever floats your boat but I find it torturous for anything other than as a specialist platform for doing linear algebra - aka statistical analysis.
I got a nice half hour meeting with one of the core R developers a few years ago back when I was pretending to be an academic - he was a regular collaborator with one of the senior academics in the business school that most of my work was coming from at the time.
First instance was that there was MySQL service that crashed and refused to start up. The machine was not rebooted or shut down abruptly, disk was not corrupted, also disk was not full and had plenty of space. Running repair command resolved the issue, but it was weird.
In another instance we run into a bug and apparently certain character combination in the data made MySQL all out of sudden think the data was encrypted.
That’s not to imply Heroku is the sole reason Postgres is where it is today. It’s the effort of tens of thousand of people in the community. But Heroku’s investment in playing their part to make that happen was very deliberate and intentional.
MySQL got popular because it was the database of choice on PHP, while on Python that was Postgres (via psycopg2).
If the database of choice for Python wasn't Postgres, Heroku likely would stick with MySQL.
There were also other things that contributed to it, like for example purchase of Sun by Oracle and then stalling MySQL development.
Dataclips really was a great feature. We were using it for all of our internal dashboards at the company where I worked in 2013. One of our support staff even learned SQL due to interacting with it and went on to get a CS degree a few years later.
And then moved on to scalable RDBMS for a PaaS.
It's like a fairy tale, but one of the Grimm Bros. ones, not Disney.
I hope that eliminating a single drive fault failure mode isn't part of the unfinished business.
Twelve years ago RAID 6 and 60 definitely existed. Battery backed FC arrays of considerable sophistication have existed for far longer. I'm thinking HDS arrays circa 2002 for peak redundancy complexity (before integration reduced parts and physical runtime concerns making the installation environment as important as the technology.)
That isn't a PG thing; Linux[1] ext3/4 does not actually delete files (or directories) that are still in use. Only the name is removed. The file itself remains until the last open handle to it is closed.
[1] Amongst other OSes
So the snark does seem out of place and the clarification useful.
Is it really constructive to throw insults[1]? I explained myself above, after all.
[1] I had to look it up to see what it means: https://en.wikipedia.org/wiki/White_knight. Since we aren't in a business context, I can only assume that you think I am female :-)
I did read it carefully (and quoted the whole thing for context), but that final line made it seem that it was PG that was responsible for that particular instance of resilience.
Someone who isn't familiar with how ext3/4 handles deletes might, from the comment alone, assume that the same sort of thing would happen on other filesystems.