I'm working on an app that will have messages exchange and which have a database with several tables to all users data and preferences but I got thoughtful about the table of messages. I will have about 10k users that will exchange about 500k messages per month.

I have saw some questions in concern of this but are about of tables to store preferences and data, what I consider very different cases. So I was building the logic in this way, creating a table for each user, in a database created only for these message tables, so I can find the messages faster.

I thought: there would be 500k messages to query per month against 40~50 messages per month if having a table for each user.