На этой неделе появилась версия MongoDB 3.4.0 Release Candidate 2 с кучей вкусняшек на борту, которые хочется попробовать уже сейчас. Предлагаю провести дегустацию одного из самых вкусных блюд предстоящего релиза - пайпа по имени $graphLookup - с помощью которого можно выполнять поиск по коллекции рекурсивно. Напишем запрос к коллекции, документы которой имплементируют связный список. Реализация подобной структуры в текущем стабильном релизе на мой взгляд вообще не вариант, и я рад что уже совсем скоро смогу рассчитывать на нее в процессе проектирования.
Инициализируем:
Начнем с начала:
Реверсим массив используя новый оператор $reverseArray, после чего миксуем его с первым документом:
Развинчиваем массив:
Вытаскиваем содержимое поля "items" с помощью еще одного нового пайпа по имени $replaceRoot:
Easy peasy.
В чем профит? Можно недорого перемещать элементы списка:
Благодаря $graphLookup можно отдавать список частями:
Инициализируем:
Начнем с начала:
Реверсим массив используя новый оператор $reverseArray, после чего миксуем его с первым документом:
Развинчиваем массив:
Вытаскиваем содержимое поля "items" с помощью еще одного нового пайпа по имени $replaceRoot:
Easy peasy.
В чем профит? Можно недорого перемещать элементы списка:
Благодаря $graphLookup можно отдавать список частями:
Комментариев нет:
Отправить комментарий
Комментарий будет опубликован после модерации