tag:blogger.com,1999:blog-7476449567742726187.post4145388511796839018..comments2023-12-18T12:25:52.296-08:00Comments on Database Soup: Why HStore2/jsonb is the most important patch of 9.4Josh Berkushttp://www.blogger.com/profile/09671139717468724246noreply@blogger.comBlogger44125tag:blogger.com,1999:blog-7476449567742726187.post-20743099820418149522014-03-26T00:50:15.989-07:002014-03-26T00:50:15.989-07:00It would be great if you could help on this one.. ...It would be great if you could help on this one.. http://stackoverflow.com/questions/22654170/explanation-of-jsonb-introduced-by-postgresqlAnonymoushttps://www.blogger.com/profile/11362172728356319621noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-5703054563042558082014-03-13T06:33:13.577-07:002014-03-13T06:33:13.577-07:00We are leveraging JSON in postgres 9.3 in a big wa...We are leveraging JSON in postgres 9.3 in a big way for online analysis of user activity events. While I think the system is going to hold up fine when we go live with it, my main worry otherwise is around performance of queries when I can't rely on an index of a field in the JSON column. I for one wish jsonb were top priority for 9.4. That and concurrent refresh of materialized views.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-39174981803826530032014-03-07T11:29:22.439-08:002014-03-07T11:29:22.439-08:00Web Framework Benchmarks:
MySQL vs PostgreSQL vs M...Web Framework Benchmarks:<br />MySQL vs PostgreSQL vs Mongo <br />http://www.techempower.com/benchmarks/#section=data-r8&hw=i7&test=update<br />"This is a performance comparison of many web application frameworks executing fundamental tasks such as JSON serialization, database access, and server-side template composition. "Pellahttps://www.blogger.com/profile/10975338793785859618noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-57481426801604519122014-03-05T14:28:04.931-08:002014-03-05T14:28:04.931-08:00take a look at http://pgre.st for "mongodb co...take a look at http://pgre.st for "mongodb compatible layer"xvaarahttps://www.blogger.com/profile/04657945320032337774noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-84128243104546395172014-03-01T19:04:49.423-08:002014-03-01T19:04:49.423-08:00Josh, We use hstore extensively in places where a ...Josh, We use hstore extensively in places where a document style makes mores sense then a relational model. Typically these are configuration options for different things that you would not typically query on. Having the hstore2 features I have read about will be a bug benefit for us.Anonymoushttps://www.blogger.com/profile/00971388965994087060noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-6611216108637061922014-02-28T13:25:46.900-08:002014-02-28T13:25:46.900-08:00No, but they're good at advertising that they ...No, but they're good at advertising that they do. And by the time most users find out that the horizontal scaling is actually quite painful, it's too late to change direction. <br /><br />Anyway, I said *relatively* painless horizontal scaling. By which I mean that you shouldn't have to hire PGX or 2ndQ to do your scaling; it should be possible for a talented devops person to make it work. <br /><br />Andres is hard at work on this with Logical Streaming Replication, and when that's done and tooled up I think we'll have something awesome. But that's more in the 9.5 timeline.Josh Berkushttps://www.blogger.com/profile/09671139717468724246noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-2055424048208491442014-02-27T16:56:50.732-08:002014-02-27T16:56:50.732-08:00Correct, this is a big draw!Correct, this is a big draw!Anonymoushttps://www.blogger.com/profile/09516050744212128851noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-11741049977463833942014-02-27T16:54:08.828-08:002014-02-27T16:54:08.828-08:00I really can't agree with this. Josh is spot o...I really can't agree with this. Josh is spot on. I work at a startup and I interact with lots of other startups and we're all using Node, Python, or Go, (some are still on Ruby). We all use JSON extensively and we're also smart enough to not ditch relational databases entirely. Many of us use Postgres, and many of us feel the pain of not having fast JSON support. This isn't meant as a replacement for most workloads, just the ones where a flexible schema is necessary.<br /><br />JSON support is make or break in our application. I really hope the community is able to get this in. Thank you all for your contributions!Anonymoushttps://www.blogger.com/profile/09516050744212128851noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-80805295427890098312014-02-27T16:49:17.393-08:002014-02-27T16:49:17.393-08:00Brian's a friend of mine in Austin, TX :) Grea...Brian's a friend of mine in Austin, TX :) Great guy!Anonymoushttps://www.blogger.com/profile/09516050744212128851noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-67930142307207844282014-02-26T09:24:01.835-08:002014-02-26T09:24:01.835-08:00I've been searching a lot for an alternative d...I've been searching a lot for an alternative database to MongoDB to use with Nodejs. I have never seen the developer community so polarized on a single product when it comes to the selection of the storage layer. Some literally hate it and will never look at it,some are ok with it, some love it (love it most likely applies to folks from 10gen). I am very leery of entrusting my data with MongoDB. High on memory consumption, indexes are much larger than alternative storage engines, much larger disk storage, horizontal scaling not as easy as it made out to be by their marketing drum.<br /><br />In fact, I also looked at Go so I could keep using Postgres. Coming from Java/Rails background, I was looking for both ease of use as well as strong storage. I don't really need to prematurely optimize. In fact, I could throw all this data into Amazon Postgres and they support upto 3 TB in Posgres. I have a long way to go to get to 3 TB and when I get to 2 TB, I will start to think about alternative ways of storing. Till then, I would love to keep using Postgres, but as this blog makes clear, Nodejs users aren't really enamored of Postgres for whatever reason. Their default selection seems to be MongoDB. I can't for the life of me understand how a database that isn't really up to snuff be trusted enough. What Nodejs saves on resources, MongoDB takes up. Its break even or worse could end up costing you more on the MongoDB instances. "Hey Ma! I am processing 1 million requests a second with just 1 node instances, but I have 30 MongoDB instances that I need to support the single node instance"Anonymoushttps://www.blogger.com/profile/16608141396518901167noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-23730528345761236992014-02-25T21:07:24.111-08:002014-02-25T21:07:24.111-08:00This comment has been removed by a blog administrator.Anonymoushttps://www.blogger.com/profile/05488146456967556240noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-15706838601931581072014-02-25T15:49:04.648-08:002014-02-25T15:49:04.648-08:00IBM built this into DB2 10.5 in partnership with 1...IBM built this into DB2 10.5 in partnership with 10Gen, and even have a wire protocol listener for true turnkey replacement (which BTW makes their acquisition of Cloudant a little strange to me).imsoserialhttps://www.blogger.com/profile/07154626454323653780noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-70960874269127236552014-02-25T02:36:49.143-08:002014-02-25T02:36:49.143-08:00We switched from PG to Mongo in order to be able t...We switched from PG to Mongo in order to be able to scale up (but still have more data in PG than in Mongo), not so much because of the schema-less attributes. While json was considered a plus by some (not all), it's the integrated sharding that sealed the deal. Json support in PG is already good enough for us (YMMV), but untill PG gets better integrated multi-node sharding, we (sadly) can't go back to it.vdphttps://www.blogger.com/profile/07836622731674773883noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-71752655367573494532014-02-24T16:17:18.016-08:002014-02-24T16:17:18.016-08:00Sometimes the model is never stable. For CMS / kn...Sometimes the model is never stable. For CMS / knowledge base type projects the model is never done as the world you are modelling is always changing around you. I've found the JSON type in PostgreSQL to be a great option. My database code is much simpler (no need for 30+ sets of tables for all of our versioned data types), I get transactions and I can construct arbitrary queries into the data for reporting purposes. And with LISTEN/NOTIFY I can asynchronously feed data into into elasticsearch (because of it's great support for faceted search.)Laurence Rowehttps://www.blogger.com/profile/02164563755538372331noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-66737338438803988582014-02-24T12:06:38.640-08:002014-02-24T12:06:38.640-08:00As further evidence of my assertions above, an ane...As further evidence of my assertions above, an anecdote: at the PostgreSQL booth at SCALE, two different developers walked up to me with the exact same question:<br /><br />"I use MongoDB but I've heard that PostgreSQL has JSON support now, and wanted to check it out."Josh Berkushttps://www.blogger.com/profile/09671139717468724246noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-65049344421202360422014-02-24T11:57:24.235-08:002014-02-24T11:57:24.235-08:00Slava, we're not going to win over a lot of de...Slava, we're not going to win over a lot of developers by telling them we know better than they do. <br /><br />Regarding competition, we can already outperform MongoDB on a single node, and there's no question that we're more stable and secure. Surely there's a hypothetical nonrelational database which would be better than PostgreSQL could ever achieve ... but if so, it hasn't been released yet.Josh Berkushttps://www.blogger.com/profile/09671139717468724246noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-65712113898986997962014-02-24T11:53:57.798-08:002014-02-24T11:53:57.798-08:00Once you give developers ability to store data in ...Once you give developers ability to store data in unstructured way - they would certainly abuse it. Later, once the dataset grows large - they will run into performance issues and Postgres will be on the hook to finding the solutions.<br /><br />It's not just about supporting indexing in json. Postgres will need better statistics on values in json (so execution plan will be smarter), smart locking when parts of json is updated (maybe?). I don't know what else. Does Postgres have a strategy to support all that and to what extend?<br />Maybe the better option is to provide good-enough functionality for flexible data types like json, hstore and encourage migration to relational structures as soon as the model is stable enough?<br />It's hard to believe that Postgres - a solid relational database will be able to compete with a non-relational database which was built to work with unstructured data from the ground up. And maybe that shouldn't be the goal...imho.Slavahttps://www.blogger.com/profile/09546623022761909519noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-37031896068792612762014-02-24T09:36:56.785-08:002014-02-24T09:36:56.785-08:00ISS: Heh. Mind you, Google is not using PostgreS...ISS: Heh. Mind you, Google is not using PostgreSQL ....Josh Berkushttps://www.blogger.com/profile/09671139717468724246noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-75657984847950968232014-02-24T02:42:40.961-08:002014-02-24T02:42:40.961-08:00Sounds to me like a LAMP/LAPP war. Personally, I&#...Sounds to me like a LAMP/LAPP war. Personally, I've never chosen a technology because it is the default for the language I'm using. Therefore, while I appreciate ideas and efforts in making PostgreSQL a better database, I don't believe PostgreSQL development should be driven by such "defaults".<br />It is however an interesting subject to work on.Luca Ferrarihttps://www.blogger.com/profile/16294282439525862660noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-64422830549796457512014-02-24T01:34:36.980-08:002014-02-24T01:34:36.980-08:00I just launch a startup. We use extensivley Node.J...I just launch a startup. We use extensivley Node.JS and PostgreSQL.<br />hstore2/jsonv will be handsome.Anonymoushttps://www.blogger.com/profile/05970416626551764750noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-80509651858550307952014-02-23T21:34:32.231-08:002014-02-23T21:34:32.231-08:00Was this multiple posting some kind of subtle hint...Was this multiple posting some kind of subtle hint on why upserts are important? #sadtrombone<br />;)<br />imsoserialhttps://www.blogger.com/profile/07154626454323653780noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-77784822077660304952014-02-23T20:47:50.835-08:002014-02-23T20:47:50.835-08:00To clarify, the "Noah" posting above is ...To clarify, the "Noah" posting above is not Noah Misch.Noah Mischhttps://www.blogger.com/profile/06644459451933944414noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-71289649119353815592014-02-23T16:00:52.366-08:002014-02-23T16:00:52.366-08:00Dart is shaping up to be a good competitor to Node...Dart is shaping up to be a good competitor to Node.js. If anyone is interested in contributing to the Dart postgresql driver, patches and bug reports are always welcome. https://github.com/xxgreg/postgresqlxxgreghttps://www.blogger.com/profile/17684739509341423508noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-54017168922181672982014-02-23T12:21:27.955-08:002014-02-23T12:21:27.955-08:00This comment has been removed by a blog administrator.Sandeephttps://www.blogger.com/profile/08059484663197335523noreply@blogger.comtag:blogger.com,1999:blog-7476449567742726187.post-75246059323229949032014-02-23T12:21:25.851-08:002014-02-23T12:21:25.851-08:00This comment has been removed by a blog administrator.Sandeephttps://www.blogger.com/profile/08059484663197335523noreply@blogger.com