From: | Binguo Bao <djydewang(at)gmail(dot)com> |
---|---|
To: | John Naylor <john(dot)naylor(at)2ndquadrant(dot)com> |
Cc: | Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Andrey Borodin <x4mmm(at)yandex-team(dot)ru>, Atri Sharma <atri(dot)jiit(at)gmail(dot)com>, Stephen Frost <sfrost(at)snowman(dot)net>, Владимир Лесков <vladimirlesk(at)yandex-team(dot)ru>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [proposal] de-TOAST'ing using a iterator |
Date: | 2019-07-25 15:20:50 |
Message-ID: | CAL-OGktbR09fHEMvHGHGDAWw-fQMoh9BVfY4inkAZbN4ceQqYA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi John!
Sorry for the late reply. It took me some time to fix a random bug.
In the case where we don't know the slice size, how about the other
> aspect of my question above: Might it be simpler and less overhead to
> decompress entire chunks at a time? If so, I think it would be
> enlightening to compare performance.
Good idea. I've tested your propopal with scripts and patch v5 in the
attachment:
master patch v4 patch v5
comp. beg. 4364ms 1505ms 1529ms
comp. end 28321ms 31202ms 26916ms
uncomp. beg. 3474ms 1513ms 1523ms
uncomp. end 27416ms 30260ms 25888ms
The proposal improves suffix query performance greatly
with less calls to the decompression function.
Besides, do you have any other suggestions for the structure of
DetoastIterator or ToastBuffer?
Maybe they can be designed to be more reasonable.
Thanks again for the proposal.
--
Best regards,
Binguo Bao
Attachment | Content-Type | Size |
---|---|---|
init-test.sh | application/x-shellscript | 704 bytes |
iterator-test.sh | application/x-shellscript | 649 bytes |
0001-de-TOASTing-using-a-iterator-5.patch | text/x-patch | 22.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2019-07-25 16:46:52 | Re: [Proposal] Table-level Transparent Data Encryption (TDE) and Key Management Service (KMS) |
Previous Message | Rafia Sabih | 2019-07-25 15:09:04 | Re: Initdb failure |