postgres实际上是如何存储数组数据的



正如我对关系数据库所知,记录以相同的大小存储。然而,PostgreSQL中的数组数据类型在大小上是灵活的。那么PostgreSQL实际上是如何存储Array数据类型的呢?它是否将数组的指针存储到记录,并将值存储在其他地方?

在PostgreSQL(以及我所知道的其他数据库(中,行没有固定的大小。

数组的存储方式与具有可变大小的类型的所有其他值一样:如果行有超过2000字节的危险,TOAST机制将首先压缩这些值,如果这还不够,则将它们离线存储在TOAST表中。

有关详细信息,请参阅文档。

最新更新