Запрос большого количества элементов через Sitecore API - PullRequest
0 голосов
/ 20 сентября 2011

Я прочитал следующий вопрос и ответы на него, которые могут быть связаны:

Использует ли Sitecore Fast Query автоматически?

У нас есть большая галерея, построенная с использованием Sitecore в качестве бэкэнда. В дереве организовано несколько различных страниц галереи:

Sitecore-> Контент-> MediaLibrary-> Галерея-> Пользователь -> {Фотографии} -> {Photo_State}

Где Photo_State одобрен, отклонен и т. Д.

В настоящее время для извлечения изображений из базы данных мы используем GetAncestors () в части дерева «Галерея». Это может извлечь тысячи элементов из базы данных, которые затем фильтруются с использованием обычной практики фильтрации .NET.

Как мы можем сделать это более эффективным способом?

Мы рассмотрели использование API быстрых запросов Sitecore для этого, но в настоящее время я не понимаю, как мы могли бы использовать это для решения нашей текущей проблемы. Итак, наши запросы к БД:

  • Дайте мне все фотографии пользователя (уже обработано хорошо / оптимально)
  • Дайте мне все фотографии, соответствующие запросу - может быть обработано с помощью @title = '% search%' с помощью быстрого запроса
  • Дайте мне первые 28 предметов в галерее - ??? Я не знаю, как это сделать с помощью Fast Query

Есть идеи, как это можно оптимально обработать с помощью API Sitecore?

Ответы [ 2 ]

2 голосов
/ 21 сентября 2011

Я согласен с Марком.Я думаю, что вы должны полностью отказаться от запроса sitecore и использовать индекс lucene для получения данных.

Вот несколько ресурсов, с которых можно начать:

  1. Содержит много информации о поиске Lucene в sitecore
  2. AdvancedDB crawler video
  3. Документация по поиску SDN

Я использовал его на больших веб-сайтах с сотнями тысяч просмотров страниц в день, это довольно солидно,

1 голос
/ 20 сентября 2011

Если у вас потенциально есть тысячи предметов, вы должны использовать индексы Lucene. Advanced Database Crawler может сделать это довольно легко.

...