Например, представьте себе систему, которая содержит всех студентов, зарегистрированных в штате / провинции. Государство разделено на школьные советы, школьные советы разделены по школам, в школах могут быть отдельные ученики. Для каждого учащегося хранится соответствующая информация, такая как возраст, класс и средний балл. Все это хранится в MySQL дБ наиболее очевидным способом.
Я хочу иметь страницу, на которой пользователь может просматривать списки школьных досок по атрибутам учащихся. Скажи, покажи мне все школьные доски, в которых есть ученики со средней оценкой 3,0. Кроме того, я хочу упорядочить результаты по школьным советам, у которых большинство учеников соответствуют фильтру, и так далее.
Отсюда и вышеприведенное описание - поиск в дереве узлов-ветвей, но отфильтрованных и упорядоченных по конечным узлам
Это делается для веб-приложения, поэтому нам нужно только показать 10 лучших результатов на первой странице. Тем не менее, я не смог найти способ сделать это, не обыскивая весь набор учеников во всей системе, затем обыскивая все школы, частью которых являются эти ученики, затем находя соответствующие школьные доски, затем один раз У меня есть все это, сортировка их всех, чтобы получить 10 лучших школьных советов.
Мысль о том, как сделать это через SQL дБ и с помощью ElasticSearch.
Надеюсь, это не слишком открытый вопрос, но я чувствую, что пропускаю ключевой шаблон проектирования программирования или что-то еще, и просто не знаю, как достаточно точно описать эту проблему, чтобы найти ее в Google.