V
connecting to: mongodb://127.0.0.1:27017/agario_db1?authSource=admin&compressors=disabled&gssapiServiceName=mongodb Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused : connect@src/mongo/shell/mongo.js:374:17 @(connect):2:6 exception: connect failed exiting with code 1
V
есть идеи?
Ярослав
Слушайте посоны... А чисто теоретически :D у меня в коллекции может быть 512 полей? А ещё теоретичнее я могу на эти 512 полей составной индекс навесить? Допустим у меня поиск всегда будет производиться по этим 512 полям разом )) В монге такое не воспрещается?
Nick
Слушайте посоны... А чисто теоретически :D у меня в коллекции может быть 512 полей? А ещё теоретичнее я могу на эти 512 полей составной индекс навесить? Допустим у меня поиск всегда будет производиться по этим 512 полям разом )) В монге такое не воспрещается?
Не больше 32 полей в составном индексе https://docs.mongodb.com/manual/reference/limits/#mongodb-limit-Number-of-Indexed-Fields-in-a-Compound-Index Всего не больше 64 индексов на коллекцию. Можно попробовать сделать несколько покрывающих индексов, но как этл работать будет надо смотреть на ваших запросах вместе с эксплейном
Nick
Нет ограничений, главное помнить что коллекции в монге это файлы в одной директории базы данных, а не все файловые системы хорошо переносят много файлов в одной директории. И сверху не надо зыть ulimitы поднять чтобы по файловым дескрипторам не вылететь
Nick
Да
Nick
не знаю есть ли там встроенные бекапы с атласом не работал. Но обычный ручной через mongodump/mongoexport с указанием там адреса БД с атласа отроботает
Fenicu
Добрый! Подскажите как в самой агрегации поставить условие на $size, сейчас вот так выглядит [{"$project": {"count": {"$size": "$triggers"}}}] мне нужно условие, чтобы приходило > 0
Andrey
Вопрос к знатокам, можно ли в mongodb "на лету" преобразовывать base64 в байты и после проверять условие(условно 3 байт равен чемто)
Andrey
По уже имеющиммя данным
Dmitry
https://pastebin.com/9QiA4AXG Вот у меня есть документ, адекватна ли структура документа в MongoDB? Что меня смущает - сложно будет делать выборки по уровням вложенности. Как решать эту проблему? А еще, я бы хотел делать выборки всех тесткейсов, независимо от бандла. Ну или по ключу - testBundle + testCase
Dmitry
db.Bundle.aggregate( [{$unwind: "$testCases"}] ) Query failed with error code 2 and error message 'unknown top level operator: $unwind' on server localhost:27017
Dmitry
В чем ошибка?
Sinaver
народ подскажите как можно сделать чтобы вместе ObjectId были названия ингредиентов, у меня есть отдельная коллекция где хранятся эти ингредиенты
Александр
Добрый вечер. Подскажите пожалуйста... беру moment на сервере и на локальном пк и они разные.Получается число на сервере - это последний коммит и дальше он не обновляется. Как это объяснить ?
Oleh Kopyl
Привет. Есть в базе данных MongoDB документ (всего один): {{ "user_id": 2222, "queries": [ { "query": "fucker!!!", "word": "fucker!!!", "descriptions_sent": true }, { "query": "fucker!!!", "word": "fucker!!!", "descriptions_sent": true } ] } Если сделать unwind и сгруппировать значения вот так: db_users_telegram.aggregate([ { "$unwind": "$queries"}, { "$group": { "_id": { "queries": "$queries.word", "descriptions_sent": "$queries.descriptions_sent", "user_id": "$user_id" } } } ]) То результат такой: {'_id': {'queries': 'fucker!!!', 'descriptions_sent': True, 'user_id': 2222}} Вопрос – почему в результате нет 2х одинаковых строк типа {'_id': {'queries': 'fucker!!!', 'descriptions_sent': True, 'user_id': 2222}} {'_id': {'queries': 'fucker!!!', 'descriptions_sent': True, 'user_id': 2222}} Если в БД они есть? И ка сделать чтобы дубликаты сохранялись?
Anonymous
Привет. Есть в базе данных MongoDB документ (всего один): {{ "user_id": 2222, "queries": [ { "query": "fucker!!!", "word": "fucker!!!", "descriptions_sent": true }, { "query": "fucker!!!", "word": "fucker!!!", "descriptions_sent": true } ] } Если сделать unwind и сгруппировать значения вот так: db_users_telegram.aggregate([ { "$unwind": "$queries"}, { "$group": { "_id": { "queries": "$queries.word", "descriptions_sent": "$queries.descriptions_sent", "user_id": "$user_id" } } } ]) То результат такой: {'_id': {'queries': 'fucker!!!', 'descriptions_sent': True, 'user_id': 2222}} Вопрос – почему в результате нет 2х одинаковых строк типа {'_id': {'queries': 'fucker!!!', 'descriptions_sent': True, 'user_id': 2222}} {'_id': {'queries': 'fucker!!!', 'descriptions_sent': True, 'user_id': 2222}} Если в БД они есть? И ка сделать чтобы дубликаты сохранялись?
Вроде монго не хранит дубли. Это всегда 1 документ. чтобы были 2 разных. надо добовлять уникальный _id
Александр
Добрый вечер. Подскажите пожалуйста... беру moment на сервере и на локальном пк и они разные.Получается число на сервере - это последний коммит и дальше он не обновляется. Как это объяснить ?
Oleh Kopyl
Вроде монго не хранит дубли. Это всегда 1 документ. чтобы были 2 разных. надо добовлять уникальный _id
Есть один костыль. Но это очень костыльный костыль "$group": { "_id": { "queries": "$queries.word", "descriptions_sent": "$queries.descriptions_sent", "user_id": "$user_id" }, "test": { "$push": "$queries.word" }, }
Oleh Kopyl
С ютуба попробуй
Oleh Kopyl
Почему костыль?
Потому что потом нужно еще доставать с вложенных групп
Daniil
Добрый вечер. Подскажите пожалуйста... беру moment на сервере и на локальном пк и они разные.Получается число на сервере - это последний коммит и дальше он не обновляется. Как это объяснить ?
А почему оно должно обновляться? Вы объявляете переменную за пределами функции, она один раз инициализируется (в этот момент времени вычисляется ее значение), а дальше статична.
Daniil
Если вы хотите, чтобы она имела актуальное значение — объявляйте ее внутри тела в функции
Google
Всем привет можете помочь у меня есть массив как могу сделать чтобы не было дубликат Object date ? при записи можно как-то запретить ?
Google
unique: true не помогло
Google
Александр
Подскажите пожалуйста, как отсортировать по разнице полей, без создания нового поля с разницей ? Нужно отсортировать по условию commonTime -idlingTime
Ilya
самая ужасная библиотека для работы с датами
Ilya
не юзать же new Date()
есть date-fns, dayjs, luxon
ולאד
есть date-fns, dayjs, luxon
а чем момент плох?
Ilya
а чем момент плох?
1) мутабельность 2) отсутствие thee-shaking 3) большой размер
Vladislav
1) мутабельность 2) отсутствие thee-shaking 3) большой размер
На 2 из пунктов бэкенду в целом плевать
Vladislav
Но вообще да, осознанно брать moment когда есть luxon от этих же авторов это тупо
Daniil
На 2 из пунктов бэкенду в целом плевать
И на 1 тоже, если не исповедуется соответствующий подход
Vladislav
И на 1 тоже, если не исповедуется соответствующий подход
Не, мутабельность момента это реально хуйня Помню фиксил баг когда в совершенно другом месте захардкодили таймзону, из-за чего во всем приложении было не то время
Vladislav
Основная проблема в этом кейсе не в моменте
В нем нет защиты от дурака по сравнению с luxon
Александр
Подскажите, как удалить документы, если разница поля A и поля B > 500 ?
Vlad
Подскажите плз. запускаю shell.exec('mongo mongoUrl myscript.js') А он вместо того, чтобы запустить myscript.js файл. По видимуму запускает его через shell построчно. На коммент /** - ОШИБКА /bin - permission denied На коммент START - START not found На обьявление ф-ции - syntax error. Что может быть? Недавно обновили с 3.6->4.2, может из за этого хз, до этого работало
Vlad
exec('mongo', [arg, arg])
И в чём дело? Локально shell.exec отрабатывает. А так спс. Попробую.
Артур
всем привет) не могу никак найти) как импортировать дамп базы в mongp-express (веб версия), каждый раз создавать колекцию и забивать туда json ? как то неочень удобно( коллекций то много(
Артур
как можно все скопом залить(, юзаю докер в предачу
Google
Всем привет можете помочь у меня есть массив как могу сделать чтобы не было дубликат Object date ? при записи можно как-то запретить ?
I
а не документ
Google
Есть способ обойти ?
I
принцип понимания, Коллекция, Документ, как хранятся данные в монге есть?
Google
Если скажем одинаковый date идёт не было добавлен
I
агрегированная операция
I
у тебя есть данные, которые хранятся в монге, верно?
I
ты хочешь вытащить только те, где нет повторов?
I
повторность данных определяется датой
I
так?
I
если так, то групировка по дате
Александр
Всем привет, а есть какой-то способ автоматической проверки целостности данных в GridFS?
southyyy
Всем привет - подскажите пожалуйта - надо обновить у трех случайных записей в коллекции условное поле login, Но записей в коллекции может быть и 10000
southyyy
Каким образом мне с помощью collection.update взять 3 случайных значения
southyyy
Понял спасибо!
I
Не за что
Dmitry
Всем привет! Есть MongoDB в котороую записали много данных, и теперь эта БД выедает всю память на сервере, кто может подсказать как поставить ограничение к памяти у MongoDB?
karrtopelka
Здравствуйте, подскажите пожалуйста, как взять определенное поле из одной коллекции, в агрегацию другой, если общих полей нет?
Рамз
Какая последовательность действий происходит при создании заказ?
karrtopelka
https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/#join-conditions-and-uncorrelated-sub-queries
понял, спасибо, извините за глупый вопрос, а как мне получить только одно поле, из обьекта? Искал в доках, не помогло в event_title у меня обьект в котором одно поле title
Nick
в агрегациях нужно сделать $project стейдж и там указать по примеру $project:{ _id: 0, title:1 } 1 - оставить, 0 - не оставлять. Вроде как если есть единицы, то нужно только явно занулять _id, если не нужен. Остальные поля не надо явно через ноль дропать дополнительно смотри https://docs.mongodb.com/manual/reference/operator/aggregation/project/#suppress-_id-field-in-the-output-documents