非常に頻繁に変更されるデータと結合された大きな (静的) テーブルを混在させる必要があるアーキテクチャを使用しています。
要点を強調するために、SO Web サイトのユーザー アクセスがユーザー データベースに結合されていると想像してください)。
SELECT * FROM UserProfile INNER JOIN OnlineUser (on UserProfiles.id = OnlineUser.id)
ここで、UserProfile は大きな SQL テーブルに存在し、OnlineUser は Web サーバー上の動的データです。
Putting everything memory takes up a lot of room and putting everything in the database would really tax the server (shudder to think of it). Is there a better way of doing this?
God Jon Skeet says LINQ can't cope with doing a join between an in-memory collection and a database table. He suggests a contains clause or list, both of which wouldn't be appropriate in this case.
Edit:
An in-memory table (PINTABLE) in SQL Server could do this. Since that feature has been deprecated, is it safe to assume SQL server 2008 will figure out to keep it in memory to reduce IO?