PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL:qual è il numero massimo di tabelle che è possibile memorizzare nel database postgreSQL?

Q1:Non esiste un limite esplicito nei i documenti . In pratica alcune operazioni sono O(n) sul numero di tabelle; aspettarsi un aumento dei tempi di pianificazione e problemi con cose come l'autovacuum quando si arriva a molte migliaia o decine di migliaia di tabelle in un database.

Q2:Dipende dalla query. In generale, i grandi sindacati sono una cattiva idea. L'ereditarietà delle tabelle funzionerà un po' meglio, ma se stai usando constraint_exclusion comporterà un notevole aumento dei tempi di pianificazione.

Entrambe queste domande suggeriscono un problema di fondo con il tuo design. Non dovresti averne bisogno un numero enorme di tavoli e sindacati giganti.

Seguendo il commento nell'altra risposta, dovresti davvero creare solo alcune tabelle. Sembra che tu voglia creare una tabella per numero di telefono, il che non ha senso, e per di più creare visualizzazioni per numero. Non farlo, sta modellando in modo errato i dati e renderà più difficile, non più facile, lavorare con. Indici, dove clausole e join ti consentiranno di utilizzare i dati in modo più efficace quando sono strutturati logicamente in poche tabelle. Suggerisco di studiare la modellazione relazionale di base.

Se in seguito riscontri problemi di scalabilità, puoi esaminare il partizionamento , ma non avrai bisogno di migliaia di tabelle per questo.