Le righe per una tabella non saranno di per sé un problema.
Quindi, in parole povere, 1 milione di righe al giorno per 90 giorni è 90 milioni di righe. Non vedo alcun motivo per cui Postgres non possa occuparsene, senza conoscere tutti i dettagli di ciò che stai facendo.
A seconda della distribuzione dei dati, puoi utilizzare una combinazione di indici, indici filtrati e partizionamento di tabelle di qualche tipo per accelerare una volta che vedi quali problemi di prestazioni potresti avere o meno. Il tuo problema sarà lo stesso su qualsiasi altro RDMS che conosco. Se hai solo bisogno di 3 mesi di progettazione dei dati in un processo per eliminare i dati, non ne hai più bisogno. In questo modo avrai un volume consistente di dati sul tavolo. Sei fortunato che tu sappia quanti dati esisteranno, testali per il tuo volume e vedi cosa ottieni. Testare una tabella con 90 milioni di righe può essere facile come:
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