Contents
- 1 Indexing
- 2 Let a pro handle the details
- 3 Efficient Queries
- 4 SELECT DISTINCT
- 5 Joins
- 6 Number of Rows Returned
- 7 GROUP BY and ORDER BY
- 8 Subqueries
- 9 Optimize WHERE Clause
- 10 Analyze Query Performance
- 11 Database Caching
- 12 Statistics
- 13 Database Sharding
- 14 Database Design
- 15 Client Reviews
- 16 Scott Malin CEO at Malin Method - USA
- 17 Steven Daniels CEO at Black Lotus Audio - USA.
- 18 Kasper Van Ling CEO at Welten Tanzer - Indonesia.
- 19 Nikko Karki CEO at Indoyachts - USA.
- 20 Ching Foo Lieu CEO at How to Finance Money - Malaysia.
- 21 Gino CEO at Zakelijk Leasen - Netherlands.
- 22 Konstantinos Tsementzis-floudas CEO at Delphi Business Group – Australia.
- 23 David Simon Alva CEO at México Pragmatico – México.
- 24 Stefanos Koufopoulos CEO at Group Koufopoulou – Greece.
- 25 FAQ related to DB Projects
- 26 Can I keep editing and working the content while the Database cleanup is running?
- 27 Is the work done on the live website?
- 28 How to assess the success of the project?
- 29 What if I have server errors?
- 30 How safe is the database cleanup?
- 31 What is your database method?
- 32 Will you provide a list with the actions taken?
- 33 Is there a Refund?
Indexing
One of the best methods for optimizing query performance is indexing. The database engine can find and retrieve particular rows considerably more quickly thanks to indexes. The columns indexed should be used in ORDER BY clauses, JOIN conditions, and WHERE clauses.
Let a pro handle the details
Efficient Queries
Write your SQL queries with care. Use aliases for tables to make queries easier to comprehend, just select the columns you need, and avoid SELECT *, which retrieves all columns.
SELECT DISTINCT
Utilizing SELECT DISTINCT may use a lot of resources. If at all possible, look for different approaches that don’t include DISTINCT to get the intended effects.
Joins
Be aware of how you employ JOIN operations. Steer clear of pointless joins and employ the join type that best suits your demands (LEFT JOIN, INNER JOIN, etc.). Make that the connected columns are correctly indexed as well.
Number of Rows Returned
Use the LIMIT clause to restrict the number of rows returned by a query. This is especially helpful for searches that do not require retrieving every entry that matches.
SELECT * FROM your_table LIMIT 10;
GROUP BY and ORDER BY
Be cautious when utilizing GROUP BY and ORDER BY clauses, as they might be resource-intensive. Make sure the relevant columns are appropriately indexed.
Subqueries
Subqueries may be ineffective if they are used for every row, in particular. To get the same result without utilizing subqueries, try rewriting queries using JOINs or other techniques.
Optimize WHERE Clause
Write your WHERE clauses with as much specificity as you can. Utilize the proper operators; functions on indexed columns should be avoided as they may interfere with the use of indexes.
Analyze Query Performance
Utilize database profiling tools for performance analysis and monitoring of queries. Determine which queries are sluggish and improve them using the information the profiling tools have to offer.
Database Caching
Implementing a caching system for queries that are used frequently can greatly enhance performance. Database caching solutions or application-level caching could be used for this.
Statistics
Maintain current database statistics. The query optimizer can make improved decisions about query execution with the use of updated statistics.
Database Sharding
To disperse data across several databases or servers for large-scale applications, take database sharding into consideration. By doing so, the load may be distributed and performance can be raised overall.
Database Design
Make sure the normalization of your database is correct. This can decrease duplication and increase query efficiency.
Before introducing any changes into a production environment, see how they affect a development or staging environment. The ideal technique may differ based on the individual database system you’re using (e.g., MySQL, PostgreSQL, SQL Server).
Client Reviews
Steven Daniels CEO at Black Lotus Audio - USA.
Great work, will absolutely use Ted to speed up all my future websites! Very good communicator and delivered stellar results. Even went back a few times to fix little issues that I found such as certain pages or elements needing to be excluded, etc. Ted took my site from ~50 to nearly 100 on all pages as measured by Pagespeed insights. All around I had a great experience and highly recommend Ted to anyone with a WordPress site that they want sped up! The usability of my website increased and so did my revenue. Another huge plus was his communication was very professional and he even fixed a few extra issues that we ran into along with way like a pro. If you want your site sped up, Ted is your guy.
Kasper Van Ling CEO at Welten Tanzer - Indonesia.
Ted is a great catch. He does the job professionally and solves every problem thrown at him. Very much recommended. I will hire him again in the future if I need him.
Nikko Karki CEO at Indoyachts - USA.
Ted is one of the absolute best developers we have had the pleasure of working with. We came to Ted with a problem that we had tried solving with other developers, but had hit a wall. It was clear during the interview process that Ted knew his subject matter on a much deeper level than all the other applicants. The tasks were completed well beyond our expectations, with a lot of free technical advice and help that is worth much more than what we had agreed on for this project. The hours were billed in the fairest way and it really made this an easy and positive experience. Suffice to say, we will be in touch again soon with more projects to work on together. Thank you so much for your positive contribution to our website.
Ching Foo Lieu CEO at How to Finance Money - Malaysia.
Ted is a Rockstar when it comes to Page Speed optimization. My website speed spiked in leaps and bounds after experiencing Ted's magical touch - mind-blowing to say the least. I've engaged different so-called 'experts' in the past but all they did was band-aid solutions. Ted is refreshingly different. Initially I was skeptical, until I saw the speed metrics literally fly. He also went above and beyond to fix/optimize other related areas which I overlooked or didn't even know. A knowledgeable technical professional like Ted deserves the rate he asks for, so while you may be able to get 'cheaper' rates from others, end of the day, ask yourself whether you are looking for result or cheapest freelancer. Money well spent - I vouch for him.
Gino CEO at Zakelijk Leasen - Netherlands.
Ted is in the 1% of people who actually know what they’re doing when it comes to speed optimisation. He doesn’t simply install a plugin and switch on a few options to increase speed. Ted did a real deep dive into our website and identified all the processes that slowed down our website and fixed it. Cleaned our database and gave us some very solid advice. Trust me this was not an easy task because we have a huge e-commerce website which had dramatically low scores. Now our speed scores are 90+ on almost every page. Need speed? I 1000% recommend you hire Ted.
Konstantinos Tsementzis-floudas CEO at Delphi Business Group – Australia.
We had a website created by a freelancer with a myriad of problems. Ted, worked miracles and went above and beyond to not only fix the problems, but advise on best practice ‘what should be done and why’. He also made recommendations outside the scope and ensured we had a working website to our satisfaction within a timely manner. My one ‘takeaway’ from this is look for experts in their field and pay for quality, you only need to do the job once that way. I would recommend Ted highly not only for his technical ability, but also for his commercial nous and his professionalism in responding to client needs.
David Simon Alva CEO at México Pragmatico – México.
Ted went above and beyond what was expected during the project. We will definitely reach out to Ted in the future for any issues we might come across on our side.
Stefanos Koufopoulos CEO at Group Koufopoulou – Greece.
He improved my site speed from 40/100 to 100/100 in 30 pages! At first i did not believe it was true when i saw it but then i did a little navigation on the site and i realised that is runs super super fast. Efficient, fast and with a lot of experience in improving site speed. Thank you very much Thodoris! Anyone who want to improve their site speed he is absolutely the best professional.
Is the work done on the live website?
The database cleanup work is done on the live (production) website and in the respective database on the server. If it is an e-shop it is nearly impossible to copy the work and a staging website won't keep any new orders coming in during the work. Plus, there may be lack of available disk space to create a test clone (staging).
How to assess the success of the project?
The database response time or database query time will be measured for the most important pages before starting the work and upon delivering the work using accredited monitoring tools that report those metrics, so both parties can compare the progress made upon delivery.
What if I have server errors?
If your server produces 502 errors or has database connection issues I can't give any guarantee that they will be fixed. 502 errors are server errors, and database connection errors originate from faulty MySQL setup on the server, which is a host’s responsibility and liability, as to the reasons they are generated they could be due to unclear factors besides a large database or script installation.
I will optimize the server and clean up the database the same way I do for large e-shops and the delivered database will show whether those errors are reduced or gone. The final payment will not depend on the existence of 502 errors neither database connection errors, as the contract has a limited scope (database cleanup) and the work might, or might not, fix those errors and there will be no guarantee given for those. Feel free to find a dedicated developer as well a server specialist who can fix those errors BEFORE starting the contract.
How safe is the database cleanup?
The database cleanup work has been proven very safe in the 100% of previous database works. Backups will be taken (website and database provided there is enough server disk space), besides any server backups that are automatically running daily or on any other period. I cannot be responsible for any failures attributed to the host to restore backups kept in the host control panel backup tool or elsewhere on the server. It happens sometimes that backups cannot be pulled from the host either because they don’t offer that functionality (e.g. Siteground) or they don't allow their clients to restore from local backups. Host backups are not always reliable (they break or stop due to short intervals set by the host to run scripts) so the backup restore function fails. Bottom line, I will not be deemed responsible for any failures attributed to the host to restore backups kept in the host control panel backup tool or elsewhere on the server.
What is your database method?
I will follow the proven successful method below:
Scope: make the database scalable, lean, and fit to respond faster to queries. The positive effects can be seen immediately, the site renders the pages more quickly, and the speed score is higher.
Areas to optimize:
- The primary technique to improve scalability is to fix performance so that it does not degrade as your site grows.
- Fix slow queries as the site gets bigger
- Fixes the issue of too many queries. This problem most often comes from badly coded search or filtering plugins.
- Fixes the issue of having too much RAM and CPU consumption in PHP.
- Remove the clutter from the database that plugins leave behind when removed.
- Creates indexes and helps the database respond faster to queries.
- Rationalize the autoload table as instructed here: https://wpengine.com/support/database-optimization-best-practices/#Autoloaded_Data
- Removes Woocommerce clutter.
- Reduces those multiple (unnecessary) calls to the database that website themes and plugins do.
Will you provide a list with the actions taken?
No timelog of any actions taken in the database will be shared as there is no way to revert the work done in the database due to the nature of MySQL Databases. A generic list of actions taken in similar projects will be shared and you can read it in the answer above. And as a backup will be shared prior to starting the work that enables you to restore the database if you feel the cleanup is not needed anymore. In this last case an hourly compensation will be due.
Is there a Refund?
No refund will be given for working hours spent to clean up your database. If you wish to cancel the project you won’t be entitled to a refund for payments already done but you are welcome to restore the backup taken from me prior to starting the work. That said, in the event of canceling the project following your wish, you will need to pay for the working hours at an hourly rate of $67 per hour. You will have to take the initiative to contact me and discuss how the hourly compensation is to be paid.
Image by Freepik