3 ms·
> extract the fields from your json and keep them as additional columns in the table You can do that only for simplest key-value json, not the more complicated
by est 11y ago
> extract the fields from your json and keep them as additional columns in the table
You can do that only for simplest key-value json, not the more complicated ones IRL.
E.g. an array
ID, book_title, book_intro, book_tags
here book_tags is a json array. Now try index that!
Mongodb could index it, full text could index it, pg 9.4+ could, but not other RDBMS.
Support nested data structure in RDBMS is hard. You have to implement flat/unflat voodoo in a weird & lame, non-SQL DSL
- raphaelj 11y ago> here book_tags is a json array. Now try index that! You just need to create a new table which links tags to books. That's how relational databases are normalized ...
- est 11y agoExpanding a billion row table into a hundreds of billions of rows table is not really a good idea MongoDB handled this really well, create two index entries pointing to the same row.
- blumkvist 11y agow00t? A billion attributes on hundreds of billions of rows? Could you think more of an edge case? You're just coming up with shit so you can show off how l33t you are. If you have that kind of a need, just go for a NoSQL server, nobody is stopping you. This feature is a nicety to have, not a replacement of NoSQL.
- ahachete 11y agoYou could also do it in pg pre 9.4. Just create functional indexes on the paths you wanted to index. The advantage of 9.4 is special indexes for jsonb, which may index the whole field or just some paths. So even pg 9.2 was better than SQLServer's approach...