💡
原文英文,约1100词,阅读约需4分钟。
📝
内容提要
Postgres使用TOAST将大于8kb的数据分割成较小的块进行存储,TOAST可能会影响查询性能,并且由Postgres自动完成。TOASTed数据存储在单独的表中,并且可以进行压缩。TOASTed数据通常对查询响应较慢。为了实现高效的存储和检索,重要考虑数据类型设置和数据建模的改变。
🎯
关键要点
- Postgres使用TOAST将大于8kb的数据分割成较小的块进行存储。
- TOAST是自动完成的,用户无需手动设置。
- TOAST可能会影响查询性能,增加数据交付的复杂性。
- Postgres的页面大小为8kb,通常希望每个元组的大小不超过2kb。
- TOASTed数据存储在单独的表中,并且可以进行压缩。
- TOAST表自动索引,数据查找速度较快。
- 数据类型的存储选项包括PLAIN、EXTENDED、EXTERNAL和MAIN,影响TOAST和压缩。
- TOAST表用于存储文本、JSON、图像等大数据类型。
- 更新TOASTed行的单个列时,必须更新所有受影响的页面,可能导致性能问题。
- 频繁访问的数据不应使用TOAST,建议使用传统列结构。
- 对于空间数据和较大集合,可能需要使用TOAST,可能导致查询效率低下。
- 注意数据类型设置和数据建模,以提高存储和检索效率。
➡️