我将已发送的电子邮件存储在RDBMS中,包括地址,地址和电子邮件正文。
身体实际上可以是任意数量的文本,我也不会在意它。
在我最常访问的一个表(电子邮件)中,当一个可能很大的列没有经常使用时,我是否应该担心性能问题?
(这个项目是用Rails编写的)
答案 0 :(得分:8)
postgresql将大对象存储在辅助区域中。你可以在这里阅读:TOAST。主要关注点是将大对象保留在返回许多行的选择查询列表之外,这样就可以避免访问辅助存储区域。
如果您决定在正文中添加搜索功能,则需要使用全文策略,这在Postgres中得到了很好的支持,但有点不直观。该主题在手册中获得full chapter处理。
答案 1 :(得分:7)
不,你不必担心。
从技术上讲,例如,存储器之间的存储没有区别。 varchar(5)
和text
列。
来自manual
的引用这三种类型之间没有性能差异,除了使用空白填充类型时增加的存储空间
提到的三种类型有char
,varchar
和text
。其中char
是“空白填充类型”。