Boroda
отправляю на сервер картинку: File {name: "11.jpg", lastModified: 1611323296316, lastModifiedDate: Fri Jan 22 2021 15:48:16 GMT+0200 (за східноєвропейським стандартним часом), webkitRelativePath: "", size: 26225, …} в итоге req.body приходит {}
Boroda
можно пример
Boroda
тоесть через форму?
Kenan
можно пример
google send picture form data js
yopp
что возвращает sort шаг?
Sergey Bedritsky
собственно этот я вроде сделал, но не уверен что оптимально [ { "$project":{ "date":{ "$dateToString":{ "date":"$createdAt", "format":"%Y-%m-%d" } } } }, { "$group":{ "_id":"$date", "count":{ "$sum":1 } } }, { "$project":{ "_id":0, "key":"$_id", "value":"$count" } }, { "$project":{ "key":{ "$dateFromString":{ "dateString":"$key", "format":"%Y-%m-%d" } }, "value":"$value" } }, { "$sort":{ "key":-1 } } ] и у мне еще штуки 3 подобных надо сделать
Sergey Bedritsky
двойная конвертация дат выглядит странно
Sergey Bedritsky
вытягиваю данные для графиков
yopp
не обязательно делать первый $project, вы можете сразу в _id указать $dateToString предпоследние два $project можно объеденить в один
Sergey Bedritsky
благодарю, исправлю
yopp
конвертировать назад в дату вы можете ещё в $group
yopp
Как-то так [ { "$group": { "_id": { "$dateFromString": { "dateString": { "$dateToString": { "date": "$createdAt", "format": "%Y-%m-%d" } } } }, "value": { "$sum": 1 } } }, { "$project": { "_id": 0, "key": "$_id", } }, { "$sort": { "key": -1 } } ]
Sergey Bedritsky
🤯
Dmitry
привет а кто-то дружил джангу и монгу? Использую djonga
Проксимов
Всем привет, подскажите пожалуйста можно ли gridfs распараллелить? Сейчас с питон коннектором пробую(pymongo) в несколько процессов, и что-то оно походу лочится(
Проксимов
В gridfs примерно 200к файлов, в среднем за 8 секунд читаются. Не хотелось бы ждать 20 дней(
Проксимов
а там же есть асинк либочка для монги вроде
Асинк не помогает с чтением файлов. Ну или я что-то не понимаю в нем
tmarket support
В gridfs примерно 200к файлов, в среднем за 8 секунд читаются. Не хотелось бы ждать 20 дней(
а нельзя с бека эти файлы отдавать стримом, чанками или распагинировать? или нужно прям все прочитать
Проксимов
Nick
Проксимов
а должно быть быстрее? что по процу/дискам/сете на монге?
Ну если параллелить то должно. Тут порядок важен, а проц и диски уже вещь вторая
Nick
ищите где узкое место, если на монге ресурсы еще есть и сеть позволяет больше пересылать, то вопрос в коде
Проксимов
Вопрос можно ли распараллелить чтение из гридфс, это и есть узкое место
yopp
Вопрос можно ли распараллелить чтение из гридфс, это и есть узкое место
Запросы и так выполняются параллельно, на сколько у вас хватает дисковой подсистемы
Проксимов
Запросы и так выполняются параллельно, на сколько у вас хватает дисковой подсистемы
Хм, судя по тому что я вижу - нет. Возможно проблема в коннекторе
yopp
Вероятнее всего. Если монга не полностью утилизирует дисковую систему, выбрав всю пропускную способность, то проблема где-то раньше
yopp
Возможно вам не хватает размера пула соединений
yopp
И из-за этого операции блокируются пока хоть одно соединение не вернётся в пул
ZDev | Разработчик
Qq all
Horus
всем привет, кто-нибудь, может, так делал уже. Если я делаю вот такую выборку this.chatsModel.aggregate([ { $lookup: { from: 'users', localField: 'usersData.userId', foreignField: '_id', as: 'users', }, }, { $match: queryToDb, }, { $skip: skip }, { $limit: limit, }, ]); как я могу добавить туда $addFields, в котром бы ещё указал что-то вроде $addFields: { usersData.username: { $match: [ '$users._id': 'usersData.userId' ] } } синтаксически он не позволяет так сделать, нагуглить что-либо более-менее подходящее пока тоже не удаётся
ZDev | Разработчик
$set
Andrey
Хм, судя по тому что я вижу - нет. Возможно проблема в коннекторе
Может в pythone где в коде в 1 процесс идет. Покажите как организовали. У меня 6 процессов просто в Монгу пишут достаточно быстро, тоже pymongo
Horus
$set
сенк ю со мач, сейчас гляну, що це
Horus
$set
теперь он ругается Invalid $addFields :: caused by :: Unrecognized expression '$set' когда я делаю так { $lookup: { from: 'users', localField: 'usersData.userId', foreignField: '_id', as: 'users', }, }, { $addFields: { 'usersData.username': { $set: { $match: { $eq: ['$users._id', 'usersData.userId'] } } } } }
Google
Всем привет в Mongodb у меня в базе есть два Object как могу удалить их по ID сделал так но не удаляет можете помочь исправить ошибку ?
Google
Google
отдельно
Google
по ID
Bogdan
remove должно работать, правильный _id передаёте? Попробуйте findByIdAndRemove
Google
findByIdAndRemove
Anatoly
по ID
скорее всего строку шлёшь в квери. Попробуй import { ObjectId } from 'mongodb' _id : new ObjectId(_id)
Google
Тоже пробовал
Google
На примую import { ObjectId } from 'mongodb' не работает
Google
Kenan
_id: new ObjectId(_id)
Google
Google
сделал так получаю 500 ошибку
Kenan
сделал так получаю 500 ошибку
ты бы доку открыл. remove промис возвращает
Kenan
Anatoly
сделал так получаю 500 ошибку
а _id то у тебя точно приходит ? может он undefind ну и его не получаается привести к ObjectId. консольку перед вызовом remove воткни глянь что там у тебя в _id
Google
в console вижу что приходит
Google
и в базе вот ID
Google
Вот где проблема ?
Google
Google
В базе не удаляется
Kenan
ага
Andrey
https://t.me/ru_python/1391772
С телефона, а в логах монги эти коннекты есть?
Проксимов
С телефона, а в логах монги эти коннекты есть?
Ну оно работает, наверняка есть
Проксимов
С телефона, а в логах монги эти коннекты есть?
Кстати запустил щас в баше mongofiles через & девять get’ов, все равно занимает столько же времени
yopp
Что в логах монги? Как себя диски чувствуют?
Проксимов
А какого размера файлы?
В районе пары десятков мегов
Проксимов
Что в логах монги? Как себя диски чувствуют?
Я девять файлов для теста качаю, кажется это не может в диск упереться
Проксимов
Ну мб mongofiles один коннект может только держать, потому что я параллельно 9 открываю
Проксимов
аля mongofiles --uri url -d=db get 1610702410.wpd & mongofiles --uri url -d=db 1567156526.wpd & ...
Проксимов
а сколько времени занимает?
~ 70 секунд, что по одному, что параллельно
Проксимов
Что в питоне, что в mongofiles
yopp
А у вас индексы в gridfs коллекциях точно есть?