What if the core datamodel is for read-only purposes? Applications could each have their own database and connect to the core database for read-only purposes.
If all the databases reside on the same server then this should be pretty solid based on my past experience. The core datamodel could be accessed through SQL by basic dot notation by prefixing the table name with the database name.
Like I mentioned based on my experience 5 years ago in SS2005 linked databases were pretty solid - I'm not referring to linked servers in this scenario....
well like patrick mentioned, some of the impacts are easy to test.
copy your two biggest tables(that are related) to another database.
SELECT * FROM T1 LEFT OUTER JOIN T2 ON T1.ID = T2.ID, with the actual execution plan.
do the same, but with one of the tables from the cross database.
SELECT * FROM T1 LEFT OUTER JOIN OtherDatabase.dbo.T2 AS T2 ON T1.ID = T2.ID, with the actual execution plan.
compare the differences.
now repeat that one more time, but with a linked server instead of a cross database call;
you'll see the execution plans getting more and more complex, and the linked server dumping data into temp.
if your tables are not all that big, it might be fine, but I try to avoid linked servers for info; I'd rather replicate the data, and allow a bit of stale data.
--help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!