Евгений
И на сколько сильно плохой тот вариант, который я отправил? Сильная ли нагрузка, если данных много
Nick
El
Приветствую.
Если нужно обеспечить на кластере приложениям доступ к real time изменениям, движок ДБ имеет значение? Вроде WiredTiger, inMemory ?
Nick
El
El
Спасибо.
Sergey
Доброго времени суток! Подскажите пожалуйста, какие преимущества/недостатки есть у MongoDB в долгосрочной перспективе использования на проде, по сравнению, например, с PostgreSQL ?
Или это зависит от изначальных целей и того, какой результат предполагается?
Владимир
Добрый день! Конкретно у нас возникли проблемы с транзакциями (приходит запрос на обновление одного и того же документа -> несколько транзакций запускаются и все после первой падают, пришлось заводить ретраи. Еще в некоторых случаях документная модель не совсем подходит что-ли🤔
Петр
Народ, кто шарит за агрегационные запросы? Или кто нибудь из вас делал отчёты по данным используя монгодб?
Александр
Я
Петр
Александр
Нет(, лень, спать хочу
Нуриддин
Евгений
Добрый день! Хочу уточнить, можно ли как-то populate делать в aggregate?
Kvhqm
-
Vitalii
hallo
у меня spa без ssr на vercel (бесплатный) и тут пришлось добавить serverless c mongodb и вот такая проблема что коннект к монго работает через раз почти всегда, выглядит это странно и не понятно, может кто сталкивался?
-
Alexander
Привет! Для монги есть разница между существующим полем в документе со значением null и отсутствием поля?
-
andreyvsc
Всем привет. А есть в монге pitr стандартными методами, без использования pbm?
Black
В чем смысл Approximation паттерна?
Магомед
Да
А есть разница между существующим полем в документе со значением undefined и отсутствием поля?
ILIA
Коллеги, подскажите пожалуйста как правильно делать бэкапы в шардированной mongo db , какой порядок действий. Архитектура следующая: 3 конфигурационных сервера, 3 mognos , 2 шарда по 3 сервера каждый.
Евгений
Добрый день. Использую Mongoose.
В чем может быть ошибка? Выдает пустой массив departments
Я что-то не так в lookup прописал?
Евгений
Евгений
Nick
В from название коллекции, а не имя модели
Black
В чем смысл Approximation design паттерна?
Black
Евгений
Такой вопрос.
У меня имеется список сотрудников организации (staffer organization)
На основе этого списка я нашел список всех отделов (departments) у данной организации
На основе списка departments я нашел список всех сотрудников отдела
Как мне в конечном итоге, вывести у сотрудника организации (staffer organization), все departments, в которых он состоит?
Пока что у меня получается так, что у каждого пользователя выводится доп. массив, которых хранит всех сотрудников отдела
Евгений
Ну или где и как требуется сохранить _id найденного staffer organization, чтобы при найденных staffer departments фильтровать их
Nick
ILIA
Vladimir
Всем привет, такой вопрос, часто приходится использовать facet и стал упираться в ограничение по памяти PlanExecutor error during aggregation :: caused by :: document constructed by $facet is 335923953 bytes, which exceeds the limit of 335544320 bytes, тюнили размер, но это не выход каждый раз увеличивать объем памяти используемый для facet + там можно далее словить BufBuilder attempted to grow() to 67108899 bytes, past the 64MB limit., вопрос есть ли альтернатива facet?
Для примера опишу немного кейс:
{ $match: { some expressions }}
{ $facet: {
withOptions: [
{ $unwind: '$option' },
... some actions
],
noOptions: [
{ $match: { options: [] }}
]
}}
{ $replaceRoot: { newRoot: { list: { $concatArrays: [ '$withOptions', '$noOptions' ]}}}},
{ $unwind: '$list' },
{ $replaceRoot: { newRoot: '$list' }},
Евгений
Использую Mongoose.
Сначала проблема:
- Использую unwind, чтобы достать ID присоединенных отделов (departments), чтобы дальше с этой ID работать
- Из-за UNWIND происходит создание лишних объектов. Условно: Пользователь 1 + Отдел 1, Пользователь 1 + Отдел 2.
Как мне сделать так, чтобы было: ПОльзователь 1 + [Отдел 1, 2], но при этом достать ID данных отделов
Vladimir
Группируй и властвуй addFields
Vladimir
Евгений
Явно то, что я делаю можно сделать легче
Евгений
Ты еще не видел дальше
Евгений
-
Либо через ` вставляйте код либо используйте типа pastebin, чтобы читабельно было. Также опишите, что у вас где есть и какой результат вы хотите, так легче будет вам помочь
Vladimir
второй лукап разбейте на несколько и будет проще для восприятия
Евгений
UML диаграмма
- Краткое описание:
1. Коллекция - Пользователи
2. Коллекция - Организации
3. Коллекция - Отделы
4. Коллекция - Должности в Отделах
5. Коллекция - Сотрудники Организации
Мне нужно:
- Получить список сотрудников организации (массив), в котором будет отображаться информация о пользователе (объект): его email, массив отделов, в которых он состоит и какая у него должность в данном отделе.
- Если сотрудник не состоит в отделе, то массив отделов пустой
На входе я получаю только ID организации
Евгений
Vladimir
Евгений
Vladimir
самое простое собери все что нужно lookup+unwind, Далее сгруппируй, как тебе угодно, можно перед этим собрать нужную структуру
Vladimir
и мой тебе совет, если только начинаешь работать с агрегациями, используй простой lookup, без let+pipeline
Евгений
Смотри, у меня на входе чисто ID Организации. Как это я вижу:
Lookup 1: Мне нужно получается найти всех сотрудников организации (не трудно, так как есть ID организации)
Lookup 2: Мне нужно найти список всех отделов (не трудно, так как есть ID организации)
Трудность начинается дальше. Мне нужно найти список всех должностей в отделах. Следовательно нужно опираться на тот массив найденных отделов
Vladimir
Vladimir
тут не очень понятно, у департамента только одна запись о должности?
Vladimir
такое ощущение, что нет связи между должностью и user'ом
Евгений
Забыл, в Position Department есть еще userId
Viktar
Добрый день, столкнулся с такой проблемой, удалил базу (500гб dropDatabase). Но свободное место так и не появилось(прошло 4 дня) версия монги 6.х. Может кто сталкивался или знает как решить. repair не вариант, оставшихся баз на 12Тб, он займет недели.
Vladimir
ну в конце можешь не unwind, а first + filter по userId использовать для positionDepartments
Умид
Доброго времени суток
Подскажите пожалуйста в данный момент я новичок в области MongoBD поработал на mongo compas и mongosh то что внутри mongoBD создал БД создал несколько коллекции и документы там вкладные документы поработал с запросами и операторами
Что можете посоветовать дальше изучать
Nick
E1ecti
Умид
а цель какая?
Мы начали это изучать в университете тема мне самому понравилось из за этого начал изучать в данный момент программу универа по этой области освоил на 100% хотелось бы дальше изучать
Умид
Qwerty
Умид
Умид
Nick
Nick
Умид
andreyvsc
andreyvsc
Интересное...
Умид
Nick
Писать запросы - задача DBA?
да, самая прямая. Разработчик приходит к ДБА и говорит "вот мне надо собрать такую эксельку, но с твоей структурой черт ногу сломит, сроку два дня, таска вон там"