RE: Question on Db Table design

Databases are really good at handling tables with millions of rows,
and joins with other tables to retrieve sets of rows (assuming you have
the correct indexes setup)

The only time you would worry about ‘too much data’ is when you get so
many users that you swamp the database machine with requests. Only then
would you look at partitioning the data, and, in your case, partitioning
by user would make sense. The partitioning would be across database
servers, not between tables on the same server, and here you would have
the same schema on each server, and some way of deciding which server a
particular user’s data would be saved on.