Mi rendo conto che, per i documenti Pg (http://www.postgresql.org/about/), è possibile memorizzare un numero illimitato di righe in una tabella. Tuttavia, qual è la "regola generale" per il numero di righe utilizzabili, se ce ne sono?Numero massimo (utilizzabile) di righe in una tabella Postgresql
Contesto: Voglio memorizzare le letture giornaliere per un paio di decenni per 13 milioni di celle. Funziona su 13 M * (366 | 365) * 20 ~ 9.5e10 o 95 righe B (in realtà, circa 120 righe B).
Quindi, utilizzando il partizionamento delle tabelle, ho impostato una tabella principale e ho ereditato le tabelle per anno. Questo divide le righe in ~ 5,2 righe B per tabella.
Ogni riga è composta da 9 SMALLINT e due INT, quindi 26 byte. Aggiungi a questo, l'overhead Pg di 23 byte per riga, e otteniamo 49 byte per riga. Quindi, ogni tabella, senza alcun PK o qualsiasi altro indice, peserà in ~ 0,25 TB.
Per gli utenti iniziali, ho creato solo un sottoinsieme dei dati precedenti, ovvero solo per circa 250.000 celle. Devo fare un po 'di tuning (creare indici appropriati, ecc.), Ma le prestazioni sono davvero terribili in questo momento. Inoltre, ogni volta che ho bisogno di aggiungere più dati, dovrò rilasciare le chiavi e ricrearle. Il vantaggio è che una volta caricato tutto, sarà un database di sola lettura.
Qualche suggerimento? Qualche altra strategia per il partizionamento?
Senza un'adeguata messa a punto, le prestazioni devono essere errate, nessun database potrà mai eguagliare la tua situazione, né la mia. Prima scopri quali sono i problemi, quindi puoi iniziare a risolverli. –
Per quanto riguarda il riepilogo dei dati, hai davvero bisogno di questa granularità? – pcent
pcent - sì, ho bisogno di questa granularità. Frank Heikens - sì, ho bisogno di sintonizzare il db, e sono in procinto di identificare i problemi. La mia domanda era di natura preventiva, per i tavoli in db di quelle dimensioni di cui sto parlando. – punkish