Andrey
мне надо как то ускорить все в 1000 раз желательно или больше )
Сходите по другому, Посчитайте, 8 мин - 480 секундт, ускоряете в 1000 раз, это 48 мс, у вас миллионы, сколько миллионы - ну 10, посчитайте размер записи, умножайте или разделите, в этот отрезок у вас должна уложиться ваша операция типа merge, и вставка в другую коллекцию - что получится. Не забывайте что монга хранит данные в сжатом виде и тут будет и распаковка и снова упаковка. Может вам проще получать данные в другом виде, если это надо делать переодически.
Просто сделаете экспорт этой коллекции средствами монгоэкспорт в файл - и посмотрите сколько времени будет. Это условно будет чтение всей коллекции и просто запись в файл.
Vitalii
Vitalii
доки - это очень важная штука.
Важнее доков - только гугл.
Roman
Подскажите как можно подсчитать количество вложенных объектов в отдельном документе в mongo? Если допустим вложенность глубокая, countdocuments() считает только количество самих документов.
Ilya
Ilya
хотя нашел $size оператор
Ilya
db.collection.aggregate( { $project: {result: {$size: "$items"}}})
Roman
🐆
всем привет, есть какой-то способ при создании нового таска увеличить currentNumber на 1?
Viktar
Добрый день, есть записи в колекции вида
{ "npa" : "310", "nxx" : "818","carriersNames" : [ "at&t mobility" ],phoneNumbers: 2}
{ "npa" : "310", "nxx" : "818","carriersNames" : [ "verizon wireless", "at&t mobility" ],phoneNumbers: 7}
{ "npa" : "310", "nxx" : "818","carriersNames" : [ ],phoneNumbers: 3}
мне надо сгрупировать их по npa и nxx
что бы получить запись вида
{ "npa" : "310", "nxx" : "818","carriersNames" : [ "at&t mobility", "verizon wireless" ],phoneNumbers: 12}
и возникает проблема с полем carriersNames
в агрегация нет для $addToSet такой фишечки как $each
а если раскрывать массив через $unwind, то теряется запись с нулевым массивом { "npa" : "310", "nxx" : "818","carriersNames" : [ ],phoneNumbers: 3}
Может кто нибудь решал похожую задачку?
Ilya
$setUnion не поможет тут? - не похоже не оно
🐆
Viktar
Ilya
не помогает
вот тут с reduce показано как сделать https://stackoverflow.com/questions/42291965/setunion-to-merge-array-from-multiple-documents-mongodb
Null
ХАВхавха, ппц, снова ты?
Давно не виделись
Mike
Такой вопрос:
В монге можно каким то образом вычленить(из скрипта) - общее время работы(чтение запись и пр команды запросов)
?
Mike
(условно скрипт работает 10 минут и что бы можно было понять сколько из этого времени отъедают процессы связанные с базой)
а желателньо что бы еще и отдельные процессы сколько работают по времени - можно было сегментировать.
Alexander
Yuri
Народ кто подскажет как с задачей справится. На фронте есть поля name в базе есть два поля first_name и last_name. Как сделать поиск из одного общего запроса по двум в базе?
Yuri
Если можно без агрегации
Yuri
Нет это не поможет. Поиск по «игорь и» не найдет поля игорь и ивонов
Alexander
Ну и плюс прямой вариант через тот же or.
Alexander
А вообще с полнотекстовым поиском на кириллице в mongo всё плохо. По крайней мере в 5.0.
Mike
Alexander
возможно - но только бесплатный вариант )
Агент для .NET свободно через NuGet распространяется. Для других платформ, думаю, тоже. Что касается ELK, контейнеры Docker тоже скачиваются свободно. Не припомню, чтобы где-то ключ спрашивал. Но точно не скажу, давненько поднимал.
Yuri
Mike
Mike
https://ru.stackoverflow.com/questions/1449529/%d0%92%d0%be%d0%b7%d0%bc%d0%be%d0%b6%d0%bd%d0%be-%d0%bb%d0%b8-%d1%83%d1%81%d0%ba%d0%be%d1%80%d0%b8%d1%82%d1%8c-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b5%d0%bd%d0%b8%d0%b5-%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85-%d0%b8%d0%b7-%d0%b1%d0%b0%d0%b7%d1%8b-%d0%b2-10-%d0%b8-%d0%b1%d0%be%d0%bb%d0%b5%d0%b5-%d1%80%d0%b0%d0%b7
Может кто то знает ответ на данный вопрос.. ? )
ולאד
Mike
(в скорости)
ולאד
я ошибся, какая итоговая задача с этими архивными данными?
Iskander
Доброй ночи, товарищи!
У нас в проекте в качестве blob storage (images, thumbnails, office documents, videos), от 1 МБ до 2 ГБ по размерам использовали AWS s3.
К сожалению, партия сверху прислала директиву - отказаться от облаков и перейти на собственные сервера.
Подскажите, для заявленных выше хотелок - файлопомойка до 2 гб. размер файла, больше на чтение, реже на запись mongo grid fs подойдёт или слишком большие объемы одного файла для этого инструмента?
yopp
Доброй ночи, товарищи!
У нас в проекте в качестве blob storage (images, thumbnails, office documents, videos), от 1 МБ до 2 ГБ по размерам использовали AWS s3.
К сожалению, партия сверху прислала директиву - отказаться от облаков и перейти на собственные сервера.
Подскажите, для заявленных выше хотелок - файлопомойка до 2 гб. размер файла, больше на чтение, реже на запись mongo grid fs подойдёт или слишком большие объемы одного файла для этого инструмента?
Через gridfs можно вообщем-то любые размеры загружать, но для переезда с s3 дешевле будет поднять minio
https://github.com/minio/minio
yopp
По сути переезд будет ближе к «настроили права в минио» и «поменяли домен»
К монге по-моему есть s3 совместимые хранилища, но даже в этом случае вам достаточно быстро потребуется шардирование, а это дорого содержать.
MinIO по сути позволяет просто дисков накидать и с некоторой борьбой, настроить для них реплики и шарды
Iskander
mewton
Привет, подскажите, пожалуйста, в чём может быть причина. Делаю запрос:
let filter = { 'updated': { '$exists': false } }
collection.find(filter)
Получаю список документов, среди которых есть документ, который не подходит под фильтр. Я даже его удалил из коллекции а он всё равно выводится в консоли. 🤪
Может данные как-то кешируются или типа того?
mewton
mewton
Валерий
подскажите как получить типы bson в nodejs из объекта
Vladyslav
mewton
Вопрос про другое
mewton
mewton
тогда в чем вопрос?
В возвращаемом списке документов. В списке есть документ, который уже даже удалён из коллекции. Вероятнее всего это какой-то кеш запросов, но я пока не разобрался как его удалить.
mewton
А ключи можно писать хоть в кавычках хоть без
Vladyslav
mewton
Vladyslav
~3.4k
скрины предоставишь действий?
но обычно, если ты удалешь по определенному фильтру, то оно не мгновенно удаляет все с бд, а читает и удаляет.
А если ты запустил удаление по фильтру, а потом сразу же поиск по этому фильтру, то получишь результаты, так как они еще не удалены
Vladyslav
чтобы увидеть как удаление работает:
запускаешь удаление
делаешь find + count и запускаешь вручную (каждую секунду) и наблюдаешь что count уменьшается
mewton
mewton
Всё работает как надо, это я накосячил
𝚂𝚑𝚞𝚔𝚑𝚊
Привет, возможно ли в mongoose вставить в поле sort $and?
𝚂𝚑𝚞𝚔𝚑𝚊
Т.е. sort: $and: [{...}, "..."]?
𝚂𝚑𝚞𝚔𝚑𝚊
jq
𝚂𝚑𝚞𝚔𝚑𝚊
ой
𝚂𝚑𝚞𝚔𝚑𝚊
или можно просто sort: [{...}, "..."]?
𝚂𝚑𝚞𝚔𝚑𝚊
ну то что один параметр строкой
𝚂𝚑𝚞𝚔𝚑𝚊
а второй обьектом
Jasur Sharofiddinov
guys i couldnt delete the collection from database, because of there are two the same collections in database? i tried to rename one and delete, but i couldn't, is there any way to delete?
Jasur Sharofiddinov
Albert
This chat is for Russian-speaking people
Jasur Sharofiddinov
This chat is for Russian-speaking people
In russian
ребята, я не мог удалить коллекцию из базы данных, потому что в базе данных две одинаковые коллекции? я пытался переименовать один и удалить, но я не мог, есть ли способ удалить?
Albert
lmn
check if there is a trailing space in collection name
Andrey K.
всем привет, что-то элементарное упускаю при создании шардированного кластера. Есть репликасет из 3 машин. Включена авторизация по паролю.
Решил сделать шардирование. Создал конфиг-сервер. Создал монгос. Создал сервер для 2-го шарда (2-й шард будет на репликасете из единственного хоста пока)
Итого 6 хостов суммарно.
На монгосе, конфиге и 2-м шарде указал кейфайл, идетничный хостам из шарда 1 (там 3 тачки, репликасет).
Пытаюсь добавить шарды на монгосе, он мне пишет
not authorized on config to execute command
Я так понимаю, он коннектится к конфиг-серверу успешно, но чего ему еще надо, ведь на конфиге я пароль не включал.
Подскажите, плиз
Andrey K.
а, перед sh.addShard("testRS/my-host-1:27017") я делаю use admin
Nikita
Помогите плз с этим:
https://stackoverflow.com/questions/73777361/how-to-run-mongo-db-docker-image-with-specified-authsource
Nikita
Как запустить mongo в docker с указанием конкретной Authentication database (authSource)?