Our client has a website for comparing things. He was in need of a separate website or tool in which users can compare the cars and based on some algorithm, the website needed to show the ranks for cars. Admin will manage the questions asked from the user on the front end.


Although it looks like a very simple website, but in the background we need to manage a lot of things. Data: There were 50 million records which we need to import into MYSQL. Complex Algorithm: We need to use one algorithm given by the client to get the ranks of cars based on inputs. Filtration: We need to show the total number of cars based on users input on every step. Speed: We need to show the result very fast.


After analyzing all the challenges, we used the Events for migrating the data into the table. After migration, we applied the filtration and sent it to corresponding tables. We used the temp tables to keep the users inputs and applied the final algorithm on the temp table. We used optimized query to get the result very fast. We use the caching for fast loading.