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

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

18 ответов

16 просмотров

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/

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

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

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
1. https://www.kaggle.com/code/ahmadrezagholami2001/housing-estimation-linear-regression 2. https://www.kaggle.com/code/ahmadrezagholami2001/uncovering-quality-in-wines-logis...
Ahmadreza
1
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Карта сайта