Есть коллекция в базе - следующего вида: В ней находится несколько

миллионов документов.
(с полностью идентичной структурой)
Вопрос:
Можно ли с помощью только лишь агрегации(или методов базы - без ЯП) решить следующую задачу? :
1) Проитерироваться по каждым 5-ти элементам из этой многомилионной коллекции (начать с первых 5-ти)
2) сделать выборку из этих 5-ти елементов таким образов что бы на выходе получился 1 документ получишвший выжимку из вышеуказанных 5-ти
3) отправить эту выжимку в новую коллекцию
4) начать следующую итерацию из 5-ти елементов(тоесть повторить предыдущий весь алгоритм) - и так пока вся коллекция не будет профильтрована.

18 ответов

4 просмотра

1) skip, take, limit 2) aggregate 3) тут вам понадобится язык уже или просто жс скрипт(если разово) 4) 1 пункт

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
1) skip, take, limit 2) aggregate 3) тут вам понад...

тоесть без языка никак - я правильно понял?

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
Пишите скрипт

вы имеете ввиду обычный js скрипт или какой то скрипт монги?

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
Монга на жс и работает)

это понятно но я думаю вы поняли вопрос имел ввиду скрипт на языке бекенда или на языке самой технологии монги

Mike Kharkov
это понятно но я думаю вы поняли вопрос имел ввиду...

Скрипт - я имею ввиду просто как файлик или кусок кода, который не будет на вашем беке. А в этом файле вы можете юзать как и операторы монго, так и обычный жс код

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
Скрипт - я имею ввиду просто как файлик или кусок ...

обычный жс код к сожаление не подходит - слишком медленно все работает

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
Что обычный?

тоесть я просто брал жссом дергал данные из базы эти 5 - елементов - делал из них 1 и отправлял в новую коллекцию.

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
1) skip, take, limit 2) aggregate 3) тут вам понад...

на счет 3-го пункта не совсем понял - вроде же есть какой то stage-метод - который заносит в коллекцию полученные данные

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
Мб, в документации, можно все найти)

но какого то аналога цикла не существует получается в методах базы - я правильно понял? допустим положить можно полученные данные но запустить из монги прямо новую итерацию не получится - правильно?

Mike Kharkov
но какого то аналога цикла не существует получаетс...

Если уж так хотите, то зачем вам цикл? Ложите весь свой aggregate response в другую коллекцию. Смысл от цикла тут?

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
Если уж так хотите, то зачем вам цикл? Ложите весь...

ну смысл в том что я же положу только отфильтрованные первые 5 документов из базы - а мне же надо остальную часть из базы дофильтровать

Mike Kharkov
ну смысл в том что я же положу только отфильтрован...

https://stackoverflow.com/questions/31231872/mongodb-lists-get-every-nth-item Мб Вам нужно что то из этого рода или подобное погуглить. Либо просто вы неправильно поставили задачу

Mike-Kharkov Автор вопроса
Vladyslav Hrehul
https://stackoverflow.com/questions/31231872/mongo...

задача правильная есть минутный таймфрейм мне его надо переделать в 5-ти минутный для этого берем и анализирует каждую минуту и делаем исходя из этого анализа - 5-ти минутку

https://www.mongodb.com/developer/products/mongodb/time-series-candlestick/

Похожие вопросы

Обсуждают сегодня

Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
Подскажите, пожалуйста, где в backende, или не в нем можно дату поправить? Логирует действия не в том часовом поясе
Лео
7
Приветствую всех, есть вопросик. Передали проект на OctoberCms, без инсталяшки в полуразвернутом виде, нужно было залить бекап бд, после залития бд, оказалось, что части строк...
Лео
14
Есть магистры regex в чате? Задача: нужно написать regex который мэтчит полные (без сокращений по типу ::1/128) ipv6 адреса кроме 2001:0df7:cef7:29f7:52f7:adf7:2cf7:4ff7, при ...
Илья
5
Всем привет В общем надо на странице вакансии вывести вакансии с hh, но когда я пишу код в разделе Code ошибка Invalid URL format. The URL should start with the forward slash...
A da
1
мне как апи hh написать?
A da
3
где собака, админ группы? нычкуется и боится проявить волю, в толерантность еще не наигрался? @yelizariev
Ognezar
61
Привет! Подскажите может кто сталкивался, при создании купона выходит вот в таком виде окно. Как поправить это?
Ruslan
4
DataGrip не сканирует почему-то все таблицы, хотя раньше показывал их че за херня, сталкивались?
Magic
9
Карта сайта