对于 django/PostgreSQL DB - 推荐的最大对象大小应该是多少?

Posted

技术标签:

【中文标题】对于 django/PostgreSQL DB - 推荐的最大对象大小应该是多少?【英文标题】:for django/PostgreSQL DB - what should be the recommended maximum object size? 【发布时间】:2014-07-02 07:03:09 【问题描述】:

在我的 SQL 数据库中保存具有 200 个字符或更多字符大小的字符串的对象是一种好习惯吗?如果没有,我的极限应该是多少?这对我很重要,因为在我的情况下,我可以拥有很多这样的实体,可能超过几百万。

我的直觉是我应该将对象数据保存在 db 中,并且只保存外部文件中的字符串字段。我考虑的原因主要是为了更好的缓存管理和保持数据库文件纤细。但我找不到任何信息来证实或反驳我的假设,我不想夸大其词。

谢谢!

【问题讨论】:

【参考方案1】:

对于不同长度的字段,您可以使用TextField 而不是CharField,这样您就不必设置大小。

可变长度字段和文本字段通常都适用于大量文本。

【讨论】:

嗯,这不是我要问的,但你的回答确实让我看到了这个***.com/questions/7354588/…,并阅读了关于 char 与 varchar 的信息,这给了我一些有用的信息。但我仍然不确定在数据库中保存许多潜在的长字符串字段是否是一种好习惯?谢谢【参考方案2】:

一般来说,这对 PostgreSQL 来说并不重要。

textvarchar 在内部是一样的,只是varchar 有一个可选的长度限制。

两者都是无限长度的,都是可压缩的,都可以离线存储。

很少有理由主动限制字段大小。

【讨论】:

以上是关于对于 django/PostgreSQL DB - 推荐的最大对象大小应该是多少?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Django + PostgreSQL 进行快速搜索

Django/PostgreSQL 全文搜索 - 在 AWS RDS PostgreSQL 上使用 SearchVector 与 SearchVectorField 时的不同搜索结果

Django Postgresql ArrayField 聚合

Django/PostgreSQL varchar 到 UUID

完整性错误:更新或删除违反外键约束。 Django + PostgreSQL

Docker-compose实战——Django+PostgreSQL