我正在使用PostgreSQL作为数据库进行网站项目的开发。我试图构建一个包括向量空间模型表格的网络数据库结构。
我创建了一个带有属性terms
和docId[]
的表格,其中docId
是术语的文档ID。 docId
的类型为integer[]
。因此,我可以在一个单一的数组中输入包含该术语的文档列表。但是术语的docId数组可能会包含很多条目。
所以我的问题是:Postgres中一维数组的最大大小是多少?
我正在使用PostgreSQL作为数据库进行网站项目的开发。我试图构建一个包括向量空间模型表格的网络数据库结构。
我创建了一个带有属性terms
和docId[]
的表格,其中docId
是术语的文档ID。 docId
的类型为integer[]
。因此,我可以在一个单一的数组中输入包含该术语的文档列表。但是术语的docId数组可能会包含很多条目。
所以我的问题是:Postgres中一维数组的最大大小是多少?
PostgreSQL 数组没有大小限制。行或列大小必须有限制,但可以达到数百万个条目。
将术语与文档关联的更 SQL 的方法是一对多的关系。实现方式如下:
table term: columns term_id, term, document_id
table document: columns document_id, summary, ...
term
表中的document_id
列被称为外键。
我没有发现数组元素数量的限制,但是字段大小有限制。在 PostgreSQL 中,字段的最大大小为 1GB,因此数组中大约只能容纳 268435456 个元素。请注意,对这样的数组进行索引或搜索可能是无用的。