Les lignes par table ne seront pas un problème en elles-mêmes.
Donc, grosso modo, 1 million de lignes par jour pendant 90 jours équivaut à 90 millions de lignes. Je ne vois aucune raison pour que Postgres ne puisse pas gérer cela, sans connaître tous les détails de ce que vous faites.
En fonction de la distribution de vos données, vous pouvez utiliser un mélange d'index, d'index filtrés et de partitionnement de table quelconque pour accélérer les choses une fois que vous avez identifié les problèmes de performances que vous pourriez avoir ou non. Votre problème sera le même sur tous les autres RDMS que je connais. Si vous n'avez besoin que de 3 mois de conception de données dans un processus pour élaguer les données, vous n'en avez plus besoin. De cette façon, vous aurez un volume constant de données sur la table. Vous avez de la chance de savoir combien de données existeront, testez-les pour votre volume et voyez ce que vous obtenez. Tester une table avec 90 millions de lignes peut être aussi simple que :
select x,1 as c2,2 as c3
from generate_series(1,90000000) x;
https://wiki.postgresql.org/wiki/FAQ
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