Vova
Artem
Вот я могу допустим написать так: Coll.update_one( {'CountOfViews': int}, { '$inc': {'CountOfViews': 1} }?
Vova
Vova
{'CountOfViews': {'$exists': true} }
Vova
А это там где поле существует
Artem
ок, пасиб
yopp
yopp
Если их несколько, то необходим какой-то уникальный идентификатор который будет уточнять запрос
Artem
yopp
Тогда можно обойтись просто updateOne без условия
yopp
Но надежнее добавить идентификатор
Vova
Vova
Если в коллекции окажется несколько документов, запрос выполнится только для нужного
yopp
Например {metric: “viewsCount”, value: 12} и в условии указывать metric: viewsCount
Artem
Ок, спасибо
Balu
народ, есть ли практика использования монго для финансовых отчетов
- как OLAP ?
у кого нить есть такой опыт ?
Veaceslav
Кто-то знает коннектор для подключения монги к google datastudio?
Avtandil
Привет всем. Поделитесь инфой как импортировать локальную коллекцию в mongodb cloud atlas.
Заранее благодарен.
Aleksandr
mongodump + mongorestore
Ansat
привет всем. как лучше реализовать сохранение сообщений в чате: клиент отправляет сообщение -> сокет это слушает -> сохранение сообщения. юзаю mongoose.
Balu
Artem
Balu
агрегаты собирали в монге?
Avtandil
Аркадий
Никто не знает, почему может выдаваться такая ошибка?
"MongoError: Topology is closed, please connect"?
Anonymous
How's everything with you?
Anonymous
How's everything with you?
bofh666
Коллеги, привет! Кто-нибудь MongoDB юзает прям плотно? Есть кластер простейший, репликасет из трех нод. Внезапно отъебнула одна нода (тупо юнит системд упал). В логах пусто. Разрабы жаждут крови. Было у кого-нибудь такое?
Nick
madspectator
Я думаю, он спрашивает, почему упала монга и почему в логах пусто.
bofh666
bofh666
(простите за тупые вопросы, до этого юзал нормальные СУБД)
Araik
Подскажите пжл, мне нужно вставить или обновить массив документов в базу т.е. при наличии документа в базе обновить, при отсутствии добавить, я так понимаю правильней всего использовать UpdateMany и с опцией upsert, но как условие задать, не пойму?
Araik
документов может быть от штук 10 и до сотни за 1 запрос
Stanislav
Anonymous
Доброе утро, кто может посоветовать по инфраструктурному решению, что лучше:
3 хоста по 1gb/1cpu, на каждом хосте отдельная монга
или один хост помощнее, на котором развернуто несколько монг в докере
Anonymous
Anonymous
А для юнита systemd можешь настроить OnFailure=
Anonymous
Но если падает по памяти, надо разбираться.
Nick
Murena
Всем привет подскажите - ищу по массиву обьектов
{
_id: 1,
name: { first: 'John', last: 'Backus' },
birth: new Date('Dec 03, 1924'),
death: new Date('Mar 17, 2007'),
contribs: [ 'Fortran', 'ALGOL', 'Backus-Naur Form', 'FP' ],
awards: [
{ award: 'National Medal',
year: 1975,
by: 'NSF' },
{ award: 'Turing Award',
year: 1977,
by: 'ACM' }
]
}
с помощью db.users.find({awards: {$elemMatch: {award:'National Medal', year:1975}}})
можно ли как то сделать так чтоб - поиск вернул только конкретный елемент массива который соответствует поисковой фразе ? а не все что там есть ?
Ilya
отфильтровать необходимые поля через projection ?
Ilya
https://docs.mongodb.com/manual/reference/operator/projection/elemMatch/
Ilya
все время забываю про эту штуку However, the $elemMatch projection returns only the first matching element from the array.
Sergey
db.users.find(
{}, {
_id: 0,
awards: {
$elemMatch: {
award: 'National Medal',
year: 1975
}
}
}
);
Нет?
> поиск вернул только конкретный елемент массива
Какой именно? А если в результате поиска найдётся два и более элементов, соответствующих условию?
yopp
Всем привет подскажите - ищу по массиву обьектов
{
_id: 1,
name: { first: 'John', last: 'Backus' },
birth: new Date('Dec 03, 1924'),
death: new Date('Mar 17, 2007'),
contribs: [ 'Fortran', 'ALGOL', 'Backus-Naur Form', 'FP' ],
awards: [
{ award: 'National Medal',
year: 1975,
by: 'NSF' },
{ award: 'Turing Award',
year: 1977,
by: 'ACM' }
]
}
с помощью db.users.find({awards: {$elemMatch: {award:'National Medal', year:1975}}})
можно ли как то сделать так чтоб - поиск вернул только конкретный елемент массива который соответствует поисковой фразе ? а не все что там есть ?
$match + $filter https://docs.mongodb.com/manual/reference/operator/aggregation/filter/
Murena
спасибо!
Арлан
Всем привет! Впервые работаю с NodeJS + MongoDB, и столкнулся с проблемой, при запросе к API, полученные данные нужно добавить в базу. Применяю метод findOneAndUpdate, ошибок нет, но в базе пусто
yopp
yopp
Anonymous
Экспортирую коллекцию в csv, и экспортируются не все поля, это возможно из за того что они не совпадают? То есть в одном объекте есть поле, которого нет в другом
Anonymous
И кто нибудь экспортировал в csv? Можете дать совет?
Anonymous
Коллекция выглядит примерно так
Anonymous
В компасе всё нормально отображается, хочу чтобы в csv так же было
yopp
Araik
yopp
Araik
У меня схожая задача, проверить, если документ существует - то обновить, если не существует - то добавить, хотелось бы понять, есть ли готовый инструмент в монго или нужно сначала делать find и в зависимости от результата update или insert?
yopp
В этом случае да, upsert подходящий инструмент
Araik
а, погодите, я уже тестил)) новый документ создается при отсутствии
Araik
Anonymous
yopp
Скорее всего первый документ, который выбирается из базы не содержит необходимых полей. Так как схемы в монге нет, при инициализации экспорта нет возможности быстро определить какие поля будут
yopp
А ретроспективно добавлять поля очень дорого
yopp
Это по сути надо по новой экспортировать
Artem
Такой вопрос я могу делать InsertMany
Artem
что бы не дожидаться ответа от сервера
Artem
Просто накидать накидать туда
Adamets
возможно Нубский вопрос не кидайте помидоры😅
Я только иду во всю эту тему с дб бэком, для работы с монго желательно знание SQL||mysql||nosql
Anton
Помогите вернуть одно поле из объекта коллекции
Araik
Alexander
Да, ответ очевиден: не желательно, а нужно.
Без понимания реляционной модели данных, даже на монге не построить хорошего приложения.
Araik
почему реляционной, если подходы совершенно разные?
Araik
к примеру, если в реляционной модели нормализация базы необходимый процесс, то в монге это совершенно не верный подход и нужна скорее денормолизация базы
Araik
да и во многом, инструменты другие и на другом уровне реализуется, к примеру, что-то типа каскадного удаления\изменения данных, если в реляционных базах, есть готовые инструменты для этого, то в монго это на программном уровне делается
Araik
Я в целом не обладаю достаточным опытом конечно, чтобы спорить, такие вот первые наблюдения, поэтому тут скорее хотел бы и для себя прояснить тоже