To really know, you need to pick a database and benchmark it with each basic configuration you're talking about. The sad truth is that some databases will be faster with a lot of smaller tables and lots of joins / views, while other databases will be faster with a few large tables and fewer joins.
Intelligent use of indexes can help alot on the multi-table join setup.
I'd favor the many tables with lots of joins, because I know my favorite database (postgresql 7.0.2) handles this stuff quickly and efficiently, but for other dbs, it's hard to say without testing it.