yopp
так удобнее код туда-сюда таскать
Dmitriy
yopp
неа
yopp
это эксперименты
yopp
в гите нет нормального поиска, по этому так удобнее
Dmitriy
т.е. это просто отдельные проекты или эксперименты внутри одного проекта?)
Dmitriy
Просто смущает версионность которую я вижу, но может я себе это придумал
yopp
это эксперименты в рамках одного проекта
Dmitriy
Необычно, обычно просто либо бранчами организуют, либо тагами делят)
yopp
я повторю: в гите нет поиска нормального
yopp
потом очень часто надо сравнивать результаты
Null
7 и 8 декабря в Москве состоится мастер-класс «MongoDB: Практическая схемотехника 2»
Мастер-класс позволит за два дня прокачать навыки в дизайне документов и начать применять их на практике:
— выявлять и анализировать проблемы с производительностью
— формулировать задачи и подбирать подходящую схему
— внедрять изменения в продакшене
Поговорим о том, когда нужно и когда не нужно думать о схеме. Разберём основные паттерны проектирования документов: когда имеет смысл, когда нет, какие сильные и слабые стороны. Проверим паттерны на практике. Обсудим, что можно делать и что лучше не делать, когда нет схемы.
Мастер-класс рассчитан на инженеров, архитекторов, системных аналитиков и руководителей разработкой.
Для участников нашей группы по промокоду TGMNGRU1219 специальная цена: 24,500₽.
Торопитесь, осталось всего 10 мест
Прочитать программу и купить билеты
D
теоретически ничто не мешает иметь в каждой такой папке отдельный бранч одного и того же репозитория
D
и называть их не числами, а конкретно названиями экспериментов
Lev
мозг сломал... надо сгруппировать по полю все документы колелкции и выбрать из группы самый старый
Nick
Lev
Я подумал сразу сорт по всем пройтись а потом группировать
yopp
$reduce
Max
привет - словил Connections % of configured limit has gone above 80
cluster0-shard-00-01-phjcp.mongodb.net:27017 in Cluster0-shard-0 как можно почистить пул?
Max
db.runCommand( { killAllSessions: [ ] } )
?
Max
yopp
yopp
Ищите где у вас текут соединения
Max
это разовая акция)
Max
маленький разовый скрапер который дапмит данные в монгу
Max
диплом пишу)
yopp
Ограничьте количество соедениний которые ваш скраппер устанавливает
Semeon
диплом под угрозой
yopp
Нет
yopp
Монга не может «стакать», это обычные сокеты
yopp
Закрыли сокет, закрылось соединение
Max
понял, значит у pymongo есть дефолтное значение для пула коннектов
yopp
Да, скорее всего что-то около 5
Max
обычно с монгузом работаю - ему если явно не скажешь что юзать конекшен пул, он кажись будет юзать 1 конекшен
Max
хотя может я ошибаюсь
yopp
У вас скрапперы как запускаются?
Max
потому и вылез за пул
Josh
Schedule кейс есть у кого под рукой?
Kenan
У меня есть массив с объектами, мне нужно сделать поиск по одному ключу таким образом: человек ввёл часть кода и ему отдались все подходящие объекты. Вопрос: как такое сделать? Знаю про вариант брать всё и уже фильтровать, но имеет ли данная реализация смысл?
1 скрин - объект
2 скрин - то, как я пытаюсь сделать
Kenan
Kenan
Если нужна будет ещё инфа - могу добавить
Vova
Vova
Это как $regex
Vova
.* это любые символы
Работает как
string.StartsWith("k3bds")
Kenan
Kenan
или в данном случае - никак?
Vova
Vladimir
Всем доброй ночи кто не спит, разрабатываю backend на nodejs + mongoose, и пишу довольно обычный express маршрут,
app.get('/user/:id')
Валидацию пишу на уровне mongo shema.
И вдруг потянуло посмотреть что использует под собой монгусовский метод user.findOne.
Оказалось что обычный find.
Пошел я в GUI и выполнил такой запрос.
И чет так страшно стало...
Я конечно нагуглил что можно защиться от этого вот так.
mongoose.Types.ObjectId.isValid(id);
Но блин, все равно страшно, сколько я еще чего не заметил и тд.
Как вообще нормально валидацию делать на монге? Особенно опыт nodejs интересен. Статьи гуглил, особо ответа на свой вопрос не нашел.
Daniil
Валидация входящих к параметров кмк к монге не имеет особого отношения
Daniil
mongoose провалидирует входящий параметр в findOne и попытается закастить его к objectid, если у него не получится, то выкинет ошибку
Vladimir
Daniil
нет
Dmitriy
Vladimir
Т.е мне не обязательно вот таким заниматься в коде, а достаточно просто отловить ошибку?
mongoose.Types.ObjectId.isValid(id);
Josh
файнд быстрее отрабатывает потому чта
yopp
а regexp не дурной тон?
нет, если использовать индексы и префиксное выражение (начать с ^ или \A)
https://docs.mongodb.com/manual/reference/operator/query/regex/#index-use
Petro
Есть способ сортировки масива внутри документа? Или по старинке unwind->sort->group?
Андрей
Добрый день, скажите пожалуйста, можно ли с помощью команды mongoexport делать не из одной коллекции , а из нескольких, связанных между собой по ключу
Yʉri 🇺🇦
Anonymous
Приветствую.
find() умеет искать по более чем 1-му параметру? Пробую такой запрос:
const records = await Subscription
.find(
{ name: { $regex: req.params.name_filter || '' } },
{ price: { { $gte: req.params.min || '' }, { $lte: req.params.max || '' } } }
)
Yʉri 🇺🇦
Yʉri 🇺🇦
И по моему это через агрегации делать надо
Kenan
Anonymous
Сейчас
.find({
name: { $regex: req.params.name_filter || '' },
price: { { $gte: req.params.min || '' }, { $lte: req.params.max || '' } }
})
редактору не нравятся фигурные скобки у price, просит запятую.
Yʉri 🇺🇦
Yʉri 🇺🇦
Anonymous
Вот такое
.find({
name: { $regex: req.params.name_filter || '' },
price: { { $gte: req.params.min || '' }, { $lte: req.params.max || '' } }
})
крашит сервер.
Андрей
А в mongoexport можно фильтр накладывать, то есть например записи только за сегодня?
Dmitriy
Dmitriy
у вас там действительно лишние скобки + к этому попытка сравнения по строке в случае дефолта
Anonymous
Вот так не крашит сервер, хотя пока не находит. Может, min или max там строками вместо Integer.
.find({
name: { $regex: req.params.name_filter || '' },
price: { $gte: req.params.min || '', $lte: req.params.max || '' }
})
Mike