Описание тега select-n-plus-1
Используйте этот тег для проблемы ORM, известной как выборка N+1 запросов.
2
ответа
Hibernate Subselect vs Batch Fetching
Hibernate предоставляет (как минимум) два варианта решения проблемы N+1. Один из них устанавливает FetchMode на Subselect, который генерирует выбор с предложением IN и выбором внутри этого предложения IN. Другой - указать BatchSize, который генериру…
30 авг '11 в 05:42
1
ответ
Как эффективно выполнять вложенные запросы SQLlite
У меня есть база данных (футбольных) игр, содержащая дочерние таблицы периодов (например, первая и вторая половина), события (например, цель, предупреждение) и места (где вы были до и во время игры). Чтобы отобразить родительскую таблицу игр, я испо…
09 сен '17 в 22:23
1
ответ
Hibernate выполняет N+1 выбор вместо 1 запроса при использовании Query Cache
Я застрял с проблемой, я чувствую себя действительно потерянным и не знаю, что делать. Я использую кеш запросов + кэш второго уровня и хочу правильно кешировать результаты в течение 10 секунд. Так вот мой ehcache.xml: <ehcache xmlns:xsi="http://w…
13 фев '19 в 15:59
1
ответ
N+1 проблема для пользовательского метода в рельсах
В моем приложении рельсы у меня есть User модель с методом под названием price_tier: def price_tier Spree::PriceTier.by_code[read_attribute(:price_tier)] end Тем не менее, когда у меня есть коллекция @users и вызовите price_tier один за другим, он з…
29 окт '18 в 04:34
0
ответов
Как починить рельсы N+1
У меня есть определенные inlcudes в моем контроллере для модели contentType. Мне нужно поймать все комплекты контента на этой странице с предварительной загрузкой. Это метод выборки для него: def fetch_content_suites ContentSuite .includes(:tools) .…
28 авг '17 в 13:24
2
ответа
EF Core вложенные результаты Linq select в N + 1 SQL-запросах
У меня есть модель данных, где объект "Top" имеет от 0 до N "Sub" объектов. В SQL это достигается с помощью внешнего ключа dbo.Sub.TopId, var query = context.Top //.Include(t => t.Sub) Doesn't seem to do anything .Select(t => new { prop1 = t.C…
10 янв '17 в 16:23
1
ответ
Вопрос N+1 о двунаправленной связи один на один с Jpa и Hibernate
Выполняемый запрос: from PurchaseOrder o join fetch o.basket where o.statusE in (:statuses) Сопоставление в PurchaseOrder: @OneToOne(cascade=CascadeType.ALL, fetch = FetchType.LAZY, optional = false) @Fetch(FetchMode.JOIN) @JoinColumn(name="basket_i…
11 окт '13 в 16:12
1
ответ
Решение выбрать n + 1 автоматически
Это простой пример проблемы выбора n + 1 в ORM в pht, но идея должна быть такой же в других ORM других языков. Типичное решение состоит в том, чтобы использовать готовую загрузку, чтобы уменьшить его до 1 запроса, что я не думаю, что это очень слож…
07 дек '15 в 22:44
1
ответ
Почему идентичные запросы NHibernate выполняются на порядок медленнее в проекте WinForm, чем в модульном тесте MSTest?
У меня есть приложение, которое запускается в качестве службы на производстве, но мы проводим некоторое ручное тестирование с простым графическим интерфейсом - в нем практически ничего не происходит, это просто оболочка с текстовым полем для ввода. …
21 июн '12 в 20:37
2
ответа
NHibernate N+1 проблема извлечения
У меня есть сущность и беглое отображение, которое выглядит следующим образом. public class Client : EntityWithTypedId<long> { [Length(Max=50)] public virtual string GivenName { get; set; } public virtual IList<Address> Addresses { get; …
04 ноя '10 в 11:58
1
ответ
Я не могу избежать этого выбора N+1
У меня есть это отображение (оно пришло из adventureworks, так как я использовал его в демонстрационном приложении для автоматической подкачки страниц) ModelMapper mapper = new ModelMapper(new SimpleModelInspector()); mapper.Class<Contact>( k …
14 окт '11 в 06:50
3
ответа
JPA @OneToOne выберите списки с N+1 запросами
Я на самом деле пытаюсь использовать JPA @OneToOne аннотация, чтобы связать Child сущность к своему Parent, Это работает хорошо, за исключением того факта, что при получении списка Childs, движок JPA (в данном случае Hibernate) выполняет 1+n запросо…
11 дек '17 в 13:56
1
ответ
Использование свойств навигации Entity Framework без создания большого количества запросов (избегая N+1)
Я использовал Entity Framework Profiler для проверки доступа к данным в проекте MVC и перебрал несколько страниц, где я делаю гораздо больше запросов к базе данных из-за проблем N+1. Вот простой пример, чтобы показать мою проблему: var club = this.A…
13 май '11 в 21:59
1
ответ
Эффективный подзапрос SQLAlchemy для последнего значения
Текущее значение сущности status Атрибут может запрашиваться как последняя запись в таблице EntityHistory для этого объекта, т.е. Entities (id) <- EntityHistory (timestamp, entity_id, value) Как мне написать эффективное выражение SQLALchemy, кото…
17 июн '16 в 19:45
1
ответ
Почему ВЫБИРАЕТ N + 1 без внешних ключей и LINQ?
У меня есть база данных, которая, к сожалению, не имеет реальных внешних ключей (я планирую добавить это позже, но предпочитаю не делать это прямо сейчас, чтобы облегчить миграцию). Я вручную написал доменные объекты, которые сопоставляются с базой …
26 сен '12 в 15:36
4
ответа
Почему n+1 выбирает шаблон медленно?
Я не очень разбираюсь в базах данных и только что прочитал о проблеме "n+1 selects". Мой дополнительный вопрос: если база данных находится на том же компьютере, что и моя программа, кэширована в ОЗУ и правильно проиндексирована, почему шаблон запрос…
07 окт '14 в 21:14
1
ответ
Rails ActiveRecord N+1 Проблема
У меня есть заявление для получения следующих данных: название порции еды, название еды, название еды и категория еды. и все четыре поля находятся в разных таблицах. я использую такое утверждение @food_servings = FoodServing.find(params[:food_servin…
28 июн '11 в 18:21
0
ответов
Как "группировать" разрешение свойства для списка объектов?
У меня есть список некоторых объектов, которые я заполняю из результата запроса к базе данных. List<Competition> myList; // fetched from DB Если мне нужно получить доступ к свойству одного / нескольких объектов в этом списке, что требует повто…
11 май '15 в 07:32
3
ответа
Избегать N+1 выбора с родным sqlQuery?
Вот что у меня есть: Entity A -> oneToMany -> Entity B -> manyToOne -> Entity C И поскольку мне нужно выполнить внутреннее соединение без внешних ключей между A и другим объектом X, я должен использовать createSqlQuery, а не createQuery.…
09 мар '11 в 15:48
1
ответ
Rails 4, подзапросы ActiveRecord SQL
:parent has_many :children и я пытаюсь получить возраст самого старшего ребенка для родителя в качестве атрибута на parent, Я открыт для любого решения, которое достигает этого эффективно. Причина, по которой я пытаюсь сделать подзапрос, состоит в т…
18 июн '15 в 16:43