Come ottimizzare un database con milioni di ordini e archiviare vecchi dati?
#1
Sto sistemando il database per un piccolo e-commerce e mi sono accorto che la tabella degli ordini sta diventando enorme, con milioni di righe. La query per estrarre i report mensili sta iniziando a impiegare un tempo che non mi aspettavo, quasi un minuto. Ho pensato di archiviare i vecchi ordini in una tabella separata, ma non so se sia la strada giusta o se ci siano soluzioni più pulite che non complicano troppo la logica dell'applicazione. Qualcuno che ha affrontato un problema simile per un progetto in crescita?
Cita messaggio
#2
Capisco il dilemma archiviazione potrebbe essere utile ma non vorrei che si trasformi in un cerotto. Valuta anche l ottimizzazione delle query e l indicizzazione prima di decidere sull archiviazione
Cita messaggio
#3
Dal punto di vista analitico una soluzione pulita potrebbe essere archiviazione in una tabella storica con partizioni mensili e viste aggregate. Così le query mensili non soffrono di milioni di righe
Cita messaggio
#4
Mi sembra frustrante ho visto casi simili archiviazione salvare le performance ma serve disciplina. Qualche idea su come impostare le regole di archiviazione?
Cita messaggio
#5
Forse non e la strada giusta archiviazione potrebbe complicare il recupero. Prova a misurare i tempi delle singole parti delle query e valuta caching o finestre temporali
Cita messaggio
#6
La cosa interessante e la governance dei dati archiviazione si trova a margine tra velocita e accesso storico. Potresti introdurre una tabella di conteggio per ogni mese senza archiviazione immediata
Cita messaggio
#7
Non sono convinto che archiviazione sia una bacchetta magica. La query potrebbe beneficiare di index mirati e di una partizione per mese ma archiviazione comporta logica di recupero complessa
Cita messaggio


Risposta rapida
Messaggio
Scrivi qui il tuo messaggio.

Verifica Immagine
Per favore inserisci il testo contenuto nell'immagine nella casella di testo sotto ad essa. Questa operazione è necessaria per prevenire gli spam bot automatici.
Verifica Immagine
(maiuscole indifferenti)

Vai al forum: