PostgreSQL表太大了?

我正在为我的公司进行RoR项目的设计,我们的开发团队已经对设计(尤其是数据库)进行了一些辩论。

我们有一个Message需要持久化的模型。这是一个非常小的模型,除了id之外只有三个db列,但是当我们投入生产时,可能会有很多这样的模型。我们每天最多要看1,000,000次插入。只能通过可索引的两个外键来搜索模型。同样,不必删除模型,但是一旦它们使用了大约三个月,我们也不必保留它们。

因此,我们想知道的是,在Postgres中实现此表是否会带来严重的性能问题?有没有人有使用大型SQL数据库的经验,可以告诉我们这是否会成为问题?如果是这样,我们应该选择哪种选择?

回答:

每张表的行数本身就不会成为问题。

因此,大致来说,每天一百万行90天是9000万行。我认为没有任何理由,Postgres不能解决这个问题,而又不知道您正在做的所有细节。

根据数据分布的不同,可以在看到可能存在或不存在哪些性能问题后,将索引,过滤索引和某种类型的表分区混合使用以加快处理速度。在我所知道的任何其他RDMS上,您的问题将相同。如果您只需要3个月的数据设计时间即可修剪掉数据,那么您就不需要了。这样,您将在表上拥有一致的数据量。幸运的是,您知道将存在多少数据,对其容量进行测试并查看获得的结果。测试一个具有9千万行的表可能很容易:

select x,1 as c2,2 as c3

from generate_series(1,90000000) x;

https://wiki.postgresql.org/wiki/常见问题解答

Limit   Value

Maximum Database Size Unlimited

Maximum Table Size 32 TB

Maximum Row Size 1.6 TB

Maximum Field Size 1 GB

Maximum Rows per Table Unlimited

Maximum Columns per Table 250 - 1600 depending on column types

Maximum Indexes per Table Unlimited

以上是 PostgreSQL表太大了? 的全部内容, 来源链接: utcz.com/qa/397262.html

回到顶部