Goodbye MongoDB, Hello PostgreSQL (article)
-
Guys from olery.com writes about their move from MongoDB to PostgreSQL. Reasons why Mongo sucks. Reasons why they chose Postgres. And the move itself (how do you do that without breaking things and a huge downtime).
Interesting.
In my mind, this solidifies MongoDB as a "toy" database. I might use it for a tiny project (being easy to setup and consume in some environments), but for real, core data, PostgreSQL (SQL Server in the MS land) is the king.
Now if only they fixed their atrocious GUI tools and added just a few more features from their TODO list...
-
PostgreSQL (SQL Server in the MS land) is the king.
Now if only they fixed their atrocious GUI tools...
pg's GUI tools? Wasn't aware there were any - I've been largely relying onphpPgAdmin
for my GUI requirements and the command line for the rest.
-
-
pgAdmin?
I... just don't recall having seen that. Then again having never been a fan of any of mySQL's GUI stuff and having found phpmyadmin more than sufficient for my needs I, probably, simply searched for the pg equivalent and have no problems with it.
To save me trying phAdmin, (given @cartman82's comments) am I better off sticking with what I'm using?
-
pgAdmin III isn't exactly a stellar piece of software (it's certainly not to the standards of SSMS), but it's not totally useless. Having said that, phpPgAdmin's probably easier to use for the basic stuff, so unless you need the advanced stuff, you may as well stick with phpPgAdmin ;)
Edit: Silly girl; he's using Postgres. Learn to read!
-
I haven't used phpPgAdmin so I cannot compare
It works. I'm ok with it, does the job. More usable than MySQL Workbench if you want to compare it with that.
I know, low bar, but I haven't used that many other DB GUI tools to compare and contrast.
-
pgAdmin III
phpMyAdmin's probably easier to use for the basic stuff
One of those things isn't like the others.
Braino I'm sure...
-
More usable than MySQL Workbench if you want to compare it with that.
.. I was. Utterly useless piece of software - at least when I tried to use it on my own site when I was considering moving to one of the template frameworks and needed to do something about documenting and rationalising my database.
-
-
You can also use SquirrelSQL which can connect to any database with JDBC support.
Now if only they fixed their atrocious GUI tools and added just a few more features from their TODO list
Not like MongoDB had any GUI tool which was at least useful. Anyway, I've been pushing pg for more than 10 years in every project I start and now with JSON support it just kills even NoSQL key/value and document databases unless you have very specific needs which other NoSQL databases like Neo4j or CouchDB do. Too bad JSON support is still not build into all pg libraries. Hell, from what I read last time, the guys responsible for the JDBC driver might not even add it.
BTW @cartman82 there's this early stage project called ToroDB which adds a MongoDB like layer on top of pg which you might find useful.
-
To save me trying phAdmin, (given @cartman82's comments) am I better off sticking with what I'm using?
Whatever you pick, it's sadness. I use a combination of pgAdmin and Navicat, switching between them for different types of jobs (or when one crashes / pisses me off). But there is no really good postgres GUI tool, like SSMS or even MySQL Workbench.
-
Navicat
I'd need it for hobby/non-work stuff only - I have very few work day-to-day interactions wearing a DBA hat.
That seems to be a paid product, and I couldn't justify.... $700??!?!? (They seem to have also broken that product into
$SQL_SERVER_TYPE
products of which I'd need at least two, and would probably use some of their addons, so no real saving there.)
-
BTW @cartman82 there's this early stage project called ToroDB which adds a MongoDB like layer on top of pg which you might find useful.
Meh. Don't see the need. The major remaining advantage of MongoDB is the ease of getting started. If you need to install postgres, then set up postgresql.conf, then open up md5 access through TCP in pghba, then create users, then create a db, then install this thing... kind of loses that "just get started" vibe.
I'd need it for hobby/non-work stuff only - I have very few work day-to-day interactions wearing a DBA hat.
For some time I've been having feverish delusional dreams that I could write a good GUI postgresql monitor (see active queries and such), which is a major pain point in pgadmin. And then maybe start expanding it with database tree and queries and schema inspector....
LOL. That's what world needs. More half-baked OSS projects.
-
LOL. That's what world needs. More half-baked OSS projects.
Just build it as a Discourse plugin!
-
-
Strange you should mention that....
That's why I said that tbh. But I wasn't aware it's actually a plugin, I thought it was a standalone thing.
-
Ah. I just ass-u-me'd it was a plugin.
-
Schemaless storage engines promise to make your life easier by removing the need to worry about a schema.
I've never understood this worry. It always sounds like someone who doesn't understand what they're doing.
-
Not all data can/should be "schemed", that discussion is pretty much closed by now.
-
Not all data can/should be "schemed", that discussion is pretty much closed by now.
Agreed. I have zero issues with redis, for example. I'm using it all the time for all sorts of caches and temp data stores. Even as an ad-hoc messaging system between processes.
But for your permanent data, it seems there are still huge advantages to having a normal ACID-compliant centralized store.
-
Not all data can/should be "schemed",
I don't disagree. But if you're using a normal RDBMS for that stuff, there are easy key / value things. And then you aren't really worried about a schema, either.
But for your permanent data, it seems there are still huge advantages to having a normal ACID-compliant centralized store.
+⍙
-
worry about a schema.
I worry that my schemas will get mixed up with the wrong cloud, start stealing resources, end up locked in a cell with some serial data killer, and then get kill9ed.
-
pg's GUI tools? Wasn't aware there were any
There are. They're atrocious.
I've been largely relying on phpPgAdmin
How does this not count as a PostgreSQL GUI tool? It's a website built in PHP that somehow isn't a GUI? Like the website is just scrolling text?
But they also have one that's a native application called (IIRC) pgAdmin.
-
How does this not count as a PostgreSQL GUI tool? It's a website built in PHP that somehow isn't a GUI?
To appease your inner pedantry, I took tool in this context to mean something like a standalone application that's compiled into the Windows OS and requires rebooting the computer every time it's updated, not something that's OS agnostic when being used, and certainly not a web-app.
But they also have one that's a native application called (IIRC) pgAdmin.
Just tried it. Prefer the web application.
-
I took tool in this context to mean something like a standalone application that's compiled into the Windows OS
Compiled into the Windows OS? #pedantry
But in the interest of "using words correctly", all webapps (at least all I've been exposed to) are GUIs.
Just tried it. Prefer the web application.
Right; it's atrocious. Remember the conversation to this point?
-
That's why I said that tbh. But I wasn't aware it's actually a plugin, I thought it was a standalone thing.
Ah. I just ass-u-me'd it was a plugin.
nah, I actually stuck it into the core code. It would appear that I broke it somehow, however...