There are times when it's good to use one big table for things. This is especially true when the data may need to be cross referenced. If you have all your data in some unknown number of tables, it will be very hard to write an app that correlates any data in one table with another.
On the other hand, logically partitioning the data into seperate tables will likely provide some performance increase. It may or may not be a big increase, that depends on your database, OS, and other factors I'm sure I'm forgetting.
It is also less likely that one person will see the data from another's phonebook if you seperate the data by table.