Наш проект зависит от одной большой базы данных MSSQL. Эта база данных доступна для многих других приложений. Некоторые из них используют первую модель базы данных EF. В этой базе данных имеется более 300 таблиц. Некоторые из них мы должны использовать некоторые из них для других частей приложения. Когда мы перерабатываем базу данных, EF создает модель со всеми таблицами без каких-либо проблем. Иногда наш код использует только одну таблицу, но нам еще нужно объявить большую модель.Отличаются ли большие модели баз данных EF от производительности приложения
Мой вопрос заключается в том, что производительность пострадает от приложения, если мы всегда инициализируем модель с большим количеством таблиц в ней.
Что происходит за кулисами, когда мы имеем таких код
public string peaceOfData(int id)
{
using (modelWhit500tables largeMode = new modelWhit500tables())
{
return largeMode.onlyOneTable.Find(id).data;
}
}
Наших приложений в основном MVC приложение, содержащее ряд веб-API контроллеров.
Нам нравится иметь одну большую модель из-за простоты уровня базы данных и простоту обслуживания для изменения дизайна базы данных.
Так же, как примечание, не может говорить о EF прозрений об этой точки зрения, но с NHibernate, имеющей _lot_ моделей/карт может «повредить» производительность при создании SessionFactory, хотя есть обходные пути для кэширования сопоставлений xml и перезагрузки с диска, если они не изменены. Однако создание фабрики сеансов обычно происходит один раз при запуске пула приложений. – kayess