I am developing a website on django & MySQL which is similar to linkedin in terms of complexity and functionality and am expecting steep growth for a few months.
I have one question. While designing the models and the views, I have two options. Either go for smaller number of database hits and handle bigger querysets(by making more complex queries & more joins) or handle smaller querysets thereby increasing the number of database hits. For example, when I use prefetch_related() & select_related(), the no. of database hits is reduced significantly, but the size of the querysets and the no of joins performed on the tables increase. This is just one example.
So considering the conditions under production, what should i prefer out of the above two. A little explanation would be better.