Thread: [Proposal] TOAST'ing in slices

[Proposal] TOAST'ing in slices

From
Bruno Hass
Date:
Hello Hackers,

I'm intending to optimize some varlena data types as my GSoC proposal. That would be done by a smarter way of splitting the TOAST table chunks, depending on its data type. A JSONB would be split considering its internal tree structure, keeping track of which keys are in each chunk. Arrays and text fields are candidates for optimization as well, as I outlined in my proposal draft (attached). Not being very familiar with the source code, I am writing to this list seeking some guidance in where to look in the source code in order to detail my implementation. Furthermore, I have a couple of questions:
  • Would it be a good idea to modify the TOAST table row to keep metadata on the data it stores?
  • This proposal will modify how JSONB, array and text fields are TOASTed. Where can I find the code related to that?

Kind regards,

Bruno Hass

Attachment