| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Dmitry Dolgov <9erthalion6(at)gmail(dot)com> |
| Cc: | Mitar <mmitar(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org |
| Subject: | Re: Why is writing JSONB faster than just JSON? |
| Date: | 2021-04-15 16:47:25 |
| Message-ID: | 3785442.1618505245@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Dmitry Dolgov <9erthalion6(at)gmail(dot)com> writes:
> On Wed, Apr 14, 2021 at 10:26:23AM -0400, Tom Lane wrote:
>> My own guess about this, without having tried to reproduce it, is that
>> JSONB might end up physically smaller than JSON, resulting in less work
>> to push the toasted datum out to disk. This'd depend a lot on your
>> formatting habits for JSON, of course. But in any case, it'd be worth
>> comparing pg_column_size() results to see what's up with that.
> Oh, of course I've missed that the input I was using was indeed
> formatted, without formatting both cases perform equally well and I
> can't reproduce the issue. Although if I understand correctly the
> original code in question doesn't actually do any formatting.
My point was that for JSON, after validating that the input is
syntactically correct, we just store it as-received. So in particular
the amount of whitespace in the value would depend on how the client
had chosen to format the JSON. This'd affect the stored size of
course, and I think it would have an effect on compression time too.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Rama Krishnan | 2021-04-15 17:04:04 | Query processing in postgresql |
| Previous Message | obi reddy | 2021-04-15 16:43:44 | Pg_upgrade problem. |