New PostgreSQL Guns For NoSQL Market
angry tapir (1463043) writes "Embracing the widely used JSON data-exchange format, the new version of the PostgreSQL open-source database takes aim at the growing NoSQL market of nonrelational data stores, notably the popular MongoDB. The first beta version of PostgreSQL 9.4, released Thursday, includes a number of new features that address the rapidly growing market for Web applications, many of which require fast storage and retrieval of large amounts of user data."
The industry moved away from relational databases a long time ago. Postgres is not relevant anymore.
Next, NoSQL databases will add schema and ACID support and the circle will be complete.
An RDBMS is well suited for some situations, a document database like Mongo is better for others. Json is an easy format to work with, but really shouldn't be the deciding factor between the two.
NB: I love PostgreSQL with all my heart. I always upgrade to the most recent version, because they implement features that I really need. Added to the existing features of Postgres, it's totally awesome.
But as I have moved toward "Big Data" and the market segment that these new-fangled (non-relational) databases target, I find myself wishing that Postgres would be able to run my vanilla query (*singular*) using all processors. As it is now, I have to either write some awful functions that query manually-partitioned subtables, or simply wait while it plods through all billion or so rows.
It would be nice if noSQL databases adhered to the promise in the name. They replace the query language with something sane and secure.
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
A hallmark of NoSQL is horizontal scalability. The lack of schema in NoSQL was a brief rebellion against ivory tower DBAs that has since been regretted once it was realized that merely transferred the schema and schema versioning implicitly into the source code, and spread throughout it. Sounds like PostgreSQL got the bad part of NoSQL but not the good part.
Most people don't need NoSQL. Last I checked, most people aren't Facebook or Google. And ironically those two companies are lining up behind http://en.wikipedia.org/wiki/N...
ACID is here to stay. We will see conventional databases improve in the latency space and NoSQL will (mostly) go away.
Is Postgres now web scale?
... It will be a haphazard mumbo-jumbo of bullshit.
SQL DB's should stick to being SQL and noSQL should do the same for their market.
Mixing/Mashing makes no sense, you can't take a SQL DB and just up and convert it to be noSQL without double standards and weirdness.
So instead of putting on a silly disguise and trying to pretend to be who you aren't, how about addressing the issues about who you are such as low write limits and slow transaction speeds? But hey -- maybe I don't know WTF I'm talking about.
No HalfSQL movement?
Table-ized A.I.
It's best to Itry come Here but now
I think you have no idea of what the word "relational" actually means.
Whether you're writing SQL or NoSQL statements (whatever the hell they are) you'll still end up using relational theory (Todd Codd anyone?)....
ffs
As a big fan of SQL database, I've been watching this NoSQL hype for a few years now, and I'm still not impressed.
No doubt, there are a few scenarios where a conventional database isn't the best solution. But quite honestly, 90% of the people jumping on the bandwaggon would be served just as well with an SQL database - except that like so many things, you need to do it right.
I'm no database expert (but I know a couple), so my SQL isn't perfectly optimized and stuff, but even with a little bit of interest I see that putting some effort into your database and query design pays off massively.
And I've seen enough cases where someone scraped their SQL database and went NoSQL for absolutely no good reason. You think you're huge and SQL is too slow? Unless you just sold to FB or Google for a couple billions, you very likely are not as huge as you think. I'm running a PostGIS database doing fairly complex geography calculations on non-trivial datasets, and it's blazing fast, and whenever it isn't one hour with an SQL expert and some experimenting makes it so, because it always, with no exception, turns out that my SQL or my database design is at fault, not the database itself.
If you've got a billion users, I will grant you that you have special needs. But every NoSQL use I have seen has been a case of people moving database work to software code instead, mostly because programmers are plenty and cheap, while experienced database experts are not.
So I'm still amused and very little impressed, and I'm certain NoSQL will go the way of Java or every other hype ever - for a while it's everyone's darling, then people realize it still doesn't give us AI and it can't make coffee, and will start to figure out where it actually is the best solution and stop using it for everything else.
Assorted stuff I do sometimes: Lemuria.org
I don't know whether angry tapir knows what relational means, but I see nothing in his post IMHO suggesting he has no clue. JSON is great for storing non-relational data (hierarchies, data without fixed set of columns, ...). Not all data are purely relational, it's often a mix.
Actually, more than you think should probably use NoSQL. It isn't really any harder if you build it that way from the start and if your startup happens to get gigantic you won't have a relational database to migrate away from as one of your problems. You'll still have problems though, and even with NoSQL you need to "do it right" or it will still have issues when it gets huge.
And I might add that one of the most painful parts of migrating away from relational databases after you are already huge and bursting at the seams is that usually folks will have relied on the transactional consistency they provide for all the app logic and business processes. Suddenly wanting to change all that code to handle eventual consistency is not trivial at all, but if you were doing it all along because you started out that way... fewer pains.
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
No matter how much you optimize your schema and your queries there are limits to what one machine can handle. Depending on what your application or business needs are, this may happen MUCH sooner than a billion users. For many, merely tens of millions of really active users are enough to exceed these limits, and when you are a startup trying to grow and add features it is easier said than done to ensure that every piece of code you release is so perfect that you will not rock the boat at all, since one minor slip effects EVERYTHING. At that point your choices are custom sharding (expensive, painful, error prone). Or horizontally scalable NoSQL. Personally, I would just choose NoSQL from the start. It is not harder to use, and you have a lot more wiggle room to respond when you want to release features quickly and iterate over them to improve performance if you decide to keep them. And yes, you can use functional sharding and multiple relational databases, but sooner or later if you are successful, you will hit the same problem.
Where, perhaps, there's an interface that defines what the
storage layer does, so you can drop in whatever you want
and everything else still works.
But no: "Ugh. Interfaces. That's so 20th century. Our product
is so important and will have to scale that we can't afford all
that big-company stuff so we're going to just code away
and make sure every piece depends on lots of internals
of every other piece".
Ok, Have fun.
Wow, what on earth made them think the NoSQL world just revolves around JSON? People actually want scalable, distributed stores that don't require convoluted failover - something, compared to all its competition, PostgreSQL has never properly addressed in any way.
When we were looking into new options to supplement our MSSQL servers, we settled on Mongo. We were aware that Postgres will act as a document store in addition to being a traditional RDBMS, but our decision was largely based on 2 things: We acknowledge that we'll likely never be able to completely eliminate our use of MSSQL. So, if we need an RDBMS, it will still be there. The other main factor was that Mongo makes replication, failover, and sharding a snap, relative to other systems. We don't have a DBA to implement replication for us. So, the simplicity was a huge factor. There are billion ways to store your data, and they all come with positives and negatives. Postgres can pretty much be everything to everyone, but like any system where that's the case, it can be harder to configure (for me, a developer, anyhow... I'm sure DBAs are laughing at me).
It's my understanding that SQL was not the first nor the best but it's the one we must use ...
Take a look at http://en.wikipedia.org/wiki/QUEL_query_languages
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Is nobody else using NuoDB? Why would you want to jury-rig Postgresql to be horizontally (web!) scaling?
"NoSQL" is a pretty bad name actually. They should be called non-relational databases. In many cases you can use SQL or something like SQL on them.
People never use NoSQL to get away from the SQL language (although I don't like SQL at all). They use it to change the trade-offs in ACID complacence and to not have to keep their data completely relational.
Democracy Now! - your daily, uncensored, corporate-free
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk
Let's let TOM speak shall we:
"I'm having great conversations on this site with one of my alias accounts" - by Tom (822) on Monday April 07, 2014 @02:29PM (#46686259) Homepage FROM -> http://slashdot.org/comments.p...
APK
P.S.=> Tom *tried* to libel me & failed after I destroyed him in a technical debate on hosts files... result?
Tom ended up "eating his words" here http://slashdot.org/comments.p... spiced with "the bitter taste of SELF-defeat" + HIS FOOT IN HIS MOUTH
... apk