postgres:id 每天自动增加数百万行。不好吗?

postgres: id auto-increment with millions of rows per day. is it bad?

在我的数据库中,我每天在 table 中保存数百万行,我在 2 周后删除所有行,因为我不再需要它们了。

我想知道添加主键 id 自动递增是好还是坏,否则我会达到太大的数字。

table 只包含插入,只要用户发出带有用户 ID、时间戳和命令等列的命令。所以要添加一个主键,我想我必须添加一个自动增量,它很快就会变得非常非常高。

考虑到插入量,我应该避免添加它吗?

Postgres 中的 "auto-incrementing" 功能由 serial 数据类型提供。这些在 documentation.

中有描述

如果您每天要插入数百万行,那么我建议您使用 bigserial。您不必担心溢出或重置值。

这还不错,除非它会导致性能问题,并且您有证据证明自动递增是这些问题的根源,这不太可能。

坦率地说,每天 100 万行是花生。你会没事的。如果您希望您的场景持续 3 年以上,您应该使用 serial8(64 位)而不是 serial(32 位)。