【发布时间】:2017-10-26 05:47:41
【问题描述】:
在我的应用程序中,我需要一个设置,让每个用户在数据库中都有一些派生/计算的信息。它应该是最多 100 个不同的数据集,每个用户大约 100 行 (100x100)。这些行需要大约每三个月刷新一次。所以,假设有 10000 个用户,如果每个人都使用所有一百个地方,每 3 个月重新创建 1 亿行。据我所知,Postgre int 字段为 2147483647,即 2100M+。那么,使用这种设置,我会在 5 年内用完 id/pk 吗?
我应该重新考虑我的设置还是有办法解决?
我使用的是 Python 2.7.6,PostgreSQL 服务器是 9.3 和 Django 1.8。
【问题讨论】:
-
Django(1.10 起)提供
BigAutoField。您需要创建models.Model的子类,覆盖id字段,然后从该字段继承。 -
@Kendas:好建议。那么,在某个时间点,数据库真的必须使用价值数百万的 id 吗?我希望有一些自动重新索引或类似的东西,在它达到疯狂的数字之前...... :-)
-
@Kendas:如果您想重新发表您的评论作为我接受的答案,它会为我提供有关如何修改我的项目的更具体信息。
-
不幸的是,不,它只是在不断增长。
标签: python django postgresql