Sobes.tech
Junior — Middle

Hogyan szervezi a PostgreSQL az 2 kilobájtot meghaladó objektumadatok tárolását?

sobes.tech MI

Válasz az MI-től

A PostgreSQL-ben az objektumok (például táblaszámok), amelyek körülbelül 2 kilobájt felett vannak, a TOAST (The Oversized-Attribute Storage Technique) mechanizmus segítségével tárolódnak.

Amikor egy mező értékének mérete meghalad egy meghatározott küszöböt (körülbelül 2KB), a PostgreSQL automatikusan kiveszi az adatok egy részét a TOAST segédtáblákba. A fő táblában csak egy mutató marad ezekre az adatokra.

Ez lehetővé teszi nagy objektumok (például nagyon nagy szövegmezők vagy bináris adatok) hatékony tárolását anélkül, hogy jelentősen rontaná a teljesítményt a normál műveletek során.

Példa: ha van egy TEXT típusú oszlopod nagyon nagy szöveggel, a PostgreSQL azt a TOAST táblában tárolja, és a fő táblában csak egy hivatkozás lesz erre a fragmentumra.

Így a fejlesztőnek nem kell manuálisan kezelnie a nagy adatok tárolását — ezt az adatbázis-kezelő rendszer (DBMS) automatikusan végzi.