Александр
У меня три вложенности и по каждому объекту в 3 вложенности, который прошел фильтр, нужно сделать новый объект
Александр
yopp
Вероятно вам подойдёт $reduce, вместо $filter
yopp
https://docs.mongodb.com/manual/reference/operator/aggregation/reduce/#mongodb-expression-exp.-reduce
yopp
у него есть значение-аккомулятор, в который вы можете поместить трансформированные записи, если они удовлетворяют вашему условию
Александр
Александр
map также рабоатет, подскажите пожалуйста, как добавить только нужные поля мне. Нужно только три поля из полученного объекта
Sergey
Замечательно, что в последней версии компаса при импорте коллекции теперь можно указывать тип поля.
Александр
Подскажите, теоретический вопрос. У меня есть такая коллекция с тремя уровнями вложенности. Я беру все объекты на третьем уровне ( sessions ) и добавляю к каждому поля из первого и второго уровня.
Вопрос: не легче сделать коллекцию, где будут уже тысячи sessions с нужными полями ?
Александр
Александр
Melonges
кто юзает mongodb compass на mac os, у вас после закрытия(кросная кнопка), то у вас обратно compass не открывается?
Melonges
в cloud ограничение 500мб на всю бд, аккаунт или только на кластер 500мб ограничение?
Viktor
Всем привет. Недавно с монгой работаю . Подскажите есть возможность у монги создать тригер на добавление нового документа . Что бы при добавлении документа в коллекцию , этот документ отправить в адрес какого то рест сервиса?
Roman Khonichev
Viktor
Ок. Спасибо
Mansur
Ребят привет! Использую mongo transactions и официальный драйвер mongodb для golang. Кейс такой, есть метод в котором происходит операция Find для объекта, а после в рамках транзакции выполняется UpdateOne для его поля. При высоких нагрузках на сервис валятся ошибки WriteConflict, на что обратить внимание? Почему так происходит?
Alexander
Mansur
Mansur
Daniel
Привет. В монго можно как-нибудь упростить ObjectId? Например, чтобы вместо id: 6065a26f0ee2c73b8081d5e5 объектам генерировался id: 1, id: 2, id: 3?
Daniel
Или просто привести ObjectId к числовому виду, чтобы там не было букв
Mansur
Денис
Салют
В монго атлас можно как-то хранить рар файлы ?
I
Всем привет. Тоже вопрос. Есть модель, которую нельзя менять, у неё есть целочисленное поле но тип имеет String, Можно ли сделать так, что бы MongaDB усебя на лету конвертила в Long, а при вытаскивании обратно в String
I
без влезания в модель
Денис
Vladimir
I
I
I
ну или как вариант. Если Nan, пусть будет -1
Vladimir
вообще, в монге "модель" это виртуальная сущность, в бд ее нет, это прелести монгуса, или какой орм вы там пользуетесь, я деталей проекта не знаю, но я бы взял тупо другой клиент, или типа того. Но ведь, раз "нельзя" то на то есть причины... я бы об этом сперва продумал.
Но создать нативным клиентом другой коннект и делать с ним чего угодно - всегда пожалуйста.
I
I
но лид уже запилил гигантский запрос. И просит теперь что бы все id были как long
I
🤯
Vladimir
не, ну если втупую, и надо, то просто ParseInt(model.id) и погнали дальше. Модель не трогаем поле в number
Ilya
I
I
я если честно не знаю.. почему так это нужно.. Надо короче его переубедить
CkopitcK
Hai all, how to deploy mongodb and mongodb dashboard using loadbalancer on kubernetes
Thankyou
Николай
добрый день, кто-то пользовался mongosastic для nodejs? есть вопрос по подключению анализатора
Anton
Привет всем! Не знаете есть ли встроенные методы дампа find() запроса в json, может у драйверов
Anton
Чтобы не писать свой батчер/чанкер для дампа большое кол-ва данных
Vladimir
Viktar
Да. Монгоэкспорт умеет запросы в цсв и Джейсон выгружать
Anton
Медленно бывает если ты явно указываешь какой-то индекс который построен плохо для запроса. Покажи свой запрос
Anton
Вообще я не понимаю почему еще никто не придумал сервис который строит индекс по запросу, удобная штука
Anton
Неужели чтобы построить индекс нужны нелинейные способности
Anton
А что дает explain()?
Anton
Да, но у тебя два запроса, это как понимаю findOne(),
а updateOne()?
Anton
totalKeys / totalDocs должны стремиться к 1
У меня порой были фризы в максимально 3 секунды на сложном запросе, но там totalKeys было под 70000
Anton
Может дело в железе? Я под битым HDD когда-то запускал, так ждал несколько минут пока данные в ОЗУ зайдут
Anton
Так по итогу какой запрос из двух самый долгий? Неужели findOne такой долгий? А если lean() убрать с запросов?
Narek
Привет всем!
Такой вопрос:
есть коллекция с документами, документы переодически обновляются и им прописывается updatedAt, гарантии, что updatedAt уникальный нету. Задача получать документы отсортированные по updatedAt и при этом с cursor-based пагинацией, никто не сталкивался?
Т.е. в конечном итоге мы должны пройтись по всей коллекции, а потом ничего не получать, пока у какого-то документа не пропишется более свежий updatedAt
Viktar
Посмотрите в сторону sort
Viktar
https://docs.mongodb.com/manual/reference/method/cursor.sort/
Narek
Сорт по двум полям понятно, но как пагинацию делать? Допустим если я буду делать $ge по айдишнику - это не будет работать, если у документа обновится updatedAt, айдишник то у него не обновляется
Viktar
Skip поможет
Viktar
https://docs.mongodb.com/manual/reference/method/cursor.skip/
Viktar
Limit тоже
Narek
Это все медленно
Viktar
Я делал таким образом: грузил сразу 3 странички, а потом в фоне подгружать ещё три.
I
Вопрос. Как искать через критерий, в спринге. Если есть несколько массивов. Ругается на маппер
Narek
Ну это не решает проблему
Viktar
Narek
Narek
Если более высокоуровнево - нужна возможность постоянно читать самые свежие (обновленные) записи из бд
Narek
Некий стрим
Vladimir
Некий стрим
changes Streams не думали заюзать?
Narek
Думали, но хочется понять как эту проблему решить обычными чтениями
Narek
Пока сделали так: когда обновляем документ пишем в updatedAtCursor = timestamp + uuid()
Narek
Но с этим тоже могут быть проблемы если uuid не растет монотонно
Narek
Вот думаю мб записывать timestamp + монговский objectid генерировать на месте
Viktar
А зачем вам на ид завязываться?
Narek