New TOAST in Town. One TOAST FITS ALL. - part 2 - Oleg Bartunov - PGCon 2022

Discover the new TOAST in town, designed to fit all. Learn about the Toast API, a pluggable and customizable optimization technique for PostgreSQL, and how it improves performance and extensibility.

Key takeaways
  • Toast is an optimization technique used in PostgreSQL to store oversized attributes.
  • The Toast API allows for pluggable toasters, making it easier to extend and customize.
  • The API consists of three main parts: the Toast API, SQL syntax changes, and core changes.
  • The Toast API is divided into three parts: iterator APIs, storage APIs, and access APIs.
  • The storage API provides methods for storing and retrieving toasters.
  • The access API provides methods for accessing toasters.
  • The custom toast pointer is used to store toasters in a table.
  • The Toast API uses a heap table to store toasters.
  • The Toast API provides a default toaster that can be used for most use cases.
  • The Toast API also provides a way to create custom toasters for specific use cases.
  • The Toast API is extensible and can be used with different table access methods.
  • The Toast API provides a way to compress toasters, which can improve performance.
  • The Toast API is designed to be backwards compatible with the current toasting API.
  • The Toast API provides a way to implement toasting for specific data types.
  • The Toast API provides a way to optimize toasters for specific workloads.
  • The Toast API provides a tool for benchmarking and testing toasters.
  • The Toast API is designed to be easy to use and requires minimal changes to the PostgreSQL core.
  • The Toast API is designed to be extensible and can be used with different storage and access methods.
  • The Toast API provides a way to implement toasting for specific data types and uses.
  • The Toast API provides a way to optimize toasters for specific workloads and uses.
  • The Toast API is designed to be easy to use, extensible, and backwards compatible.