Jump to content
Sign in to follow this  
tecnolive

Problemi di frammentazione MYSQL

Recommended Posts

Salve a tutti,

 

mi trovo di fronte a un problema un pò strano... 

 

Praticamente ho un database di circa 30 GB, dove alcune tabelle popolano milioni di dati e a sua volta alcuni cron cancellano migliaia di record ogni giorno (eliminando record dei giorni precedenti).

 

Il problema è la frammentazione dello spazio, nonostante la cancellazione dei record esso occupa lo spazio, e deve essere effettuato un optimize della tabella per recuperare lo spazio.

 

La domanda è: Come posso ovviare questo problema? Non esiste un metodo un qualcosa per rendere "elastiche" le tabelle senza effettuare un optmize?

 

Anche perchè un optimize richiede un certo livello di calcolo e occupa molto tempo "sprecando" un carico non indifferente.

 

Come potrei fare?

 

Grazie mille a tutti.

 

Ciauz ^_^

Share this post


Link to post
Share on other sites

30 GB di archivio, con milioni di query ogni giorno?

IMHO, stati trascendendo quelli che sono i limiti di mysql, che nasce come strumento "free" di basso profilo.

Vedo gente che carichi del genere li gestisce con strumenti oracle (spendendo un rene), ed anche lì possono incontrare difficoltà.

Ma anche senza andare su soluzioni a pagamento, già PostgreSQL  dovrebbe gestire situazioni del genere molto meglio (o, almeno, qualche anno fa lo faceva sicuramente... non so se le ultime versioni di mariadb possano aver colmato i gap precedenti) 

Share this post


Link to post
Share on other sites

Quoto con VonT e aggiungo:

Idealmente Mysql non dovrebbe essere utilizzato per questi carichi, Mysql è molto "forte" nel servire richieste "piccole", visto la mole di dati, sarebbe più preferibile utilizzare PostgreSQL o in alternativa (se devi tenere dati per poco tempo) magari usare un reddis o simili.

Share this post


Link to post
Share on other sites

Ciao a tutti,

 

grazie per le risposte.

 

Fino a qualche anno fa il database girava bene perchè gestiva "poche cose".

 

Stiamo già riscrivendo il software con strumenti più moderni (Redis per recordset statici e cache / ElasticSearch per memorizzare log, ecc).

 

Tuttavia non avevo mai approfondito l'argomento PostgreSQL... Sinceramente non pensavo fosse addirittura migliore di MySQL in certi versi..

 

Mi documenterò sicuramente cercando di capire se è la strada giusta.

 

Oracle non saprei, so che i costi di licenza sono abbastanza alti.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×