wertaer
наверное...
Максим
Ярослав
Hellomik
Hi кто знает почему lookup in array возращает массив внутри массива ?
wertaer
CreateOrUpdate? попробовать?
там скорее всего проблема в том, что телега апдейты разом закидывает и вот такая вот канитель выходит, я полагаю...
wertaer
Sergey
Ещё вопрос появился по mongodb realm. А как там вообще роли юзерам назначаются? Или где почитать как это вообще работает, в документации вижу только как создавать а как накладываются эти оганичения не понятно.
.
Привет, почему при сохранении Python datetime объекта в монго и последующем возвращении приходит другой datetime объект, разница в миллисекундах. При этом он находится по оригинальному значению, но возвращает другое значение.
TheDiVa
Ребятишки, как сделать чтобы бд хранилась на моем пк после чего сделать доступной через localhost:12345 Я просто еврей (денег нема) платить нехочеца сторонним сервисам, предоставляющую это возможность
Ilya
🦋noteee
Michail
Привет, подскажите как правильно создать динамические запросы, у меня например приходит такой URL: /games?genres=action,fantazy&developer=ubisoft,playstore то есть постоянно меняется, и допустим если пользователь захочет добавить параметр &publisher=steam, то мне придётся ещё к модели Game добавить populate("publisher"). Есть ли способ динамически создавать корректный запрос к mongoose?
TheDiVa
Собратья, помогите решить проблему. Плагин Minecraft (LuckyPerms) пытается подключится к базе данных. Судя по логам у меня ничего не получилось. Посмотрите пожалуйста и помогите советом, по возможности
Joe
TheDiVa
А, я это уже понял
TheDiVa
Проблема была в том что я не к той бд подключился
Joe
TheDiVa
Все равно спасибо. Теперь я точно убедился что ошибок нет
Jamal
всем привет
Jamal
как сделать поиск по нескольким полям?
делаю как на скрине, но конечный вариант получается такой, что запись должен включать в себя совпадения по всем трем полям, то есть, как если бы был логическое И, а мне нужно ИЛИ
как быть? поиск элементов через обычный метод .find() (тоже прикрепил )
Jamal
Slava
{
$or: [
{
field1: …,
}, {
field2: …,
}
]
}
Jamal
Pavel
Всем привет. Ребята подскажите пожалуйста. Развернул проект bitnami в кубере https://bitnami.com/stack/mongodb-sharded/helm. Конфиг по дефолту с двумя шардами. Захожу на монгос и как посмотреть что всё ок? В монгос под стандартным пользователем и сгенереным паролем провалился, но есть там что вообще тестовое ???? Show dbs ничего не показывает? Или этот проект совсем совсем пустой внутри и без тестовых баз? И привязаны ли шарды по умолчанию, что нужно сделать на начальных этапах??
Семён
Кто сталкивался с Illegal instruction при написании mongo в концоль. Помогите решить проблему
Alisher
Привет всем!
Использовал сегодня mongodb для реализации мини проекта. И вообще не могу вникнуть)
У меня есть вот такие данные:
{"_id": ObjectId("610272dce453c718357013e5"), "dDate": "28-08-2021", "fly_from": "TSE", "fly_to": "ALA", "price": "112"},
{"_id": ObjectId("610272dce453c718357013df"), "dDate": "29-08-2021", "fly_from": "ALA", "fly_to": "TSE", "price": "35"},
{"_id": ObjectId("610272dce453c718357013d3"), "dDate": "28-08-2021", "fly_from": "MOW", "fly_to": "ALA", "price": "87"},
{"_id": ObjectId("610272dce453c718357013db"), "dDate": "29-08-2021", "fly_from": "ALA", "fly_to": "MOW", "price": "100"}
Я хотел просто сгруппировать их по dDate и в каждой группе сортировать их по их price
Dmitriy
Коллеги, добрый день. Подскажите пожалуйста.
Есть такой код:
const {insertedIds: insertedItemIds} = await itemsCollection.insertMany(dataForCreate);
console.log('1_5', insertedItemIds);
В консоле вижу такое:
1_5 {
'0': 610197c2dc06da21b14eef49,
'1': 610197c2dc06da21b14eef4a,
'2': 610197c2dc06da21b14eef4b
}
По документации в insertedIds лежит массив айдишников.
В чем может быть проблема?
Максим
Максим
Максим
Brunello
боты атакуют)
Сергей
Ребят, привет
Такой вопрос
У меня есть 2 типа списания:
Оплата услуг по тарифу
И дополнительные услуги
Как мне стоит организовать хранение
Вижу 2 варианта
В первом я для каждого типа создаю отдельную коллекцию
Во втором делаю одну но с типом списания и всеми возможными полями
Как обычно такое решается?
Сергей
Сергей
Михаил
Сергей
Михаил
Ссылки на другие документы вообще лучше минимизировать, потом замучаетесь
Сергей
Anton
Какое макс. количество можно поставить watch()’еров?
Юрий
Всем привет. Неправильно заимпортировал данные в коллекцию. Через filter({subs:$exist}), например отфильтровать не получается. Как отобрать неправильные документы, чтобы удалить?
Михаил
Юрий
Anton
Максим
всем привет, как можно в схеме объявить поле, принимающее двумерный массив?
tmarket support
всем привет, кто может подсказать плз, есть структура
type ReviewInitial struct {
Id string `json:"id" bson:"_id"`
Text string `json:"text" bson:"text"`
Rating int32 `json:"rating" bson:"rating"`
DealId string `json:"dealId" bson:"dealId"`
ProjectId string `json:"projectId" bson:"projectId"`
ReviewerId string `json:"reviewerId" bson:"reviewerId"`
CreatedAt time.Time `bson:"createdAt"`
Reviewer Reviewer `json:"reviewer" bson:"reviewer"`
}
здесь есть референсы на другие коллекции (projectId, ReviewerId)
как мне лучше их хранить, просто строкой или кастовать в mongo objectId ?
что-то никогда не задавался этим вопросом и вот задался)
поидее в mongo objectId, для ускорения будущих aggregations и пр?
Ilya
Вечер добрый. Есть Replica Set.
Вопрос следующий. Можно ли указать при подключении к базе в URI-строке readPreference=nearest (чтобы нагрузка распределялась по всем репликам равномерно при обычных, не транзакционных запросах), а когда запускается транзакция, то указать в transaction options readPreference=primary? Будут ли транзакции в таком случае работать корректно?
Node.js+mongoose.
Yoda
Michail
Всем привет, подскажите как составить агрегацию, что помимо $count выводило еще и записи , типо такого {countBeforeFilter : 1000, countAfterFilter : 200 ,result : []}
Ctr+
Добрый день. Вопрос по mongodb и производительности ее.
Есть коллекция, примерно 500тыс документов (Document size 60MB, Total index size 57MB), очень часто обновляются записи
$mongoData[] = [
'replaceOne' => [
['_id' => $document['_id']],
$document,
['upsert' => true]
обновляет в пике где-то 15000 - 20000 документов...
когда растет выше 10Kops/s, начинаются проблемы с записью, они очень долгие, критичные в данном случае... Не обязательно проблема именно в количестве Kops/s это предположение...
пробовал делить данные, кусками по 100, 500 запись... именно проблема когда 15000-20000 документов идет кусок.
обычно менее 3 секунд выполняется, но когда выше, тогда проблема.
монго 3.6, так же пробовал на 4.4.4 с репликасет, там еще выше
Не пинайте тапками, я с монгой на вы....
Подскажите куда смотреть, возможно использование updateone даст лучше цифры.
По ресурсам на сервере проблем нет, проц/сеть/диски не грузит, нагрузка маленькая на все кроме сети небольшая.
ordered false
Спасибо.
Salih
Есть такая модель:
const userSchema = new mongoose.Schema({
name: {
type: String,
required: true,
index: true
},
surname: {
type: String,
required: true,
},
patronymic: {
type: String,
required: true,
},
});
Будет осуществляться поиск по полям name, surname, patronymic (возможно одновременно или по отдельности), то такой индекс мне поможет?
userSchema.index({ name: 'text', surname: 'text', patronymic: 'text' });
Joe
Есть такая модель:
const userSchema = new mongoose.Schema({
name: {
type: String,
required: true,
index: true
},
surname: {
type: String,
required: true,
},
patronymic: {
type: String,
required: true,
},
});
Будет осуществляться поиск по полям name, surname, patronymic (возможно одновременно или по отдельности), то такой индекс мне поможет?
userSchema.index({ name: 'text', surname: 'text', patronymic: 'text' });
Текст не такой шустрый, но все равно быстрее чем без него
Joe
Это быстрее, это по моим наблюдениям. У них, как я понял, текст индекс сделан чтобы был
Aryn
Всем привет!
Есть Collection users, там есть поле channels содержащее список из чисел [1, 2, 3]
Вот как из этого списка, удалить одно значение? (напр. 1)
Anonymous
Aryn
$pull по значению.
Ну, я вот так удаляю все данные о юзере:
db.delete_one({'user_id': user_id})
а как удалить из channels одну?
Anonymous
Aryn
Aryn
он должен содержать null, когда содержал "text"
Leksey
всем привет!
подскажите, не знаю в какую сторону смотреть и что думать
общий вопрос - почему растет количество дискрипторов (открытых файлов) у MongoDB?
веб приложения работает в штатном режиме
в графане наблюдаю следующее (open files): 5.7K, ..., 10.9K, ..., 21.5K
за сутки количество открытых файлов вырастает примерно на 20K
используется node.js (mongoose)
соединение постоянное
сейчас еще проверю количество соединений (растет или нет)
какие еще моменты стоит проверить? Ubuntu
Leksey
Leksey
ситуация в том, что черед двое/трое суток выходим за лимит в 64K
Leksey
каждый раз увеличивать лимиты - не дело (они растут с каждым днем)
Dmitry
Всем привет. mongodb 3.6.23, shard cluster
Как правильно смотреть сессии в базе config коллекции system.sessions?
Вроде в доках везде пишут просто обычный запрос на эту коллекцию db.system.sessions.find(). Но мне выдает ошибку авторизации:
```
mongos> db.system.sessions.find()
Error: error: {
"ok" : 0,
"errmsg" : "not authorized on config to execute command { find: \"system.sessions\", filter: {}, lsid: { id: UUID(\"9df044dc-ceb9-4b89-baac-084e205ae1b3\") }, $clusterTime: { clusterTime: Timestamp(1627980900, 115), signature: { hash: BinData(0, CE0080FB41D7190D451D7BF1940AB0D92347AA23), keyId: 6967046096438689837 } }, $db: \"config\" }",
"code" : 13,
"codeName" : "Unauthorized",
"operationTime" : Timestamp(1627980910, 80),
"$clusterTime" : {
"clusterTime" : Timestamp(1627980910, 80),
"signature" : {
"hash" : BinData(0,"mXIdk48sbWF2pxp7Tiu9q/EXr1k="),
"keyId" : NumberLong("6967046096438689837")
}
}
}
```
При этом я это делаю от рута:
```
mongos> db.runCommand({connectionStatus : 1})
{
"authInfo" : {
"authenticatedUsers" : [
{
"user" : "root",
"db" : "admin"
}
],
"authenticatedUserRoles" : [
{
"role" : "root",
"db" : "admin"
}
]
},
"ok" : 1,
```
Пробовал как с mongos это сделать, так и с replicaSet configsvr, и из другого любого шарда.
Саму проблему из-за которой хотел смотреть сессии уже решил (https://jira.mongodb.org/browse/SERVER-36104) но меня смущает сам факт что я не могу посмотреть эту коллекцию.
Leksey
Dmitry
Leksey
Aryn
Есть запись:
{
_id: ...,
user_id: ...,
channels: [
{
channel_id: 123,
some: text
},
{
channel_id: 456,
some: text
}
]
}
Вот как выполнить поиск по channel_id: 123 ?
Cloud
find({
channels: {$elemMatch: {channel_id: 123}})
προχωρέω
Всем добрый вечер!
Подскажите пожалуйста, считается ли плохой практикой создание text индекса состоящего из 10-ти полей?
Спасибо!
Michail
Подскажите, можно ли сделать фильтрацию после того как сделал Populate без использования агрешации
Nick