Re: JSONB performance enhancement for 9.6

From: Jim Nasby <Jim(dot)Nasby(at)BlueTreble(dot)com>
To: Arthur Silva <arthurprs(at)gmail(dot)com>, Tom Smith <tomsmith1989sk(at)gmail(dot)com>
Cc: Thomas Kellerer <spam_eater(at)gmx(dot)net>, <pgsql-general(at)postgresql(dot)org>
Subject: Re: JSONB performance enhancement for 9.6
Date: 2015-12-03 22:31:06
Message-ID: 5660C2AA.3070208@BlueTreble.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 11/29/15 9:30 AM, Arthur Silva wrote:
> Is this correct? I'm fairly sure jsonb supports lazily parsing objects
> and each object level is actually searched using binary search.

The problem is there's no support for loading just part of a TOASTed
field. Even if that existed, we'd still need a way to know what byte
position in the TOASTed field a key lived at.

It's possible to add all that, but I think it'd be a serious amount of work.

Since someone else was just wondering about storing more specific types
in JSON, it might be more useful/interesting to devise a
Postgres-specific way to store variable schema documents. That would
give us a lot more flexibility over implementation than the JSON type
ever will.

Or think about it this way: there's really no great reason why everyone
chose JSON. There's tons of other serialization storage formats for
other languages out there, so why not one specialized to Postgres? (And
of course we'd want to be able to cast from that to JSON and back...)
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Experts in Analytics, Data Architecture and PostgreSQL
Data in Trouble? Get it in Treble! http://BlueTreble.com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jeff Janes 2015-12-03 23:37:34 Re: json indexing and data types
Previous Message Jim Nasby 2015-12-03 22:15:57 Re: loading data into cluster - can I daisy-chain streaming replication?