Alexander
Можно использовать Date().
Aleksandr
при апдейте с апсертом можно, но там нужен ключ, а у меня вдруг инсерт-онли коллекция
Alexander
🙂
Dmitriy
new Date()
Aleksandr
Можно использовать Date().
это не время сервера будет же
Aleksandr
это будет время апи
Aleksandr
ну, клиентское короч
Alexander
это не время сервера будет же
Это будет время сервера. Но другого... 🙂
Aleksandr
спросил по-нормальному же
Alexander
Но в целом, тебе есть разница?
Aleksandr
чо опять флудить
Alexander
весело веселооо (очень весело особенно 2 января с бодуна ночером профилировать базу, ага 😅), но в принципе оки-доки)
Ну блин, не надо перед НГ ничего такого выкатывать. Тут сами себе злобные буратинки же.
Alexander
Хотя у меня была традиция, последнюю выкатку в году запускать из бара... Один раз огребли. Да, было весело!
Avtandil
Привет всем. Я новенький в моного. Не соображу как обновить документ. Структура документа: { _id: '1234', services: [{ _id: '56789', dates: [ 01.01.2020, 02.01.2020 ] }] } Используя findOneAndUpdate() как я могу в массив dates добавить запись? Как записать правильный фильтр? Спасибо за помощь !
Avtandil
https://docs.mongodb.com/manual/tutorial/query-array-of-documents/
Спасибо, но я не могу разобраться как обновить в массиве значение объекта
yopp
Спасибо, но я не могу разобраться как обновить в массиве значение объекта
https://docs.mongodb.com/manual/reference/operator/update/positional/#update-documents-in-an-array
Denis
Вечер добрый. Можно сгенерировать _id новый для вложенного документа? Чтобы не Oid получить а просто новый id?
а
Хорошей пятницы. Вопрос: [ { "$lookup": { "from": "someData", "let": { "dataList": "$dataList" }, "as": "data", "pipeline": [ { "$match": { "$expr": { "$in": [ "$_id", "$$dataList" ] } } },... ] } } ] Есть документ. в котором есть List<ObjectId> dataList (с айдишникаи другого документа someData) В случае, если dataList=null (отсутствует в json) - я по понятным причинам огребаю: "$in requires an array as a second argument, found: missing" а) Как разруливать такое? Нормально будет сделать ifNull: [] (типа такого) б) Возможно не лукапом можно это делать а какой-то другой функцией итд? Reduce?
Гена
Коллеги, такой вопрос. Клиент обновил версию драйвера с 3.6.4 на 3.11.2 И при апдейте документов, которые были созданы на старом драйвере вылазит ошибка OptimisticLockingFailureException а с доками которые на новом драйвере всё ок. Версия монги 3.4.9
Андрей
Всем привет) Как вывести все айдишники из базы массивом? не такого вида: [{uid: 112121},{uid:433232}] а таким: [1122121,23432434,454656]
Sargis
Всем привет, кто-нибудь делал шардинг монго, какие книги или ресурсы посоветуйте?
Volodymyr
mongodb university. Бесплатные курсы от создателей. Есть курс для разработчика и для дибиэй
Serhii
Вопрос, реально ли что при добавлении в колекциию составного индекса с (1 дата и 3 ObjectId) скорость выборки увеличится в 1.5к раз, а вставки на 30%? Количество записей в бд 40 млн.
madspectator
В полторы тысячи раз?
Serhii
В полторы тысячи раз?
сам в шоке, была агрегация которая отрабатывала 30-35 сек, после добавления составного индекса, по полям которого идет первы $match агрегации, скорость сократилась к 10-20мс
Serhii
самое странное что при этом и вставка стала быстрее
Serhii
я как бы был уверен что скорость вставки упадет, но на 500 последовательных одиночных вставок, средгняя скорость без индекса 2.9 мс против 1.9 мс с индексами
Serhii
при этом вставка по от 1к до 10к за раз с индексами медленнее
Илья
а вставка / чтения постоянным потоком? подозреваю что да, а раз так меньше нагрузка на чтении больше ресурсов на остальное
yopp
Лучше смотреть не на среднее, а на mean и stdev
yopp
Плюс для честного сравнения нужно проверять на холодной базе
Max
А такой вопрос - можно ли кильнуть операцию создания индекса в фоне, а то она все нагрузила и не намерена быстро завершиться и их еще и 4?
madspectator
В монгоконсоли попробуйте: db.killOp(opid)
Max
Ничего плохого не случится?
madspectator
Не знаю, гыгы.
madspectator
Мне кажется, если бы что-то плохое могло случиться, тогда бы killOp не позволял убить операцию построения индекса.
madspectator
Мне кажется, это так работает, сначала индекс полность строиться, потом информация о нём добавляется в мета-данные коллекции.
Anonymous
у меня вопрос, если поставить монго на linux без пользователя, это будет безопасно?
Max
Спасибо ничего не случилось после убийства процесса
Artem
Всем привет. Такой вопрос. Возможно ли восстановить данные из БД, которые были недавно обновлены?(хоть и маловероятно, что это возможно, но всё же)
Artem
Каким образом можно загрузить фото в mongoDB через mongoose? Чет гуглю не могу найти
Сергей
Каким образом можно загрузить фото в mongoDB через mongoose? Чет гуглю не могу найти
Его или кодировать надо или грузить куда то ещё и заносить в базу урл...
Volodymyr
Можно заюзать GridFS в MongoDB
Артем
У меня все было нормально а щас пишет field connect
Артем
С чем это связано?
madspectator
С чем это связано?
Так у вас сервер mongodb упал, наверное.
Артем
Артем
Он у меня на mongoDB.Atlas
Артем
Странно здесь пишет что все работает а в postman не соединяется
Artyom
Всем привет, подскажите , монгосу вообще можно выставить кол-во выделяемой памяти ?
Сергей
Добрый вечер. Как можно найти кол-во только тех документов, у которых хотя бы одно из перечисленных полей существует? Пытаюсь так
Сергей
но монга подразумевает, что $x это не поле, а оператор
Сергей
то же самое
Сергей
Unrecognized expression '$x'
Сергей
на sql это было бы так select city, model, sum(case when x is not null or y is not null then 1 else 0 end) from xxx group by city, model
madspectator
А зачем там "$"? В агрегации не знаю, как должно быть, но в обычном find() запросе это будет find({'x': {'$exists': true}})
Сергей
в агрегации через $ идет обращение к полям
Сергей
без $ уже ошибка Unrecognized expression '$exists'
madspectator
Это когда надо получить значение, а вам значение не надо получать.
madspectator
https://stackoverflow.com/questions/41542746/mongoose-aggregate-using-exists-in-cond
Avtandil
Всем привет. Я новенький в nodejs, mongodb. Столкнулся с непониманием при аутентификации. В php при входе на сайт записывал данные о пользователе в глобальный массив SESSION и при каждой перезагрузки страницы обращался к нему и извлекал данные о пользователе. Как и где хранятся данные пользователе в ноде ? Спасибо за любую информацию.
Сергей
https://stackoverflow.com/questions/41542746/mongoose-aggregate-using-exists-in-cond
спасибо. Работает. Но как тут работает логическое "или" $or: [{ $ifNull: ["$x", false] }]? Если у x есть значение, то ifNull вернет его. Но это значение не булевское. $or все равно посчитает это за истину?
madspectator
Не знаю, а что мешает вам проверить руками на тестовой коллекции?
Сергей
я проверил, что оно работает. Но мне интересно, нормально ли для $or считать не булевское значение как истину