I have a base entity with over 350,000 records, and the number is growing daily. Recently, I noticed that it takes around 15-16 seconds to load, whereas earlier, with around 340,000 records, it used to load within seconds. What could be causing this slowdown, and how can I reduce the load time, considering the record count may reach up to 1,000,000 in the near future?
How to Improve Load Times for Large Datasets?
Collapse
X
-
First - set up a log of slow queries and analyze when delays occur (https://mariadb.com/kb/en/slow-query-log-overview/ for mariadb)
Second - add the necessary indexes in accordance with the queries​
Comment
-
It's reasonable to provide more details about what exactly is loading slow for you.- Only the list view of a particular entity type?
- Does it load slowly for both admin and non-admin users?
- Does it load not slowly if you set sorting by some other field?
- Does it load slowly if you disable Total Count on the list view?
- MariaDB or MySQL?
1,000,000 is not a big number of a well configured system.If you find EspoCRM good, we would greatly appreciate if you could give the project a star on GitHub. We believe our work truly deserves more recognition. Thanks.Comment
-
dimyy Some useful links:
Just looking at my host provider and notice that I have a database filesize limit... looking at my database these two table is huge... not sure if it safe to delete or how I can trim down the size a little. Email is a must to keep there, but the other two I think we can safety delete? Anyone can advise? I probably do a backup
Dont know if cleanup works better now when i wrote the post.
I delete the "biggest" tables like that:
delete from bpmn_flow_node where created_at < now() - interval 30 DAY;
delete from bpmn_process where created_at < now() - interval 30 DAY;
delete from scheduled_job_log_record where created_at < now() - interval 30 DAY;
delete from job where created_at < now() - interval 30 DAY;
Followed by SSH:
mysqlcheck -u root -p --optimize <dbname>
Follow the Link from yuri. 1 M dataset is not much data for SQL-Table. Biggest SQL-File from customer I've ever seen was round 1.5 TB Database-File (MS-SQL). 300 M dataset for one OracleDB-Table is possible without performance loose.
Most reason if databases get slower are fragmented or missing index, if having enough RAM and fast storage.
Comment
Comment